Platformer - Richtiges Springen

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Platformer - Richtiges Springen

    Hallo allerseitz,

    Ich arbeite an einem Platformer/Jump'n'Run und ich habe ein paar Fragen zu dem Thema "Springen".
    Ich habe es schon geschafft, dass er springt, das war ja auch gar kein Problem.
    Allerdings habe ich nun ein ganz klares Problem: Immer wenn ich mit der Taste "W" springe und die Taste noch gedrückt halte, während der Charakter in der Luft ist, gleitet er immer nach unte, anstatt zu fallen.
    Ausserdem habe ich versucht, den Sprite zu ändern, wenn er springt, dass hat allerdings nicht wirklich funktioniert und es wäre toll, wenn mir da auch jemand helfen könnte.

    Der Sprung Code:

    Step-Event:

    GML-Quellcode

    1. if keyboard_check_pressed (ord('W')) //Jumpmovement
    2. {if place_free (x,y+5) == false
    3. vspeed -= 8}


    Die Gravitation liegt bei "vspeed += 0.8".

    Liebe Grüße,
    Max/ChinoDX

    ROBOT REVOLUTION - Jetzt in Entwicklung!
  • gleitet der auch wenn du nicht gedrück hältst?
    Normalerweise müsse der wenn immer gleiten.
    mit

    GML-Quellcode

    1. ​if place_free(x,y)
    2. //Sprite zum Fliegen ändern
    3. else
    4. //Sprite auf dem Boden

    kannst du das sprite ändern

    PS: packe vielleicht zu dem code bei dir das noch hinein

    GML-Quellcode

    1. ​if keyboard_check_released(ord("W"))
    2. and vspeed < 0
    3. vspeed /= 2;
    Ein Bug ist mehr als nur ein Bug, es ist ein... Käfer!
    Egal, wie gut du eine Mauer baust, sie fällt um.... der klügere gibt nach :D

    Willst du mit mir auf Discord Chatten/Quatschen?
    Meine Husi's Tutorial Reihe
  • husi012 schrieb:

    ​if place_free(x,y)
    //Sprite zum Fliegen ändern
    else
    //Sprite auf dem Boden


    kannst du das sprite ändern


    Leider funktioniert das mit dem Sprite noch nicht so richtig, aber den Code den du mir empfohlen hast, hat wunderbar funktioniert.
    Allerdings ist das mit dem Springen schon noch so eine Sache, wo ich gerne eine Lösung wüsste...

    Liebe Grüße,
    Max/ChinoDX

    ROBOT REVOLUTION - Jetzt in Entwicklung!
  • Komplett springen wäre auch so bei mir immer Standard:

    GML-Quellcode

    1. vspeed += 1;
    2. if keyboard_check_pressed(ord("W"))
    3. and !place_free(x,y+10)
    4. vspeed += 20;
    5. if keyboard_check_released(ord("W"))
    6. and vspeed < 0
    7. vspeed /= 2;
    Ein Bug ist mehr als nur ein Bug, es ist ein... Käfer!
    Egal, wie gut du eine Mauer baust, sie fällt um.... der klügere gibt nach :D

    Willst du mit mir auf Discord Chatten/Quatschen?
    Meine Husi's Tutorial Reihe