Ab Version 1.6 können wir einen spezifischen Levelladebildschirm erzeugen, der angezeigt wird wenn man vom Level zurück zur Title wechselt.
Wir brauchen aber nicht wie früher einen Koordinaten / Zahlenwert, sondern es reicht aus eine Kamera und ein Target im Level zu platzieren.
(Es reicht auch diese zu setzen, diese müssen nicht ausgelöst werden.)
Die Camera nennen wir z.B. "LOADSCREEN_CAM":
Und das Target nennen wir z.B. "LOADSCREEN_TARGET":
Um diese Kamera mit dem Target nun als Ladebildschirm anzeigen zu lassen kann man im Level in der OnEnd Funktion nun folgendes definieren:
LevelFuncs.OnEnd = function()
GetCameraByName('LOADSCREEN_CAM'):PlayCamera(GetMoveableByName('LOADSCREEN_TARGET'))
end
Nun muss nur noch sichergestellt werden dass die Title selbst kein "loadScreenFile" hat, denn sonst wird beim verlassen des Level und laden der Title
nämlich das angezeigt was hier definiert ist:
Title.loadScreenFile = "Screens\\main.jpg"
Entweder ihr löscht diese Zeile oder setzt einen leeren Screen:
Title.loadScreenFile = ""
Nun wird (wenn ihr das Level gestartet habt und zurück zu Title wechselt) als Ladebildschirm die Kameraansicht geladen und angezeigt.
Achtung:
Wenn ihr im Title keinen oder einen leeren loadScreenFile definiert habt, wird zu Anfang wenn man das Spiel von Windows aus startet nur ein schwarzer Bildschirm angezeigt.
Info:
Möchtet ihr, dass beim Start der TEN und beim initialen Laden des Titelbildschirms ein Screen angezeigt wird,
und gleichzeitig beim Beenden eures Levels ein Ladebildschirm erscheint, wenn ihr zum Titelbildschirm zurückkehrt?
Das ist auch möglich:
Dazu setzt ihr wieder in der Title einen Screen zb. so:
Title.loadScreenFile = "Screens\\main.jpg"
Anschließend wird beim Laden der Title beim Spielstart wieder das main.jpg angezeigt.
Nun kommt der Trick:
In eurer level.lua setzt ihr (wo ihr auch in der onEnd schon die Kameraeinstellungen definiert habt) auch zusätlich in der onLoad und in der onStart folgenden Eintrag:
LevelFuncs.OnLoad = function()
Flow.GetLevel(0).loadScreenFile = ''
end
LevelFuncs.OnStart = function()
Flow.GetLevel(0).loadScreenFile = ''
end
Damit wird beim Starten eures Level das vormals definierte loadScreenFile der Title überschrieben. Und wenn loadScreenFile leer ist, so wird auch wieder beim Beenden eures Level
und Laden der Title eure eigene Kameraansicht geladen.