PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : [RPGVXAce] Variablen und Bedingungen - Probleme



alpha und beta
24.03.2013, 18:47
Tag Community,

nach langer Pause aus schulischen Gründen konnte ich heute das erste mal wieder nach langem dem Maker benutzen. Dabei wollte ich spielerich einige Elemente testen und/oder ausprobieren. Für ein Minispiel habe ich mir folgendes Überlegt:

Eine Figur steht auf einer Plattform, die aus drei Teilen besteht: Oben, Mitte und Unten. Zu Beginn des Spiels beginnt die Figur Oben und kann durch das Klicken von der unteren Pfeiltaste eine Fläche runter gehen. Doch hier klappt es einfach schon nicht. Sobald ich nach unten drücke, überspringt er die Mitte und geht gleich zur Unteren. Und wenn ich von der Unteren nach oben drücke, sofort zur Oberen.

So sollte es eigentlich Funktionieren (Die Zahlen in den Klammern ist eine Variable mit unterschiedlichen Wert):
Oben(0)>><<Mitte(1)>><<Unten(2)

So passiert es:
Oben(0)>><<Unten(2)

----
Oben:
Drückt man nach unten, soll sich die Variable = 1 sein.
Mitte:
Drückt man nach oben, soll sich die Variable = 0 sein.
Drückt man nach unten, soll sich die Variable = 2 sein.
Unten:
Drückt man nach oben, soll sich die Variable = 1 sein.

Wie gesagt. Die Mitte lässt er aber weg und Springt direkt zu Oben bzw. Unten.
Kann echt Hilfe gebrauchen. Wo habe ich einen Denkfehler! :(

PS:
Wenn ich in der Mitte die Bedingung "Runter drücken" in "Rechts/Links drücken" ändere, dann funktioniert es nach unten. Das gleiche müsste ich dann aber auch für oben machen.

Cornix
24.03.2013, 18:52
Du könntest damit anfangen deinen derzeitigen Code hier vorzustellen, dann können wir dir besser helfen.

alpha und beta
24.03.2013, 19:00
Ich weiss nicht, wie ich den Code hier vorstellen soll. Entschuldige :( Habe doch deswegen oben alles angegeben, was vorhanen ist.
Ein Event, mit den drei Seiten "Oben", "Mitte" und "Unten". Wenn die Variable Test = 0, dann ist die Seite Oben aktiv. Wenn die Variable Test = 1 dann ist die Seite Mitte aktiv. Wenn die Variable Test = 2 dann ist die Seite Unten aktiv. Und oben habe ich ja die Bedingungen aufgeschrieben, so wie ich sie im Maker selber habe.

Cornix
24.03.2013, 19:09
Dann ist das leicht zu erklären.
Dein Event funktioniert genau so wie du es willst, jedoch viel zu schnell.
Die Abfrage ob eine Taste gedrückt wird gilt für "gedrückt gehalten" und daher wandert er von Oben im nächsten Frame direkt zur Mitte und im nächsten Frame nach Unten.
Da Die Framerate standardmäßig bei 60 Frames pro Sekunde liegt ist es wahrscheinlich, dass dir das garnicht auffällt.
Es gibt einiges was du dagegen tun kannst.
Zum Einen könntest du es mit einem Wait versuchen hinter dem Wechsel.

Nun, da du aber das Problem kennst, sollte es relativ einfach für dich werden selbst auf eine Lösung zu kommen.

FlipelyFlip
25.03.2013, 15:46
nutz einfach in der Conditional Branch im letzten Tab den Punkt Script und schreib je nach dem welche Pfeiltaste du gedrückt haben willst folgendes rein:

Input.trigger?(Input::DOWN)
Input.trigger?(Input::UP)
Input.trigger?(Input::LEFT)
Input.trigger?(Input::RIGHT)

dadurch wird abgefragt ob eine Taste gedrückt wurde. Bei dieser Abfrage geht es rein nur um das drücken der Taste und nicht die dauer.

lg flipy

alpha und beta
26.03.2013, 19:22
@Cornix

Aso. Alsoo war meine Grundidee doch nicht ganz falsch. Danke dir erstmal.

@FlipelyFlip
Okay. Probiere ich einfach mal aus. Auch dir danke ich! :hehe: