Bewegungsfelder im RPG-Maker?

1 Antwort

Vom Beitragsersteller als hilfreich ausgezeichnet

Da ich mich mit dem RPG Maker nicht gut auskenne, kann ich nur grob helfen. Aber soweit ich verstanden habe, soll der Charakter ohne Eingabe automatisch bis zu einem Ereignis bewegt werden.

Problem jetzt: wird man von einem Bewegungsfeld auf ein anderes geschubst, wird das zweite Bewegungsfeld nicht aktiwiert, was ja aber sein soll.

Du kannst mit einer If-Abfrage abfragen ob eine Kollision vorhanden ist, falls nein soll es zum nächsten Feld laufen.

Beispiel:

if (!kollision) {
    move(); // Bewegung ausführen, wenn keine Kollision vorliegt
}
Die Felder mit den Pfeilen, wo die Events drauf sind, sind die Bewegungsfelder (keine Kollision). 

Ich verstehe das nicht ganz. Wenn ein Ereignis auf einem Feld ausgelöst werden soll, benötigt man einen Trigger. Um sich auf ein Feld mit einem Pfeil zu bewegen und auf das nächste Feld mit der entsprechenden Richtung des Pfeils zu gelangen, wird eine Kollision -> Trigger verursacht.

Woher ich das weiß:Studium / Ausbildung – IT-Master seit 2019

Thrilltech 
Beitragsersteller
 09.08.2023, 13:13

Naja, so halb. Wenn der Spieler auf eines der Pfeilfelder geht, dann soll dem Spieler erst einmal die Kollision deaktiviert werden (Damit er durch Wände laufen kann, da die normal-goldenen Felder als Wände zählen, damit der Spieler auch nicht einfach so darauf rumlaugen kann) z.B. 5 Felder nach oben, da 5 Felder in die obere Richtung ein weiteres Bewegungsfeld ist. Danach wird die Kollision von dem Spieler wieder angestellt, damit er nicht mehr auf dem Feldern rumlaufen kann. Das funktioniert auch soweit, nur steht der Spieler jetzt auf dem nächsten Bewegungsfeld, welches sich halt warum auch immer nicht aktiviert. Dafür müsste ich das Feld verlassen, und wieder hineingehen (warum auch immer) da sich das Event des zweiten Feldes nicht aktiviert, wenn ich durch ein anderes Feld darauf gelandet bin.

nail745  09.08.2023, 13:20
@Thrilltech

Das Problem liegt darin, dass die Kollision deaktiviert ist und du somit das Feld betreten hast, obwohl eigentlich eine Kollision vorliegen sollte. Dieses Ereignis tritt auch bei vielen anderen Spielen auf, bei denen am Anfang scheinbar nichts passiert, aber sobald man springt und dann wieder auf den Boden aufkommt, der Trigger ausgelöst wird.

Die einfachste Methode wäre, wenn du nach dem Ereignis deinen Character von einer höhe runterfallen lässt, damit der Spieler das nicht sieht aber der Trigger ausgelöst wird.