Objekt berührung

  • Objekt berührung

    Hi Leute!

    Wie kann ich überprüfen ob mehrere vom selben objekt auf dem fejld sich berühren ? also ich habe z.B ein objekt namens obj_bla so nun habe ich davon aufn feld mehrere immer durch zufall wie kann ich nun checken ob mindestens 2 sich berühren (in einer festen reihe, raster) ?? stellt es euch als ein vier gewinnt raster vor... also mit senkrechten und waage rechten aber keine diagonalen..

    hoffe mir kann jmd helfen :D

    mfg h4p0
  • Baue ein Array, in dem du in jeder Zelle die ID des Objekts speicherst, der sich an entsprechender Stelle auf deinem Rasta befindet. Also, wenn der Ursprung deines Arrays oben links ist, sagst du im Create Event, dass die ID eines Objekts, das beispielsweise im zweiten Kästchen von links und im dritten, von oben, dass es seine id in global.array[2,3] speichern soll. Und dann musst du nur noch via Code prüfen, ob sich 2 berühren:

    GML-Quellcode

    1. for (i=1; i<=/*Breite des Rastas*/-1; i+=1)
    2. {
    3. for (j=1; j<=/*Höhe des Rastas*/-1; j+=1)
    4. {
    5. if (global.array[i,j].object_index=global.array[i+1,j].object_index)
    6. {
    7. with (global.array[i,j])
    8. {
    9. instance_destroy();
    10. }
    11. with (global.array[i+1,j])
    12. {
    13. instance_destroy();
    14. }
    15. }
    16. if (global.array[i,j].object_index=global.array[i,j+1].object_index)
    17. {
    18. with (global.array[i,j])
    19. {
    20. instance_destroy();
    21. }
    22. with (global.array[i,j+1])
    23. {
    24. instance_destroy();
    25. }
    26. }
    27. }
    28. }
    Alles anzeigen


    Edit: Instance_destroy eingefügt.

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

  • hmm das mit den id verstehe ich nicht ... kannst du ggf. ein kleines example machen oder vllt. jemand anderes?

    EDIT:

    Achso kannst du noch in den code dort machen das die die aneinander sind zerstört werden?

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