Objekte mit Maus verschieben + SChwerkraft einstellen

    • GM 8

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

    • Objekte mit Maus verschieben + SChwerkraft einstellen

      Hallo!



      Ich arbeite an einem Spiel, indem ein Ball eine selbstgebaute Strecke mit vorgegebenen Brettern hinunterrollen soll.



      1. Wie kann ich eine Schwerkraft einstellen, sodass der Ball hinunterrollt?



      2. Wie kann ich es einstellen, sodass der Spieler die vorgegebenen Bretter auf der Seite des Feldes mit der gedrückten linken Maustaste

      aufheben und irgendwo wieder absetzen kann?



      Vielen Dank für jede Hilfe!



      lg Levin27 :vogel:
      Wenn du rechts oben auf dieses schöne, kleine Kreuzchen klickst, passiert etwas unglaubliches :whistling:
    • Zum 1.
      Das währe keine Schwerkraft, sondern Physik, wenn der Ball ROLLEN soll.
      Das kannst du mit der GMPhysics dll lösen. Such mal danach bei Google.

      2.
      Machs doch einfach so das das Objekt der Maus folgt wenn man draufdrückt und aufhört wenn man loslässt.

      EDIT: LOL die 2. Antwort war vieleicht dumm.
      Also im mouse -> left button event: variable x= mouse_x und y= mouse_y
      Wer nähmlich mit H schreibt ist dämlich... ... Moment mal!

      Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von cardeck ()

    • ich hab dieses Physics mal gedownloaded und installiert, aber was muss sich jetzt machen?

      und deine 2.te Antwort kapier ich auch net xD sorry...
      Wenn du rechts oben auf dieses schöne, kleine Kreuzchen klickst, passiert etwas unglaubliches :whistling:
    • Wenn ich das richtig verstanden habe, dann ist das eigentlich ganz einfach:
      In das Create-Event von dem Ball schreibst du:

      GML-Quellcode

      1. gravity=2 //die 2 kann aber auch beliebig verändert werden
      2. gravity_direction=270


      dann machst du ein collisons-event mit dem brett oder was auch immer du verwendest und schreibst da rein:

      GML-Quellcode

      1. move_bounce_all(true)



      Um dann später die Bretter zu verschieben schreibst du ins Mouse Left Button Event:

      GML-Quellcode

      1. x=mouse_x
      2. y=mouse_y


      Das wars. Ich hab eine Example-Datei noch mit hochgeladen.
      mfg
      Marvin
      Dateien
      • example.rar

        (17,99 kB, 255 mal heruntergeladen, zuletzt: )
    • zur physic nochmal
      ich glaub das war so:

      Create:

      GML-Quellcode

      1. if (!place_free(x,y))
      2. instance_destroy()
      3. gravity = 0.5
      4. gravity_direction = 270


      Step:

      GML-Quellcode

      1. if (!place_free(x,y+1))
      2. friction = 0.2
      3. else
      4. friction = 0
      5. image_angle = direction


      Collision mit Block:

      GML-Quellcode

      1. move_contact_solid(direction,-1)
      2. {
      3. if (!place_free(x,y-1))
      4. {
      5. vspeed = 0
      6. }
      7. if (!place_free(x,y+1))
      8. {
      9. vspeed = 0
      10. }
      11. if (!place_free(x-1,y))
      12. {
      13. hspeed = 0
      14. }
      15. if (!place_free(x+1,y))
      16. {
      17. hspeed = 0
      18. }
      19. }
      Alles anzeigen


      dann mach noch ein obj_bounce das nichts kann o.e

      danach mach Collision mit obj_bounce (obj_bounce ist der Parent von obj_bullet oder welches object auch immer...
      aufjedenfal schreibst du in das Collision event mit obj_bounce rein:

      GML-Quellcode

      1. nd = point_direction(other.x,other.y,x,y)
      2. ns = (speed*2-other.speed)/3
      3. move_contact_solid(direction,speed+gravity)
      4. {
      5. if (!place_free(x,y-1))
      6. {
      7. vspeed = 0
      8. }
      9. if (!place_free(x,y+1))
      10. {
      11. vspeed = 0
      12. }
      13. if (!place_free(x-1,y))
      14. {
      15. hspeed = 0
      16. }
      17. if (!place_free(x+1,y))
      18. {
      19. hspeed = 0
      20. }
      21. }
      22. motion_add(nd,ns)
      Alles anzeigen


      kann mich nur schwer dran erinnern XD

    • Hi,

      ich habe aus spass und langeweile ein kleines example erstellt, (alles mein code, nichts copiert)
      wie man physics auch ohne dll machen kann ;)
      vieleicht werde ich das ganz in skripte packen, oder in eine gex damit D&D leute das auch benutzen können.


      Download

      Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von Hellfish ()