Player ein paar pixel wegspringen lassen

  • Player ein paar pixel wegspringen lassen

    hallo


    also ich habe einen kleinen platformer zum spass erstellt so wie super mario und wenn der player auf den enemy springt
    wird der enemy zerstört und der player hüpft nochmal nach oben...und jetzt wollt ich das wenn man von der seite in den enemy reinläuft das
    der player auch weggestoßen wird....also hab ichs ganz normal mit vspeed und hspeed probiert doch es geht nicht kann mir jemand helfen...

    hier der code

    GML-Quellcode

    1. ​if place_meeting(x,y,obj_player)
    2. {
    3. if (obj_player.y < y-25)
    4. {
    5. with (obj_player)
    6. {
    7. vspeed = -jspd;
    8. }
    9. instance_destroy();
    10. }
    11. else
    12. {
    13. global.playerlive -=1;
    14. with (obj_player)
    15. ///Hab vspeed und hspeed probiert kommt aber nicht zu dem ergebniss was ich will
    16. }
    17. }
    Alles anzeigen
  • oder es wäre eigentlich noch besser wenn er einfach zu blinken beginnt der player(also wenn er in den gegner läuft)...wie könnte ich das verwirklichen....

    und wenn das niemand weiß wäre es toll wenn mir ihr helfen könntet das der player dann einfach abprallt (als wäre er ein ball)
  • Also blinken kannst du ihn dadurch lassen das du den image_alpha jeden Step änderst:

    GML-Quellcode

    1. ///CREATE
    2. blinkvalue = false
    3. ///COLLISION OBJECT
    4. {
    5. blinken = true
    6. }
    7. ///DRAW
    8. If blinken == true
    9. {
    10. blinkvalue != blinkvalue
    11. Image_alpha= blinkvalue
    12. }
    13. else
    14. {
    15. Image_alpha= 1
    16. }
    17. //Zeichnen des Sprites mit dem image_alpha wert
    18. draw_sprite_ext(sprite_index,image_index,x,y,1,1,image_angle,c_white,image_alpha)
    Alles anzeigen

    Dieser Beitrag wurde bereits 3 mal editiert, zuletzt von Blayde ()

  • Lass einfach den selben Code auslösen wie wenn man auf die Sprungtaste + eine Richtungstaste drückt.

    Und für den sterbenden Gegner, der muss nur checken ob dein state gerade jump ist bzw dein vspeed nicht 0/größer als 0 ist.

    ancient-pixel.com
    youtube.com/user/SebastianMerkl <<< ich freu mich über einen Besuch ;)
  • ja das wäre ja dann hspeed und vspeed......


    und wegen dem mit dem sterbenden gegner...wenn ich in ihm bin also gleiche x position und dann springe stirbt er..und das darf nicht passieren.hmm ich könnte das vielleicht dadurch lösen das ich abfrage ob meine y position grösser als seine ist und wenn ja dann darf er sich nicht destroyen..... hmm muss nachdenken ....lol