ich bekomm einfach keinen doppelsprung hin...

  • GM 7

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

  • ich bekomm einfach keinen doppelsprung hin...

    ich hab schon unzählige verschiedene varianten probiert, aber keines davon hat geholfen...

    ich will aber anders als die anderen die nach einem doppelsprung gefragt haben das der zweite sprung nicht so hoch ist wie der erste sprung...

    mein letzter versuch der leider auch fehlschlug sah wie folgt aus...

    stepevent

    GML-Quellcode

    1. if (keyboard_check(vk_up)) &!(place_meeting(x,y+1,obj_treppe)) &(place_meeting(x,y+1,obj_boden_par))
    2. {
    3. vspeed-=7;
    4. }
    5. if (keyboard_check(vk_up)) &(item_sprung=1) &(sprung=1) &(sp=1) //item_sprung stellt sicher das das item das zum doppelsprung benötigt wird eingesammelt wurde.
    6. {
    7. alarm[2]=15
    8. sp+=1;
    9. }
    10. if (place_meeting(x,y+1,obj_boden_par))
    11. {
    12. sprung =1;
    13. sp=1;
    14. }
    Alles anzeigen


    alarm2

    GML-Quellcode

    1. if (keyboard_check(vk_up)) &!(place_meeting(x,y,obj_treppe))
    2. {
    3. sprung +=1;
    4. }
    5. if (sprung=2)
    6. {
    7. vspeed=+4;
    8. }



    ich hoffe mir kann wer helfen...


  • Ok also wenn ich den Code richtig versteh wird bei dir ein Timer ausgelöst. In dem nach der Tasten eingabe verlkang wird, ich glaube das er dess wegen nicht Springt weil es unwarscheinlich ist die genau Milisekunde zu treffen wo der Timer (Alarm[2]) abgekaufen ist und du die up tuste drücken must.

    Versuch mal beim ersten sprung den timer auf 15 ( oder deine Zeitspanne) zusetzten um gleich danach fragst du ab.

    GML-Quellcode

    1. //2 Sprungaktion
    2. If Alarm[1]>15 and keyboard_check(vk_up)=true and sprung=1 then
    3. (
    4. //deine 2 Sprung aktion
    5. Alarm[1]=0
    6. )
    7. //erste Sprungaktion
    8. If keyboard_check(vk_up)=true and sprung=0 then
    9. {
    10. sprung=1
    11. vspeed-=7;
    12. alarm[1]=15
    13. }
    Alles anzeigen

    SO müste es eigentlich hinhauen. Da du mit dem Sprung ein deine Zeitspanne aufbaust von (im Beispiel) 15 milisekunden.

    Die 2 Sprung aktion ist mit absicht ganz oben, da wenn sprung ein ausgelöste wird , alles für sprung 2 ausgelegt ist und diese befehl in der Brechnung gleich als nächsten kommt. und man so schnell nicht die Sprung taste los lassen kann, wie der Computer schnell ist. so mit wir es erst beim nächgsen step möglich sein ein 2 mal zu sprignen. ( 1 Milisekunde)
    Meine Signatur hat kein Visum für das GM Forum erhalten.
  • aus unerklährlichen gründen hab ich jetzt einen megasprung, und zwar von anfang an, ich muss nichtmal das item einsammeln :S

    ich hab des jetzt so gemacht wie gesagt....

    GML-Quellcode

    1. if (alarm[2]>15) &(keyboard_check(vk_up)) &(sprung=2)
    2. {
    3. alarm[2]=0
    4. }
    5. if (keyboard_check(vk_up)) &!(place_meeting(x,y+1,obj_treppe)) &(sprung=1)
    6. {
    7. sprung=2;
    8. vspeed-=7;
    9. if(item_sprung=1)
    10. {
    11. alarm[2]=15
    12. }
    13. }
    14. if (place_meeting(x,y+1,obj_boden_par))
    15. {
    16. sprung =1;
    17. }
    Alles anzeigen


    und im alarm [2]

    GML-Quellcode

    1. if (keyboard_check(vk_up)) &!(place_meeting(x,y,obj_treppe))
    2. {
    3. sprung +=1;
    4. }
    5. if (sprung=3)
    6. {
    7. vspeed=+4;
    8. }


  • Benutzer online 1

    1 Besucher