wie kann ich mich bewegen? ich hab mir schon tutorials auf yoyogames angeschaut aber das hat mir überhaupt nicht geholfen!
wie kann ich mich bewegen?
-
-
-
Andere Möglichkeit für ein Top-Down-Spiel:
WASD-Steuerung:
Pfeiltastensteuerung:
Das müsste dann ins Step-Event hinein.
PS: das hab ich aus dem fantastischen GML-Tut von Windapple (Danke!!) GML - Die Einsteigerreferenz -
danke es klappt! ich hab toshiros genommen weil man da in alle vier richtungen gehen kann. aber wenn ich eine wand berühre bleibe ich stecken... obwohl ich hspeed = 0; benutze!
-
hmm .. vllt solltest du eine maske benutzen ... mach ein sprite, das gesau so gros ist wie dein player-sprite, aber nur in einer farbe ausgefüllt ist, z.b. schwarz ... stell dann bei deinem player-objekt unrten links bei mask nicht <same as sprite> sondern den neuen sprite, den du gerade erstellt hast ein ...
-
Oder du prüfst zuerst, ob die Stelle, an die sich das Objekt hinbewegen soll, frei ("collision_free") ist. Das würde dann so aussehen:
GML-Quellcode
EDIT: Sorry, mir ist ein dummer Fehler passiert!!! Der Code wurde (zum 2. Mal) ausgebessert!!!Dieser Beitrag wurde bereits 3 mal editiert, zuletzt von Toshiro ()
-
jetzt kann ich mich irgendwie garnicht mehr bewegen...
-
Toshiro schrieb:
Oder du prüfst zuerst, ob die Stelle, an die sich das Objekt hinbewegen soll, frei ("collision_free") ist. Das würde dann so aussehen:
GML-Quellcode
- if (keyboard_check(ord('W')))
- if (!position_meeting(x + 0, y + -4,solid))
- y -= 4;
- if (keyboard_check(ord('S')))
- if (!position_meeting(x + 0, y + 4,solid))
- y += 4;
- if (keyboard_check(ord('A')))
- if (!position_meeting(x + -4, y + 0,solid))
- x -= 4;
- if (keyboard_check(ord('D')))
- if (!position_meeting(x + 4, y + 0,solid))
- x += 4;
EDIT: Sorry, mir ist ein dummer Fehler passiert!!! Der Code wurde ausgebessert!!!
Ich glaub das Ganze funktioniert mit 'solid' nicht.
solid gibt true oder false zurück. Und nicht alle Instanzen, die Solid sind...
-
Benutzer online 1
1 Besucher