Liste der Anhänge anzeigen (Anzahl: 2)
[2k3] Probleme mit einem Laufevent
Hey!
Ich habe ein Common Event eingebaut, in dem man per Tastendruck (Shift) laufen kann. In den Optionen kann man umstellen, ob man auf der Taste bleiben muss oder nur einmal drücken muss damit man läuft (also Toggle und Press). Nun habe ich aber folgendes Problem damit: Wenn mann das Laufen z. B. auf "Press" hat, also die Taste Shift loslassen muss um mit dem Laufen aufzuhören, und Shift genau auf einem Tile auf dem ein Switch sitzt loslässt wird der Switch nicht aktiviert.
Ein Beispiel: In einem Dorf ist ein Hügel, wenn man auf dem Hügel ist kann man über die Brücke dort gehen, ist man aber nicht auf dem Hügel kann man unter der Brücke hindurch gehen. Auf dem Aufgang zum Hügel ist ein Switch der bestimmt ob der Spieler auf dem Hügel ist (Switch On) oder nicht (Switch Off). Wenn ich nun aber nun von unten komme und auf den Hügel laufe und genau auf dem Tile wo der Switch aktiviert werden sollte die Shift Taste loslasse wird der Switch nicht aktiviert und die Brücke funktioniert nicht.
Ein anderes Beispiel wäre, dass ein Picture nicht angezeigt wird wenn man auf dem Tile, auf dem das Pic angezeigt werden sollte die Shift Taste loslässt. Das Pic sollte per "Player Touch" angezeigt werden.
Das selbe Problem habe ich allerdings auch im "Toggle" Modus, wenn man Shift genau auf den gewissen Tiles drückt.
Ich habe das Commen Event mal angehängt, ich hoffe jemand kann mir helfen!
Liste der Anhänge anzeigen (Anzahl: 1)
Ich habe dein Problem reproduzieren können. Tatsächlich sieht es so aus, als würde der Maker "Player Touch" nicht korrekt prüfen, wenn der Hero während der Dauer der Bewegung ein "Set Move Route" bekommt. Das hätte ich jetzt auch nicht erwartet.
Hier eine Reihe von möglichen Workarounds, lass mich wissen, ob einer davon für dich in Frage kommt:
- Du versuchst es mit der Trigger Condition "Collision with hero", musst aber aufpassen, dass es nicht immer wieder aktiviert wird.
- Du prüfst über ein neues Parallel Process Event, ob die Koordinaten des Helden genau das richtige Feld sind
- Du nimmst das bestehende Ebenen-Wechsel Event, ersetzt die Trigger Condition durch Parallel Process und schreibst etwa den Code drumrum den ich dir angehängt habe
Das ist leider alles nicht so richtig optimal, aber vielleicht tuts einer davon für dich.
Ganz unabhängig davon: In deinem Skript sind 3 "Wait 0.0" Befehle, ich denke nicht dass die nötig sind.
Bevor ein Parallel Process event neu beginnt, wartet es ohnehin einen Frame lang (das ist genau was "Wait 0.0" macht...).
Liste der Anhänge anzeigen (Anzahl: 1)
Erstmal Danke für die Hilfe!
Ich nehme an es handelt sich dabei um einen Bug, deshalb werde ich mal einen Bugreport zu den Entwicklern schicken und hoffen, dass sich das Problem damit fixen lässt (obwohl ich mir nicht genau sicher bin ob da noch mal ein Patch nachgereicht wird....).
Das mit der Koordinatenabfrage werde ich auf jeden Fall für das Hügelevent und verwandte Events benutzen, auch wenn der Aufwand damit nicht gerade kleiner wird. Zu meinem zweiten Beispiel wäre die Koordinatenabfrage aber suboptimal, da es sich um zu viele Tiles handelt die ein Event beherbergen (Ich füge mal eine Grafik mit ein damit du weißt was ich meine, es handelt sich um ein Picture welches an Transparenz abnimmt, je näher man an den Teleport kommt).
Die Felder ganz links löschen das Picture, rechts daneben wird das Pic angezeigt (auf 99% Transparenz) und je näher man zum Teleport kommt (die letzten Events ganz rechts bei der Statue) desto undurchsichtiger wird das Picture (per "Move Picture"). Wenn ich beim "Show Picture" Event die Shift Taste loslasse zeigt er das Bild nicht, genau so ist es auch beim "Erase Picture", somit bleibt das Picture im Bild. Wie ließe sich das am Besten fixen, hast du eine Idee?
Zitat:
Zitat von
Brei
Ganz unabhängig davon: In deinem Skript sind 3 "Wait 0.0" Befehle, ich denke nicht dass die nötig sind.
Bevor ein Parallel Process event neu beginnt, wartet es ohnehin einen Frame lang (das ist genau was "Wait 0.0" macht...).
Ups, Danke Dir, das wusste ich nicht.
Edit:
Gibts vielleicht einen Weg die Geschwindigkeit des Helden anzupassen ohne das über "Move Event" zu machen? Hab jetzt nichts gesehen, aber vielleicht gibt es ja ein externes Programm mit dem sich das bewerkstelligen ließe.