# Levelwechsel

Je umfangreicher ein Level wird, desdo unübersichtlicher wird dieser. Und je unübersichtlicher ein Level ist, desdo schwerer hat es der Entwikler mit dem WED. Aus diesem Grund ist es ratsam ein Projekt auf mehrere Level zu verteilen.

Hierbei müssen aber einige Sachen aus Sicht des Programmierers beachtet werden, wie z.B.:"Wo findet sich der R3D3 Roboter, im neuen Level wieder". Diese Frage lässt sich recht einfach beantworten: Er ist nämlich da zu finden, wo er im WED neu plaziert wird. Zu beachten ist in diesem Zusammenhang, dass auch unseren R3D3 Roboter erneut seine Aktion zugewiesen werden muss.

Wenn ein neues R3D3 Roboter Modell benutzt wird, sind dann nicht alle Skill- und Flag-Werte weg? Lange Frage, kurze Antwort: "Ja".

Werden also wichtige Daten, wie z.B. gefundene Schlüssel in Skills gespeichert, müssen diese vor dem Laden des nächsten Levels über das Skript gesichert werden. Variable die im Skript definiert werden, bleiben beim Laden des neuen Levels bestehen.

Erweiter das Haupt-Skript um diesen Text:

`

    string WMB_Datei1= <deck1.WMB>;

    Function level_event
    {
    if (EVENT_TYPE == EVENT_TRIGGER)
    	{
    	level_load(WMB_Datei1);
    	wait(1);
    	}
    }

    Action level1
    {
    	my.ENABLE_TRIGGER = on; // auf TRIGGER reagieren
    	my.trigger_range = 10;
    	my.event = level_event;
    }

`

Im WED musst Du noch dem Block über dem Fahrstuhl die Aktion "level1" zuweisen und den Level neu compilieren.

Starte den Level jetzt und benutze einmal den Fahrstuhl.