Physic place meeting Abfrage

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

  • Physic place meeting Abfrage

    Vorwort (bei nicht interesse bei "Problem" weiterlesen):
    Nach dem ich nen schicken Platformer habe, habe ich versuch das ganze mit Physics zu ergänzen. Physics sollten in meine Spiel z.B. für Fahrzeuge nun mal ein Bestandteil werden. Leider musste ich feststellen das im Game Maker Physics und der ganze rest klar getrennt sind, was mich natürlich zuerst extremst frustriert hat, sowas kenne ich aus keiner anderen Engine. Wie dem auch sei, alles auf Physics angepasst und nun komme ich zu dem->

    Problem:
    Wenn ich eine Abfrage mit if place meeting mache, bezieht sich das immer auf die Sprite Collision Mask, egal ob ich z.B. place meeting (x,y,ogj) oder place meeting (phy_position_x,phy_position_y,ogj) mache. Es wird wie es mir scheint immer die Sprite collision Mask und nie die Physikalische Maske verwendet. Gibt es eine Möglichkeit das sich das ganze auf die Physic Mask bezieht?
  • Vesteh das leider noch nicht ganz. Das collsion Event habe ich bereits mit einem leeren code, damit es nicht gelöscht wird. Habe jetzt mal testweise sowas wie

    GML-Quellcode

    1. colycheck = phy_collision_y


    eingefügt. Was sollte die Variable phy_collision_y mir rausgeben? True False? Wenn ich mir das anzeigen lasse steht da immer 0. Aus der Dokumentation werde ich auch nicht schlau.

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

  • Was willst du eigentlich genau machen?

    Wenn du willst, dass die 2 Objekte kollidieren, dann einfach nur die Collision Group angleichen( zB 1)
    Wenn du jetzt noch ein "Ereigniss" bei eine Kollision haben willst, dann einfach im Collision Event (zwischen den 2 Objekten) deinen Code schreiben.
    Und wenn du jetzt noch die X-Y Koordinaten der Kollision haben willst... dann kannst du im Collision-Event diese mit

    GML-Quellcode

    1. for(i = 0; i < phy_collision_points;i++)
    2. {
    3. col_* = phy_collision_*;
    4. }

    abfragen.