37x Forum

37x Forum (http://www.37x.de/forum.php)
-   Command Conquer (http://www.37x.de/command-conquer/)
-   -   [TUT] Scripten (TEIL 2) (http://www.37x.de/command-conquer/6938-tut-scripten-teil-2-a.html)

Str1k3r 20.04.2004 20:59

[TUT] Scripten (TEIL 2)
 
So das ist jetzt der 2. Teil meines kleinen Script-[TUT]s :).

Los geht’s, also in dieser Lektion geht es um Toggle's.

Was sind Toggle's?

Ein Toggle ist eine Möglichkeit mehrere Befehle auf eine Taste zubinden und diesen dann bei jedem drücken auszuführen und auf den nächsten springen zu lassen.
Hier ein Beispiel zu Verdeutlichung.

Code:

alias "beispiel" "bsp1"
 
alias "bsp1" "say das ist; alias beispiel bsp2"
alias "bsp2" "say ein toggle; alias beispiel bsp1"

Das ist jetzt wirklich nur ein sehr kurzes Toggle.

Was passiert?

Also so wie ihr "beispiel" auf eine Taste gebindet habt (was ihr ja im letzten Tut gelernt habt ;) ) und diese dann drückt passiert folgendes.

Also ihr drückt die Taste, dann wird der Befehl "say" ausgeführt, was dazu führt das der Text, in diesem Fall "das ist" ausgegeben wird. Nach dem say-Command kommt ein neues "alias". Dieses "alias" legt eine neue Funktion auf "beispiel". Vorher hatten wir für "Beispiel" den say Text: "das ist"; nun da wir ja "Beispiel" neu belegt haben, steht dort nun als say-Text: "ein toggle".

Also lange Rede kurzer Sinn. Ihr drückt die Taste, ein (oder mehrere) Befehle werden ausgeführt, dann wird die Taste mit einem neuen Befehl gebindet.

Nun mal ein nützliches Beispiel dafür.

Demoscript:

Als erstes "aliast" ihr einen Namen für euer Toggle. Ich habe mal demotoggle genommen.

Code:

alias "demotoggle" "aufnehmen1"
dieses Aufnehmen ein verweist nun auf das nächste Alias. Hier wird der Befehl record demo1.dem ausgeführt und "demotoggle" wird ein neuer Wert zugeordnet, welcher auf das nächste Alias verweist.

Code:

alias aufnehmen1 "record demo1.dem; alias demotoggle aufhoeren1"
 
alias aufhoeren1 "stop; alias demotoggle aufnehmen2"

Dieses Alias stoppt nun die auf Aufnahme der Demo und weißt wiederum "demotoggle" einen neuen Wert zu.

(hier mal der restliche Auszug)

Code:

alias decho1 "echo DEMO wird aufgenommen"
alias decho2 "echo DEMO Aufnahme beendet"
 
alias aufnehmen2 "record demo2.dem; alias demotoggle aufhoeren2; decho1"
alias aufhoeren2 "stop; alias demotoggle aufnehmen3; decho2"
 
alias aufnehmen3 "record demo3.dem; alias demotoggle aufhoeren3; decho1"
alias aufhoeren3 "stop; alias demotoggle aufnehmen4; decho2"
 
alias aufnehmen4 "record demo4.dem; alias demotoggle aufhoeren4; decho1"
alias aufhoeren4 "stop; alias demotoggle aufnehmen5; decho2"
 
alias aufnehmen5 "record demo5.dem; alias demotoggle aufhoeren5; decho1"
alias aufhoeren5 "stop; alias demotoggle aufnehmen6; decho2"
 
alias aufnehmen6 "record demo6.dem; alias demotoggle aufhoeren6; decho1"
alias aufhoeren6 "stop; alias demotoggle aufnehmen7; decho2"
 
alias aufnehmen7 "record demo7.dem; alias demotoggle aufhoeren7; decho1"
alias aufhoeren7 "stop; alias demotoggle aufnehmen8; decho2"
 
alias aufnehmen8 "record demo8.dem; alias demotoggle aufhoeren8; decho1"
alias aufhoeren8 "stop; alias demotoggle aufnehmen9; decho2"
 
alias aufnehmen9 "record demo9.dem; alias demotoggle aufhoeren9; decho1"
alias aufhoeren9 "stop; alias demotoggle aufnehmen10; decho2"
 
alias aufnehmen10 "record demo10.dem; alias demotoggle aufhoeren10; decho1"
alias aufhoeren10 "stop; alias demotoggle aufnehmen11; decho2"
 
alias aufnehmen11 "record demo11.dem; alias demotoggle aufhoeren11; decho1"
alias aufhoeren11 "stop; alias demotoggle aufnehmen12; decho2"
 
alias aufnehmen12 "record demo12.dem; alias demotoggle aufhoeren12; decho1"
alias aufhoeren12 "stop; alias demotoggle aufnehmen13; decho2"
 
alias aufnehmen13 "record demo13.dem; alias demotoggle aufhoeren13; decho1"
alias aufhoeren13 "stop; alias demotoggle aufnehmen14; decho2"
 
alias aufnehmen14 "record demo14.dem; alias demotoggle aufhoeren14; decho1"
alias aufhoeren14 "stop; alias demotoggle aufnehmen15; decho2"
 
alias aufnehmen15 "record demo15.dem; alias demotoggle aufhoeren15; decho1"
alias aufhoeren15 "stop; alias demotoggle aufnehmen16; decho2"
 
alias aufnehmen16 "record demo16.dem; alias demotoggle aufhoeren16; decho1"
alias aufhoeren16 "stop; alias demotoggle aufnehmen17; decho2"
 
alias aufnehmen17 "record demo17.dem; alias demotoggle aufhoeren17; decho1"
alias aufhoeren17 "stop; alias demotoggle aufnehmen18; decho2"
 
alias aufnehmen18 "record demo18.dem; alias demotoggle aufhoeren18; decho1"
alias aufhoeren18 "stop; alias demotoggle aufnehmen19; decho2"
 
alias aufnehmen19 "record demo19.dem; alias demotoggle aufhoeren1; decho1"
alias aufhoeren19 "stop; alias demotoggle aufnehmen20; decho2"
 
alias aufnehmen20 "record demo20.dem; alias demotoggle aufhoeren20; decho1"
alias aufhoeren20 "stop; alias demotoggle aufnehmen1; decho2"

Eigentlich müsste nun alles klar sein. zur letzten Zeile kann man vielleicht noch was sagen, also "demotoggle" bekommt jetzt wieder den Wert des ersten alias (alias aufnehmen1 "record demo1.dem; alias demotoggle aufhoeren1"). Dadurch wird jetzt wenn wir dieses Demoscript 20 mal durchlaufen haben, wieder von vorn (also bei aufnehmen1) anfangen.

Hoffe es ist jetzt nicht zu kompliziert!

Zitat:

BIG THX @ Timberland !
Da er eigentlich das [TUT] geschrieben hat...
Ich hab am [TUT] nur n bissel umgeändert…
Das nächste [TUT] schreibe wider ich, da ich im mom nich so viel Zeit hatte(Wegen Schule und so...)


GREETZ

Timberland 20.04.2004 21:05

Bitte Leuts, fragen an mich :).

Cole 20.04.2004 21:09

nice TUT Timberland sehr gut erklärt für die Anfänger :) (natürlich auch nen Lob an Striker:)

Timberland 21.04.2004 20:04

*push*

Bin mal dafür das wir das Teil hier auch als Sticky machen.

TheEvil 21.04.2004 20:05

gute erklärung :D

heinz99 21.04.2004 20:10

jo klingt leicht mal testen^^

gtex 30.06.2004 20:15

very n1 tut


Alle Zeitangaben in WEZ +2. Es ist jetzt 00:22 Uhr.

Powered by vBulletin