-
Ritter
Es gibt in allen Makerversionen bis hoch zum ACE einen schweren Bug der in Kombination mit Fades oder Teleports und einigen Eventfunktionen auftritt. Nach deine Beschreibung ist das hier glaube ich ein solches Problem.
Kurz gesagt, gibt es event funktionen, z.B. Move-Commands und Textbox-Befehle, die, wenn sie zwischen einem Fade Out und einem Fade In platziert werden, das System zum Crashen bringen. Diese Kommandos können nur ausgeführt werden, während der Screen sichtbar ist. Blendest du ihn mit einem Fade-Out aus, kann der Maker diese Kommandos nicht ausführen und blockiert jedes momentan im Prozess befindliche Event, dass ein solches Kommando aufruft.
Normalerweise findet man solche Fehler sehr schnell. Problematisch wird es aber in Kombination mit Parallelprozessen, weil diese oft schon während eines Teleports aufgerufen werden - und nicht erst, nachdem die Map "gültig" ist. Hier hat man also ein geringfügig anderes Timing bei des Ausführung. Wenn du jetzt beispielsweise in einem Event einen Fade-Out setzt und dann einen PP ausführst, der eine solche Crash-Funktion enthält...crasht das Spiel.
Für sich genommen sind beide Events wahrscheinlich völlig in Ordnung, das Problem ist das Timing, durch das die Events hier aneinander geraten. Dadurch, das der PP versucht eine bestimmte Anweisung auszuführen, die einen sichtbaren Screen erfordert, während das Bild durch das andere Event noch dem Fade-Out unterliegt, bleiben beide Events - und damit das Spiel - hängen.
Und soweit ich weis ist die "Set-Event-Position" Anweisung eine jener Anweisungen, die nicht während eines ausgeblendeten Screens ausgeführt werden kann. Deshalb vermute ich, das hier ein ähnliches Problem vorliegt. Du teleportierst auf die neue Map und callst dann dein Sortieren-Event. Dieses versucht vermutlich direkt im Anschluss die Events auf der neuen Map zu bewegen, kann das aber nicht, weil der Paralelprozess schon weiter arbeitet, während die Map noch geladen wird und der Screen nach dem Teleport somit noch ausgeblendet ist, wenn die Events bewegt werden sollen.
Um das Problem zu lösen musst du das Timing deiner Events so ändern, dass das neue Event erst dann anfängt, die Events auf der Map neu zu platzieren, wenn der Screen wieder sichtbar ist. Ich würde zuerstmal versuchen, einen "Wait" zwischen den Teleport und den Event-Call zu platzieren. Wenn das nicht klappt, schmeiß den Event-Call aus dem Script raus, und starte das neue Event über Autorun um sicherzustellen, dass es erst ausgeführt wird, wenn die Map gültig ist.
Geändert von caesa_andy (01.01.2015 um 03:59 Uhr)
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- Anhänge hochladen: Nein
- Beiträge bearbeiten: Nein
-
Foren-Regeln