GM:S Buttons zum Bewegen anderer Objekte (Android)

  • GM 8

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

  • GM:S Buttons zum Bewegen anderer Objekte (Android)

    Hallo, ich habe ein kleines Problm, eigentlich nervt es mich selber, euch mit solch einem simplen Problem zu konfrontieren.

    Ich habe 4 objekte erstellt, auf denen ich raufklicken kann, 4 Pfeiltasten.

    Diese pfeiltasten ollen den player, ein anders objekt bewegen. leider geht da snicht ganz, hspeed = 2 und ähnliches lassen das objekt zwar losrennen, aber es stopp nicht.
    Wie bekomme ich eine ordentliche bewegung hin? Ich möchte wohl mit grids arbiten, er soll also sag ich mal 32 pixel weit gehen (32x32 grid) und das nicht "ruckartig", sondern schön snaft.

    danke
  • mache in dein player das rein:
    :event_step:

    Quellcode

    1. hspeed = global.x
    2. vspeed = global.y

    feiltaste -->
    :event_mouse:

    Quellcode

    1. global.x +=1
    2. if global.x >=5
    3. global.x=5


    feiltaste <--
    :event_mouse:

    Quellcode

    1. global.x -=1
    2. if global.x <=5
    3. global.x=5


    feiltaste unten
    :event_mouse:

    Quellcode

    1. global.y +=1
    2. if global.x >=5
    3. global.y=5


    feiltaste oben
    :event_mouse:

    Quellcode

    1. global.y -=1
    2. if global.y <=5
    3. global.x=5

    kann sein das der mal falschrum läuft musste sagen
    ich weis auch nicht ob es bei deiner version geht ich habe eine andere
    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
  • Globale variable für die Richtung in die der Spieler gehen soll erstellen und in den Pfeiltasten lässt du die Variable ändern

    Das ruckartige kannst du unterbinden in dem du entweder das Object nach einem Alarm zB 32 ticks aufhören lässt zu bewegen und den speed anpasst bzw die x += 1 px

    Oder du lässt überprüfen ob die koordinaten von deinem Object ein 32faches der Raumweite/höhe sind und dann soll es stoppen. Du lässt es solang einen px in eine richtung springen bis es 32px gesprungen ist oder die Koordinate durch Raumweite 1 beträgt

    out now: KNOSSOS auf itch.io
    ancient-pixel.com <<< ich freue mich über einen Besuch! ^^
  • :event_step:

    GML-Quellcode

    1. var verschieben;
    2. verschieben = 0;
    3. if (place_meeting(x,y,obj_finger) && mouse_check_button_pressed(mb_left)) {
    4. verschieben = 1;
    5. }
    6. else {
    7. verschieben = 0;
    8. }
    9. if (verschieben == 1) {
    10. obj_stein.x = obj_finger.x;
    11. obj_stein.y = obj_finger.y;
    12. }
    Alles anzeigen



    Meinst du so was? :)