Kolisions Code GML variante

  • GM 8

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

  • Kolisions Code GML variante

    Hallo zu sammen.
    GIbt es eigentlich eine GML version von dem Event :event_collision: Collision.

    Da ich gerade etwas bauen will und über prüfen will ob dort schon was steht. Bei normalen rastern wie einst bei The City war das kein ding.
    Aber die gebäüde sind um 45 Grad dreh bar. Das wäre kein ding da ich ja die Maske dann mit drehen kann mit image_angle.
    aber da ich ja mit GML statt mit Drag Drop arbeit fehlt mir dieser Code.

    Ich würde ja das Event Collision nutzen aber da kann ich ja kein else einbauen
    Meine Signatur hat kein Visum für das GM Forum erhalten.
  • Nein. Zumindest nicht in einer derartig hohen Genauigkeit.

    Als Alternative steht aber zum Beispiel collison_rectangle zu Verfügung:

    GML-Quellcode

    1. if (collision_rectangle(x1,y1,x2,y2,obj,prec,notme)) {
    2. // ...
    3. }


    x-sascha schrieb:

    Ich würde ja das Event Collision nutzen aber da kann ich ja kein else einbauen

    Könntest du dies bitte detaillierter formulieren, ich verstehe einfach den Sinn dieses Satzes nicht.

    Edit: BlackSpark hat Recht, ich vergaß dummerweise die Funktion place_meeting.

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

  • Doch, gibt es:

    GML-Quellcode

    1. place_meeting(x,y,obj)

    Das einzige, was gegenüber einem Collision-Event fehlt, ist die Möglichkeit herauszufinden, mit welcher Instanz man kollidiert ist. Im Event kann man dazu ja die Variable other verwenden. Mit place_meeting kann man aber auch direkt die Kollision mit einer bestimmten Instanz prüfen.
  • Alles klar scheint zu funktionieren.

    Man sollte wohl auch mal das kleingedruckte in der Hilfe Datei lesen. Wo bei es auch manchmal echt wie Beamtendeutsch klingt und man schon 3 mal lesen muss um es zu verstehen was gemeint ist.

    Hab immer angenommen das place_meting wie position_meting funktioniert. Aber jetzt weis ichs ja besser.

    Danke leute.
    Meine Signatur hat kein Visum für das GM Forum erhalten.
  • Das Place_metting an sich , scheint zu funktionieren.
    Aber ich hab da ein anderes Problem.
    Wenn ich das Gebäude drehe um 45 grad sollte sich die mask bzw der Sprite mit drehen.

    mit image_angle

    Bei den Wegen funktioniert das ja.

    Um es kurz zu sagen ein gedrehtes gebäude hat keine exakte kolision an den kannten da die maske irgend wie nicht ganz mit gedreht wird

    Ich hab das mal Skizziert für euch.
    Oben sind die 2 maksen wie sie sein sollten.

    Wenn dan von den Seiten ein weiteres haus angesetzt wird werden die "Grün" makierten kannsten nicht erkannt.
    Was darauf hindeute das die maske/sprite_indes nicht gedreht wurde.
    mit eine sprite ausgabe hab ich aber den Winkel optisch über prüft. Denn image_angle ist auf 45 grad gestellt.
    Meine Signatur hat kein Visum für das GM Forum erhalten.
  • Also der Test im Anhang hat bei mir ohne Probleme funktioniert. Mit der Maus kann man das eine Objekt bewegen und mit der linken und rechten Maustaste drehen. Oben in der Fensterleiste wird angezeigt, ob die beiden Objekte kollidieren. Wenn es bei dir tatsächlich nicht funktioniert, musst du uns mal eine Testdatei geben, die das zeigt. Vielleicht liegt's auch an der GM Version. Ich benutze noch 8.0.
    Dateien
  • lol wie peinlich.

    ALso erst mal. Bl@ckSp@rk. ich hab es exakt wie du und funktioniert auch.

    Ich hatte einen schreib fehler. ICh habe nicht mit bekommen das der GM beim arbeiten das wort "Image_angle"
    in Image_alpha vervollständigt hat.
    Somit ist das ja klar das die drehung nie wirklich statt gefunden hat.


    Klapt also alles. lol. Aber danke an alle für die Hilfe
    Meine Signatur hat kein Visum für das GM Forum erhalten.
  • Benutzer online 1

    1 Besucher