HSpeed Begrenzung

  • GM 7

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

  • HSpeed Begrenzung

    Ich mal wieder!
    Ich hab eine kleine Frage:
    Also, in meinem Key Press Left Event steht folgender Code:

    GML-Quellcode

    1. sprite_index=spr_mario_left
    2. image_speed=0.5
    3. hspeed=-1
    4. friction=-0.5
    5. if(hspeed==-5)
    6. {
    7. hspeed=-5
    8. }

    So, mit der Friction klappt alles bestens, nur meine Spielfigur wird jetzt auch schneller als hspeed 5 obwohl ich es doch "begrenzt" habe!
    Woran könnte das liegen? (Bei Key Press right (logischerweise) das gleiche)
  • Mach mal in der 5.Zeile:

    GML-Quellcode

    1. if(hspeed<=-5)


    Edit: Mir fällt grad auf, dass du in der 3. Zeile die "hspeed" einfach auf -1 setzt, obwohl du scheinbar 1 abziehen willst.
    █████ ██ █ ████ everything ███ █████ is █████ ████ ████ fine ████ ███ █ ██████ love.
    █████ ███████ ███ your █████ ████ government.
  • Mit dem Codeschnipsel, den du oben angegeben hast, kann "hspeed" gar nicht kleiner als -1 werden. Das muss an etwas anderem liegen. Ich frage mich, wozu du überhaupt prüfst, ob "hspeed" kleiner als -5 ist, wenn du es auf -1 setzt.
    █████ ██ █ ████ everything ███ █████ is █████ ████ ████ fine ████ ███ █ ██████ love.
    █████ ███████ ███ your █████ ████ government.
  • Achso! Das ist eigentlich total bescheuert, aber es funktioniert auch. Mach es doch einfach so:

    GML-Quellcode

    1. hspeed -= .25;
    2. if(hspeed <= -5) {hspeed = -5;}
    █████ ██ █ ████ everything ███ █████ is █████ ████ ████ fine ████ ███ █ ██████ love.
    █████ ███████ ███ your █████ ████ government.
  • Hm... Das müsste ich dann ins normale Key Event setzen, oder?
    Denn im Key Press Event läuft er jetzt 2 Pixel/ps
    EDIT: Aber das würde ja auch nicht gehen, denn ich brauche ja ein Key Release Event fürs langsamer werden, wenn man die Taste nach Links oder Rechts loslässt!
  • Jap. Deine Methode ist irgendwie ziemlich umständlich.
    █████ ██ █ ████ everything ███ █████ is █████ ████ ████ fine ████ ███ █ ██████ love.
    █████ ███████ ███ your █████ ████ government.
  • Ich mach sowas immer ins Step Event:

    GML-Quellcode

    1. if (keyboard_check(vk_left)) {
    2. hspeed -= 0.25;
    3. sprite_index = spr_mario_left;
    4. } else if (hspeed < 0) {hspeed += 0.25;}
    5. if (keyboard_check(vk_right)) {
    6. hspeed += 0.25;
    7. sprite_index = spr_mario_right;
    8. } else if (hspeed > 0) {hspeed -= 0.25;}
    9. hspeed = max(-5,min(5,hspeed));