diff --git a/server/gameserver/mapinstance.cc b/server/gameserver/mapinstance.cc index eb72289b..061dc6eb 100644 --- a/server/gameserver/mapinstance.cc +++ b/server/gameserver/mapinstance.cc @@ -799,7 +799,7 @@ void MapInstance::LoadHouse() new_points ); } - #ifdef DEBUG + #ifdef DEBUG1 { std::string data = "old: " + node->name + " "; for (auto& point : old_points) { @@ -844,9 +844,12 @@ void MapInstance::LoadHouse() for (int i = 0; i < mesh_collider->mesh.raw_triangles.size(); i += 3) { auto& tri = a8::FastAppend(mesh_collider->mesh.triangles); tri.node = node; - tri.vert0 = mesh_collider->mesh.vertices[i + 0]; - tri.vert1 = mesh_collider->mesh.vertices[i + 1]; - tri.vert2 = mesh_collider->mesh.vertices[i + 2]; + int v0 = mesh_collider->mesh.raw_triangles[i + 0]; + int v1 = mesh_collider->mesh.raw_triangles[i + 1]; + int v2 = mesh_collider->mesh.raw_triangles[i + 2]; + tri.vert0 = mesh_collider->mesh.vertices[v0]; + tri.vert1 = mesh_collider->mesh.vertices[v1]; + tri.vert2 = mesh_collider->mesh.vertices[v2]; tri.min_y = tri.vert0.y; tri.max_y = tri.vert0.y; for (int ii = 1; ii < 3; ++ii) { diff --git a/server/gameserver/mapservice.cc b/server/gameserver/mapservice.cc index c8e0dd1f..dd37bdf8 100644 --- a/server/gameserver/mapservice.cc +++ b/server/gameserver/mapservice.cc @@ -110,7 +110,7 @@ void MapService::AddTriangle(mc::Triangle* tri) int min_grid_y = floor(min_y / cell_width_); int max_grid_x = ceil(max_x / cell_width_); int max_grid_y = ceil(max_y / cell_width_); - if (min_grid_x == -1) { + if (min_grid_x < 0) { min_grid_x = 0; } if (min_grid_x < 0) { @@ -119,7 +119,7 @@ void MapService::AddTriangle(mc::Triangle* tri) if (max_grid_x >= map_width_) { max_grid_x = map_width_ - 1; } - if (min_grid_y == -1) { + if (min_grid_y < 0) { min_grid_y = 0; } if (min_grid_y < 0) {