trigger sound/effekt |
BadMan
Turnbeutelvergesser
 
Dabei seit: 31.01.2008
Beiträge: 278

|
|
Gut ich versuche es mal recht einfach zu erklären.
Gegeben ist erst mal 5 Trigger mit dem targetname sound_fx_trig
for(i=0;i<sound_fx_trig.size;i++)
{
sound_fx_trig[i] thread sound_fx_trig();
}
Das ist eine Schleife so in der Art wie
while(1)
{
}
Wenn du zum beispiel
for ( ; ; )
{
}
hat das den gleichen effekt wie while(1), das ganze lässt sich aber anderst steuern wie while. Klar bei while haste 1 Wert bei for 3.
Der erste Wert definiert einen wert z.B. i i = 0 kann aber auch was anderes sein z.B. 7 oder so spielt im Grunde keine rolle.
Der zweite Wert definiert wann die schleife beendet wird i < sound_fx_trig.size ende wenn i gröser ist als die Anzahl der sound_fx_trig was das auch erklärt
Der dritte wert definiert was nach jedem abspielen passieren soll i++ heißt i + 1
So also for startet (sound_fx_trig.size = 5 da ja 5 Trigger existieren)
sound_fx_trig[0] thread sound_fx_trig();
mehr ist nicht also auf start
i + 1
sound_fx_trig[1] thread sound_fx_trig();
I +1
sound_fx_trig[2] thread sound_fx_trig();
I + 1
…
sound_fx_trig[5] thread sound_fx_trig();
I +1
So I ist jetzt größer als sound_fx_trig was ja 5 ist also ende und weiter in Script, hier pasiert nichts mehr weil nichts mehr kommt.
Man kann das auch anderst machen z.B.
For ( i = 10 ; i ; i-- )
Das würde 10 mal laufen
sound_fx_trig[i] thread sound_fx_trig();
Heißt soviel wie sound_fx_trig[i] starte in thread sound_fx_trig();
thread sound_fx_trig();
Heißt starte nur thread sound_fx_trig();
sound_fx_trig();
kann mit sound_fx_trig[i] nicht mehr anfangen, da es nicht weis was das ist, dass ganze wurde aber mit dem thread geladen wird also zu self
main()
{
Temp = getent ("car","targetname");
Temp thread test();
}
Test()
{
Self movex (10 , 1);
}
So sieht das dann aus, du nimmst temp mit in den thread test()
So würde es auch gehen
main()
{
Temp = getent ("car","targetname");
thread test(temp);
}
Test(model)
{
model movex (10 , 1);
}
So nimmst du den wert temp mit also das auto, wenn thread test(model) gestartet wird ist der erste wert model = wert hier temp
Ist aber eher für sowas in der art eher geeignet
main()
{
Temp = getent ("car","targetname");
thread test(temp);
thread main2()
}
Main2()
{
plane = getent ("plane","targetname");
thread test(plane);
}
Test(model)
{
model movex (10 , 1);
}
Einmal wird test(model) mit temp einmal mit plane gestartet test liest beides als model.
Mehrere werte gehen auch
Test(wert1, wert2, wert3)
{
}
Das kann auch nur mit einem Wert gestartet werden, aber du musst dann halt dafür sorgen das die anderen werte definiert werden wenn sie es nicht sind sonst gibt’s halt je nachdem nen Fehler.
|
|
|
|
|
|
|
|
 |
Impressum ||Datenschutzerklärung
|