Jump to content
Unity Insider Forum

Erweitertes Lauflicht Script (js)


Dominik

Recommended Posts

lauflicht script für unity4

schritt 1) ihr braucht 3cubes oder kappenlampen.

schritt 2) dazu erstellt ihr nun ein leeres gamesobjekt.

schritt 3) legt das script auf das leere gameobjekt.

schritt 4) ordnet die 3 cubes dem gameobjekt mit blinkfeledern zu.

schritt 5) erstellt 2 materialien. material1 an(shader -> self-illumin/diffuse)

material2 aus(shader-> diffuse) schiebt die in die material felder(rotan rotaus)farbe ist eig egal

nun sollte es fertig sein.

 

mit der taste k wird das licht ein und ausgeschaltet.

sollte das licht an sein, und man drückt die taste space. wird das licht in der gedrückten zeit ausgeschaltet und erst wieder von alleine eingeschaltet wenn man die spacetaste los lässt.

 

ich persönlich nutze das script für kirmessimulationen.

wie zb am breakdance, wenn die strobos(blitzer) angehen gehen die lauflichter in der zeit aus.

kann man aber auch für andere sachen nehmen.

 

var blink1 : GameObject;
var blink2 : GameObject;
var blink3 : GameObject;

var rotan : Material;
var rotaus : Material;

var lauf_an_aus : boolean;
lauf_an_aus = false;

var abstandblinker = 0;
var speed_blinker : float = 0.17;
var check = 0;
var test = 0;

function Start(){
InvokeRepeating("blinker", 0.0, speed_blinker);
}
function blinker(){
if(check > 1){
if(lauf_an_aus == true && abstandblinker==0){
abstandblinker ++;
blink1.renderer.material = rotan;
blink2.renderer.material = rotaus;
blink3.renderer.material = rotaus;

}else if(lauf_an_aus == true && abstandblinker==1){
abstandblinker ++;
blink1.renderer.material = rotaus;
blink2.renderer.material = rotan;
blink3.renderer.material = rotaus;
}else if(lauf_an_aus == true && abstandblinker==2){
abstandblinker ++;
blink1.renderer.material = rotaus;
blink2.renderer.material = rotaus;
blink3.renderer.material = rotan;
}else{
abstandblinker=0;
blink1.renderer.material = rotaus;
blink2.renderer.material = rotaus;
blink3.renderer.material = rotaus;
}
}else{
blink1.renderer.material = rotaus;
blink2.renderer.material = rotaus;
blink3.renderer.material = rotaus;
}
}
function FixedUpdate () {
if(Input.GetKey("k")){
lauf_an_aus = !lauf_an_aus;
}
if(lauf_an_aus==true){
check=2;test=1;
}else if(lauf_an_aus==false){
check=1;test=0;
}
if (Input.GetKey("space")) {
check=0;
}else if(check < 2&&test==1){
check = 2;
}
}

function Update () {
if(check < 2){
blink1.renderer.material = rotaus;
blink2.renderer.material = rotaus;
blink3.renderer.material = rotaus;
}
}

ich hoffe ihr könnt damit was anfangen.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung jetzt entfernen

  Only 75 emoji are allowed.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Lädt...
×
×
  • Neu erstellen...