diff --git a/DungeonShooting_Godot/project.godot b/DungeonShooting_Godot/project.godot
index a611d9f..5a61829 100644
--- a/DungeonShooting_Godot/project.godot
+++ b/DungeonShooting_Godot/project.godot
@@ -11,7 +11,7 @@
[application]
config/name="DungeonShooting"
-run/main_scene="res://scene/Main.tscn"
+run/main_scene="res://scene/test/TestNewTerrain.tscn"
config/features=PackedStringArray("4.2", "C#")
config/icon="res://icon.png"
diff --git a/DungeonShooting_Godot/resource/tileSet/map2/TileSet2.tres b/DungeonShooting_Godot/resource/tileSet/map2/TileSet2.tres
new file mode 100644
index 0000000..76ef1e9
--- /dev/null
+++ b/DungeonShooting_Godot/resource/tileSet/map2/TileSet2.tres
@@ -0,0 +1,502 @@
+[gd_resource type="TileSet" load_steps=3 format=3 uid="uid://cu80e6kxc3c3x"]
+
+[ext_resource type="Texture2D" uid="uid://bcoae24vin57c" path="res://resource/tileSprite/map2/Dungeon Tileset.png" id="1_7x2ev"]
+
+[sub_resource type="TileSetAtlasSource" id="TileSetAtlasSource_1xc4b"]
+texture = ExtResource("1_7x2ev")
+0:0/0 = 0
+0:0/0/terrain_set = 0
+0:0/0/terrain = 0
+0:0/0/physics_layer_0/linear_velocity = Vector2(0, 0)
+0:0/0/physics_layer_0/angular_velocity = 0.0
+0:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, 0, 8, 0, 8, 8, -8, 8)
+0:0/0/terrains_peering_bit/bottom_side = 0
+1:0/0 = 0
+1:0/0/terrain_set = 0
+1:0/0/terrain = 0
+1:0/0/physics_layer_0/linear_velocity = Vector2(0, 0)
+1:0/0/physics_layer_0/angular_velocity = 0.0
+1:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, 0, 8, 0, 8, 8, -8, 8)
+1:0/0/terrains_peering_bit/right_side = 0
+1:0/0/terrains_peering_bit/bottom_side = 0
+2:0/0 = 0
+2:0/0/terrain_set = 0
+2:0/0/terrain = 0
+2:0/0/physics_layer_0/linear_velocity = Vector2(0, 0)
+2:0/0/physics_layer_0/angular_velocity = 0.0
+2:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, 0, 8, 0, 8, 8, -8, 8)
+2:0/0/terrains_peering_bit/right_side = 0
+2:0/0/terrains_peering_bit/bottom_side = 0
+2:0/0/terrains_peering_bit/left_side = 0
+3:0/0 = 0
+3:0/0/terrain_set = 0
+3:0/0/terrain = 0
+3:0/0/physics_layer_0/linear_velocity = Vector2(0, 0)
+3:0/0/physics_layer_0/angular_velocity = 0.0
+3:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, 0, 8, 0, 8, 8, -8, 8)
+3:0/0/terrains_peering_bit/bottom_side = 0
+3:0/0/terrains_peering_bit/left_side = 0
+4:0/0 = 0
+4:0/0/terrain_set = 0
+4:0/0/terrain = 0
+4:0/0/physics_layer_0/linear_velocity = Vector2(0, 0)
+4:0/0/physics_layer_0/angular_velocity = 0.0
+4:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
+4:0/0/terrains_peering_bit/right_side = 0
+4:0/0/terrains_peering_bit/bottom_side = 0
+4:0/0/terrains_peering_bit/left_side = 0
+4:0/0/terrains_peering_bit/top_left_corner = 0
+4:0/0/terrains_peering_bit/top_side = 0
+5:0/0 = 0
+5:0/0/terrain_set = 0
+5:0/0/terrain = 0
+5:0/0/physics_layer_0/linear_velocity = Vector2(0, 0)
+5:0/0/physics_layer_0/angular_velocity = 0.0
+5:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, 0, 8, 0, 8, 8, -8, 8)
+5:0/0/terrains_peering_bit/right_side = 0
+5:0/0/terrains_peering_bit/bottom_right_corner = 0
+5:0/0/terrains_peering_bit/bottom_side = 0
+5:0/0/terrains_peering_bit/left_side = 0
+6:0/0 = 0
+6:0/0/terrain_set = 0
+6:0/0/terrain = 0
+6:0/0/physics_layer_0/linear_velocity = Vector2(0, 0)
+6:0/0/physics_layer_0/angular_velocity = 0.0
+6:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, 0, 8, 0, 8, 8, -8, 8)
+6:0/0/terrains_peering_bit/right_side = 0
+6:0/0/terrains_peering_bit/bottom_side = 0
+6:0/0/terrains_peering_bit/bottom_left_corner = 0
+6:0/0/terrains_peering_bit/left_side = 0
+7:0/0 = 0
+7:0/0/terrain_set = 0
+7:0/0/terrain = 0
+7:0/0/physics_layer_0/linear_velocity = Vector2(0, 0)
+7:0/0/physics_layer_0/angular_velocity = 0.0
+7:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
+7:0/0/terrains_peering_bit/right_side = 0
+7:0/0/terrains_peering_bit/bottom_side = 0
+7:0/0/terrains_peering_bit/left_side = 0
+7:0/0/terrains_peering_bit/top_side = 0
+7:0/0/terrains_peering_bit/top_right_corner = 0
+8:0/0 = 0
+8:0/0/terrain_set = 0
+8:0/0/terrain = 0
+8:0/0/physics_layer_0/linear_velocity = Vector2(0, 0)
+8:0/0/physics_layer_0/angular_velocity = 0.0
+8:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, 0, 8, 0, 8, 8, -8, 8)
+8:0/0/terrains_peering_bit/right_side = 0
+8:0/0/terrains_peering_bit/bottom_right_corner = 0
+8:0/0/terrains_peering_bit/bottom_side = 0
+9:0/0 = 0
+9:0/0/terrain_set = 0
+9:0/0/terrain = 0
+9:0/0/physics_layer_0/linear_velocity = Vector2(0, 0)
+9:0/0/physics_layer_0/angular_velocity = 0.0
+9:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
+9:0/0/terrains_peering_bit/right_side = 0
+9:0/0/terrains_peering_bit/bottom_right_corner = 0
+9:0/0/terrains_peering_bit/bottom_side = 0
+9:0/0/terrains_peering_bit/bottom_left_corner = 0
+9:0/0/terrains_peering_bit/left_side = 0
+9:0/0/terrains_peering_bit/top_side = 0
+10:0/0 = 0
+10:0/0/terrain_set = 0
+10:0/0/terrain = 0
+10:0/0/physics_layer_0/linear_velocity = Vector2(0, 0)
+10:0/0/physics_layer_0/angular_velocity = 0.0
+10:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, 0, 8, 0, 8, 8, -8, 8)
+10:0/0/terrains_peering_bit/right_side = 0
+10:0/0/terrains_peering_bit/bottom_right_corner = 0
+10:0/0/terrains_peering_bit/bottom_side = 0
+10:0/0/terrains_peering_bit/bottom_left_corner = 0
+10:0/0/terrains_peering_bit/left_side = 0
+11:0/0 = 0
+11:0/0/terrain_set = 0
+11:0/0/terrain = 0
+11:0/0/physics_layer_0/linear_velocity = Vector2(0, 0)
+11:0/0/physics_layer_0/angular_velocity = 0.0
+11:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, 0, 8, 0, 8, 8, -8, 8)
+11:0/0/terrains_peering_bit/bottom_side = 0
+11:0/0/terrains_peering_bit/bottom_left_corner = 0
+11:0/0/terrains_peering_bit/left_side = 0
+0:1/0 = 0
+0:1/0/terrain_set = 0
+0:1/0/terrain = 0
+0:1/0/physics_layer_0/linear_velocity = Vector2(0, 0)
+0:1/0/physics_layer_0/angular_velocity = 0.0
+0:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
+0:1/0/terrains_peering_bit/bottom_side = 0
+0:1/0/terrains_peering_bit/top_side = 0
+1:1/0 = 0
+1:1/0/terrain_set = 0
+1:1/0/terrain = 0
+1:1/0/physics_layer_0/linear_velocity = Vector2(0, 0)
+1:1/0/physics_layer_0/angular_velocity = 0.0
+1:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
+1:1/0/terrains_peering_bit/right_side = 0
+1:1/0/terrains_peering_bit/bottom_side = 0
+1:1/0/terrains_peering_bit/top_side = 0
+2:1/0 = 0
+2:1/0/terrain_set = 0
+2:1/0/terrain = 0
+2:1/0/physics_layer_0/linear_velocity = Vector2(0, 0)
+2:1/0/physics_layer_0/angular_velocity = 0.0
+2:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
+2:1/0/terrains_peering_bit/right_side = 0
+2:1/0/terrains_peering_bit/bottom_side = 0
+2:1/0/terrains_peering_bit/left_side = 0
+2:1/0/terrains_peering_bit/top_side = 0
+3:1/0 = 0
+3:1/0/terrain_set = 0
+3:1/0/terrain = 0
+3:1/0/physics_layer_0/linear_velocity = Vector2(0, 0)
+3:1/0/physics_layer_0/angular_velocity = 0.0
+3:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
+3:1/0/terrains_peering_bit/bottom_side = 0
+3:1/0/terrains_peering_bit/left_side = 0
+3:1/0/terrains_peering_bit/top_side = 0
+4:1/0 = 0
+4:1/0/terrain_set = 0
+4:1/0/terrain = 0
+4:1/0/physics_layer_0/linear_velocity = Vector2(0, 0)
+4:1/0/physics_layer_0/angular_velocity = 0.0
+4:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
+4:1/0/terrains_peering_bit/right_side = 0
+4:1/0/terrains_peering_bit/bottom_right_corner = 0
+4:1/0/terrains_peering_bit/bottom_side = 0
+4:1/0/terrains_peering_bit/top_side = 0
+5:1/0 = 0
+5:1/0/terrain_set = 0
+5:1/0/terrain = 0
+5:1/0/physics_layer_0/linear_velocity = Vector2(0, 0)
+5:1/0/physics_layer_0/angular_velocity = 0.0
+5:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
+5:1/0/terrains_peering_bit/right_side = 0
+5:1/0/terrains_peering_bit/bottom_right_corner = 0
+5:1/0/terrains_peering_bit/bottom_side = 0
+5:1/0/terrains_peering_bit/bottom_left_corner = 0
+5:1/0/terrains_peering_bit/left_side = 0
+5:1/0/terrains_peering_bit/top_side = 0
+5:1/0/terrains_peering_bit/top_right_corner = 0
+6:1/0 = 0
+6:1/0/terrain_set = 0
+6:1/0/terrain = 0
+6:1/0/physics_layer_0/linear_velocity = Vector2(0, 0)
+6:1/0/physics_layer_0/angular_velocity = 0.0
+6:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
+6:1/0/terrains_peering_bit/right_side = 0
+6:1/0/terrains_peering_bit/bottom_right_corner = 0
+6:1/0/terrains_peering_bit/bottom_side = 0
+6:1/0/terrains_peering_bit/bottom_left_corner = 0
+6:1/0/terrains_peering_bit/left_side = 0
+6:1/0/terrains_peering_bit/top_left_corner = 0
+6:1/0/terrains_peering_bit/top_side = 0
+7:1/0 = 0
+7:1/0/terrain_set = 0
+7:1/0/terrain = 0
+7:1/0/physics_layer_0/linear_velocity = Vector2(0, 0)
+7:1/0/physics_layer_0/angular_velocity = 0.0
+7:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
+7:1/0/terrains_peering_bit/bottom_side = 0
+7:1/0/terrains_peering_bit/bottom_left_corner = 0
+7:1/0/terrains_peering_bit/left_side = 0
+7:1/0/terrains_peering_bit/top_side = 0
+8:1/0 = 0
+8:1/0/terrain_set = 0
+8:1/0/terrain = 0
+8:1/0/physics_layer_0/linear_velocity = Vector2(0, 0)
+8:1/0/physics_layer_0/angular_velocity = 0.0
+8:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
+8:1/0/terrains_peering_bit/right_side = 0
+8:1/0/terrains_peering_bit/bottom_right_corner = 0
+8:1/0/terrains_peering_bit/bottom_side = 0
+8:1/0/terrains_peering_bit/top_side = 0
+8:1/0/terrains_peering_bit/top_right_corner = 0
+9:1/0 = 0
+9:1/0/terrain_set = 0
+9:1/0/terrain = 0
+9:1/0/physics_layer_0/linear_velocity = Vector2(0, 0)
+9:1/0/physics_layer_0/angular_velocity = 0.0
+9:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
+9:1/0/terrains_peering_bit/right_side = 0
+9:1/0/terrains_peering_bit/bottom_right_corner = 0
+9:1/0/terrains_peering_bit/bottom_side = 0
+9:1/0/terrains_peering_bit/left_side = 0
+9:1/0/terrains_peering_bit/top_left_corner = 0
+9:1/0/terrains_peering_bit/top_side = 0
+11:1/0 = 0
+11:1/0/terrain_set = 0
+11:1/0/terrain = 0
+11:1/0/physics_layer_0/linear_velocity = Vector2(0, 0)
+11:1/0/physics_layer_0/angular_velocity = 0.0
+11:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
+11:1/0/terrains_peering_bit/right_side = 0
+11:1/0/terrains_peering_bit/bottom_side = 0
+11:1/0/terrains_peering_bit/bottom_left_corner = 0
+11:1/0/terrains_peering_bit/left_side = 0
+11:1/0/terrains_peering_bit/top_left_corner = 0
+11:1/0/terrains_peering_bit/top_side = 0
+0:2/0 = 0
+0:2/0/terrain_set = 0
+0:2/0/terrain = 0
+0:2/0/physics_layer_0/linear_velocity = Vector2(0, 0)
+0:2/0/physics_layer_0/angular_velocity = 0.0
+0:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
+0:2/0/terrains_peering_bit/top_side = 0
+1:2/0 = 0
+1:2/0/terrain_set = 0
+1:2/0/terrain = 0
+1:2/0/physics_layer_0/linear_velocity = Vector2(0, 0)
+1:2/0/physics_layer_0/angular_velocity = 0.0
+1:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
+1:2/0/terrains_peering_bit/right_side = 0
+1:2/0/terrains_peering_bit/top_side = 0
+2:2/0 = 0
+2:2/0/terrain_set = 0
+2:2/0/terrain = 0
+2:2/0/physics_layer_0/linear_velocity = Vector2(0, 0)
+2:2/0/physics_layer_0/angular_velocity = 0.0
+2:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
+2:2/0/terrains_peering_bit/right_side = 0
+2:2/0/terrains_peering_bit/left_side = 0
+2:2/0/terrains_peering_bit/top_side = 0
+3:2/0 = 0
+3:2/0/terrain_set = 0
+3:2/0/terrain = 0
+3:2/0/physics_layer_0/linear_velocity = Vector2(0, 0)
+3:2/0/physics_layer_0/angular_velocity = 0.0
+3:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
+3:2/0/terrains_peering_bit/left_side = 0
+3:2/0/terrains_peering_bit/top_side = 0
+4:2/0 = 0
+4:2/0/terrain_set = 0
+4:2/0/terrain = 0
+4:2/0/physics_layer_0/linear_velocity = Vector2(0, 0)
+4:2/0/physics_layer_0/angular_velocity = 0.0
+4:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
+4:2/0/terrains_peering_bit/right_side = 0
+4:2/0/terrains_peering_bit/bottom_side = 0
+4:2/0/terrains_peering_bit/top_side = 0
+4:2/0/terrains_peering_bit/top_right_corner = 0
+5:2/0 = 0
+5:2/0/terrain_set = 0
+5:2/0/terrain = 0
+5:2/0/physics_layer_0/linear_velocity = Vector2(0, 0)
+5:2/0/physics_layer_0/angular_velocity = 0.0
+5:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
+5:2/0/terrains_peering_bit/right_side = 0
+5:2/0/terrains_peering_bit/bottom_right_corner = 0
+5:2/0/terrains_peering_bit/bottom_side = 0
+5:2/0/terrains_peering_bit/left_side = 0
+5:2/0/terrains_peering_bit/top_left_corner = 0
+5:2/0/terrains_peering_bit/top_side = 0
+5:2/0/terrains_peering_bit/top_right_corner = 0
+6:2/0 = 0
+6:2/0/terrain_set = 0
+6:2/0/terrain = 0
+6:2/0/physics_layer_0/linear_velocity = Vector2(0, 0)
+6:2/0/physics_layer_0/angular_velocity = 0.0
+6:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
+6:2/0/terrains_peering_bit/right_side = 0
+6:2/0/terrains_peering_bit/bottom_side = 0
+6:2/0/terrains_peering_bit/bottom_left_corner = 0
+6:2/0/terrains_peering_bit/left_side = 0
+6:2/0/terrains_peering_bit/top_left_corner = 0
+6:2/0/terrains_peering_bit/top_side = 0
+6:2/0/terrains_peering_bit/top_right_corner = 0
+7:2/0 = 0
+7:2/0/terrain_set = 0
+7:2/0/terrain = 0
+7:2/0/physics_layer_0/linear_velocity = Vector2(0, 0)
+7:2/0/physics_layer_0/angular_velocity = 0.0
+7:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
+7:2/0/terrains_peering_bit/bottom_side = 0
+7:2/0/terrains_peering_bit/left_side = 0
+7:2/0/terrains_peering_bit/top_left_corner = 0
+7:2/0/terrains_peering_bit/top_side = 0
+8:2/0 = 0
+8:2/0/terrain_set = 0
+8:2/0/terrain = 0
+8:2/0/physics_layer_0/linear_velocity = Vector2(0, 0)
+8:2/0/physics_layer_0/angular_velocity = 0.0
+8:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
+8:2/0/terrains_peering_bit/right_side = 0
+8:2/0/terrains_peering_bit/bottom_right_corner = 0
+8:2/0/terrains_peering_bit/bottom_side = 0
+8:2/0/terrains_peering_bit/left_side = 0
+8:2/0/terrains_peering_bit/top_side = 0
+8:2/0/terrains_peering_bit/top_right_corner = 0
+9:2/0 = 0
+9:2/0/terrain_set = 0
+9:2/0/terrain = 0
+9:2/0/physics_layer_0/linear_velocity = Vector2(0, 0)
+9:2/0/physics_layer_0/angular_velocity = 0.0
+9:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
+9:2/0/terrains_peering_bit/right_side = 0
+9:2/0/terrains_peering_bit/bottom_right_corner = 0
+9:2/0/terrains_peering_bit/bottom_side = 0
+9:2/0/terrains_peering_bit/bottom_left_corner = 0
+9:2/0/terrains_peering_bit/left_side = 0
+9:2/0/terrains_peering_bit/top_left_corner = 0
+9:2/0/terrains_peering_bit/top_side = 0
+9:2/0/terrains_peering_bit/top_right_corner = 0
+10:2/0 = 0
+10:2/0/terrain_set = 0
+10:2/0/terrain = 0
+10:2/0/physics_layer_0/linear_velocity = Vector2(0, 0)
+10:2/0/physics_layer_0/angular_velocity = 0.0
+10:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
+10:2/0/terrains_peering_bit/right_side = 0
+10:2/0/terrains_peering_bit/bottom_side = 0
+10:2/0/terrains_peering_bit/bottom_left_corner = 0
+10:2/0/terrains_peering_bit/left_side = 0
+10:2/0/terrains_peering_bit/top_side = 0
+10:2/0/terrains_peering_bit/top_right_corner = 0
+11:2/0 = 0
+11:2/0/terrain_set = 0
+11:2/0/terrain = 0
+11:2/0/physics_layer_0/linear_velocity = Vector2(0, 0)
+11:2/0/physics_layer_0/angular_velocity = 0.0
+11:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
+11:2/0/terrains_peering_bit/bottom_side = 0
+11:2/0/terrains_peering_bit/bottom_left_corner = 0
+11:2/0/terrains_peering_bit/left_side = 0
+11:2/0/terrains_peering_bit/top_left_corner = 0
+11:2/0/terrains_peering_bit/top_side = 0
+0:3/0 = 0
+0:3/0/terrain_set = 0
+0:3/0/terrain = 0
+0:3/0/physics_layer_0/linear_velocity = Vector2(0, 0)
+0:3/0/physics_layer_0/angular_velocity = 0.0
+0:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, 0, 8, 0, 8, 8, -8, 8)
+1:3/0 = 0
+1:3/0/terrain_set = 0
+1:3/0/terrain = 0
+1:3/0/physics_layer_0/linear_velocity = Vector2(0, 0)
+1:3/0/physics_layer_0/angular_velocity = 0.0
+1:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, 0, 8, 0, 8, 8, -8, 8)
+1:3/0/terrains_peering_bit/right_side = 0
+2:3/0 = 0
+2:3/0/terrain_set = 0
+2:3/0/terrain = 0
+2:3/0/physics_layer_0/linear_velocity = Vector2(0, 0)
+2:3/0/physics_layer_0/angular_velocity = 0.0
+2:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, 0, 8, 0, 8, 8, -8, 8)
+2:3/0/terrains_peering_bit/right_side = 0
+2:3/0/terrains_peering_bit/left_side = 0
+3:3/0 = 0
+3:3/0/terrain_set = 0
+3:3/0/terrain = 0
+3:3/0/physics_layer_0/linear_velocity = Vector2(0, 0)
+3:3/0/physics_layer_0/angular_velocity = 0.0
+3:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, 0, 8, 0, 8, 8, -8, 8)
+3:3/0/terrains_peering_bit/left_side = 0
+4:3/0 = 0
+4:3/0/terrain_set = 0
+4:3/0/terrain = 0
+4:3/0/physics_layer_0/linear_velocity = Vector2(0, 0)
+4:3/0/physics_layer_0/angular_velocity = 0.0
+4:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
+4:3/0/terrains_peering_bit/right_side = 0
+4:3/0/terrains_peering_bit/bottom_side = 0
+4:3/0/terrains_peering_bit/bottom_left_corner = 0
+4:3/0/terrains_peering_bit/left_side = 0
+4:3/0/terrains_peering_bit/top_side = 0
+5:3/0 = 0
+5:3/0/terrain_set = 0
+5:3/0/terrain = 0
+5:3/0/physics_layer_0/linear_velocity = Vector2(0, 0)
+5:3/0/physics_layer_0/angular_velocity = 0.0
+5:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
+5:3/0/terrains_peering_bit/right_side = 0
+5:3/0/terrains_peering_bit/left_side = 0
+5:3/0/terrains_peering_bit/top_side = 0
+5:3/0/terrains_peering_bit/top_right_corner = 0
+6:3/0 = 0
+6:3/0/terrain_set = 0
+6:3/0/terrain = 0
+6:3/0/physics_layer_0/linear_velocity = Vector2(0, 0)
+6:3/0/physics_layer_0/angular_velocity = 0.0
+6:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
+6:3/0/terrains_peering_bit/right_side = 0
+6:3/0/terrains_peering_bit/left_side = 0
+6:3/0/terrains_peering_bit/top_left_corner = 0
+6:3/0/terrains_peering_bit/top_side = 0
+7:3/0 = 0
+7:3/0/terrain_set = 0
+7:3/0/terrain = 0
+7:3/0/physics_layer_0/linear_velocity = Vector2(0, 0)
+7:3/0/physics_layer_0/angular_velocity = 0.0
+7:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
+7:3/0/terrains_peering_bit/right_side = 0
+7:3/0/terrains_peering_bit/bottom_right_corner = 0
+7:3/0/terrains_peering_bit/bottom_side = 0
+7:3/0/terrains_peering_bit/left_side = 0
+7:3/0/terrains_peering_bit/top_side = 0
+8:3/0 = 0
+8:3/0/terrain_set = 0
+8:3/0/terrain = 0
+8:3/0/physics_layer_0/linear_velocity = Vector2(0, 0)
+8:3/0/physics_layer_0/angular_velocity = 0.0
+8:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
+8:3/0/terrains_peering_bit/right_side = 0
+8:3/0/terrains_peering_bit/top_side = 0
+8:3/0/terrains_peering_bit/top_right_corner = 0
+9:3/0 = 0
+9:3/0/terrain_set = 0
+9:3/0/terrain = 0
+9:3/0/physics_layer_0/linear_velocity = Vector2(0, 0)
+9:3/0/physics_layer_0/angular_velocity = 0.0
+9:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
+9:3/0/terrains_peering_bit/right_side = 0
+9:3/0/terrains_peering_bit/left_side = 0
+9:3/0/terrains_peering_bit/top_left_corner = 0
+9:3/0/terrains_peering_bit/top_side = 0
+9:3/0/terrains_peering_bit/top_right_corner = 0
+10:3/0 = 0
+10:3/0/terrain_set = 0
+10:3/0/terrain = 0
+10:3/0/physics_layer_0/linear_velocity = Vector2(0, 0)
+10:3/0/physics_layer_0/angular_velocity = 0.0
+10:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
+10:3/0/terrains_peering_bit/right_side = 0
+10:3/0/terrains_peering_bit/bottom_side = 0
+10:3/0/terrains_peering_bit/left_side = 0
+10:3/0/terrains_peering_bit/top_left_corner = 0
+10:3/0/terrains_peering_bit/top_side = 0
+10:3/0/terrains_peering_bit/top_right_corner = 0
+11:3/0 = 0
+11:3/0/terrain_set = 0
+11:3/0/terrain = 0
+11:3/0/physics_layer_0/linear_velocity = Vector2(0, 0)
+11:3/0/physics_layer_0/angular_velocity = 0.0
+11:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
+11:3/0/terrains_peering_bit/left_side = 0
+11:3/0/terrains_peering_bit/top_left_corner = 0
+11:3/0/terrains_peering_bit/top_side = 0
+0:4/0 = 0
+0:4/0/physics_layer_0/linear_velocity = Vector2(0, 0)
+0:4/0/physics_layer_0/angular_velocity = 0.0
+1:4/0 = 0
+1:4/0/physics_layer_0/linear_velocity = Vector2(0, 0)
+1:4/0/physics_layer_0/angular_velocity = 0.0
+1:4/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
+2:4/0 = 0
+2:4/0/physics_layer_0/linear_velocity = Vector2(0, 0)
+2:4/0/physics_layer_0/angular_velocity = 0.0
+2:4/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
+3:4/0 = 0
+3:4/0/physics_layer_0/linear_velocity = Vector2(0, 0)
+3:4/0/physics_layer_0/angular_velocity = 0.0
+3:4/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
+4:4/0 = 0
+4:4/0/physics_layer_0/linear_velocity = Vector2(0, 0)
+4:4/0/physics_layer_0/angular_velocity = 0.0
+4:4/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
+
+[resource]
+physics_layer_0/collision_layer = 1
+terrain_set_0/mode = 0
+terrain_set_0/terrain_0/name = "Terrain 0"
+terrain_set_0/terrain_0/color = Color(0.5, 0.34375, 0.25, 1)
+sources/0 = SubResource("TileSetAtlasSource_1xc4b")
diff --git a/DungeonShooting_Godot/resource/tileSprite/map2/Dungeon Tileset.png b/DungeonShooting_Godot/resource/tileSprite/map2/Dungeon Tileset.png
index d8bd1f9..cb64efb 100644
--- a/DungeonShooting_Godot/resource/tileSprite/map2/Dungeon Tileset.png
+++ b/DungeonShooting_Godot/resource/tileSprite/map2/Dungeon Tileset.png
Binary files differ
diff --git a/DungeonShooting_Godot/scene/Main.tscn b/DungeonShooting_Godot/scene/Main.tscn
index 698f3f2..346e221 100644
--- a/DungeonShooting_Godot/scene/Main.tscn
+++ b/DungeonShooting_Godot/scene/Main.tscn
@@ -39,6 +39,5 @@
process_callback = 0
editor_draw_drag_margin = true
script = ExtResource("2_2j367")
-RecoveryCoefficient = null
[node name="GlobalNodeRoot" type="Node2D" parent="."]
diff --git a/DungeonShooting_Godot/scene/test/TestNavigation2.tscn b/DungeonShooting_Godot/scene/test/TestNavigation2.tscn
index bd27dfe..eae5866 100644
--- a/DungeonShooting_Godot/scene/test/TestNavigation2.tscn
+++ b/DungeonShooting_Godot/scene/test/TestNavigation2.tscn
@@ -7,16 +7,19 @@
vertices = PackedVector2Array(1138, 78, 1168, 948, 1070, 733, 1033, 218, 79, 73, 950, 211, 975, 834, 888, 830, 62, 978, 806, 831, 883, 208, 796, 205, 288, 833, 286, 610, 807, 609, 208, 836, 212, 202, 795, 525, 300, 527, 292, 192)
polygons = Array[PackedInt32Array]([PackedInt32Array(0, 1, 2, 3), PackedInt32Array(4, 0, 3, 5), PackedInt32Array(6, 2, 1), PackedInt32Array(7, 6, 1, 8, 9), PackedInt32Array(5, 6, 7, 10), PackedInt32Array(4, 5, 10), PackedInt32Array(4, 10, 11), PackedInt32Array(12, 13, 14, 9), PackedInt32Array(12, 9, 8, 15), PackedInt32Array(15, 8, 4, 16), PackedInt32Array(11, 17, 18, 19), PackedInt32Array(4, 11, 19), PackedInt32Array(4, 19, 16)])
outlines = Array[PackedVector2Array]([PackedVector2Array(79, 73, 62, 978, 1168, 948, 1138, 78), PackedVector2Array(212, 202, 208, 836, 288, 833, 286, 610, 807, 609, 806, 831, 888, 830, 883, 208, 796, 205, 795, 525, 300, 527, 292, 192), PackedVector2Array(950, 211, 975, 834, 1070, 733, 1033, 218)])
+source_geometry_group_name = &"navigation_polygon_source_group"
[sub_resource type="NavigationPolygon" id="NavigationPolygon_oawm0"]
vertices = PackedVector2Array(606, 123, 648, 952, 62, 978, 79, 73)
polygons = Array[PackedInt32Array]([PackedInt32Array(0, 1, 2, 3)])
outlines = Array[PackedVector2Array]([PackedVector2Array(79, 73, 62, 978, 648, 952, 606, 123)])
+source_geometry_group_name = &"navigation_polygon_source_group"
[sub_resource type="NavigationPolygon" id="NavigationPolygon_nrkta"]
vertices = PackedVector2Array(379, 510, 374, 753, 172, 747, 161, 524)
polygons = Array[PackedInt32Array]([PackedInt32Array(0, 1, 2, 3)])
outlines = Array[PackedVector2Array]([PackedVector2Array(161, 524, 172, 747, 374, 753, 379, 510)])
+source_geometry_group_name = &"navigation_polygon_source_group"
[node name="TestNavigation2" type="Node2D"]
script = ExtResource("1")
diff --git a/DungeonShooting_Godot/scene/test/TestNewTerrain.tscn b/DungeonShooting_Godot/scene/test/TestNewTerrain.tscn
index e6f83fe..cb6bc28 100644
--- a/DungeonShooting_Godot/scene/test/TestNewTerrain.tscn
+++ b/DungeonShooting_Godot/scene/test/TestNewTerrain.tscn
@@ -1,409 +1,16 @@
-[gd_scene load_steps=7 format=3 uid="uid://iwm27vpirfef"]
+[gd_scene load_steps=3 format=3 uid="uid://iwm27vpirfef"]
-[ext_resource type="Texture2D" uid="uid://bwp887tjcbwfg" path="res://resource/tileSprite/map2/Dungeon Tileset + Spikes.png" id="1_bwwpr"]
-[ext_resource type="Texture2D" uid="uid://bcoae24vin57c" path="res://resource/tileSprite/map2/Dungeon Tileset.png" id="2_3c0ja"]
-
-[sub_resource type="TileSetAtlasSource" id="TileSetAtlasSource_u8qd0"]
-texture = ExtResource("1_bwwpr")
-0:0/0 = 0
-0:0/0/terrain_set = 0
-0:0/0/terrain = 0
-0:0/0/terrains_peering_bit/right_side = 0
-0:0/0/terrains_peering_bit/bottom_right_corner = 0
-0:0/0/terrains_peering_bit/bottom_side = 0
-0:0/0/terrains_peering_bit/bottom_left_corner = 0
-0:0/0/terrains_peering_bit/left_side = 0
-0:0/0/terrains_peering_bit/top_left_corner = 0
-0:0/0/terrains_peering_bit/top_side = 0
-0:0/0/terrains_peering_bit/top_right_corner = 0
-1:0/0 = 0
-2:0/0 = 0
-2:0/0/terrain_set = 0
-3:0/0 = 0
-3:0/0/terrain_set = 0
-3:0/0/terrains_peering_bit/bottom_right_corner = 0
-4:0/0 = 0
-4:0/0/terrain_set = 0
-4:0/0/terrains_peering_bit/bottom_right_corner = 0
-4:0/0/terrains_peering_bit/bottom_side = 0
-4:0/0/terrains_peering_bit/bottom_left_corner = 0
-5:0/0 = 0
-6:0/0 = 0
-7:0/0 = 0
-8:0/0 = 0
-9:0/0 = 0
-9:0/0/terrain_set = 0
-9:0/0/terrains_peering_bit/bottom_left_corner = 0
-10:0/0 = 0
-11:0/0 = 0
-12:0/0 = 0
-12:0/0/terrain_set = 0
-12:0/0/terrain = 0
-12:0/0/terrains_peering_bit/bottom_side = 0
-0:1/0 = 0
-1:1/0 = 0
-2:1/0 = 0
-3:1/0 = 0
-3:1/0/terrain_set = 0
-3:1/0/terrains_peering_bit/right_side = 0
-3:1/0/terrains_peering_bit/bottom_right_corner = 0
-3:1/0/terrains_peering_bit/bottom_side = 0
-3:1/0/terrains_peering_bit/bottom_left_corner = 0
-3:1/0/terrains_peering_bit/top_right_corner = 0
-4:1/0 = 0
-5:1/0 = 0
-6:1/0 = 0
-7:1/0 = 0
-8:1/0 = 0
-9:1/0 = 0
-9:1/0/terrain_set = 0
-9:1/0/terrains_peering_bit/bottom_right_corner = 0
-9:1/0/terrains_peering_bit/bottom_side = 0
-9:1/0/terrains_peering_bit/bottom_left_corner = 0
-9:1/0/terrains_peering_bit/left_side = 0
-9:1/0/terrains_peering_bit/top_left_corner = 0
-10:1/0 = 0
-11:1/0 = 0
-12:1/0 = 0
-12:1/0/terrain_set = 0
-12:1/0/terrain = 0
-12:1/0/terrains_peering_bit/bottom_side = 0
-12:1/0/terrains_peering_bit/top_side = 0
-0:2/0 = 0
-1:2/0 = 0
-2:2/0 = 0
-3:2/0 = 0
-4:2/0 = 0
-5:2/0 = 0
-6:2/0 = 0
-7:2/0 = 0
-8:2/0 = 0
-9:2/0 = 0
-10:2/0 = 0
-11:2/0 = 0
-12:2/0 = 0
-12:2/0/terrain_set = 0
-12:2/0/terrain = 0
-12:2/0/terrains_peering_bit/top_side = 0
-0:3/0 = 0
-1:3/0 = 0
-1:3/0/terrain_set = 0
-1:3/0/terrains_peering_bit/right_side = 0
-1:3/0/terrains_peering_bit/bottom_right_corner = 0
-1:3/0/terrains_peering_bit/top_right_corner = 0
-2:3/0 = 0
-3:3/0 = 0
-4:3/0 = 0
-5:3/0 = 0
-5:3/0/terrain_set = 0
-6:3/0 = 0
-7:3/0 = 0
-8:3/0 = 0
-9:3/0 = 0
-10:3/0 = 0
-11:3/0 = 0
-11:3/0/terrain_set = 0
-11:3/0/terrains_peering_bit/bottom_left_corner = 0
-11:3/0/terrains_peering_bit/left_side = 0
-11:3/0/terrains_peering_bit/top_left_corner = 0
-12:3/0 = 0
-0:4/0 = 0
-1:4/0 = 0
-1:4/0/terrain_set = 0
-1:4/0/terrains_peering_bit/top_right_corner = 0
-2:4/0 = 0
-2:4/0/terrain_set = 0
-2:4/0/terrains_peering_bit/top_left_corner = 0
-2:4/0/terrains_peering_bit/top_side = 0
-2:4/0/terrains_peering_bit/top_right_corner = 0
-3:4/0 = 0
-3:4/0/terrain_set = 0
-3:4/0/terrains_peering_bit/right_side = 0
-3:4/0/terrains_peering_bit/bottom_right_corner = 0
-3:4/0/terrains_peering_bit/top_left_corner = 0
-3:4/0/terrains_peering_bit/top_side = 0
-3:4/0/terrains_peering_bit/top_right_corner = 0
-4:4/0 = 0
-5:4/0 = 0
-6:4/0 = 0
-7:4/0 = 0
-8:4/0 = 0
-9:4/0 = 0
-9:4/0/terrain_set = 0
-9:4/0/terrains_peering_bit/bottom_left_corner = 0
-9:4/0/terrains_peering_bit/left_side = 0
-9:4/0/terrains_peering_bit/top_left_corner = 0
-9:4/0/terrains_peering_bit/top_side = 0
-9:4/0/terrains_peering_bit/top_right_corner = 0
-10:4/0 = 0
-11:4/0 = 0
-12:4/0 = 0
-12:4/0/terrain_set = 0
-12:4/0/terrain = 0
-12:4/0/terrains_peering_bit/right_side = 0
-0:5/0 = 0
-1:5/0 = 0
-2:5/0 = 0
-3:5/0 = 0
-3:5/0/terrain_set = 0
-3:5/0/terrains_peering_bit/top_right_corner = 0
-4:5/0 = 0
-5:5/0 = 0
-6:5/0 = 0
-7:5/0 = 0
-8:5/0 = 0
-9:5/0 = 0
-9:5/0/terrain_set = 0
-9:5/0/terrains_peering_bit/top_left_corner = 0
-10:5/0 = 0
-11:5/0 = 0
-12:5/0 = 0
-0:6/0 = 0
-1:6/0 = 0
-2:6/0 = 0
-3:6/0 = 0
-4:6/0 = 0
-5:6/0 = 0
-6:6/0 = 0
-7:6/0 = 0
-8:6/0 = 0
-9:6/0 = 0
-10:6/0 = 0
-11:6/0 = 0
-12:6/0 = 0
-0:7/0 = 0
-1:7/0 = 0
-2:7/0 = 0
-3:7/0 = 0
-4:7/0 = 0
-5:7/0 = 0
-6:7/0 = 0
-7:7/0 = 0
-8:7/0 = 0
-9:7/0 = 0
-10:7/0 = 0
-11:7/0 = 0
-12:7/0 = 0
-0:8/0 = 0
-1:8/0 = 0
-2:8/0 = 0
-3:8/0 = 0
-4:8/0 = 0
-5:8/0 = 0
-6:8/0 = 0
-7:8/0 = 0
-8:8/0 = 0
-9:8/0 = 0
-10:8/0 = 0
-11:8/0 = 0
-12:8/0 = 0
-0:9/0 = 0
-1:9/0 = 0
-2:9/0 = 0
-3:9/0 = 0
-4:9/0 = 0
-5:9/0 = 0
-6:9/0 = 0
-7:9/0 = 0
-8:9/0 = 0
-9:9/0 = 0
-10:9/0 = 0
-11:9/0 = 0
-12:9/0 = 0
-0:10/0 = 0
-1:10/0 = 0
-2:10/0 = 0
-3:10/0 = 0
-4:10/0 = 0
-5:10/0 = 0
-6:10/0 = 0
-7:10/0 = 0
-8:10/0 = 0
-9:10/0 = 0
-10:10/0 = 0
-11:10/0 = 0
-12:10/0 = 0
-13:6/0 = 0
-14:6/0 = 0
-14:7/0 = 0
-13:7/0 = 0
-13:5/0 = 0
-14:5/0 = 0
-14:4/0 = 0
-14:4/0/terrain_set = 0
-14:4/0/terrain = 0
-14:4/0/terrains_peering_bit/left_side = 0
-13:3/0 = 0
-13:1/0 = 0
-13:1/0/terrain_set = 0
-13:1/0/terrains_peering_bit/top_left_corner = 0
-13:1/0/terrains_peering_bit/top_right_corner = 0
-13:2/0 = 0
-13:2/0/terrain_set = 0
-13:2/0/terrains_peering_bit/bottom_right_corner = 0
-13:2/0/terrains_peering_bit/top_right_corner = 0
-13:4/0 = 0
-13:4/0/terrain_set = 0
-13:4/0/terrain = 0
-13:4/0/terrains_peering_bit/right_side = 0
-13:4/0/terrains_peering_bit/left_side = 0
-13:0/0 = 0
-13:0/0/terrain_set = 0
-13:0/0/terrains_peering_bit/bottom_right_corner = 0
-13:0/0/terrains_peering_bit/bottom_left_corner = 0
-14:0/0 = 0
-14:0/0/terrain_set = 0
-14:0/0/terrains_peering_bit/bottom_right_corner = 0
-14:0/0/terrains_peering_bit/bottom_left_corner = 0
-14:0/0/terrains_peering_bit/top_left_corner = 0
-14:0/0/terrains_peering_bit/top_right_corner = 0
-14:1/0 = 0
-14:2/0 = 0
-14:2/0/terrain_set = 0
-14:2/0/terrains_peering_bit/bottom_left_corner = 0
-14:2/0/terrains_peering_bit/top_left_corner = 0
-14:3/0 = 0
-13:8/0 = 0
-14:8/0 = 0
-14:9/0 = 0
-14:10/0 = 0
-13:10/0 = 0
-13:9/0 = 0
-
-[sub_resource type="TileSet" id="TileSet_x73rk"]
-terrain_set_0/mode = 0
-terrain_set_0/terrain_0/name = "Terrain 0"
-terrain_set_0/terrain_0/color = Color(0.5, 0.34375, 0.25, 1)
-sources/0 = SubResource("TileSetAtlasSource_u8qd0")
-
-[sub_resource type="TileSetAtlasSource" id="TileSetAtlasSource_1xc4b"]
-texture = ExtResource("2_3c0ja")
-0:0/0 = 0
-0:0/0/terrain_set = 0
-0:0/0/terrain = 0
-0:0/0/terrains_peering_bit/bottom_side = 0
-1:0/0 = 0
-1:0/0/terrain_set = 0
-1:0/0/terrain = 0
-1:0/0/terrains_peering_bit/right_side = 0
-1:0/0/terrains_peering_bit/bottom_side = 0
-2:0/0 = 0
-2:0/0/terrain_set = 0
-2:0/0/terrain = 0
-2:0/0/terrains_peering_bit/right_side = 0
-2:0/0/terrains_peering_bit/bottom_side = 0
-2:0/0/terrains_peering_bit/left_side = 0
-3:0/0 = 0
-3:0/0/terrain_set = 0
-3:0/0/terrain = 0
-3:0/0/terrains_peering_bit/bottom_side = 0
-3:0/0/terrains_peering_bit/left_side = 0
-4:0/0 = 0
-5:0/0 = 0
-6:0/0 = 0
-7:0/0 = 0
-8:0/0 = 0
-9:0/0 = 0
-10:0/0 = 0
-11:0/0 = 0
-0:1/0 = 0
-0:1/0/terrain_set = 0
-0:1/0/terrain = 0
-0:1/0/terrains_peering_bit/bottom_side = 0
-0:1/0/terrains_peering_bit/top_side = 0
-1:1/0 = 0
-1:1/0/terrain_set = 0
-1:1/0/terrain = 0
-1:1/0/terrains_peering_bit/right_side = 0
-1:1/0/terrains_peering_bit/bottom_side = 0
-1:1/0/terrains_peering_bit/top_side = 0
-2:1/0 = 0
-2:1/0/terrain_set = 0
-2:1/0/terrain = 0
-2:1/0/terrains_peering_bit/right_side = 0
-2:1/0/terrains_peering_bit/bottom_side = 0
-2:1/0/terrains_peering_bit/left_side = 0
-2:1/0/terrains_peering_bit/top_side = 0
-3:1/0 = 0
-3:1/0/terrain_set = 0
-3:1/0/terrain = 0
-3:1/0/terrains_peering_bit/bottom_side = 0
-3:1/0/terrains_peering_bit/left_side = 0
-3:1/0/terrains_peering_bit/top_side = 0
-4:1/0 = 0
-5:1/0 = 0
-6:1/0 = 0
-7:1/0 = 0
-8:1/0 = 0
-9:1/0 = 0
-11:1/0 = 0
-0:2/0 = 0
-0:2/0/terrain_set = 0
-0:2/0/terrain = 0
-0:2/0/terrains_peering_bit/top_side = 0
-1:2/0 = 0
-1:2/0/terrain_set = 0
-1:2/0/terrain = 0
-1:2/0/terrains_peering_bit/right_side = 0
-1:2/0/terrains_peering_bit/top_side = 0
-2:2/0 = 0
-2:2/0/terrain_set = 0
-2:2/0/terrain = 0
-2:2/0/terrains_peering_bit/right_side = 0
-2:2/0/terrains_peering_bit/left_side = 0
-2:2/0/terrains_peering_bit/top_side = 0
-3:2/0 = 0
-3:2/0/terrain_set = 0
-3:2/0/terrain = 0
-3:2/0/terrains_peering_bit/left_side = 0
-3:2/0/terrains_peering_bit/top_side = 0
-4:2/0 = 0
-5:2/0 = 0
-6:2/0 = 0
-7:2/0 = 0
-8:2/0 = 0
-9:2/0 = 0
-10:2/0 = 0
-11:2/0 = 0
-0:3/0 = 0
-0:3/0/terrain_set = 0
-0:3/0/terrain = 0
-1:3/0 = 0
-1:3/0/terrain_set = 0
-1:3/0/terrain = 0
-1:3/0/terrains_peering_bit/right_side = 0
-2:3/0 = 0
-2:3/0/terrain_set = 0
-2:3/0/terrain = 0
-2:3/0/terrains_peering_bit/right_side = 0
-2:3/0/terrains_peering_bit/left_side = 0
-3:3/0 = 0
-3:3/0/terrain_set = 0
-3:3/0/terrain = 0
-3:3/0/terrains_peering_bit/left_side = 0
-4:3/0 = 0
-5:3/0 = 0
-6:3/0 = 0
-7:3/0 = 0
-8:3/0 = 0
-9:3/0 = 0
-10:3/0 = 0
-11:3/0 = 0
-
-[sub_resource type="TileSet" id="TileSet_klpjl"]
-terrain_set_0/mode = 0
-terrain_set_0/terrain_0/name = "Terrain 0"
-terrain_set_0/terrain_0/color = Color(0.5, 0.34375, 0.25, 1)
-sources/0 = SubResource("TileSetAtlasSource_1xc4b")
+[ext_resource type="Script" path="res://src/test/TestNewTerrain.cs" id="1_68mbo"]
+[ext_resource type="TileSet" uid="uid://cu80e6kxc3c3x" path="res://resource/tileSet/map2/TileSet2.tres" id="1_ig8lo"]
[node name="TestNewTerrain" type="Node2D"]
+scale = Vector2(2, 2)
+script = ExtResource("1_68mbo")
-[node name="TileMap" type="TileMap" parent="."]
-visible = false
-tile_set = SubResource("TileSet_x73rk")
+[node name="TileMap2" type="TileMap" parent="." groups=["navigation"]]
+z_index = -1
+tile_set = ExtResource("1_ig8lo")
format = 2
-layer_0/tile_data = PackedInt32Array(131071, 327680, 3, 131070, 131072, 8, 262142, 131072, 8, 196606, 851968, 2, 65536, 393216, 3, 131072, 917504, 4, 196608, 917504, 5, 196609, 327680, 7, 131073, 327680, 7, 65537, 327680, 7, 65538, 327680, 3, 131074, 327680, 3, 196610, 327680, 7, 196607, 851968, 4, 262143, 851968, 5, -2, 65536, 1, 65534, 65536, 3, -65537, 65536, 1, -1, 196608, 1, 65535, 262144, 7, -131072, 262144, 0, -65536, 131072, 2, 0, 327680, 3, -131071, 851968, 0, -65535, 786432, 2, 1, 786432, 3, -131070, 327680, 0, -65534, 131072, 2, 2, 327680, 3, -131069, 720896, 1, -65533, 589824, 1, 3, 524288, 7, 65539, 327680, 3, 131075, 786432, 4, 196611, 786432, 5, -65532, 720896, 1, 4, 720896, 3, 65540, 655360, 8, 131076, 917504, 2, 196612, 655360, 8, 393214, 131072, 8, 393215, 327680, 3, 458751, 262144, 5, 327680, 327680, 3, 393216, 327680, 3, 327681, 786432, 0, 393217, 786432, 1, 327682, 327680, 3, 393218, 327680, 7, 327683, 327680, 3, 393219, 524288, 5, 327684, 655360, 8, 458750, 131072, 9, 524287, 131072, 9, 458752, 196608, 9, 458753, 851968, 1, 458754, 262144, 9, 458755, 655360, 9, 393220, 655360, 9, 327678, 65536, 3, 262148, 720896, 3, 327679, 327680, 4, 262144, 327680, 4, 262145, 327680, 4, 262146, 327680, 4, 262147, 327680, 4, 11, 327680, 3, 196619, 589824, 2, 262155, 327680, 3, 327691, 327680, 3, 393227, 327680, 3, 458763, 327680, 3, 12, 327680, 3, 262156, 786432, 3, 327692, 327680, 3, 393228, 327680, 3, 458764, 327680, 3, 13, 327680, 3, 196621, 196608, 2, 262157, 327680, 3, 327693, 327680, 3, 393229, 327680, 3, 458765, 327680, 3, 14, 327680, 3, 65550, 327680, 3, 131086, 327680, 3, 196622, 327680, 3, 262158, 327680, 3, 327694, 327680, 3, 393230, 327680, 3, 458766, 327680, 3, 15, 327680, 3, 65551, 327680, 3, 131087, 327680, 3, 196623, 327680, 3, 393231, 327680, 3, 458767, 327680, 3, 16, 327680, 3, 65552, 327680, 3, 393232, 327680, 3, 458768, 327680, 3, 17, 327680, 3, 65553, 327680, 3, 393233, 327680, 3, 458769, 327680, 3, 18, 327680, 3, 65554, 327680, 3, 131090, 327680, 3, 196626, 327680, 3, 393234, 327680, 3, 458770, 327680, 3, 19, 327680, 3, 65555, 327680, 3, 131091, 327680, 3, 196627, 327680, 3, 262163, 327680, 3, 327699, 327680, 3, 393235, 327680, 3, 458771, 327680, 3, -131063, 327680, 3, -65527, 327680, 3, 9, 327680, 3, 65545, 327680, 3, 131081, 327680, 3, 196617, 327680, 3, 262153, 327680, 3, 327689, 327680, 3, 393225, 327680, 3, 458761, 327680, 3, 524297, 327680, 3, -131062, 327680, 3, -65526, 327680, 3, 10, 327680, 3, 65546, 327680, 3, 131082, 327680, 3, 196618, 327680, 3, 262154, 327680, 3, 327690, 327680, 3, 393226, 327680, 3, 458762, 327680, 3, 524298, 327680, 3, -131061, 327680, 3, -65525, 327680, 3, 524299, 327680, 3, -131060, 327680, 3, -65524, 327680, 3, 524300, 327680, 3, -131059, 327680, 3, -65523, 327680, 3, 524301, 327680, 3, -131058, 327680, 3, -65522, 327680, 3, 524302, 327680, 3, -131057, 327680, 3, -65521, 327680, 3, 524303, 327680, 3, -131056, 327680, 3, -65520, 327680, 3, 524304, 327680, 3, -131055, 327680, 3, -65519, 327680, 3, 524305, 327680, 3, -131054, 327680, 3, -65518, 327680, 3, 524306, 327680, 3, -131053, 327680, 3, -65517, 327680, 3, 524307, 327680, 3, -131052, 327680, 3, -65516, 327680, 3, 20, 327680, 3, 65556, 327680, 3, 131092, 327680, 3, 196628, 327680, 3, 262164, 327680, 3, 327700, 327680, 3, 393236, 327680, 3, 458772, 327680, 3, 524308, 327680, 3, 196620, 786432, 2, 131084, 917504, 0, 131083, 786432, 4, 131085, 917504, 4, 65548, 786432, 0, 65547, 458752, 3, 65549, 458752, 3, 720907, 262144, 1, 720908, 262144, 1, 720909, 262144, 1, 720910, 262144, 1, 720911, 262144, 1, 786447, 327680, 3, 851983, 327680, 3, 851982, 327680, 3, 851981, 327680, 3, 851980, 327680, 3, 851979, 327680, 3, 786443, 327680, 3, 786444, 327680, 3, 786442, 65536, 3, 720906, 65536, 3, 786445, 327680, 3, 786446, 327680, 3, 786448, 589824, 1, 851984, 327680, 3, 720912, 720896, 3, 655375, 262144, 0, 655376, 589824, 0, 655374, 262144, 0, 655373, 262144, 0, 655372, 262144, 0, 655371, 262144, 0, 655370, 196608, 0, 851978, 65536, 3, 917515, 327680, 3, 917514, 65536, 3, 917516, 327680, 3, 917517, 327680, 3, 917518, 327680, 3, 917519, 327680, 3, 983052, 327680, 3, 983053, 327680, 3, 983054, 589824, 4, 1048590, 589824, 5, 1048589, 131072, 4, 1048588, 786432, 1, 983051, 327680, 3, 1048587, 131072, 4, 851985, 327680, 3, 851986, 327680, 3, 851987, 327680, 3, 917523, 327680, 3, 917521, 327680, 3, 917522, 327680, 3, 983050, 65536, 3, 1048586, 196608, 5, 983055, 196608, 4, 917520, 327680, 3, 983056, 327680, 3, 983057, 327680, 3, 983058, 589824, 4, 983059, 131072, 4, 917524, 720896, 3, 983060, 589824, 5, 851988, 720896, 3, 786451, 262144, 0, 786452, 589824, 0, 786450, 262144, 0, 786449, 262144, 0, 1048592, 327680, 3, 1048593, 327680, 3, 1048594, 720896, 3, 1114130, 589824, 5, 1114129, 131072, 4, 1114128, 131072, 4, 1048591, 65536, 3, 1114127, 65536, 4, 1114124, 786432, 2, 1048608, 0, 0, 983072, 0, 0, 1048607, 0, 0, 983071, 0, 0, 1048606, 0, 0, 983070, 0, 0, 1245213, 0, 0, 1179677, 0, 0, 1114141, 0, 0, 1048605, 0, 0, 983069, 0, 0, 1245212, 0, 0, 1179676, 0, 0, 1114140, 0, 0, 1048604, 0, 0, 983068, 0, 0, 1245211, 0, 0, 1179675, 0, 0, 1114139, 0, 0, 1048603, 0, 0, 983067, 0, 0, 1245210, 0, 0, 1179674, 0, 0, 1114138, 0, 0, 1048602, 0, 0, 983066, 0, 0, 1245209, 0, 0, 1179673, 0, 0, 1114137, 0, 0, 1048601, 0, 0, 983065, 0, 0, 1048600, 65536, 3, 983064, 65536, 3, 917528, 196608, 0, 917529, 262144, 0, 917530, 262144, 0, 1114136, 65536, 3, 1179672, 65536, 3, 1245208, 65536, 3, 1310746, 0, 0, 1310745, 0, 0, 1310744, 65536, 3, 917531, 262144, 0, 1310747, 0, 0, 917532, 196608, 1, 1310748, 0, 0, 917533, 0, 0, 1310749, 0, 0, 917534, 0, 0, 1310750, 0, 0, 917535, 0, 0, 1310751, 0, 0, 917536, 0, 0, 1310752, 0, 0, 983073, 0, 0, 1048609, 0, 0, 917537, 0, 0, 1114145, 0, 0, 1310753, 0, 0, 1835051, 0, 0, 1769515, 0, 0, 1703979, 0, 0, 1638443, 0, 0, 1572907, 0, 0, 1507371, 0, 0, 1441835, 0, 0, 1376299, 0, 0, 1310763, 0, 0, 1245227, 0, 0, 1179691, 0, 0, 1114155, 0, 0, 1048619, 0, 0, 983083, 0, 0, 1835050, 0, 0, 1769514, 0, 0, 1703978, 0, 0, 1638442, 0, 0, 1572906, 0, 0, 1507370, 0, 0, 1441834, 0, 0, 1376298, 0, 0, 1310762, 0, 0, 1245226, 0, 0, 1179690, 0, 0, 1114154, 0, 0, 1048618, 0, 0, 983082, 0, 0, 1835049, 0, 0, 1769513, 0, 0, 1703977, 0, 0, 1638441, 0, 0, 1572905, 0, 0, 1507369, 0, 0, 1441833, 0, 0, 1376297, 0, 0, 1310761, 0, 0, 1245225, 0, 0, 1179689, 0, 0, 1114153, 0, 0, 1048617, 0, 0, 983081, 0, 0, 1835048, 0, 0, 1769512, 0, 0, 1703976, 0, 0, 1638440, 0, 0, 1572904, 0, 0, 1507368, 0, 0, 1441832, 0, 0, 1376296, 0, 0, 1310760, 0, 0, 1245224, 0, 0, 1179688, 0, 0, 1114152, 0, 0, 1048616, 0, 0, 983080, 0, 0, 1835047, 0, 0, 1769511, 0, 0, 1703975, 0, 0, 1638439, 0, 0, 1572903, 0, 0, 1507367, 0, 0, 1441831, 0, 0, 1376295, 0, 0, 1310759, 0, 0, 1245223, 0, 0, 1179687, 0, 0, 1114151, 0, 0, 1048615, 0, 0, 983079, 0, 0, 1835046, 0, 0, 1769510, 0, 0, 1703974, 0, 0, 1638438, 0, 0, 1572902, 0, 0, 1507366, 0, 0, 1441830, 0, 0, 1376294, 0, 0, 1310758, 0, 0, 1245222, 0, 0, 1179686, 0, 0, 1114150, 0, 0, 1048614, 0, 0, 983078, 0, 0, 1835045, 0, 0, 1769509, 0, 0, 1703973, 0, 0, 1638437, 0, 0, 1572901, 0, 0, 1507365, 0, 0, 1441829, 0, 0, 1376293, 0, 0, 1310757, 0, 0, 1245221, 0, 0, 1179685, 0, 0, 1114149, 0, 0, 1048613, 0, 0, 983077, 0, 0, 1835044, 0, 0, 1769508, 0, 0, 1703972, 0, 0, 1638436, 0, 0, 1572900, 0, 0, 1507364, 0, 0, 1441828, 0, 0, 1376292, 0, 0, 1310756, 0, 0, 1245220, 0, 0, 1179684, 0, 0, 1114148, 0, 0, 1048612, 0, 0, 983076, 0, 0, 1835043, 0, 0, 1769507, 0, 0, 1703971, 0, 0, 1638435, 0, 0, 1572899, 0, 0, 1507363, 0, 0, 1441827, 0, 0, 1376291, 0, 0, 1310755, 0, 0, 1245219, 0, 0, 1179683, 0, 0, 1114147, 0, 0, 1048611, 0, 0, 983075, 0, 0, 1835042, 0, 0, 1769506, 0, 0, 1703970, 0, 0, 1638434, 0, 0, 1572898, 0, 0, 1507362, 0, 0, 1441826, 0, 0, 1376290, 0, 0, 1310754, 0, 0, 1114146, 0, 0, 1048610, 0, 0, 983074, 0, 0, 1835041, 0, 0, 1769505, 0, 0, 1703969, 0, 0, 1638433, 0, 0, 1572897, 0, 0, 1507361, 0, 0, 1441825, 0, 0, 1376289, 0, 0, 1835040, 0, 0, 1769504, 0, 0, 1703968, 0, 0, 1638432, 0, 0, 1572896, 0, 0, 1507360, 0, 0, 1441824, 0, 0, 1376288, 0, 0, 1835039, 0, 0, 1769503, 0, 0, 1703967, 0, 0, 1638431, 0, 0, 1572895, 0, 0, 1507359, 0, 0, 1441823, 0, 0, 1376287, 0, 0, 1835038, 0, 0, 1769502, 0, 0, 1703966, 0, 0, 1638430, 0, 0, 1572894, 0, 0, 1507358, 0, 0, 1441822, 0, 0, 1376286, 0, 0, 1835037, 0, 0, 1769501, 0, 0, 1703965, 0, 0, 1638429, 0, 0, 1572893, 0, 0, 1507357, 0, 0, 1441821, 0, 0, 1376285, 0, 0, 1835036, 0, 0, 1769500, 0, 0, 1703964, 0, 0, 1638428, 0, 0, 1572892, 0, 0, 1507356, 0, 0, 1441820, 0, 0, 1376284, 0, 0, 1835035, 0, 0, 1769499, 0, 0, 1703963, 0, 0, 1638427, 0, 0, 1572891, 0, 0, 1507355, 0, 0, 1441819, 0, 0, 1376283, 0, 0, 1835034, 0, 0, 1769498, 0, 0, 1703962, 0, 0, 1638426, 0, 0, 1572890, 0, 0, 1507354, 0, 0, 1441818, 0, 0, 1376282, 0, 0, 1835033, 0, 0, 1769497, 0, 0, 1703961, 0, 0, 1638425, 0, 0, 1572889, 0, 0, 1507353, 0, 0, 1441817, 0, 0, 1376281, 0, 0, 1376280, 65536, 3, 1441816, 65536, 3, 1507352, 65536, 3, 1572888, 65536, 3, 1638424, 65536, 3, 1703960, 65536, 3, 1769496, 65536, 3, 1835032, 65536, 3, 1900570, 196608, 4, 1900569, 131072, 4, 1900568, 196608, 5, 1900571, 0, 0, 1900572, 0, 0, 1900573, 0, 0, 1900574, 0, 0, 1900575, 589824, 4, 1900576, 131072, 4, 1900577, 131072, 4, 917538, 0, 0, 1900578, 131072, 4, 917539, 0, 0, 1900579, 131072, 4, 917540, 589824, 1, 1900580, 131072, 4, 917541, 262144, 0, 1900581, 131072, 4, 917542, 262144, 0, 1900582, 131072, 4, 917543, 262144, 0, 1900583, 131072, 4, 917544, 262144, 0, 1900584, 131072, 4, 917545, 262144, 0, 1900585, 131072, 4, 917546, 262144, 0, 1900586, 131072, 4, 917547, 262144, 0, 1900587, 131072, 4, 983084, 720896, 3, 1048620, 720896, 3, 917548, 589824, 0, 1114156, 720896, 3, 1179692, 720896, 3, 1245228, 720896, 3, 1310764, 720896, 3, 1376300, 720896, 3, 1441836, 720896, 3, 1507372, 720896, 3, 1572908, 720896, 3, 1638444, 720896, 3, 1703980, 720896, 3, 1769516, 720896, 3, 1835052, 720896, 3, 1900588, 589824, 5, 1114142, 0, 0, 1114143, 0, 0, 1114144, 0, 0, 1179678, 0, 0, 1245214, 0, 0, 851999, 0, 0, 786463, 0, 0, 720927, 0, 0, 851998, 0, 0, 786462, 0, 0, 720926, 0, 0, 786461, 0, 0, 720925, 0, 0, 655389, 0, 0, 655390, 0, 0, 655391, 0, 0, 851997, 0, 0, 720928, 0, 0, 786464, 0, 0, 655392, 0, 0, 852000, 0, 0, 720924, 65536, 3, 655388, 65536, 3, 589852, 196608, 0, 589853, 262144, 0, 589854, 262144, 0, 786460, 65536, 3, 851996, 65536, 3, 589855, 262144, 0, 589856, 262144, 0, 655393, 720896, 3, 720929, 720896, 3, 589857, 589824, 0, 786465, 589824, 1, 852001, 0, 0, 852003, 0, 0, 852002, 0, 0, 786466, 262144, 0, 786467, 262144, 0, 852004, 720896, 3, 786468, 589824, 0, 2097182, 0, 0, 2031646, 0, 0, 1966110, 0, 0, 2097181, 0, 0, 2031645, 0, 0, 1966109, 0, 0, 2097180, 0, 0, 2031644, 0, 0, 1966108, 0, 0, 2097179, 0, 0, 2031643, 0, 0, 1966107, 0, 0, 1966106, 65536, 3, 2031642, 65536, 3, 2097178, 65536, 3, 2162716, 131072, 4, 2162715, 131072, 4, 2162714, 196608, 5, 2162717, 131072, 4, 2162718, 196608, 4, 1966111, 720896, 3, 2031647, 589824, 1, 2097183, 0, 0, 2162719, 0, 0, 2097186, 0, 0, 2097185, 0, 0, 2097184, 0, 0, 2162722, 0, 0, 2162721, 0, 0, 2162720, 0, 0, 2031648, 262144, 0, 2228256, 131072, 4, 2228255, 131072, 4, 2228254, 65536, 4, 2031649, 262144, 0, 2228257, 131072, 4, 2031650, 262144, 0, 2228258, 131072, 4, 2097187, 851968, 4, 2162723, 720896, 3, 2031651, 589824, 0, 2228259, 589824, 5, 2097188, 917504, 4, 2031656, 917504, 4, 2031655, 851968, 4, 2031654, 786432, 4, 2228264, 786432, 2, 2162728, 786432, 0, 2097195, 786432, 2, 2228265, 917504, 4)
+layer_0/tile_data = PackedInt32Array(1769510, 720896, 3, 1703974, 720896, 2, 1638438, 720896, 2, 1572902, 720896, 2, 1507366, 720896, 2, 1441830, 720896, 2, 1376294, 720896, 2, 1310758, 720896, 2, 1245222, 720896, 2, 1179686, 720896, 2, 1114150, 720896, 2, 1048614, 720896, 2, 983078, 720896, 2, 917542, 720896, 2, 852006, 720896, 2, 786470, 720896, 2, 1769509, 589824, 3, 1703973, 589824, 2, 1638437, 589824, 2, 1572901, 589824, 2, 1507365, 589824, 2, 1441829, 589824, 2, 1376293, 589824, 2, 1310757, 589824, 2, 1245221, 589824, 2, 1179685, 589824, 2, 1114149, 589824, 2, 1048613, 589824, 2, 983077, 589824, 2, 917541, 589824, 2, 852005, 589824, 2, 786469, 589824, 2, 1769508, 589824, 3, 1703972, 589824, 2, 1638436, 589824, 2, 1572900, 589824, 2, 1507364, 589824, 2, 1441828, 589824, 2, 1376292, 589824, 2, 1310756, 589824, 2, 1245220, 589824, 2, 1179684, 589824, 2, 1114148, 589824, 2, 1048612, 589824, 2, 983076, 589824, 2, 917540, 589824, 2, 852004, 589824, 2, 786468, 589824, 2, 1769507, 589824, 3, 1703971, 589824, 2, 1638435, 589824, 2, 1572899, 589824, 2, 1507363, 589824, 2, 1441827, 589824, 2, 1376291, 589824, 2, 1310755, 589824, 2, 1245219, 589824, 2, 1179683, 589824, 2, 1114147, 589824, 2, 1048611, 589824, 2, 983075, 589824, 2, 917539, 589824, 2, 852003, 589824, 2, 786467, 589824, 2, 1769506, 589824, 3, 1703970, 589824, 2, 1638434, 589824, 2, 1572898, 589824, 2, 1507362, 589824, 2, 1441826, 589824, 2, 1376290, 589824, 2, 1310754, 589824, 2, 1245218, 327680, 1, 1179682, 524288, 1, 1114146, 524288, 1, 1048610, 524288, 1, 983074, 327680, 2, 917538, 589824, 2, 852002, 589824, 2, 786466, 589824, 2, 1769505, 589824, 3, 1703969, 589824, 2, 1638433, 589824, 2, 1572897, 589824, 2, 1507361, 589824, 2, 1441825, 589824, 2, 1376289, 589824, 2, 1310753, 589824, 2, 1245217, 655360, 0, 983073, 589824, 3, 917537, 589824, 2, 852001, 589824, 2, 786465, 589824, 2, 1769504, 589824, 3, 1703968, 589824, 2, 1638432, 589824, 2, 1572896, 589824, 2, 1507360, 589824, 2, 1441824, 589824, 2, 1376288, 589824, 2, 1310752, 589824, 2, 1245216, 655360, 0, 983072, 589824, 3, 917536, 589824, 2, 852000, 589824, 2, 786464, 589824, 2, 1769503, 589824, 3, 1703967, 589824, 2, 1638431, 589824, 2, 1572895, 589824, 2, 1507359, 327680, 1, 1441823, 524288, 1, 1376287, 524288, 1, 1310751, 524288, 1, 1245215, 524288, 0, 983071, 589824, 3, 917535, 589824, 2, 851999, 589824, 2, 786463, 589824, 2, 1769502, 589824, 3, 1703966, 589824, 2, 1638430, 589824, 2, 1572894, 589824, 2, 1507358, 655360, 0, 983070, 327680, 3, 851998, 524288, 1, 786462, 327680, 2, 1769501, 589824, 3, 1703965, 589824, 2, 1638429, 589824, 2, 1572893, 327680, 1, 1507357, 524288, 0, 983069, 131072, 3, 786461, 589824, 3, 1769500, 589824, 3, 1703964, 589824, 2, 1638428, 327680, 1, 1572892, 524288, 0, 983068, 131072, 3, 786460, 589824, 3, 1769499, 589824, 3, 1703963, 589824, 2, 1638427, 655360, 0, 1376283, 196608, 3, 983067, 131072, 3, 786459, 589824, 3, 1769498, 589824, 3, 1703962, 589824, 2, 1638426, 655360, 0, 1376282, 131072, 2, 983066, 131072, 3, 786458, 589824, 3, 1769497, 589824, 3, 1703961, 589824, 2, 1638425, 393216, 1, 1572889, 720896, 0, 1376281, 65536, 3, 983065, 65536, 3, 786457, 589824, 3, 1769496, 589824, 3, 1703960, 589824, 2, 1638424, 589824, 2, 1572888, 655360, 0, 786456, 589824, 3, 1769495, 589824, 3, 1703959, 589824, 2, 1638423, 589824, 2, 1572887, 393216, 1, 1507351, 720896, 0, 983063, 720896, 3, 917527, 720896, 2, 851991, 720896, 2, 786455, 393216, 2, 1769494, 589824, 3, 1703958, 589824, 2, 1638422, 589824, 2, 1572886, 589824, 2, 1507350, 655360, 0, 983062, 589824, 3, 917526, 589824, 2, 851990, 589824, 2, 786454, 589824, 2, 1769493, 589824, 3, 1703957, 589824, 2, 1638421, 589824, 2, 1572885, 589824, 2, 1507349, 655360, 0, 983061, 589824, 3, 917525, 589824, 2, 851989, 589824, 2, 786453, 589824, 2, 1769492, 589824, 3, 1703956, 589824, 2, 1638420, 589824, 2, 1572884, 589824, 2, 1507348, 393216, 1, 1441812, 720896, 2, 1376276, 720896, 2, 1310740, 720896, 0, 983060, 589824, 3, 917524, 589824, 2, 851988, 589824, 2, 786452, 589824, 2, 1769491, 589824, 3, 1703955, 589824, 2, 1638419, 589824, 2, 1572883, 589824, 2, 1507347, 589824, 2, 1441811, 589824, 2, 1376275, 589824, 2, 1310739, 393216, 1, 1245203, 720896, 0, 1048595, 720896, 3, 983059, 393216, 2, 917523, 589824, 2, 851987, 589824, 2, 786451, 589824, 2, 1769490, 589824, 3, 1703954, 589824, 2, 1638418, 589824, 2, 1572882, 589824, 2, 1507346, 589824, 2, 1441810, 589824, 2, 1376274, 589824, 2, 1310738, 589824, 2, 1245202, 655360, 0, 1048594, 589824, 3, 983058, 589824, 2, 917522, 589824, 2, 851986, 589824, 2, 786450, 589824, 2, 1769489, 589824, 3, 1703953, 589824, 2, 1638417, 589824, 2, 1572881, 589824, 2, 1507345, 589824, 2, 1441809, 589824, 2, 1376273, 589824, 2, 1310737, 589824, 2, 1245201, 655360, 0, 1048593, 589824, 3, 983057, 589824, 2, 917521, 589824, 2, 851985, 589824, 2, 786449, 589824, 2, 1769488, 589824, 3, 1703952, 589824, 2, 1638416, 589824, 2, 1572880, 589824, 2, 1507344, 589824, 2, 1441808, 589824, 2, 1376272, 589824, 2, 1310736, 589824, 2, 1245200, 655360, 0, 1048592, 589824, 3, 983056, 589824, 2, 917520, 589824, 2, 851984, 589824, 2, 786448, 589824, 2, 1769487, 589824, 3, 1703951, 589824, 2, 1638415, 589824, 2, 1572879, 589824, 2, 1507343, 589824, 2, 1441807, 589824, 2, 1376271, 589824, 2, 1310735, 589824, 2, 1245199, 393216, 1, 1179663, 720896, 2, 1114127, 720896, 2, 1048591, 393216, 2, 983055, 589824, 2, 917519, 589824, 2, 851983, 589824, 2, 786447, 589824, 2, 1769486, 589824, 3, 1703950, 589824, 2, 1638414, 589824, 2, 1572878, 589824, 2, 1507342, 589824, 2, 1441806, 589824, 2, 1376270, 589824, 2, 1310734, 589824, 2, 1245198, 589824, 2, 1179662, 589824, 2, 1114126, 589824, 2, 1048590, 589824, 2, 983054, 589824, 2, 917518, 589824, 2, 851982, 589824, 2, 786446, 589824, 2, 1769485, 589824, 3, 1703949, 589824, 2, 1638413, 589824, 2, 1572877, 589824, 2, 1507341, 589824, 2, 1441805, 589824, 2, 1376269, 589824, 2, 1310733, 589824, 2, 1245197, 589824, 2, 1179661, 589824, 2, 1114125, 589824, 2, 1048589, 589824, 2, 983053, 589824, 2, 917517, 589824, 2, 851981, 589824, 2, 786445, 589824, 2, 1769484, 524288, 3, 1703948, 524288, 1, 1638412, 524288, 1, 1572876, 524288, 1, 1507340, 524288, 1, 1441804, 524288, 1, 1376268, 524288, 1, 1310732, 524288, 1, 1245196, 524288, 1, 1179660, 524288, 1, 1114124, 524288, 1, 1048588, 524288, 1, 983052, 524288, 1, 917516, 524288, 1, 851980, 524288, 1, 786444, 524288, 1, 720934, 720896, 2, 655398, 720896, 2, 589862, 720896, 0, 720933, 589824, 2, 655397, 589824, 2, 589861, 655360, 0, 720932, 589824, 2, 655396, 589824, 2, 589860, 655360, 0, 720931, 589824, 2, 655395, 589824, 2, 589859, 655360, 0, 720930, 589824, 2, 655394, 589824, 2, 589858, 655360, 0, 720929, 589824, 2, 655393, 589824, 2, 589857, 655360, 0, 720928, 589824, 2, 655392, 589824, 2, 589856, 655360, 0, 720927, 589824, 2, 655391, 589824, 2, 589855, 655360, 0, 720926, 589824, 2, 655390, 589824, 2, 589854, 655360, 0, 720925, 589824, 2, 655389, 589824, 2, 589853, 655360, 0, 720924, 589824, 2, 655388, 589824, 2, 589852, 655360, 0, 720923, 589824, 2, 655387, 589824, 2, 589851, 655360, 0, 720922, 589824, 2, 655386, 589824, 2, 589850, 655360, 0, 720921, 589824, 2, 655385, 589824, 2, 589849, 655360, 0, 720920, 589824, 2, 655384, 589824, 2, 589848, 655360, 0, 720919, 589824, 2, 655383, 589824, 2, 589847, 655360, 0, 720918, 589824, 2, 655382, 589824, 2, 589846, 655360, 0, 720917, 589824, 2, 655381, 589824, 2, 589845, 655360, 0, 720916, 589824, 2, 655380, 589824, 2, 589844, 655360, 0, 720915, 589824, 2, 655379, 589824, 2, 589843, 655360, 0, 720914, 589824, 2, 655378, 589824, 2, 589842, 655360, 0, 720913, 589824, 2, 655377, 589824, 2, 589841, 655360, 0, 720912, 589824, 2, 655376, 589824, 2, 589840, 655360, 0, 720911, 589824, 2, 655375, 589824, 2, 589839, 655360, 0, 720910, 589824, 2, 655374, 589824, 2, 589838, 655360, 0, 720909, 589824, 2, 655373, 589824, 2, 589837, 655360, 0, 720908, 524288, 1, 655372, 524288, 1, 589836, 524288, 0, 1114128, 131072, 4, 1114129, 131072, 4, 1114130, 131072, 4, 1114131, 196608, 4, 1048609, 131072, 4, 1048608, 131072, 4, 1048607, 131072, 4, 1048606, 131072, 4, 1048605, 131072, 4, 1048604, 131072, 4, 1048603, 131072, 4, 1048602, 131072, 4, 1048601, 65536, 4, 851993, 131072, 4, 851994, 131072, 4, 851995, 131072, 4, 851996, 131072, 4, 851997, 131072, 4, 917534, 524288, 1, 1048596, 131072, 4, 1048597, 131072, 4, 1048598, 131072, 4, 1048599, 196608, 4, 851992, 131072, 4, 1441817, 65536, 4, 1441818, 131072, 4, 1441819, 196608, 4, 1179671, 0, 3, 1245207, 262144, 4, 1310746, 0, 0, 1310742, 0, 4, 1245206, 0, 4, 1179670, 0, 4, 1114134, 0, 4, 1114133, 0, 4, 1114132, 0, 4, 1179668, 0, 4, 1179667, 0, 4, 1179666, 0, 4, 1179665, 0, 4, 1179664, 0, 4, 1245204, 0, 4, 1245205, 0, 4, 1179669, 0, 4, 1310741, 0, 4, 1376277, 0, 4, 1441813, 0, 4, 1441814, 0, 4, 1376278, 0, 4, 1376279, 0, 4, 1310743, 0, 4, 1310744, 0, 4, 1245208, 0, 4, 1179672, 0, 4, 1114136, 0, 4, 1048600, 0, 4, 983064, 0, 4, 917528, 0, 4, 917529, 0, 4, 917530, 0, 4, 917531, 0, 4, 917532, 0, 4, 917533, 0, 4, 1114135, 0, 4, 1114137, 0, 4, 1179673, 0, 4, 1245209, 0, 4, 1310745, 0, 4, 1245210, 0, 4, 1179674, 0, 4, 1114138, 0, 4, 1114139, 0, 4, 1179675, 0, 4, 1245211, 0, 4, 1310747, 0, 4, 1310748, 0, 4, 1245212, 0, 4, 1179676, 0, 4, 1114140, 0, 4, 1114141, 0, 4, 1179677, 0, 4, 1245213, 0, 4, 1310749, 0, 4, 1376285, 0, 4, 1376284, 0, 4, 1441820, 0, 4, 1507356, 0, 4, 1507355, 0, 4, 1507354, 0, 4, 1507353, 0, 4, 1507352, 0, 4, 1441816, 0, 4, 1376280, 0, 4, 1441815, 0, 4, 1572890, 0, 4, 1572891, 0, 4, 1441821, 0, 4, 1441822, 0, 4, 1376286, 0, 4, 1310750, 0, 4, 1245214, 0, 4, 1179678, 0, 4, 1114142, 0, 4, 1114143, 0, 4, 1179679, 0, 4, 1179680, 0, 4, 1114144, 0, 4, 1114145, 0, 4, 1179681, 0, 4)
-[node name="TileMap2" type="TileMap" parent="."]
-tile_set = SubResource("TileSet_klpjl")
-format = 2
+[node name="NavigationRegion2D" type="NavigationRegion2D" parent="."]
diff --git a/DungeonShooting_Godot/src/framework/common/Utils.cs b/DungeonShooting_Godot/src/framework/common/Utils.cs
index db71ecd..f2af8b2 100644
--- a/DungeonShooting_Godot/src/framework/common/Utils.cs
+++ b/DungeonShooting_Godot/src/framework/common/Utils.cs
@@ -67,15 +67,15 @@
{
array[j] = points[j];
}
-
+
array[array.Length - 1] = points[0];
if (item.Type == NavigationPolygonType.In)
{
- canvasItem.DrawPolyline(array, Colors.Orange, width);
+ canvasItem.DrawPolyline(points, Colors.Orange, width);
}
else
{
- canvasItem.DrawPolyline(array, Colors.Orange, width);
+ canvasItem.DrawPolyline(points, Colors.Orange, width);
}
}
}
@@ -508,4 +508,16 @@
return pos.AsVector2I();
}
+ ///
+ /// 创建一个数组, 并填充该对象
+ ///
+ public static T[] MakeArray(this T data, int len)
+ {
+ var arr = new T[len];
+ for (var i = 0; i < len; i++)
+ {
+ arr[i] = data;
+ }
+ return arr;
+ }
}
\ No newline at end of file
diff --git a/DungeonShooting_Godot/src/test/TestNewTerrain.cs b/DungeonShooting_Godot/src/test/TestNewTerrain.cs
new file mode 100644
index 0000000..c58daea
--- /dev/null
+++ b/DungeonShooting_Godot/src/test/TestNewTerrain.cs
@@ -0,0 +1,75 @@
+using Godot;
+using System;
+
+///
+/// 测试动态烘焙导航网格
+///
+public partial class TestNewTerrain : Node2D
+{
+
+ private TileMap _tileMap;
+ private Vector2[][] _polygonData;
+ private NavigationRegion2D _navigationRegion;
+
+ public override void _Ready()
+ {
+ _tileMap = GetNode("TileMap2");
+ _navigationRegion = GetNode("NavigationRegion2D");
+ _navigationRegion.BakeFinished += BakeFinished;
+ RunTest();
+ }
+
+ private void BakeFinished()
+ {
+ var polygonData = _navigationRegion.NavigationPolygon;
+ var polygons = polygonData.Polygons;
+ var vertices = polygonData.Vertices;
+ _polygonData = new Vector2[polygons.Count][];
+ for (var i = 0; i < polygons.Count; i++)
+ {
+ var polygon = polygons[i];
+ var v2Array = new Vector2[polygon.Length];
+ for (var j = 0; j < polygon.Length; j++)
+ {
+ v2Array[j] = vertices[polygon[j]];
+ }
+ Debug.Log($"IsPolygonClockwise: {Geometry2D.IsPolygonClockwise(v2Array)}");
+ _polygonData[i] = v2Array;
+ }
+ }
+
+ public override void _Process(double delta)
+ {
+ QueueRedraw();
+ }
+
+ public override void _Draw()
+ {
+ if (_polygonData != null)
+ {
+ //Utils.DrawNavigationPolygon(this, _polygonData);
+ foreach (var vector2s in _polygonData)
+ {
+ DrawPolygon(vector2s, new Color(1, 1, 0, 0.3f).MakeArray(vector2s.Length));
+ }
+ }
+ }
+
+ private void RunTest()
+ {
+ var usedRect = _tileMap.GetUsedRect();
+ var data = new NavigationPolygon();
+ data.SourceGeometryMode = NavigationPolygon.SourceGeometryModeEnum.GroupsWithChildren;
+ data.SourceGeometryGroupName = "navigation";
+ data.AgentRadius = 6.5f;
+ data.AddOutline(new []
+ {
+ usedRect.Position * GameConfig.TileCellSize,
+ new Vector2(usedRect.End.X, usedRect.Position.Y) * GameConfig.TileCellSize,
+ usedRect.End * GameConfig.TileCellSize,
+ new Vector2(usedRect.Position.X, usedRect.End.Y) * GameConfig.TileCellSize
+ });
+ _navigationRegion.NavigationPolygon = data;
+ _navigationRegion.BakeNavigationPolygon(false);
+ }
+}