varmgr.VAR [OP] [expression]

varmgr.VAR ohne OP und ohne expression:

VAR steht für einen Variablennamen. varmgr.VAR (Ohne OP und Expr) bewirkt, dass der Inhalt der Variable als normale Message an alle Objekte verschickt wird. Anwendung: z.b. Setzt man irgendwo die Vairalbe TITELMUSIK auf die message "musikplayer.play theme1.ogg" Später in irgendeinen Programteil ruft man "varmgr.TITELMUSIK" auf und kümmert sich nicht weiter um den Inhalt. Mit diesem Ausdruck varmgr.VARNAME kann man also so etwas ähnliches wie Defines nachbauen.

varmgr.TITELMUSIK = "musikplayer.play theme1.ogg"
varmgr.TITELMUSIK   <--- Inhalt als Message verschicken

varmgr.VAROP

VAR steht für einen Variablennamen. Operator Liste: ++
Aufzählen um den Wert 1\ --
Abziehen um den Wert 1\ += Konstante | VARNAME
Aufzählen eines Konstanten Wertes, oder der Inhalt der Variable laut VARNAME.\ -= Konstante | VARNAME
Abziehen eines Konstanten Wertes, oder der Inhalt der Variable laut VARNAME.\ = Konstante | VARNAME
Zuweisung eines Konstanten Wertes, oder der Inhalt der Variable laut VARNAME.\ = RAND_P
Zuweisung eines zufälligen Wertes im Prozentbereich 0 bis einschliesslich 100.\ = RAND_B
Zuweisung eines zufälligen boolschen Wertes 0 oder 1.\ = RAND_I
Zuweisung eines zufälligen positiven Integer Wertes.\ = RAND_I maxint
Zuweisung eines zufälligen positiven Integer Wertes im Bereich 0 bis maxint.\ = RAND_I minint maxint
Zuweisung eines Zufälligen positiven Integer Wertes im Bereich minint bis maxint. = RAND_F
Zuweisung eines zufälligen Wertes zwischen 0.0f und 1.0f.\ = RAND_F maxf
Zuweisung eines zufälligen float Wertes im Bereich 0 bis maxf.\ = RAND_F minf maxf
Zuweisung eines zufälligen float Wertes im Bereich minf bis maxf. =ul> Beispiele:

varmgr.LEVELNUM++              <- Inhalt + 1
varmgr.LevelCurrent=LEVELNUM   <- levelcurrent erhält inhalt von varmgr.LEVELNUM
varmgr.LevelCurrent += 10      <- Konstante aufzählen
varmgr.SCORE -= SCORE_MALUS    <- Wert einer Variable vom Inhalt Score abzählen
varmgr.CNT_ENEMY = RAND_I 10 20 <- Wert zwischen 10 und 20

--
--Per Zufall ein Eingabefeld befüllen
--
varmgr.H=RAND_I 0 4
varmgr.IF H==1 THEN hiscoreinput.default = "Mr. No Name"
varmgr.IF H==2 THEN hiscoreinput.default = "dont know"
varmgr.IF H==3 THEN hiscoreinput.default = "guess who!"

varmgr.clear

Alle Variablen werden gelöscht.

varmgr.IF VAR OP VAR [AND ...] THEN msgstring [ELSE msgstring ]

IF Abfrage zweier Variablen. bzw. mit AND Verknüpft mehrerer Variablen. Liefert das IF ein positives Ergebnis, dann wird die Message im THEN Zweig ausgeführt. Ansonsten, wenn vorhanden, der ELSE Zweig. Gültige Operationen: ==
gleichheits Operator\ !=
ungleich Operator\ <=
kleinergleich Operator\ >=
grössergleich Operator\ <
kleiner Operator\ >
grösser Operator =ul> Beispiele:
varmgr.LEVELNUM++

varmgr.IF LEVELNUM>7 THEN varmgr.LEVELNUM=1
varmgr.IF LEVELNUM==1 THEN varmgr.SCORE=0
varmgr.IF LEVELNUM==2 THEN SCORE=10          <--- varmgr selbst kann weggelassen 
link to CActor bool CVarMgr::Message (const char *Type); bool CVarMgr::ParseMsg (const char *arg); bool CVarMgr::TranslateVar ( char *buf); bool CVarMgr::TranslateRand (char *wert);