tile_layer_find gibt falsche koordinaten zurück?,

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

    • tile_layer_find gibt falsche koordinaten zurück?,

      Ich gehe in einer for schleife durch 3 layer an tiles durch und versuche rauszufinden ob sich meine x und y koordinate auf einem tile befindet.

      GML-Quellcode

      1. for (i = 9999 ; i <= 10001 ; i += 1)
      2. {
      3. tile = tile_layer_find(i,x,y);
      4. if tile != -1
      5. {
      6. draw_circle(tile_get_x(tile),tile_get_y(tile),4,true);
      7. }
      8. }


      Das funktioniert meistens, aber manchmal zeigt er auch bei einem tile das überhaupt nciht in der nähe ist einen kreis an. Ich hab die kreise auch mal je nach layer eingefärbt und dann habe ich einen roten kreis bei meiner koordinate aber auch einen bleuen kreis weiter oben wo aber gar keine abfrage stattfindet.

      Ich lade gerne auch screenshots hoch um das problem zu verdeutlichen.
      Übrigens tritt das problem zwar immer an den selben stellen auf, ist aber nicht ständig da.
      Bilder
      • tiles_problem_02.png

        11,34 kB, 940×609, 69 mal angesehen

      ancient-pixel.com
      youtube.com/user/SebastianMerkl <<< ich freu mich über einen Besuch ;)

      Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von Aku_Ryou ()


    • Das funktioniert meistens, aber manchmal zeigt er auch bei einem tile das überhaupt nciht in der nähe ist einen kreis an. Ich hab die kreise auch mal je nach layer eingefärbt und dann habe ich einen roten kreis bei meiner koordinate aber auch einen bleuen kreis weiter oben wo aber gar keine abfrage stattfindet.

      Ich nehme an das deine Tiles nicht alle gleich gross sind. der tile_layer_find(i,x,y); geht über die ganze Fläche des Tiles, der Ursprung bleibt jedoch immer bei tile_get_x und tile_get_y immer 0,0 .

      Das ist was mir als erstes dazu einfällt, könnte aber auch falsch liegen.
    • Ah, danke für eine Antwort :)
      Die Tiles sind alle gleich groß, es sind halt Rhomben in Quadraten, aber alle einheitlich groß. So ein Hügerl besteht aus 16 tiles.

      ancient-pixel.com
      youtube.com/user/SebastianMerkl <<< ich freu mich über einen Besuch ;)
    • Ich hab vor zwei Wochen irgendwo im Netz gelesen, dass die Funktionen wie zb. draw_line, draw_circle oder draw_rectangle je nach Grafikkarte total anders aussehen können. Könnte es sein, dass deine Quadrate so an den falschen Ort gezweichnet werden? Du könntest nun ein Sprite zeichnen lassen, um die korrekte Position ausfindig zu machen. Oder beides, um allfällige Abweichungen zu entlarven.
      PUTREFACTION ////
      ◇ ALIEN BASTARDS ◇ SLY PITCH ◇ SHOVE MASTER ◇

    • Also ich hatte mittlerweile einen neuen Room erstellt, es sind zwei weitere layer hinzugekommen und ich kann das Problem nun nicht mehr replizieren. Keine Ahnung woran es lag. Die for Schleife hab ich nur hier im Forum falsch geschrieben, im Code passt es und ich habe jetzt nochmal meinen neuen Room komplett mit der Maus abgetastet und es funktioniert nun überall :) Es muss wohl ein Bug oÄ gewesen sein. Danke für eure Hilfe :)

      EDIT: Wo ist denn nur wieder das Thema erledigt Hakerl?

      ancient-pixel.com
      youtube.com/user/SebastianMerkl <<< ich freu mich über einen Besuch ;)