diff --git a/DungeonShooting_Godot/resource/map/tileMaps/TestGroup2/battle/Battle1/TileInfo.json b/DungeonShooting_Godot/resource/map/tileMaps/TestGroup2/battle/Battle1/TileInfo.json
index 8fc4912..db916da 100644
--- a/DungeonShooting_Godot/resource/map/tileMaps/TestGroup2/battle/Battle1/TileInfo.json
+++ b/DungeonShooting_Godot/resource/map/tileMaps/TestGroup2/battle/Battle1/TileInfo.json
@@ -1 +1 @@
-{"NavigationVertices":[{"X":150,"Y":54},{"X":170,"Y":66},{"X":-42,"Y":66},{"X":106,"Y":54},{"X":170,"Y":-58},{"X":150,"Y":2},{"X":-42,"Y":-58},{"X":106,"Y":2},{"X":22,"Y":-30},{"X":22,"Y":22},{"X":-22,"Y":-30},{"X":-22,"Y":22}],"NavigationPolygon":[[0,1,2,3],[4,1,0,5],[6,4,5,7,8],[9,8,7,3],[6,8,10],[2,6,10,11],[3,2,11,9]],"Floor":[-3,-3,0,0,4,-3,-2,0,0,4,-3,-1,0,0,4,-3,0,0,0,4,-3,1,0,0,4,-3,2,0,0,4,-3,3,0,0,4,-2,-4,0,0,4,-2,-3,0,0,4,-2,-2,0,0,4,-2,-1,0,0,4,-2,0,0,0,4,-2,1,0,0,4,-2,2,0,0,4,-2,3,0,0,4,-1,-4,0,0,4,-1,-3,0,0,4,-1,1,0,0,4,-1,2,0,0,4,-1,3,0,0,4,0,-4,0,0,4,0,-3,0,0,4,0,1,0,0,4,0,2,0,0,4,0,3,0,0,4,1,-4,0,0,4,1,-3,0,0,4,1,-2,0,0,4,1,-1,0,0,4,1,0,0,0,4,1,1,0,0,4,1,2,0,0,4,1,3,0,0,4,2,-4,0,0,4,2,-3,0,0,4,2,-2,0,0,4,2,-1,0,0,4,2,0,0,0,4,2,1,0,0,4,2,2,0,0,4,2,3,0,0,4,3,-4,0,0,4,3,-3,0,0,4,3,-2,0,0,4,3,-1,0,0,4,3,0,0,0,4,3,1,0,0,4,3,2,0,0,4,3,3,0,0,4,4,-4,0,0,4,4,-3,0,0,4,4,-2,0,0,4,4,-1,0,0,4,4,0,0,0,4,4,1,0,0,4,4,2,0,0,4,4,3,0,0,4,5,-4,0,0,4,5,-3,0,0,4,5,-2,0,0,4,5,-1,0,0,4,5,0,0,0,4,5,1,0,0,4,5,2,0,0,4,5,3,0,0,4,6,-4,0,0,4,6,-3,0,0,4,6,-2,0,0,4,6,-1,0,0,4,6,0,0,0,4,6,1,0,0,4,6,2,0,0,4,6,3,0,0,4,7,-4,0,0,4,7,-3,0,0,4,7,-2,0,0,4,7,-1,0,0,4,7,3,0,0,4,8,-4,0,0,4,8,-3,0,0,4,8,-2,0,0,4,8,-1,0,0,4,8,3,0,0,4,9,-4,0,0,4,9,-3,0,0,4,9,-2,0,0,4,9,-1,0,0,4,9,0,0,0,4,9,1,0,0,4,9,2,0,0,4,9,3,0,0,4,10,-4,0,0,4,10,-3,0,0,4,10,-2,0,0,4,10,-1,0,0,4,10,0,0,0,4,10,1,0,0,4,10,2,0,0,4,10,3,0,0,4,-3,-4,0,0,4],"Middle":[],"Top":[-5,-7,0,9,2,-5,-6,0,9,2,-5,-5,0,9,2,-5,-4,0,9,2,-5,-3,0,9,2,-5,-2,0,9,2,-5,-1,0,9,2,-5,0,0,9,2,-5,1,0,9,2,-5,2,0,9,2,-5,3,0,9,2,-5,4,0,9,2,-5,5,0,9,2,-4,-7,0,9,2,-4,-6,0,6,2,-4,-5,0,11,2,-4,-4,0,11,2,-4,-3,0,11,2,-4,-2,0,11,2,-4,-1,0,11,2,-4,0,0,11,2,-4,1,0,11,2,-4,2,0,11,2,-4,3,0,11,2,-4,4,0,6,1,-4,5,0,9,2,-3,-7,0,9,2,-3,-6,0,9,3,-3,-5,0,2,4,-3,4,0,10,0,-3,5,0,9,2,-2,-7,0,9,2,-2,-6,0,9,3,-2,-5,0,2,4,-2,4,0,10,0,-2,5,0,9,2,-1,-7,0,9,2,-1,-6,0,9,3,-1,-5,0,2,4,-1,-2,0,8,0,-1,-1,0,8,3,-1,0,0,1,4,-1,4,0,10,0,-1,5,0,9,2,0,-7,0,9,2,0,-6,0,9,3,0,-5,0,2,4,0,-2,0,11,0,0,-1,0,11,3,0,0,0,3,4,0,4,0,10,0,0,5,0,9,2,1,-7,0,9,2,1,-6,0,9,3,1,-5,0,2,4,1,4,0,10,0,1,5,0,9,2,2,-7,0,9,2,2,-6,0,9,3,2,-5,0,2,4,2,4,0,10,0,2,5,0,9,2,3,-7,0,9,2,3,-6,0,9,3,3,-5,0,2,4,3,4,0,10,0,3,5,0,9,2,4,-7,0,9,2,4,-6,0,9,3,4,-5,0,2,4,4,4,0,10,0,4,5,0,9,2,5,-7,0,9,2,5,-6,0,9,3,5,-5,0,2,4,5,4,0,10,0,5,5,0,9,2,6,-7,0,9,2,6,-6,0,9,3,6,-5,0,2,4,6,4,0,10,0,6,5,0,9,2,7,-7,0,9,2,7,-6,0,9,3,7,-5,0,2,4,7,0,0,8,0,7,1,0,8,3,7,2,0,1,4,7,4,0,10,0,7,5,0,9,2,8,-7,0,9,2,8,-6,0,9,3,8,-5,0,2,4,8,0,0,11,0,8,1,0,11,3,8,2,0,3,4,8,4,0,10,0,8,5,0,9,2,9,-7,0,9,2,9,-6,0,9,3,9,-5,0,2,4,9,4,0,10,0,9,5,0,9,2,10,-7,0,9,2,10,-6,0,9,3,10,-5,0,2,4,10,4,0,10,0,10,5,0,9,2,11,-7,0,9,2,11,-6,0,5,2,11,-5,0,8,1,11,-4,0,8,1,11,-3,0,8,1,11,-2,0,8,1,11,-1,0,8,1,11,0,0,8,1,11,1,0,8,1,11,2,0,8,1,11,3,0,8,1,11,4,0,5,1,11,5,0,9,2,12,-7,0,9,2,12,-6,0,9,2,12,-5,0,9,2,12,-4,0,9,2,12,-3,0,9,2,12,-2,0,9,2,12,-1,0,9,2,12,0,0,9,2,12,1,0,9,2,12,2,0,9,2,12,3,0,9,2,12,4,0,9,2,12,5,0,9,2]}
\ No newline at end of file
+{"NavigationVertices":[{"X":150,"Y":54},{"X":170,"Y":66},{"X":-42,"Y":66},{"X":106,"Y":54},{"X":170,"Y":-58},{"X":150,"Y":2},{"X":-42,"Y":-58},{"X":106,"Y":2},{"X":22,"Y":-30},{"X":22,"Y":22},{"X":-22,"Y":-30},{"X":-22,"Y":22}],"NavigationPolygon":[[0,1,2,3],[4,1,0,5],[6,4,5,7,8],[9,8,7,3],[6,8,10],[2,6,10,11],[3,2,11,9]],"Floor":[-3,-3,0,0,4,-3,-2,0,0,4,-3,-1,0,0,4,-3,0,0,0,4,-3,1,0,0,4,-3,2,0,0,4,-3,3,0,0,4,-2,-4,0,0,4,-2,-3,0,0,4,-2,-2,0,0,4,-2,-1,0,0,4,-2,0,0,0,4,-2,1,0,0,4,-2,2,0,0,4,-2,3,0,0,4,-1,-4,0,0,4,-1,-3,0,0,4,-1,1,0,0,4,-1,2,0,0,4,-1,3,0,0,4,0,-4,0,0,4,0,-3,0,0,4,0,1,0,0,4,0,2,0,0,4,0,3,0,0,4,1,-4,0,0,4,1,-3,0,0,4,1,-2,0,0,4,1,-1,0,0,4,1,0,0,0,4,1,1,0,0,4,1,2,0,0,4,1,3,0,0,4,2,-4,0,0,4,2,-3,0,0,4,2,-2,0,0,4,2,-1,0,0,4,2,0,0,0,4,2,1,0,0,4,2,2,0,0,4,2,3,0,0,4,3,-4,0,0,4,3,-3,0,0,4,3,-2,0,0,4,3,-1,0,0,4,3,0,0,0,4,3,1,0,0,4,3,2,0,0,4,3,3,0,0,4,4,-4,0,0,4,4,-3,0,0,4,4,-2,0,0,4,4,-1,0,0,4,4,0,0,0,4,4,1,0,0,4,4,2,0,0,4,4,3,0,0,4,5,-4,0,0,4,5,-3,0,0,4,5,-2,0,0,4,5,-1,0,0,4,5,0,0,0,4,5,1,0,0,4,5,2,0,0,4,5,3,0,0,4,6,-4,0,0,4,6,-3,0,0,4,6,-2,0,0,4,6,-1,0,0,4,6,0,0,0,4,6,1,0,0,4,6,2,0,0,4,6,3,0,0,4,7,-4,0,0,4,7,-3,0,0,4,7,-2,0,0,4,7,-1,0,0,4,7,3,0,0,4,8,-4,0,0,4,8,-3,0,0,4,8,-2,0,0,4,8,-1,0,0,4,8,3,0,0,4,9,-4,0,0,4,9,-3,0,0,4,9,-2,0,0,4,9,-1,0,0,4,9,0,0,0,4,9,1,0,0,4,9,2,0,0,4,9,3,0,0,4,10,-3,0,0,4,10,-2,0,0,4,10,-1,0,0,4,10,0,0,0,4,10,1,0,0,4,10,2,0,0,4,10,3,0,0,4,-3,-4,0,0,4,10,-4,0,0,4],"Middle":[-3,-6,0,9,3,-3,-5,0,2,4,-2,-6,0,9,3,-2,-5,0,2,4,-1,-6,0,9,3,-1,-5,0,2,4,-1,-1,0,8,3,-1,0,0,1,4,0,-6,0,9,3,0,-5,0,2,4,0,-1,0,11,3,0,0,0,3,4,1,-6,0,9,3,1,-5,0,2,4,2,-6,0,9,3,2,-5,0,2,4,3,-6,0,9,3,3,-5,0,2,4,4,-6,0,9,3,4,-5,0,2,4,5,-6,0,9,3,5,-5,0,2,4,6,-6,0,9,3,6,-5,0,2,4,7,-6,0,9,3,7,-5,0,2,4,7,1,0,8,3,7,2,0,1,4,8,-6,0,9,3,8,-5,0,2,4,8,1,0,11,3,8,2,0,3,4,9,-6,0,9,3,9,-5,0,2,4,10,-6,0,9,3,10,-5,0,2,4],"Top":[-5,-7,0,9,2,-5,-6,0,9,2,-5,-5,0,9,2,-5,-4,0,9,2,-5,-3,0,9,2,-5,-2,0,9,2,-5,-1,0,9,2,-5,0,0,9,2,-5,1,0,9,2,-5,2,0,9,2,-5,3,0,9,2,-5,4,0,9,2,-5,5,0,9,2,-4,-7,0,9,2,-4,-6,0,6,2,-4,-5,0,11,2,-4,-4,0,11,2,-4,-3,0,11,2,-4,-2,0,11,2,-4,-1,0,11,2,-4,0,0,11,2,-4,1,0,11,2,-4,2,0,11,2,-4,3,0,11,2,-4,4,0,6,1,-4,5,0,9,2,-3,-7,0,9,2,-3,4,0,10,0,-3,5,0,9,2,-2,-7,0,9,2,-2,4,0,10,0,-2,5,0,9,2,-1,-7,0,9,2,-1,-2,0,8,0,-1,4,0,10,0,-1,5,0,9,2,0,-7,0,9,2,0,-2,0,11,0,0,4,0,10,0,0,5,0,9,2,1,-7,0,9,2,1,4,0,10,0,1,5,0,9,2,2,-7,0,9,2,2,4,0,10,0,2,5,0,9,2,3,-7,0,9,2,3,4,0,10,0,3,5,0,9,2,4,-7,0,9,2,4,4,0,10,0,4,5,0,9,2,5,-7,0,9,2,5,4,0,10,0,5,5,0,9,2,6,-7,0,9,2,6,4,0,10,0,6,5,0,9,2,7,-7,0,9,2,7,0,0,8,0,7,4,0,10,0,7,5,0,9,2,8,-7,0,9,2,8,0,0,11,0,8,4,0,10,0,8,5,0,9,2,9,-7,0,9,2,9,4,0,10,0,9,5,0,9,2,10,-7,0,9,2,10,4,0,10,0,10,5,0,9,2,11,-7,0,9,2,11,-6,0,5,2,11,-5,0,8,1,11,-4,0,8,1,11,-3,0,8,1,11,-2,0,8,1,11,-1,0,8,1,11,0,0,8,1,11,1,0,8,1,11,2,0,8,1,11,3,0,8,1,11,4,0,5,1,11,5,0,9,2,12,-7,0,9,2,12,-6,0,9,2,12,-5,0,9,2,12,-4,0,9,2,12,-3,0,9,2,12,-2,0,9,2,12,-1,0,9,2,12,0,0,9,2,12,1,0,9,2,12,2,0,9,2,12,3,0,9,2,12,4,0,9,2,12,5,0,9,2]}
\ No newline at end of file
diff --git a/DungeonShooting_Godot/resource/map/tileMaps/TestGroup2/inlet/Start1/TileInfo.json b/DungeonShooting_Godot/resource/map/tileMaps/TestGroup2/inlet/Start1/TileInfo.json
index d59c9dd..65a9c61 100644
--- a/DungeonShooting_Godot/resource/map/tileMaps/TestGroup2/inlet/Start1/TileInfo.json
+++ b/DungeonShooting_Godot/resource/map/tileMaps/TestGroup2/inlet/Start1/TileInfo.json
@@ -1 +1 @@
-{"NavigationVertices":[{"X":138,"Y":82},{"X":-10,"Y":82},{"X":-10,"Y":-42},{"X":138,"Y":-42}],"NavigationPolygon":[[0,1,2,3]],"Floor":[-1,-3,0,0,4,-1,-2,0,0,4,-1,-1,0,0,4,-1,0,0,0,4,-1,1,0,0,4,-1,2,0,0,4,-1,3,0,0,4,-1,4,0,0,4,0,-3,0,0,4,0,-2,0,0,4,0,-1,0,0,4,0,0,0,0,4,0,1,0,0,4,0,2,0,0,4,0,3,0,0,4,0,4,0,0,4,1,-3,0,0,4,1,-2,0,0,4,1,-1,0,0,4,1,0,0,0,4,1,1,0,0,4,1,2,0,0,4,1,3,0,0,4,1,4,0,0,4,2,-3,0,0,4,2,-2,0,0,4,2,-1,0,0,4,2,0,0,0,4,2,1,0,0,4,2,2,0,0,4,2,3,0,0,4,2,4,0,0,4,3,-3,0,0,4,3,-2,0,0,4,3,-1,0,0,4,3,0,0,0,4,3,1,0,0,4,3,2,0,0,4,3,3,0,0,4,3,4,0,0,4,4,-3,0,0,4,4,-2,0,0,4,4,-1,0,0,4,4,0,0,0,4,4,1,0,0,4,4,2,0,0,4,4,3,0,0,4,4,4,0,0,4,5,-3,0,0,4,5,-2,0,0,4,5,-1,0,0,4,5,0,0,0,4,5,1,0,0,4,5,2,0,0,4,5,3,0,0,4,5,4,0,0,4,6,-3,0,0,4,6,-2,0,0,4,6,-1,0,0,4,6,0,0,0,4,6,1,0,0,4,6,2,0,0,4,6,3,0,0,4,6,4,0,0,4,7,-3,0,0,4,7,-2,0,0,4,7,-1,0,0,4,7,0,0,0,4,7,1,0,0,4,7,2,0,0,4,7,3,0,0,4,7,4,0,0,4,8,-3,0,0,4,8,-2,0,0,4,8,-1,0,0,4,8,0,0,0,4,8,1,0,0,4,8,2,0,0,4,8,3,0,0,4,8,4,0,0,4],"Middle":[],"Top":[-3,-6,0,9,2,-3,-5,0,9,2,-3,-4,0,9,2,-3,-3,0,9,2,-3,-2,0,9,2,-3,-1,0,9,2,-3,0,0,9,2,-3,1,0,9,2,-3,2,0,9,2,-3,3,0,9,2,-3,4,0,9,2,-3,5,0,9,2,-3,6,0,9,2,-2,-6,0,9,2,-2,-5,0,6,2,-2,-4,0,11,2,-2,-3,0,11,2,-2,-2,0,11,2,-2,-1,0,11,2,-2,0,0,11,2,-2,1,0,11,2,-2,2,0,11,2,-2,3,0,11,2,-2,4,0,11,2,-2,5,0,6,1,-2,6,0,9,2,-1,-6,0,9,2,-1,-5,0,9,3,-1,-4,0,2,4,-1,5,0,10,0,-1,6,0,9,2,0,-6,0,9,2,0,-5,0,9,3,0,-4,0,2,4,0,5,0,10,0,0,6,0,9,2,1,-6,0,9,2,1,-5,0,9,3,1,-4,0,2,4,1,5,0,10,0,1,6,0,9,2,2,-6,0,9,2,2,-5,0,9,3,2,-4,0,2,4,2,5,0,10,0,2,6,0,9,2,3,-6,0,9,2,3,-5,0,9,3,3,-4,0,2,4,3,5,0,10,0,3,6,0,9,2,4,-6,0,9,2,4,-5,0,9,3,4,-4,0,2,4,4,5,0,10,0,4,6,0,9,2,5,-6,0,9,2,5,-5,0,9,3,5,-4,0,2,4,5,5,0,10,0,5,6,0,9,2,6,-6,0,9,2,6,-5,0,9,3,6,-4,0,2,4,6,5,0,10,0,6,6,0,9,2,7,-6,0,9,2,7,-5,0,9,3,7,-4,0,2,4,7,5,0,10,0,7,6,0,9,2,8,-6,0,9,2,8,-5,0,9,3,8,-4,0,2,4,8,5,0,10,0,8,6,0,9,2,9,-6,0,9,2,9,-5,0,5,2,9,-4,0,8,1,9,-3,0,8,1,9,-2,0,8,1,9,-1,0,8,1,9,0,0,8,1,9,1,0,8,1,9,2,0,8,1,9,3,0,8,1,9,4,0,8,1,9,5,0,5,1,9,6,0,9,2,10,-6,0,9,2,10,-5,0,9,2,10,-4,0,9,2,10,-3,0,9,2,10,-2,0,9,2,10,-1,0,9,2,10,0,0,9,2,10,1,0,9,2,10,2,0,9,2,10,3,0,9,2,10,4,0,9,2,10,5,0,9,2,10,6,0,9,2]}
\ No newline at end of file
+{"NavigationVertices":[{"X":138,"Y":82},{"X":-10,"Y":82},{"X":-10,"Y":-42},{"X":138,"Y":-42}],"NavigationPolygon":[[0,1,2,3]],"Floor":[-1,-3,0,0,4,-1,-2,0,0,4,-1,-1,0,0,4,-1,0,0,0,4,-1,1,0,0,4,-1,2,0,0,4,-1,3,0,0,4,-1,4,0,0,4,0,-3,0,0,4,0,-2,0,0,4,0,-1,0,0,4,0,0,0,0,4,0,1,0,0,4,0,2,0,0,4,0,3,0,0,4,0,4,0,0,4,1,-3,0,0,4,1,-2,0,0,4,1,-1,0,0,4,1,0,0,0,4,1,1,0,0,4,1,2,0,0,4,1,3,0,0,4,1,4,0,0,4,2,-3,0,0,4,2,-2,0,0,4,2,-1,0,0,4,2,0,0,0,4,2,1,0,0,4,2,2,0,0,4,2,3,0,0,4,2,4,0,0,4,3,-3,0,0,4,3,-2,0,0,4,3,-1,0,0,4,3,0,0,0,4,3,1,0,0,4,3,2,0,0,4,3,3,0,0,4,3,4,0,0,4,4,-3,0,0,4,4,-2,0,0,4,4,-1,0,0,4,4,0,0,0,4,4,1,0,0,4,4,2,0,0,4,4,3,0,0,4,4,4,0,0,4,5,-3,0,0,4,5,-2,0,0,4,5,-1,0,0,4,5,0,0,0,4,5,1,0,0,4,5,2,0,0,4,5,3,0,0,4,5,4,0,0,4,6,-3,0,0,4,6,-2,0,0,4,6,-1,0,0,4,6,0,0,0,4,6,1,0,0,4,6,2,0,0,4,6,3,0,0,4,6,4,0,0,4,7,-3,0,0,4,7,-2,0,0,4,7,-1,0,0,4,7,0,0,0,4,7,1,0,0,4,7,2,0,0,4,7,3,0,0,4,7,4,0,0,4,8,-2,0,0,4,8,-1,0,0,4,8,0,0,0,4,8,1,0,0,4,8,2,0,0,4,8,3,0,0,4,8,4,0,0,4,8,-3,0,0,4],"Middle":[-1,-5,0,9,3,-1,-4,0,2,4,0,-5,0,9,3,0,-4,0,2,4,1,-5,0,9,3,1,-4,0,2,4,2,-5,0,9,3,2,-4,0,2,4,3,-5,0,9,3,3,-4,0,2,4,4,-5,0,9,3,4,-4,0,2,4,5,-5,0,9,3,5,-4,0,2,4,6,-5,0,9,3,6,-4,0,2,4,7,-5,0,9,3,7,-4,0,2,4,8,-5,0,9,3,8,-4,0,2,4],"Top":[-3,-6,0,9,2,-3,-5,0,9,2,-3,-4,0,9,2,-3,-3,0,9,2,-3,-2,0,9,2,-3,-1,0,9,2,-3,0,0,9,2,-3,1,0,9,2,-3,2,0,9,2,-3,3,0,9,2,-3,4,0,9,2,-3,5,0,9,2,-3,6,0,9,2,-2,-6,0,9,2,-2,-5,0,6,2,-2,-4,0,11,2,-2,-3,0,11,2,-2,-2,0,11,2,-2,-1,0,11,2,-2,0,0,11,2,-2,1,0,11,2,-2,2,0,11,2,-2,3,0,11,2,-2,4,0,11,2,-2,5,0,6,1,-2,6,0,9,2,-1,-6,0,9,2,-1,5,0,10,0,-1,6,0,9,2,0,-6,0,9,2,0,5,0,10,0,0,6,0,9,2,1,-6,0,9,2,1,5,0,10,0,1,6,0,9,2,2,-6,0,9,2,2,5,0,10,0,2,6,0,9,2,3,-6,0,9,2,3,5,0,10,0,3,6,0,9,2,4,-6,0,9,2,4,5,0,10,0,4,6,0,9,2,5,-6,0,9,2,5,5,0,10,0,5,6,0,9,2,6,-6,0,9,2,6,5,0,10,0,6,6,0,9,2,7,-6,0,9,2,7,5,0,10,0,7,6,0,9,2,8,-6,0,9,2,8,5,0,10,0,8,6,0,9,2,9,-6,0,9,2,9,-5,0,5,2,9,-4,0,8,1,9,-3,0,8,1,9,-2,0,8,1,9,-1,0,8,1,9,0,0,8,1,9,1,0,8,1,9,2,0,8,1,9,3,0,8,1,9,4,0,8,1,9,5,0,5,1,9,6,0,9,2,10,-6,0,9,2,10,-5,0,9,2,10,-4,0,9,2,10,-3,0,9,2,10,-2,0,9,2,10,-1,0,9,2,10,0,0,9,2,10,1,0,9,2,10,2,0,9,2,10,3,0,9,2,10,4,0,9,2,10,5,0,9,2,10,6,0,9,2]}
\ No newline at end of file
diff --git a/DungeonShooting_Godot/resource/map/tileMaps/TestGroup2/outlet/End1/TileInfo.json b/DungeonShooting_Godot/resource/map/tileMaps/TestGroup2/outlet/End1/TileInfo.json
index 556a97f..5a046cc 100644
--- a/DungeonShooting_Godot/resource/map/tileMaps/TestGroup2/outlet/End1/TileInfo.json
+++ b/DungeonShooting_Godot/resource/map/tileMaps/TestGroup2/outlet/End1/TileInfo.json
@@ -1 +1 @@
-{"NavigationVertices":[{"X":106,"Y":-26},{"X":106,"Y":82},{"X":86,"Y":54},{"X":86,"Y":18},{"X":6,"Y":82},{"X":26,"Y":54},{"X":6,"Y":-26},{"X":26,"Y":2},{"X":54,"Y":2},{"X":54,"Y":18}],"NavigationPolygon":[[0,1,2,3],[2,1,4,5],[5,4,6,7],[7,6,0,8],[8,0,3,9]],"Floor":[0,0,0,0,4,0,-1,0,0,4,1,-2,0,0,4,2,-2,0,0,4,3,-2,0,0,4,4,-2,0,0,4,5,-2,0,0,4,6,-2,0,0,4,6,-1,0,0,4,6,0,0,0,4,6,1,0,0,4,6,2,0,0,4,6,3,0,0,4,6,4,0,0,4,5,4,0,0,4,4,4,0,0,4,3,4,0,0,4,2,4,0,0,4,1,4,0,0,4,0,4,0,0,4,0,3,0,0,4,0,2,0,0,4,0,1,0,0,4,1,1,0,0,4,1,0,0,0,4,1,-1,0,0,4,2,-1,0,0,4,3,-1,0,0,4,4,-1,0,0,4,5,-1,0,0,4,5,0,0,0,4,5,2,0,0,4,5,3,0,0,4,4,3,0,0,4,3,3,0,0,4,2,3,0,0,4,1,3,0,0,4,1,2,0,0,4,4,0,0,0,4,3,0,0,0,4,5,1,0,0,4,0,-2,0,0,4],"Middle":[],"Top":[-2,-5,0,9,2,-2,-4,0,9,2,-2,-3,0,9,2,-2,-2,0,9,2,-2,-1,0,9,2,-2,0,0,9,2,-2,1,0,9,2,-2,2,0,9,2,-2,3,0,9,2,-2,4,0,9,2,-2,5,0,9,2,-2,6,0,9,2,-1,-5,0,9,2,-1,-4,0,6,2,-1,-3,0,11,2,-1,-2,0,11,2,-1,-1,0,11,2,-1,0,0,11,2,-1,1,0,11,2,-1,2,0,11,2,-1,3,0,11,2,-1,4,0,11,2,-1,5,0,6,1,-1,6,0,9,2,0,-5,0,9,2,0,-4,0,9,3,0,-3,0,2,4,0,5,0,10,0,0,6,0,9,2,1,-5,0,9,2,1,-4,0,9,3,1,-3,0,2,4,1,5,0,10,0,1,6,0,9,2,2,-5,0,9,2,2,-4,0,9,3,2,-3,0,2,4,2,0,0,0,0,2,1,0,1,2,2,2,0,1,4,2,5,0,10,0,2,6,0,9,2,3,-5,0,9,2,3,-4,0,9,3,3,-3,0,2,4,3,1,0,2,3,3,2,0,2,4,3,5,0,10,0,3,6,0,9,2,4,-5,0,9,2,4,-4,0,9,3,4,-3,0,2,4,4,1,0,3,3,4,2,0,3,4,4,5,0,10,0,4,6,0,9,2,5,-5,0,9,2,5,-4,0,9,3,5,-3,0,2,4,5,5,0,10,0,5,6,0,9,2,6,-5,0,9,2,6,-4,0,9,3,6,-3,0,2,4,6,5,0,10,0,6,6,0,9,2,7,-5,0,9,2,7,-4,0,5,2,7,-3,0,8,1,7,-2,0,8,1,7,-1,0,8,1,7,0,0,8,1,7,1,0,8,1,7,2,0,8,1,7,3,0,8,1,7,4,0,8,1,7,5,0,5,1,7,6,0,9,2,8,-5,0,9,2,8,-4,0,9,2,8,-3,0,9,2,8,-2,0,9,2,8,-1,0,9,2,8,0,0,9,2,8,1,0,9,2,8,2,0,9,2,8,3,0,9,2,8,4,0,9,2,8,5,0,9,2,8,6,0,9,2]}
\ No newline at end of file
+{"NavigationVertices":[{"X":106,"Y":-26},{"X":106,"Y":82},{"X":86,"Y":54},{"X":86,"Y":18},{"X":6,"Y":82},{"X":26,"Y":54},{"X":6,"Y":-26},{"X":26,"Y":2},{"X":54,"Y":2},{"X":54,"Y":18}],"NavigationPolygon":[[0,1,2,3],[2,1,4,5],[5,4,6,7],[7,6,0,8],[8,0,3,9]],"Floor":[0,0,0,0,4,0,-1,0,0,4,1,-2,0,0,4,2,-2,0,0,4,3,-2,0,0,4,4,-2,0,0,4,5,-2,0,0,4,6,-1,0,0,4,6,0,0,0,4,6,1,0,0,4,6,2,0,0,4,6,3,0,0,4,6,4,0,0,4,5,4,0,0,4,4,4,0,0,4,3,4,0,0,4,2,4,0,0,4,1,4,0,0,4,0,4,0,0,4,0,3,0,0,4,0,2,0,0,4,0,1,0,0,4,1,1,0,0,4,1,0,0,0,4,1,-1,0,0,4,2,-1,0,0,4,3,-1,0,0,4,4,-1,0,0,4,5,-1,0,0,4,5,0,0,0,4,5,2,0,0,4,5,3,0,0,4,4,3,0,0,4,3,3,0,0,4,2,3,0,0,4,1,3,0,0,4,1,2,0,0,4,4,0,0,0,4,3,0,0,0,4,5,1,0,0,4,0,-2,0,0,4,6,-2,0,0,4],"Middle":[0,-4,0,9,3,0,-3,0,2,4,1,-4,0,9,3,1,-3,0,2,4,2,-4,0,9,3,2,-3,0,2,4,2,1,0,1,2,2,2,0,1,4,3,-4,0,9,3,3,-3,0,2,4,3,1,0,2,3,3,2,0,2,4,4,-4,0,9,3,4,-3,0,2,4,4,1,0,3,3,4,2,0,3,4,5,-4,0,9,3,5,-3,0,2,4,6,-4,0,9,3,6,-3,0,2,4],"Top":[-2,-5,0,9,2,-2,-4,0,9,2,-2,-3,0,9,2,-2,-2,0,9,2,-2,-1,0,9,2,-2,0,0,9,2,-2,1,0,9,2,-2,2,0,9,2,-2,3,0,9,2,-2,4,0,9,2,-2,5,0,9,2,-2,6,0,9,2,-1,-5,0,9,2,-1,-4,0,6,2,-1,-3,0,11,2,-1,-2,0,11,2,-1,-1,0,11,2,-1,0,0,11,2,-1,1,0,11,2,-1,2,0,11,2,-1,3,0,11,2,-1,4,0,11,2,-1,5,0,6,1,-1,6,0,9,2,0,-5,0,9,2,0,5,0,10,0,0,6,0,9,2,1,-5,0,9,2,1,5,0,10,0,1,6,0,9,2,2,-5,0,9,2,2,0,0,0,0,2,5,0,10,0,2,6,0,9,2,3,-5,0,9,2,3,5,0,10,0,3,6,0,9,2,4,-5,0,9,2,4,5,0,10,0,4,6,0,9,2,5,-5,0,9,2,5,5,0,10,0,5,6,0,9,2,6,-5,0,9,2,6,5,0,10,0,6,6,0,9,2,7,-5,0,9,2,7,-4,0,5,2,7,-3,0,8,1,7,-2,0,8,1,7,-1,0,8,1,7,0,0,8,1,7,1,0,8,1,7,2,0,8,1,7,3,0,8,1,7,4,0,8,1,7,5,0,5,1,7,6,0,9,2,8,-5,0,9,2,8,-4,0,9,2,8,-3,0,9,2,8,-2,0,9,2,8,-1,0,9,2,8,0,0,9,2,8,1,0,9,2,8,2,0,9,2,8,3,0,9,2,8,4,0,9,2,8,5,0,9,2,8,6,0,9,2]}
\ No newline at end of file
diff --git a/DungeonShooting_Godot/resource/tileSet/map2/TileSet2.tres b/DungeonShooting_Godot/resource/tileSet/map2/TileSet2.tres
index b9ea035..95ad214 100644
--- a/DungeonShooting_Godot/resource/tileSet/map2/TileSet2.tres
+++ b/DungeonShooting_Godot/resource/tileSet/map2/TileSet2.tres
@@ -237,6 +237,7 @@
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/y_sort_origin = 23
0:2/0/terrain_set = 0
0:2/0/terrain = 0
0:2/0/physics_layer_0/linear_velocity = Vector2(0, 0)
@@ -244,6 +245,7 @@
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/y_sort_origin = 23
1:2/0/terrain_set = 0
1:2/0/terrain = 0
1:2/0/physics_layer_0/linear_velocity = Vector2(0, 0)
@@ -252,6 +254,7 @@
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/y_sort_origin = 23
2:2/0/terrain_set = 0
2:2/0/terrain = 0
2:2/0/physics_layer_0/linear_velocity = Vector2(0, 0)
@@ -261,6 +264,7 @@
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/y_sort_origin = 23
3:2/0/terrain_set = 0
3:2/0/terrain = 0
3:2/0/physics_layer_0/linear_velocity = Vector2(0, 0)
@@ -364,12 +368,14 @@
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/y_sort_origin = 23
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/y_sort_origin = 23
1:3/0/terrain_set = 0
1:3/0/terrain = 0
1:3/0/physics_layer_0/linear_velocity = Vector2(0, 0)
@@ -377,6 +383,7 @@
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/y_sort_origin = 23
2:3/0/terrain_set = 0
2:3/0/terrain = 0
2:3/0/physics_layer_0/linear_velocity = Vector2(0, 0)
@@ -385,6 +392,7 @@
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/y_sort_origin = 23
3:3/0/terrain_set = 0
3:3/0/terrain = 0
3:3/0/physics_layer_0/linear_velocity = Vector2(0, 0)
@@ -403,6 +411,7 @@
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/y_sort_origin = 23
5:3/0/terrain_set = 0
5:3/0/terrain = 0
5:3/0/physics_layer_0/linear_velocity = Vector2(0, 0)
@@ -413,6 +422,7 @@
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/y_sort_origin = 23
6:3/0/terrain_set = 0
6:3/0/terrain = 0
6:3/0/physics_layer_0/linear_velocity = Vector2(0, 0)
diff --git a/DungeonShooting_Godot/src/framework/map/TileCellData.cs b/DungeonShooting_Godot/src/framework/map/TileCellData.cs
index f747622..10059b3 100644
--- a/DungeonShooting_Godot/src/framework/map/TileCellData.cs
+++ b/DungeonShooting_Godot/src/framework/map/TileCellData.cs
@@ -6,17 +6,12 @@
///
public class TileCellData
{
- public TileCellData(int sourceId, Vector2I autoTileCoords)
- {
- SourceId = sourceId;
- AutoTileCoords = autoTileCoords;
- }
-
- public TileCellData(int sourceId, Vector2I autoTileCoords, uint terrainPeering)
+ public TileCellData(int sourceId, Vector2I autoTileCoords, uint terrainPeering, int defaultLayer)
{
SourceId = sourceId;
AutoTileCoords = autoTileCoords;
TerrainPeering = terrainPeering;
+ DefaultLayer = defaultLayer;
}
///
@@ -37,5 +32,5 @@
///
/// 默认存放层级
///
- public int DefaultLayer = GameConfig.FloorMapLayer;
+ public int DefaultLayer;
}
\ No newline at end of file
diff --git a/DungeonShooting_Godot/src/game/room/AutoTileConfig.cs b/DungeonShooting_Godot/src/game/room/AutoTileConfig.cs
index f92b62f..5e815d6 100644
--- a/DungeonShooting_Godot/src/game/room/AutoTileConfig.cs
+++ b/DungeonShooting_Godot/src/game/room/AutoTileConfig.cs
@@ -7,7 +7,7 @@
///
public class AutoTileConfig
{
- public TileCellData Floor = new TileCellData(0, new Vector2I(0, 4));
+ public TileCellData Floor = new TileCellData(0, new Vector2I(0, 4), TerrainPeering.None, GameConfig.FloorMapLayer);
public TileCellData TopMask;
public TileCellData Wall_Bottom;
public TileCellData Wall_Left;
@@ -22,10 +22,10 @@
public TileCellData Wall_IN_RT;
public TileCellData Wall_IN_RB;
- public TileCellData Wall_Vertical_Left = new TileCellData(0, new Vector2I(1, 4));
- public TileCellData Wall_Vertical_Center = new TileCellData(0, new Vector2I(2, 4));
- public TileCellData Wall_Vertical_Right = new TileCellData(0, new Vector2I(3, 4));
- public TileCellData Wall_Vertical_Single = new TileCellData(0, new Vector2I(4, 4));
+ public TileCellData Wall_Vertical_Left = new TileCellData(0, new Vector2I(1, 4), TerrainPeering.None, GameConfig.MiddleMapLayer);
+ public TileCellData Wall_Vertical_Center = new TileCellData(0, new Vector2I(2, 4), TerrainPeering.None, GameConfig.MiddleMapLayer);
+ public TileCellData Wall_Vertical_Right = new TileCellData(0, new Vector2I(3, 4), TerrainPeering.None, GameConfig.MiddleMapLayer);
+ public TileCellData Wall_Vertical_Single = new TileCellData(0, new Vector2I(4, 4), TerrainPeering.None, GameConfig.MiddleMapLayer);
//----------------------------- 所有自动图块数据 -----------------------------
//----------------------------- 命名规则: Auto_ + LT + T + RT + _ + L + C + R + _ + LB + B + RB
@@ -91,6 +91,8 @@
//-------------------------------------------------------------------------
+ private Dictionary _mapping = new Dictionary();
+
public AutoTileConfig(int sourceId, TileSetAtlasSource atlasSource)
{
var tilesCount = atlasSource.GetTilesCount();
@@ -119,187 +121,206 @@
Wall_IN_LB = Auto_110_111_111;
Wall_IN_RT = Auto_111_111_011;
Wall_IN_RB = Auto_011_111_111;
+
+ HandlerMapping();
+ HandlerOtherCellMapping();
}
- public int GetLayer2(Vector2I atlasCoords)
+ public int GetLayer(Vector2I atlasCoords)
{
- return atlasCoords == Floor.AutoTileCoords ? GameConfig.FloorMapLayer : GameConfig.TopMapLayer;
+ if (_mapping.TryGetValue(atlasCoords, out var tile))
+ {
+ return tile.DefaultLayer;
+ }
+
+ return GameConfig.FloorMapLayer;
}
private void HandlerTileData(uint peeringValue, int sourceId, Vector2I pos)
{
- var temp = new TileCellData(sourceId, pos, peeringValue);
switch (peeringValue)
{
+ //第一列
case TerrainPeering.Center | TerrainPeering.Bottom:
- Auto_000_010_010 = temp;
+ Auto_000_010_010 = new TileCellData(sourceId, pos, peeringValue, GameConfig.TopMapLayer);
break;
case TerrainPeering.Top | TerrainPeering.Center | TerrainPeering.Bottom:
- Auto_010_010_010 = temp;
+ Auto_010_010_010 = new TileCellData(sourceId, pos, peeringValue, GameConfig.TopMapLayer);
break;
case TerrainPeering.Top | TerrainPeering.Center:
- Auto_010_010_000 = temp;
+ Auto_010_010_000 = new TileCellData(sourceId, pos, peeringValue, GameConfig.MiddleMapLayer);
break;
case TerrainPeering.Center:
- Auto_000_010_000 = temp;
+ Auto_000_010_000 = new TileCellData(sourceId, pos, peeringValue, GameConfig.MiddleMapLayer);
break;
+ //第二列
case TerrainPeering.Center | TerrainPeering.Right | TerrainPeering.Bottom:
- Auto_000_011_010 = temp;
+ Auto_000_011_010 = new TileCellData(sourceId, pos, peeringValue, GameConfig.TopMapLayer);
break;
case TerrainPeering.Top | TerrainPeering.Center | TerrainPeering.Right | TerrainPeering.Bottom:
- Auto_010_011_010 = temp;
+ Auto_010_011_010 = new TileCellData(sourceId, pos, peeringValue, GameConfig.TopMapLayer);
break;
case TerrainPeering.Top | TerrainPeering.Center | TerrainPeering.Right:
- Auto_010_011_000 = temp;
+ Auto_010_011_000 = new TileCellData(sourceId, pos, peeringValue, GameConfig.MiddleMapLayer);
break;
case TerrainPeering.Center | TerrainPeering.Right:
- Auto_000_011_000 = temp;
+ Auto_000_011_000 = new TileCellData(sourceId, pos, peeringValue, GameConfig.MiddleMapLayer);
break;
+ //第三列
case TerrainPeering.Left | TerrainPeering.Center | TerrainPeering.Right | TerrainPeering.Bottom:
- Auto_000_111_010 = temp;
+ Auto_000_111_010 = new TileCellData(sourceId, pos, peeringValue, GameConfig.TopMapLayer);
break;
case TerrainPeering.Top | TerrainPeering.Left | TerrainPeering.Center | TerrainPeering.Right |
TerrainPeering.Bottom:
- Auto_010_111_010 = temp;
+ Auto_010_111_010 = new TileCellData(sourceId, pos, peeringValue, GameConfig.TopMapLayer);
break;
case TerrainPeering.Top | TerrainPeering.Left | TerrainPeering.Center | TerrainPeering.Right:
- Auto_010_111_000 = temp;
+ Auto_010_111_000 = new TileCellData(sourceId, pos, peeringValue, GameConfig.MiddleMapLayer);
break;
case TerrainPeering.Left | TerrainPeering.Center | TerrainPeering.Right:
- Auto_000_111_000 = temp;
+ Auto_000_111_000 = new TileCellData(sourceId, pos, peeringValue, GameConfig.MiddleMapLayer);
break;
+ //第四列
case TerrainPeering.Left | TerrainPeering.Center | TerrainPeering.Bottom:
- Auto_000_110_010 = temp;
+ Auto_000_110_010 = new TileCellData(sourceId, pos, peeringValue, GameConfig.TopMapLayer);
break;
case TerrainPeering.Top | TerrainPeering.Left | TerrainPeering.Center | TerrainPeering.Bottom:
- Auto_010_110_010 = temp;
+ Auto_010_110_010 = new TileCellData(sourceId, pos, peeringValue, GameConfig.TopMapLayer);
break;
case TerrainPeering.Top | TerrainPeering.Left | TerrainPeering.Center:
- Auto_010_110_000 = temp;
+ Auto_010_110_000 = new TileCellData(sourceId, pos, peeringValue, GameConfig.MiddleMapLayer);
break;
case TerrainPeering.Left | TerrainPeering.Center:
- Auto_000_110_000 = temp;
+ Auto_000_110_000 = new TileCellData(sourceId, pos, peeringValue, GameConfig.MiddleMapLayer);
break;
+ //第五列
case TerrainPeering.LeftTop | TerrainPeering.Top | TerrainPeering.Left | TerrainPeering.Center |
TerrainPeering.Right | TerrainPeering.Bottom:
- Auto_110_111_010 = temp;
+ Auto_110_111_010 = new TileCellData(sourceId, pos, peeringValue, GameConfig.TopMapLayer);
break;
case TerrainPeering.Top | TerrainPeering.Center | TerrainPeering.Right | TerrainPeering.Bottom |
TerrainPeering.RightBottom:
- Auto_010_011_011 = temp;
+ Auto_010_011_011 = new TileCellData(sourceId, pos, peeringValue, GameConfig.TopMapLayer);
break;
case TerrainPeering.Top | TerrainPeering.RightTop | TerrainPeering.Center | TerrainPeering.Right |
TerrainPeering.Bottom:
- Auto_011_011_010 = temp;
+ Auto_011_011_010 = new TileCellData(sourceId, pos, peeringValue, GameConfig.TopMapLayer);
break;
case TerrainPeering.Top | TerrainPeering.Left | TerrainPeering.Center | TerrainPeering.Right |
TerrainPeering.LeftBottom | TerrainPeering.Bottom:
- Auto_010_111_110 = temp;
+ Auto_010_111_110 = new TileCellData(sourceId, pos, peeringValue, GameConfig.TopMapLayer);
break;
+ //第六列
case TerrainPeering.Left | TerrainPeering.Center | TerrainPeering.Right | TerrainPeering.Bottom |
TerrainPeering.RightBottom:
- Auto_000_111_011 = temp;
+ Auto_000_111_011 = new TileCellData(sourceId, pos, peeringValue, GameConfig.TopMapLayer);
break;
case TerrainPeering.Top | TerrainPeering.RightTop | TerrainPeering.Left | TerrainPeering.Center |
TerrainPeering.Right | TerrainPeering.LeftBottom | TerrainPeering.Bottom | TerrainPeering.RightBottom:
- Auto_011_111_111 = temp;
+ Auto_011_111_111 = new TileCellData(sourceId, pos, peeringValue, GameConfig.TopMapLayer);
break;
case TerrainPeering.LeftTop | TerrainPeering.Top | TerrainPeering.RightTop | TerrainPeering.Left |
TerrainPeering.Center | TerrainPeering.Right | TerrainPeering.Bottom | TerrainPeering.RightBottom:
- Auto_111_111_011 = temp;
+ Auto_111_111_011 = new TileCellData(sourceId, pos, peeringValue, GameConfig.TopMapLayer);
break;
case TerrainPeering.Top | TerrainPeering.RightTop | TerrainPeering.Left | TerrainPeering.Center |
TerrainPeering.Right:
- Auto_011_111_000 = temp;
+ Auto_011_111_000 = new TileCellData(sourceId, pos, peeringValue, GameConfig.MiddleMapLayer);
break;
+ //第七列
case TerrainPeering.Left | TerrainPeering.Center | TerrainPeering.Right | TerrainPeering.LeftBottom |
TerrainPeering.Bottom:
- Auto_000_111_110 = temp;
+ Auto_000_111_110 = new TileCellData(sourceId, pos, peeringValue, GameConfig.TopMapLayer);
break;
case TerrainPeering.LeftTop | TerrainPeering.Top | TerrainPeering.Left | TerrainPeering.Center |
TerrainPeering.Right | TerrainPeering.LeftBottom | TerrainPeering.Bottom | TerrainPeering.RightBottom:
- Auto_110_111_111 = temp;
+ Auto_110_111_111 = new TileCellData(sourceId, pos, peeringValue, GameConfig.TopMapLayer);
break;
case TerrainPeering.LeftTop | TerrainPeering.Top | TerrainPeering.RightTop | TerrainPeering.Left |
TerrainPeering.Center | TerrainPeering.Right | TerrainPeering.LeftBottom | TerrainPeering.Bottom:
- Auto_111_111_110 = temp;
+ Auto_111_111_110 = new TileCellData(sourceId, pos, peeringValue, GameConfig.TopMapLayer);
break;
case TerrainPeering.LeftTop | TerrainPeering.Top | TerrainPeering.Left | TerrainPeering.Center |
TerrainPeering.Right:
- Auto_110_111_000 = temp;
+ Auto_110_111_000 = new TileCellData(sourceId, pos, peeringValue, GameConfig.MiddleMapLayer);
break;
+ //第八列
case TerrainPeering.Top | TerrainPeering.RightTop | TerrainPeering.Left | TerrainPeering.Center |
TerrainPeering.Right | TerrainPeering.Bottom:
- Auto_011_111_010 = temp;
+ Auto_011_111_010 = new TileCellData(sourceId, pos, peeringValue, GameConfig.TopMapLayer);
break;
case TerrainPeering.Top | TerrainPeering.Left | TerrainPeering.Center | TerrainPeering.LeftBottom |
TerrainPeering.Bottom:
- Auto_010_110_110 = temp;
+ Auto_010_110_110 = new TileCellData(sourceId, pos, peeringValue, GameConfig.TopMapLayer);
break;
case TerrainPeering.LeftTop | TerrainPeering.Top | TerrainPeering.Left | TerrainPeering.Center |
TerrainPeering.Bottom:
- Auto_110_110_010 = temp;
+ Auto_110_110_010 = new TileCellData(sourceId, pos, peeringValue, GameConfig.TopMapLayer);
break;
case TerrainPeering.Top | TerrainPeering.Left | TerrainPeering.Center | TerrainPeering.Right |
TerrainPeering.Bottom | TerrainPeering.RightBottom:
- Auto_010_111_011 = temp;
+ Auto_010_111_011 = new TileCellData(sourceId, pos, peeringValue, GameConfig.TopMapLayer);
break;
+ //第九列
case TerrainPeering.Center | TerrainPeering.Right | TerrainPeering.Bottom | TerrainPeering.RightBottom:
- Auto_000_011_011 = temp;
+ Auto_000_011_011 = new TileCellData(sourceId, pos, peeringValue, GameConfig.TopMapLayer);
break;
case TerrainPeering.Top | TerrainPeering.RightTop | TerrainPeering.Center | TerrainPeering.Right |
TerrainPeering.Bottom | TerrainPeering.RightBottom:
- Auto_011_011_011 = temp;
+ Auto_011_011_011 = new TileCellData(sourceId, pos, peeringValue, GameConfig.TopMapLayer);
break;
case TerrainPeering.Top | TerrainPeering.RightTop | TerrainPeering.Left | TerrainPeering.Center |
TerrainPeering.Right | TerrainPeering.Bottom | TerrainPeering.RightBottom:
- Auto_011_111_011 = temp;
+ Auto_011_111_011 = new TileCellData(sourceId, pos, peeringValue, GameConfig.TopMapLayer);
break;
case TerrainPeering.Top | TerrainPeering.RightTop | TerrainPeering.Center | TerrainPeering.Right:
- Auto_011_011_000 = temp;
+ Auto_011_011_000 = new TileCellData(sourceId, pos, peeringValue, GameConfig.MiddleMapLayer);
break;
+ //第十列
case TerrainPeering.Top | TerrainPeering.Left | TerrainPeering.Center | TerrainPeering.Right |
TerrainPeering.LeftBottom | TerrainPeering.Bottom | TerrainPeering.RightBottom:
- Auto_010_111_111 = temp;
+ Auto_010_111_111 = new TileCellData(sourceId, pos, peeringValue, GameConfig.TopMapLayer);
break;
case TerrainPeering.LeftTop | TerrainPeering.Top | TerrainPeering.Left | TerrainPeering.Center |
TerrainPeering.Right | TerrainPeering.Bottom | TerrainPeering.RightBottom:
- Auto_110_111_011 = temp;
+ Auto_110_111_011 = new TileCellData(sourceId, pos, peeringValue, GameConfig.TopMapLayer);
break;
case TerrainPeering.LeftTop | TerrainPeering.Top | TerrainPeering.RightTop | TerrainPeering.Left |
TerrainPeering.Center | TerrainPeering.Right | TerrainPeering.LeftBottom | TerrainPeering.Bottom |
TerrainPeering.RightBottom:
- Auto_111_111_111 = temp;
+ Auto_111_111_111 = new TileCellData(sourceId, pos, peeringValue, GameConfig.TopMapLayer);
break;
case TerrainPeering.LeftTop | TerrainPeering.Top | TerrainPeering.RightTop | TerrainPeering.Left |
TerrainPeering.Center | TerrainPeering.Right:
- Auto_111_111_000 = temp;
+ Auto_111_111_000 = new TileCellData(sourceId, pos, peeringValue, GameConfig.MiddleMapLayer);
break;
+ //第十一列
case TerrainPeering.Left | TerrainPeering.Center | TerrainPeering.Right | TerrainPeering.LeftBottom |
TerrainPeering.Bottom | TerrainPeering.RightBottom:
- Auto_000_111_111 = temp;
+ Auto_000_111_111 = new TileCellData(sourceId, pos, peeringValue, GameConfig.TopMapLayer);
break;
case TerrainPeering.Top | TerrainPeering.RightTop | TerrainPeering.Left | TerrainPeering.Center |
TerrainPeering.Right | TerrainPeering.LeftBottom | TerrainPeering.Bottom:
- Auto_011_111_110 = temp;
+ Auto_011_111_110 = new TileCellData(sourceId, pos, peeringValue, GameConfig.TopMapLayer);
break;
case TerrainPeering.LeftTop | TerrainPeering.Top | TerrainPeering.RightTop | TerrainPeering.Left |
TerrainPeering.Center | TerrainPeering.Right | TerrainPeering.Bottom:
- Auto_111_111_010 = temp;
+ Auto_111_111_010 = new TileCellData(sourceId, pos, peeringValue, GameConfig.TopMapLayer);
break;
+ //第十二列
case TerrainPeering.Left | TerrainPeering.Center | TerrainPeering.LeftBottom | TerrainPeering.Bottom:
- Auto_000_110_110 = temp;
+ Auto_000_110_110 = new TileCellData(sourceId, pos, peeringValue, GameConfig.TopMapLayer);
break;
case TerrainPeering.LeftTop | TerrainPeering.Top | TerrainPeering.Left | TerrainPeering.Center |
TerrainPeering.Right | TerrainPeering.LeftBottom | TerrainPeering.Bottom:
- Auto_110_111_110 = temp;
+ Auto_110_111_110 = new TileCellData(sourceId, pos, peeringValue, GameConfig.TopMapLayer);
break;
case TerrainPeering.LeftTop | TerrainPeering.Top | TerrainPeering.Left | TerrainPeering.Center |
TerrainPeering.LeftBottom | TerrainPeering.Bottom:
- Auto_110_110_110 = temp;
+ Auto_110_110_110 = new TileCellData(sourceId, pos, peeringValue, GameConfig.TopMapLayer);
break;
case TerrainPeering.LeftTop | TerrainPeering.Top | TerrainPeering.Left | TerrainPeering.Center:
- Auto_110_110_000 = temp;
+ Auto_110_110_000 = new TileCellData(sourceId, pos, peeringValue, GameConfig.MiddleMapLayer);
break;
default:
@@ -307,4 +328,77 @@
break;
}
}
+
+
+ private void HandlerMapping()
+ {
+ //第一列
+ _mapping.Add(Auto_000_010_010.AutoTileCoords, Auto_000_010_010);
+ _mapping.Add(Auto_010_010_010.AutoTileCoords, Auto_010_010_010);
+ _mapping.Add(Auto_010_010_000.AutoTileCoords, Auto_010_010_000);
+ _mapping.Add(Auto_000_010_000.AutoTileCoords, Auto_000_010_000);
+ //第二列
+ _mapping.Add(Auto_000_011_010.AutoTileCoords, Auto_000_011_010);
+ _mapping.Add(Auto_010_011_010.AutoTileCoords, Auto_010_011_010);
+ _mapping.Add(Auto_010_011_000.AutoTileCoords, Auto_010_011_000);
+ _mapping.Add(Auto_000_011_000.AutoTileCoords, Auto_000_011_000);
+ //第三列
+ _mapping.Add(Auto_000_111_010.AutoTileCoords, Auto_000_111_010);
+ _mapping.Add(Auto_010_111_010.AutoTileCoords, Auto_010_111_010);
+ _mapping.Add(Auto_010_111_000.AutoTileCoords, Auto_010_111_000);
+ _mapping.Add(Auto_000_111_000.AutoTileCoords, Auto_000_111_000);
+ //第四列
+ _mapping.Add(Auto_000_110_010.AutoTileCoords, Auto_000_110_010);
+ _mapping.Add(Auto_010_110_010.AutoTileCoords, Auto_010_110_010);
+ _mapping.Add(Auto_010_110_000.AutoTileCoords, Auto_010_110_000);
+ _mapping.Add(Auto_000_110_000.AutoTileCoords, Auto_000_110_000);
+ //第五列
+ _mapping.Add(Auto_110_111_010.AutoTileCoords, Auto_110_111_010);
+ _mapping.Add(Auto_010_011_011.AutoTileCoords, Auto_010_011_011);
+ _mapping.Add(Auto_011_011_010.AutoTileCoords, Auto_011_011_010);
+ _mapping.Add(Auto_010_111_110.AutoTileCoords, Auto_010_111_110);
+ //第六列
+ _mapping.Add(Auto_000_111_011.AutoTileCoords, Auto_000_111_011);
+ _mapping.Add(Auto_011_111_111.AutoTileCoords, Auto_011_111_111);
+ _mapping.Add(Auto_111_111_011.AutoTileCoords, Auto_111_111_011);
+ _mapping.Add(Auto_011_111_000.AutoTileCoords, Auto_011_111_000);
+ //第七列
+ _mapping.Add(Auto_000_111_110.AutoTileCoords, Auto_000_111_110);
+ _mapping.Add(Auto_110_111_111.AutoTileCoords, Auto_110_111_111);
+ _mapping.Add(Auto_111_111_110.AutoTileCoords, Auto_111_111_110);
+ _mapping.Add(Auto_110_111_000.AutoTileCoords, Auto_110_111_000);
+ //第八列
+ _mapping.Add(Auto_011_111_010.AutoTileCoords, Auto_011_111_010);
+ _mapping.Add(Auto_010_110_110.AutoTileCoords, Auto_010_110_110);
+ _mapping.Add(Auto_110_110_010.AutoTileCoords, Auto_110_110_010);
+ _mapping.Add(Auto_010_111_011.AutoTileCoords, Auto_010_111_011);
+ //第九列
+ _mapping.Add(Auto_000_011_011.AutoTileCoords, Auto_000_011_011);
+ _mapping.Add(Auto_011_011_011.AutoTileCoords, Auto_011_011_011);
+ _mapping.Add(Auto_011_111_011.AutoTileCoords, Auto_011_111_011);
+ _mapping.Add(Auto_011_011_000.AutoTileCoords, Auto_011_011_000);
+ //第十列
+ _mapping.Add(Auto_010_111_111.AutoTileCoords, Auto_010_111_111);
+ _mapping.Add(Auto_110_111_011.AutoTileCoords, Auto_110_111_011);
+ _mapping.Add(Auto_111_111_111.AutoTileCoords, Auto_111_111_111);
+ _mapping.Add(Auto_111_111_000.AutoTileCoords, Auto_111_111_000);
+ //第十一列
+ _mapping.Add(Auto_000_111_111.AutoTileCoords, Auto_000_111_111);
+ _mapping.Add(Auto_011_111_110.AutoTileCoords, Auto_011_111_110);
+ _mapping.Add(Auto_111_111_010.AutoTileCoords, Auto_111_111_010);
+ //第十二列
+ _mapping.Add(Auto_000_110_110.AutoTileCoords, Auto_000_110_110);
+ _mapping.Add(Auto_110_111_110.AutoTileCoords, Auto_110_111_110);
+ _mapping.Add(Auto_110_110_110.AutoTileCoords, Auto_110_110_110);
+ _mapping.Add(Auto_110_110_000.AutoTileCoords, Auto_110_110_000);
+ }
+
+ private void HandlerOtherCellMapping()
+ {
+ _mapping.Add(Floor.AutoTileCoords, Floor);
+ _mapping.Add(Wall_Vertical_Left.AutoTileCoords, Wall_Vertical_Left);
+ _mapping.Add(Wall_Vertical_Right.AutoTileCoords, Wall_Vertical_Right);
+ _mapping.Add(Wall_Vertical_Center.AutoTileCoords, Wall_Vertical_Center);
+ _mapping.Add(Wall_Vertical_Single.AutoTileCoords, Wall_Vertical_Single);
+ }
}
\ No newline at end of file
diff --git a/DungeonShooting_Godot/src/game/ui/mapEditor/tileView/EditorTileMap.cs b/DungeonShooting_Godot/src/game/ui/mapEditor/tileView/EditorTileMap.cs
index 8e52743..ae0918b 100644
--- a/DungeonShooting_Godot/src/game/ui/mapEditor/tileView/EditorTileMap.cs
+++ b/DungeonShooting_Godot/src/game/ui/mapEditor/tileView/EditorTileMap.cs
@@ -878,7 +878,7 @@
if (!_autoCellLayerGrid.Contains(pos) && GetCellSourceId(AutoFloorLayer, pos) != -1)
{
var atlasCoords = GetCellAtlasCoords(AutoFloorLayer, pos);
- var layer = _autoTileConfig.GetLayer2(atlasCoords);
+ var layer = _autoTileConfig.GetLayer(atlasCoords);
if (layer == GameConfig.MiddleMapLayer)
{
layer = AutoMiddleLayer;