|
 |
Script Problem |
|
|
heli_start()
{
helitrig = getentarray("helitrig","targetname");
if ( isdefined(helitrig) )
{
for(i=0;i < helitrig.size; i++)
helitrig[i] thread los();
}
}
Erst einmal solltes du die oben rot markierten Klammern setzen (beide Zeilen dürfen nur bei erfüllter if-Bedingung ausgeführt werden. Bei dir wird die zweite Zeile immer ausgeführt, egal ob helitrig definiert ist oder nicht).
los()
{
while(1)
{
self waittill ("trigger");
if (level.heli_spawn==true&&level.heli_moving==false)
thread heli_fly_1();
else if(level.heli_spawn==false&&level.heli_moving==false)
thread heli_fly_2();
}
}
Und hier muss der else-Zweig durch einen else if-Zweig ausgetauscht werden. Bei deinem reinen else-Zweig ist es nämlich für den Tirgger vollkommen egal ob der Heli schon in Bewegung ist oder nicht und wird immer ausgeführt, wenn level.heli_spawn false ist (der Zustand von level.heli_moving wäre vollkommen egal).
__________________
Da die Lichtgeschwindigkeit höher ist als die Schallgeschwindigkeit,
hält man so manchen für einen hellen Kopf, bis man ihn reden hört.
|
|
|
|
|
|
|
|
 |
Impressum ||Datenschutzerklärung
|