Es gibt ein neues Tutorial von l.m..
Folgendes Tutorial wurde erstellt: Levelstart - Items auf eine bestimmte Anzahl setzen / beschränken
QuoteDisplay MoreWenn man bestimmte Items wie zb. kleine und große Medipaks beschränken möchte kann man das mit folgenden Script tun.
Setzt zu Start nur 1 kleines und 0 große Medipaks:
(Quelltext, 5 Zeilen)
Das funktioniert wenn man ein Level / Projekt hat, was nur aus einem Level besteht - oder man zum nächsten Level wechselt OHNE jemals zum ersten Level zurückkehren kann.
Nun kann es aber ja sein, dass man das Level erneut besucht (als Hub Level).
Dann würde auch bei einem erneuten Besuch des Level (man beendet das Level und kehrt zurück) die Anzahl gesetzt werden, obwohl man vielleicht im Level schon ein kleines und großes Medipak gefunden hat und man eigentlich 2 kleine und 1 großes Medipak im Inventar hat. Um dies zu umgehen kann man folgendes in das Script einbauen:
(Quelltext, 8 Zeilen)
Erklärung:
Mit einer GameVars. Variable setzt man eine "Globale" Variable die im gesamten Spiel und nicht nur im Level gültig ist. (Im Gegensatz zu einer LevelVars. Variable die NUR im aktuellen Level gültig ist)
Wenn man diese zu Anfang auf "false" setzt und dann nachfragt ob diese "false ist" (if not GameVars.SetInitialItems then) wird der Code innerhalb des IF ausgeführt, nämlich die Anzahl der Medipaks auf 0 bzw. 1 zu setzen.
Außerdem wird die GameVars.SetInitialItems auf true gesetzt. Was bedeutet, dass die Abfrage if not GameVars.SetInitialItems then danach nicht mehr erfüllt wird. Und zwar im gesamten Spiel nicht mehr (ausser ihr setzt diese wieder auf false)
[lexicon='698',''][/lexicon]