line runner sprung engine

  • GM 8

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

  • line runner sprung engine

    hallo,

    also wie schon im titel steht hätte ich gerne die sprungengine vom linerunner übernommen. D.h. man drück auf die sprungtaste und er springt bis zu einer gewissen höhe und fällt wieder. Wenn man aber druchgehen die sprungtaste gedrückt hällt fällt er langsamer. Und wenn man nur ganz kurz auf die sprungtaste drückt dann springt der player auch nur kurz.

    Jemand ne idee wie man es am besten realisieren könnte??

    Danke im vorruas :D
  • Wenn ich dich richtig verstanden hab meinst du sowas wie variable jumping?
    Wenn ja such einfach nach variable jumping da müsstest du einiges finden.
    Imagine taking your usual two century long nap minding your own business when suddenly some cunt wakes you up.
    You tell him to f*ck off of course but just when you finally managed to fall asleep again the same asshole comes knocking again. I'd attack that dick too.
  • du könntest beim kürzer springen

    GML-Quellcode

    1. if !place_free(x,y,) //falls du solide blöcke nimmst
    2. if keyboard_check_pressed(vk_up)
    3. vspeed-=20
    4. if keyboard_check_released(vk_up)
    5. if vspeed<0
    6. 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
  • Das mit dem Gleiten nach unten könntest du einfach so machen:

    GML-Quellcode

    1. if place_meeting(x, y + 1, obj_boden) //Falls du noch nicht gesprungen bist und dich auf dem Boden befindest
    2. {
    3. if keyboard_check_pressed(vk_space)
    4. {
    5. vspeed = -sprungkraft;
    6. jumping == true;
    7. }
    8. }
    9. else
    10. {
    11. if keyboard_check(vk_space) && jumping = true
    12. {
    13. //...Deine Gravity beeinflussen!
    14. }
    15. }
    16. if keyboard_check_released(vk_left) then jumping == false;
    Alles anzeigen


    Das mit dem variable jumping würde ich so machen:

    GML-Quellcode

    1. if keyboard_check(vk_space)
    2. {
    3. jumpforce += 2;
    4. }
    5. if jumpforce > 15
    6. {
    7. vspeed = -( 15 - jumpforce);
    8. jumpforce = 0;
    9. }
    10. if keyboard_check_released(vk_space)
    11. {
    12. vspeed = -(15 - jumpforce);
    13. jumpforce = 0;
    14. }
    Alles anzeigen


    Zum ersten Code:
    Zuerst wird überprüft ob sich dein Spieler auf dem Boden befindet.
    Tut er das, springen wir einmal nach oben und setzen die Variable jumping auf true, damit wir erst einmal die Sprungtaste loslassen müssen um zu gleiten.

    Zum zweiten Code:
    Hier wird einfach die Sprungkraft erhöht bis sie ans Limit kommt.
    Am Limit wird der Spieler dann in die Luft befördert.
    Sollte der Spieler davor schon loslassen, wird er mit der bisher erreichten Sprungkraft in die Luft springen.

    Hab das jetzt nicht getestet und es geht auch sicher sauberer.
    Aber so hätte ich das jetzt auf die Schnelle gemacht! ;)

    Ich hoffe ich konnte helfen :)

    -Sorm