diff --git a/lib/gamacon b/lib/gamacon
index 75e9aa7..404c051 160000
--- a/lib/gamacon
+++ b/lib/gamacon
@@ -1 +1 @@
-Subproject commit 75e9aa7b3876962a910e19560c77b55224262fc7
+Subproject commit 404c051d26419cf462d3b08a2d89ba7e6daaa558
diff --git a/lib/xmlparser b/lib/xmlparser
index 91f3604..e09c121 160000
--- a/lib/xmlparser
+++ b/lib/xmlparser
@@ -1 +1 @@
-Subproject commit 91f3604772158a2ff8c17fb74459088004e4fe15
+Subproject commit e09c121a560004d1f05ee56d73cebb8bc2ad3767
diff --git a/prefabs/tilemap.gcmap b/prefabs/tilemap.gcmap
index f0abb77..44f0b9d 100644
--- a/prefabs/tilemap.gcmap
+++ b/prefabs/tilemap.gcmap
@@ -193,7 +193,7 @@
-
+
@@ -205,7 +205,7 @@
-
+
@@ -217,7 +217,7 @@
-
+
@@ -229,7 +229,7 @@
-
+
@@ -241,7 +241,7 @@
-
+
@@ -253,7 +253,7 @@
-
+
@@ -265,7 +265,7 @@
-
+
diff --git a/src/isometry/tile_collision_manager.c b/src/isometry/tile_collision_manager.c
index 229f4b2..d6c82de 100644
--- a/src/isometry/tile_collision_manager.c
+++ b/src/isometry/tile_collision_manager.c
@@ -28,7 +28,8 @@ int orientation(gc_vector2 p, gc_vector2 q, gc_vector2 r)
return ((tmp > 0) ? 1 : 2);
}
-bool gc_vector2_do_intersect(gc_vector2 p1, gc_vector2 q1, gc_vector2 p2, gc_vector2 q2)
+bool gc_vector2_do_intersect(gc_vector2 p1, gc_vector2 q1, \
+gc_vector2 p2, gc_vector2 q2)
{
int o1 = orientation(p1, q1, p2);
int o2 = orientation(p1, q1, q2);
@@ -74,7 +75,8 @@ bool is_pos_in_tile(gc_vector2 pos, struct tile *tile)
struct vertex **c = tile->corners;
gc_vector2 corners[4];
+ pos.y *= -1;
for (int i = 0; i < 4; i++)
- corners[i] = get_tile_coords_to_pixels(c[i]->x, c[i]->y, c[i]->z);
+ corners[i] = gc_vector2_from_coords(c[i]->x, c[i]->y, c[i]->z);
return (is_point_in_polygon(corners, 4, pos));
}
\ No newline at end of file