objecte "hüpfen" lassen

    objecte "hüpfen" lassen

    Neu

    Hallo,

    ich würde gern wissen, wie ich ein object, ohne animierung hüpfen lassen kann wenn er sich bewegt.

    zb wenn ich den befehl mp_potential_step nutze. wie lasse ich die grafik oder das object sanft hüpfen?

    danke ;)

    Neu

    Am besten mit einer simulierten Sprungstärke und Gravitation.

    GML-Quellcode

    1. if keyboard space{
    2. vspeed = -jumpStrength;
    3. }
    4. if !collision_line(x,y,x,y+1,obj_boden,.. ...){
    5. vspeed += gravity; //je kleiner gravity desto höher der sprung
    6. }else{
    7. vspeed = 0;
    8. y = obj_boden.y;
    9. }


    bzw wenn das Ding wieder hochhüfen soll, wie ein basketball

    GML-Quellcode

    1. if collision_line(x,y,x,y+1,obj_boden){
    2. vspeed *= -1; //vspeed wird umgekehrt, bei 0 ist das immernoch 0 aber wenn der ball grad wieder von oben runterfällt dann wird er wieder nach oben gebounced
    3. //bei *= -0.5 steigt er nur halb so schnell nach oben wie er fällt und kommt dann langsam zur ruhe
    4. }

    ancient-pixel.com
    youtube.com/user/SebastianMerkl <<< ich freu mich über einen Besuch ;)

    Neu

    Das könntest du genauso machen wie ich es oben beschrieben habe, aber dann musst du die Werte sehr genau anpassen bis sie mit der Animation übereinstimmen.

    Du könntest aber auch einen pfad (wie ein halbkreis oÄ) erstellen und den sich immer wiederholen lassen.
    Vllt kannst du auch die tatsächliche y position oder einen offset zur y poostition durch den image_index errechnen lassen (mit einer quadratischen formel).

    Für schwebende Dinge oder view bobbing gibst auch das hier:

    GML-Quellcode

    1. //START
    2. time = 0;
    3. increment = 12;
    4. amplitude = 4;
    5. //STEP
    6. if move == true
    7. {
    8. time = (time + increment) mod 360;
    9. var offsetY= abs(amplitude * sin (degtorad(time)));
    10. y = y + offsetY;
    11. }

    ancient-pixel.com
    youtube.com/user/SebastianMerkl <<< ich freu mich über einen Besuch ;)