diff options
Diffstat (limited to 'client/map/tiles/floor_mesher.gd')
-rw-r--r-- | client/map/tiles/floor_mesher.gd | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/client/map/tiles/floor_mesher.gd b/client/map/tiles/floor_mesher.gd index 79521795..029ec934 100644 --- a/client/map/tiles/floor_mesher.gd +++ b/client/map/tiles/floor_mesher.gd @@ -34,7 +34,11 @@ const UV: Array[Vector2] = [ Vector2.DOWN + Vector2.RIGHT, ] -var tiles: Dictionary +var tiles: Dictionary[String, Vector2i] +var mesh_instance: MeshInstance3D + +func _init(mesh: MeshInstance3D) -> void: + mesh_instance = mesh func add_tile(pos: Vector2i): tiles[str(pos)] = pos @@ -42,7 +46,7 @@ func add_tile(pos: Vector2i): func remove_tile(pos: Vector2i): tiles.erase(str(pos)) -func flush() -> ArrayMesh: +func flush() -> void: var tiles_queue = tiles.duplicate() var st := SurfaceTool.new() st.begin(Mesh.PRIMITIVE_TRIANGLES) @@ -118,4 +122,4 @@ func flush() -> ArrayMesh: st.index() st.optimize_indices_for_cache() - return st.commit() + mesh_instance.mesh = st.commit() |