diff --git a/DungeonShooting_Godot/resource/map/tileMaps/TestGroup1/battle/Battle1/Preinstall.json b/DungeonShooting_Godot/resource/map/tileMaps/TestGroup1/battle/Battle1/Preinstall.json index 67fa184..4ebcc0d 100644 --- a/DungeonShooting_Godot/resource/map/tileMaps/TestGroup1/battle/Battle1/Preinstall.json +++ b/DungeonShooting_Godot/resource/map/tileMaps/TestGroup1/battle/Battle1/Preinstall.json @@ -1 +1 @@ -[{"Name":"test1","Weight":100,"Remark":"","WaveList":[[{"Position":{"X":-4,"Y":-6},"Size":{"X":30,"Y":26},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"enemy0001","Weight":100,"Attr":{"Face":"0","Weapon":"weapon0002","CurrAmmon":"7","ResidueAmmo":"7"},"Altitude":0,"VerticalSpeed":0}]},{"Position":{"X":38,"Y":48},"Size":{"X":31,"Y":25},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"enemy0001","Weight":100,"Attr":{"Face":"0","Weapon":"weapon0002","CurrAmmon":"7","ResidueAmmo":"7"},"Altitude":0,"VerticalSpeed":0}]}],[{"Position":{"X":38,"Y":-3},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"enemy0001","Weight":100,"Attr":{"Face":"0","Weapon":"weapon0007","CurrAmmon":"60","ResidueAmmo":"60"},"Altitude":0,"VerticalSpeed":0}]}],[{"Position":{"X":-9,"Y":38},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"enemy0001","Weight":100,"Attr":{"Face":"0","Weapon":"weapon0007","CurrAmmon":"60","ResidueAmmo":"60"},"Altitude":0,"VerticalSpeed":0}]}]]}] \ No newline at end of file +[{"Name":"test1","Weight":100,"Remark":"","WaveList":[[{"Position":{"X":-4,"Y":-6},"Size":{"X":30,"Y":26},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"enemy0001","Weight":100,"Attr":{"Face":"0","Weapon":"weapon0002","CurrAmmon":"7","ResidueAmmo":"7"},"Altitude":0,"VerticalSpeed":0}]},{"Position":{"X":38,"Y":48},"Size":{"X":31,"Y":25},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"enemy0001","Weight":100,"Attr":{"Face":"0","Weapon":"weapon0002","CurrAmmon":"7","ResidueAmmo":"7"},"Altitude":0,"VerticalSpeed":0}]}],[{"Position":{"X":38,"Y":-3},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"enemy0001","Weight":100,"Attr":{"Face":"0","Weapon":"weapon0007","CurrAmmon":"60","ResidueAmmo":"60"},"Altitude":0,"VerticalSpeed":0}]},{"Position":{"X":103,"Y":13},"Size":{"X":105,"Y":36},"SpecialMarkType":0,"DelayTime":1,"MarkList":[{"Id":"enemy0001","Weight":100,"Attr":{"Face":"0","Weapon":"weapon0007","CurrAmmon":"60","ResidueAmmo":"60"},"Altitude":0,"VerticalSpeed":0}]}],[{"Position":{"X":-9,"Y":38},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"enemy0001","Weight":100,"Attr":{"Face":"0","Weapon":"weapon0007","CurrAmmon":"60","ResidueAmmo":"60"},"Altitude":0,"VerticalSpeed":0}]},{"Position":{"X":17,"Y":78},"Size":{"X":26,"Y":66},"SpecialMarkType":0,"DelayTime":1.5,"MarkList":[{"Id":"enemy0001","Weight":100,"Attr":{"Face":"0","Weapon":"weapon0006","CurrAmmon":"20","ResidueAmmo":"20"},"Altitude":0,"VerticalSpeed":0}]},{"Position":{"X":19,"Y":-48},"Size":{"X":16,"Y":63},"SpecialMarkType":0,"DelayTime":2,"MarkList":[{"Id":"enemy0001","Weight":100,"Attr":{"Face":"0","Weapon":"weapon0002","CurrAmmon":"7","ResidueAmmo":"7"},"Altitude":0,"VerticalSpeed":0}]}]]}] \ No newline at end of file diff --git a/DungeonShooting_Godot/resource/map/tileMaps/TestGroup1/battle/Battle1/Preview.png b/DungeonShooting_Godot/resource/map/tileMaps/TestGroup1/battle/Battle1/Preview.png index eb42965..f359ae7 100644 --- a/DungeonShooting_Godot/resource/map/tileMaps/TestGroup1/battle/Battle1/Preview.png +++ b/DungeonShooting_Godot/resource/map/tileMaps/TestGroup1/battle/Battle1/Preview.png Binary files differ diff --git a/DungeonShooting_Godot/resource/map/tileMaps/TestGroup1/battle/Battle1/TileInfo.json b/DungeonShooting_Godot/resource/map/tileMaps/TestGroup1/battle/Battle1/TileInfo.json index 1d76fc5..309a41e 100644 --- a/DungeonShooting_Godot/resource/map/tileMaps/TestGroup1/battle/Battle1/TileInfo.json +++ b/DungeonShooting_Godot/resource/map/tileMaps/TestGroup1/battle/Battle1/TileInfo.json @@ -1 +1 @@ -{"NavigationList":[{"Type":0,"Points":[-88,-88,120,-88,120,-8,168,-8,168,-88,184,-88,184,-72,232,-72,232,-16,184,-16,184,56,232,56,232,112,184,112,184,128,168,128,168,32,120,32,120,128,-88,128]},{"Type":1,"Points":[-72,-64,8,-64,8,-24,-24,-24,-24,8,-72,8]},{"Type":1,"Points":[24,-64,104,-64,104,8,56,8,56,-24,24,-24]},{"Type":1,"Points":[-72,32,-24,32,-24,64,8,64,8,104,-72,104]},{"Type":1,"Points":[56,32,104,32,104,104,24,104,24,64,56,64]}],"Floor":[10,-1,0,0,8,10,1,0,0,8,10,0,0,0,8,10,2,0,0,8,10,3,0,0,8,10,4,0,0,8,10,5,0,0,8,10,6,0,0,8,10,7,0,0,8,10,-6,0,0,8,10,-5,0,0,8,10,-4,0,0,8,10,-3,0,0,8,10,-2,0,0,8,9,1,0,0,8,9,0,0,0,8,9,-1,0,0,8,8,1,0,0,8,8,0,0,0,8,8,-1,0,0,8,-6,-6,0,0,8,-6,-5,0,0,8,-6,-4,0,0,8,-6,-3,0,0,8,-6,-2,0,0,8,-6,-1,0,0,8,-6,0,0,0,8,-6,1,0,0,8,-6,2,0,0,8,-6,3,0,0,8,-6,4,0,0,8,-6,5,0,0,8,-6,6,0,0,8,-6,7,0,0,8,-5,-6,0,0,8,-5,-5,0,0,8,-5,-4,0,0,8,-5,-3,0,0,8,-5,-2,0,0,8,-5,-1,0,0,8,-5,0,0,0,8,-5,1,0,0,8,-5,2,0,0,8,-5,3,0,0,8,-5,4,0,0,8,-5,5,0,0,8,-5,6,0,0,8,-5,7,0,0,8,-4,-6,0,0,8,-4,-5,0,0,8,-4,0,0,0,8,-4,1,0,0,8,-4,7,0,0,8,-4,6,0,0,8,-3,-6,0,0,8,-3,-5,0,0,8,-3,0,0,0,8,-3,1,0,0,8,-3,7,0,0,8,-3,6,0,0,8,-2,-6,0,0,8,-2,-5,0,0,8,-2,-2,0,0,8,-2,-1,0,0,8,-2,0,0,0,8,-2,1,0,0,8,-2,2,0,0,8,-2,3,0,0,8,-2,7,0,0,8,-2,6,0,0,8,-1,-6,0,0,8,-1,-5,0,0,8,-1,-2,0,0,8,-1,-1,0,0,8,-1,0,0,0,8,-1,1,0,0,8,-1,2,0,0,8,-1,3,0,0,8,-1,7,0,0,8,-1,6,0,0,8,0,-6,0,0,8,0,-5,0,0,8,0,-4,0,0,8,0,-3,0,0,8,0,-2,0,0,8,0,-1,0,0,8,0,2,0,0,8,0,3,0,0,8,0,4,0,0,8,0,5,0,0,8,0,6,0,0,8,0,7,0,0,8,0,0,0,0,8,0,1,0,0,8,1,-6,0,0,8,1,-5,0,0,8,1,-4,0,0,8,1,-3,0,0,8,1,-2,0,0,8,1,-1,0,0,8,1,2,0,0,8,1,3,0,0,8,1,4,0,0,8,1,5,0,0,8,1,6,0,0,8,1,7,0,0,8,1,1,0,0,8,1,0,0,0,8,2,-6,0,0,8,2,-5,0,0,8,2,-2,0,0,8,2,-1,0,0,8,2,0,0,0,8,2,1,0,0,8,2,2,0,0,8,2,3,0,0,8,2,7,0,0,8,2,6,0,0,8,3,-6,0,0,8,3,-5,0,0,8,3,-2,0,0,8,3,-1,0,0,8,3,0,0,0,8,3,1,0,0,8,3,2,0,0,8,3,3,0,0,8,3,7,0,0,8,3,6,0,0,8,4,-6,0,0,8,4,-5,0,0,8,4,0,0,0,8,4,1,0,0,8,4,7,0,0,8,4,6,0,0,8,5,-6,0,0,8,5,-5,0,0,8,5,0,0,0,8,5,1,0,0,8,5,7,0,0,8,5,6,0,0,8,6,-6,0,0,8,6,-5,0,0,8,6,-4,0,0,8,6,-3,0,0,8,6,-2,0,0,8,6,-1,0,0,8,6,0,0,0,8,6,1,0,0,8,6,2,0,0,8,6,3,0,0,8,6,4,0,0,8,6,5,0,0,8,6,6,0,0,8,6,7,0,0,8,7,-6,0,0,8,7,-5,0,0,8,7,-4,0,0,8,7,-3,0,0,8,7,-2,0,0,8,7,-1,0,0,8,7,0,0,0,8,7,1,0,0,8,7,2,0,0,8,7,3,0,0,8,7,4,0,0,8,7,5,0,0,8,7,6,0,0,8,7,7,0,0,8,11,7,0,0,8,11,6,0,0,8,11,5,0,0,8,11,4,0,0,8,11,3,0,0,8,11,2,0,0,8,11,1,0,0,8,11,0,0,0,8,11,-1,0,0,8,11,-2,0,0,8,11,-3,0,0,8,11,-4,0,0,8,11,-5,0,0,8,11,-6,0,0,8,12,-2,0,0,8,12,-5,0,0,8,12,-3,0,0,8,12,-4,0,0,8,12,3,0,0,8,12,4,0,0,8,12,5,0,0,8,12,6,0,0,8,13,-2,0,0,8,13,-5,0,0,8,13,-4,0,0,8,13,-3,0,0,8,13,6,0,0,8,13,5,0,0,8,13,4,0,0,8,13,3,0,0,8,14,-2,0,0,8,14,-5,0,0,8,14,-4,0,0,8,14,-3,0,0,8,14,4,0,0,8,14,3,0,0,8,14,5,0,0,8,14,6,0,0,8],"Middle":[-6,-7,0,2,7,-5,-7,0,2,7,-4,-7,0,2,7,-4,-1,0,1,7,-4,5,0,1,7,-3,-7,0,2,7,-3,-1,0,3,7,-3,5,0,2,7,-2,-7,0,2,7,-2,-3,0,2,7,-2,5,0,2,7,-1,-7,0,2,7,-1,-3,0,3,7,-1,5,0,3,7,0,-7,0,2,7,1,-7,0,2,7,2,-7,0,2,7,2,-3,0,1,7,2,5,0,1,7,3,-7,0,2,7,3,-3,0,2,7,3,5,0,2,7,4,-7,0,2,7,4,-1,0,1,7,4,5,0,2,7,5,-7,0,2,7,5,-1,0,3,7,5,5,0,3,7,6,-7,0,2,7,7,-7,0,2,7,8,-2,0,1,7,9,-2,0,3,7,10,-7,0,2,7,11,-7,0,2,7,12,-6,0,1,7,12,2,0,1,7,13,-6,0,2,7,13,2,0,2,7,14,-6,0,2,7,14,2,0,2,7],"Top":[-7,-7,0,3,4,-7,-6,0,3,3,-7,-5,0,3,3,-7,-4,0,3,3,-7,-3,0,3,3,-7,-2,0,3,3,-7,-1,0,3,3,-7,0,0,3,3,-7,1,0,3,3,-7,2,0,3,3,-7,3,0,3,3,-7,4,0,3,3,-7,5,0,3,3,-7,6,0,3,3,-7,7,0,3,3,-7,8,0,11,2,-6,8,0,2,2,-5,8,0,2,2,-4,-4,0,1,2,-4,-3,0,1,3,-4,-2,0,1,3,-4,2,0,1,2,-4,3,0,1,3,-4,4,0,1,3,-4,8,0,2,2,-3,-4,0,2,2,-3,-3,0,3,4,-3,-2,0,3,3,-3,2,0,3,2,-3,3,0,3,3,-3,4,0,11,2,-3,8,0,2,2,-2,-4,0,2,2,-2,4,0,2,2,-2,8,0,2,2,-1,-4,0,3,2,-1,4,0,3,2,-1,8,0,2,2,0,8,0,2,2,1,8,0,2,2,2,-4,0,1,2,2,4,0,1,2,2,8,0,2,2,3,-4,0,2,2,3,4,0,2,2,3,8,0,2,2,4,-4,0,2,2,4,-3,0,1,4,4,-2,0,1,3,4,2,0,1,2,4,3,0,1,3,4,4,0,13,2,4,8,0,2,2,5,-4,0,3,2,5,-3,0,3,3,5,-2,0,3,3,5,2,0,3,2,5,3,0,3,3,5,4,0,3,3,5,8,0,2,2,6,8,0,2,2,7,8,0,2,2,8,-7,0,1,4,8,-6,0,1,3,8,-5,0,1,3,8,-4,0,1,3,8,-3,0,1,3,8,2,0,1,2,8,3,0,1,3,8,4,0,1,3,8,5,0,1,3,8,6,0,1,3,8,7,0,1,3,8,8,0,13,2,9,-7,0,3,4,9,-6,0,3,3,9,-5,0,3,3,9,-4,0,3,3,9,-3,0,3,3,9,2,0,3,2,9,3,0,3,3,9,4,0,3,3,9,5,0,3,3,9,6,0,3,3,9,7,0,3,3,9,8,0,11,2,10,8,0,2,2,11,8,0,2,2,12,-7,0,1,4,12,-1,0,1,2,12,0,0,1,3,12,1,0,1,3,12,7,0,1,2,12,8,0,13,2,13,-1,0,2,2,13,7,0,2,2,14,-1,0,2,2,14,7,0,2,2,15,-6,0,1,4,15,-5,0,1,3,15,-4,0,1,3,15,-3,0,1,3,15,-2,0,1,3,15,-1,0,13,2,15,2,0,1,4,15,3,0,1,3,15,4,0,1,3,15,5,0,1,3,15,6,0,1,3,15,7,0,13,2]} \ No newline at end of file +{"NavigationList":[{"Type":0,"Points":[-88,-88,120,-88,120,-24,168,-24,168,-88,184,-88,184,-72,232,-72,232,-16,184,-16,184,56,232,56,232,112,184,112,184,128,168,128,168,48,120,48,120,128,-88,128]},{"Type":1,"Points":[-72,-64,-8,-64,-8,-24,-24,-24,-24,-8,-72,-8]},{"Type":1,"Points":[40,-64,104,-64,104,-8,56,-8,56,-24,40,-24]},{"Type":1,"Points":[-72,48,-24,48,-24,64,-8,64,-8,104,-72,104]},{"Type":1,"Points":[56,48,104,48,104,104,40,104,40,64,56,64]}],"Floor":[14,6,0,0,8,14,5,0,0,8,14,3,0,0,8,14,4,0,0,8,14,-3,0,0,8,14,-4,0,0,8,14,-5,0,0,8,14,-2,0,0,8,13,3,0,0,8,13,4,0,0,8,13,5,0,0,8,13,6,0,0,8,13,-3,0,0,8,13,-4,0,0,8,13,-5,0,0,8,13,-2,0,0,8,12,6,0,0,8,12,5,0,0,8,12,4,0,0,8,12,3,0,0,8,12,-4,0,0,8,12,-3,0,0,8,12,-5,0,0,8,12,-2,0,0,8,11,-6,0,0,8,11,-5,0,0,8,11,-4,0,0,8,11,-3,0,0,8,11,-2,0,0,8,11,-1,0,0,8,11,0,0,0,8,11,1,0,0,8,11,2,0,0,8,11,3,0,0,8,11,4,0,0,8,11,5,0,0,8,11,6,0,0,8,11,7,0,0,8,7,7,0,0,8,7,6,0,0,8,7,5,0,0,8,7,4,0,0,8,7,3,0,0,8,7,2,0,0,8,7,1,0,0,8,7,0,0,0,8,7,-1,0,0,8,7,-2,0,0,8,7,-3,0,0,8,7,-4,0,0,8,7,-5,0,0,8,7,-6,0,0,8,6,7,0,0,8,6,6,0,0,8,6,5,0,0,8,6,4,0,0,8,6,3,0,0,8,6,2,0,0,8,6,1,0,0,8,6,0,0,0,8,6,-1,0,0,8,6,-2,0,0,8,6,-3,0,0,8,6,-4,0,0,8,6,-5,0,0,8,6,-6,0,0,8,5,2,0,0,8,5,-1,0,0,8,5,6,0,0,8,5,7,0,0,8,5,1,0,0,8,5,0,0,0,8,5,-5,0,0,8,5,-6,0,0,8,4,2,0,0,8,4,-1,0,0,8,4,6,0,0,8,4,7,0,0,8,4,1,0,0,8,4,0,0,0,8,4,-5,0,0,8,4,-6,0,0,8,3,6,0,0,8,3,7,0,0,8,3,3,0,0,8,3,2,0,0,8,3,1,0,0,8,3,0,0,0,8,3,-1,0,0,8,3,-2,0,0,8,3,-5,0,0,8,3,-6,0,0,8,2,5,0,0,8,2,4,0,0,8,2,-3,0,0,8,2,-4,0,0,8,2,6,0,0,8,2,7,0,0,8,2,3,0,0,8,2,2,0,0,8,2,1,0,0,8,2,0,0,0,8,2,-1,0,0,8,2,-2,0,0,8,2,-5,0,0,8,2,-6,0,0,8,1,0,0,0,8,1,1,0,0,8,1,7,0,0,8,1,6,0,0,8,1,5,0,0,8,1,4,0,0,8,1,3,0,0,8,1,2,0,0,8,1,-1,0,0,8,1,-2,0,0,8,1,-3,0,0,8,1,-4,0,0,8,1,-5,0,0,8,1,-6,0,0,8,0,1,0,0,8,0,0,0,0,8,0,7,0,0,8,0,6,0,0,8,0,5,0,0,8,0,4,0,0,8,0,3,0,0,8,0,2,0,0,8,0,-1,0,0,8,0,-2,0,0,8,0,-3,0,0,8,0,-4,0,0,8,0,-5,0,0,8,0,-6,0,0,8,-1,5,0,0,8,-1,4,0,0,8,-1,-3,0,0,8,-1,-4,0,0,8,-1,6,0,0,8,-1,7,0,0,8,-1,3,0,0,8,-1,2,0,0,8,-1,1,0,0,8,-1,0,0,0,8,-1,-1,0,0,8,-1,-2,0,0,8,-1,-5,0,0,8,-1,-6,0,0,8,-2,6,0,0,8,-2,7,0,0,8,-2,3,0,0,8,-2,2,0,0,8,-2,1,0,0,8,-2,0,0,0,8,-2,-1,0,0,8,-2,-2,0,0,8,-2,-5,0,0,8,-2,-6,0,0,8,-3,2,0,0,8,-3,-1,0,0,8,-3,6,0,0,8,-3,7,0,0,8,-3,1,0,0,8,-3,0,0,0,8,-3,-5,0,0,8,-3,-6,0,0,8,-4,2,0,0,8,-4,-1,0,0,8,-4,6,0,0,8,-4,7,0,0,8,-4,1,0,0,8,-4,0,0,0,8,-4,-5,0,0,8,-4,-6,0,0,8,-5,7,0,0,8,-5,6,0,0,8,-5,5,0,0,8,-5,4,0,0,8,-5,3,0,0,8,-5,2,0,0,8,-5,1,0,0,8,-5,0,0,0,8,-5,-1,0,0,8,-5,-2,0,0,8,-5,-3,0,0,8,-5,-4,0,0,8,-5,-5,0,0,8,-5,-6,0,0,8,-6,7,0,0,8,-6,6,0,0,8,-6,5,0,0,8,-6,4,0,0,8,-6,3,0,0,8,-6,2,0,0,8,-6,1,0,0,8,-6,0,0,0,8,-6,-1,0,0,8,-6,-2,0,0,8,-6,-3,0,0,8,-6,-4,0,0,8,-6,-5,0,0,8,-6,-6,0,0,8,8,-2,0,0,8,8,2,0,0,8,8,-1,0,0,8,8,0,0,0,8,8,1,0,0,8,9,-2,0,0,8,9,2,0,0,8,9,-1,0,0,8,9,0,0,0,8,9,1,0,0,8,10,-2,0,0,8,10,-3,0,0,8,10,-4,0,0,8,10,-5,0,0,8,10,-6,0,0,8,10,7,0,0,8,10,6,0,0,8,10,5,0,0,8,10,4,0,0,8,10,3,0,0,8,10,2,0,0,8,10,0,0,0,8,10,1,0,0,8,10,-1,0,0,8],"Middle":[-6,-7,0,2,7,-5,-7,0,2,7,-4,-7,0,2,7,-4,-2,0,1,7,-4,5,0,1,7,-3,-7,0,2,7,-3,-2,0,3,7,-3,5,0,2,7,-2,-7,0,2,7,-2,-3,0,3,7,-2,5,0,3,7,-1,-7,0,2,7,0,-7,0,2,7,1,-7,0,2,7,2,-7,0,2,7,3,-7,0,2,7,3,-3,0,1,7,3,5,0,1,7,4,-7,0,2,7,4,-2,0,1,7,4,5,0,2,7,5,-7,0,2,7,5,-2,0,3,7,5,5,0,3,7,6,-7,0,2,7,7,-7,0,2,7,8,-3,0,1,7,9,-3,0,3,7,10,-7,0,2,7,11,-7,0,2,7,12,-6,0,1,7,12,2,0,1,7,13,-6,0,2,7,13,2,0,2,7,14,-6,0,2,7,14,2,0,2,7],"Top":[-7,-7,0,3,4,-7,-6,0,3,3,-7,-5,0,3,3,-7,-4,0,3,3,-7,-3,0,3,3,-7,-2,0,3,3,-7,-1,0,3,3,-7,0,0,3,3,-7,1,0,3,3,-7,2,0,3,3,-7,3,0,3,3,-7,4,0,3,3,-7,5,0,3,3,-7,6,0,3,3,-7,7,0,3,3,-7,8,0,11,2,-6,8,0,2,2,-5,8,0,2,2,-4,-4,0,1,2,-4,-3,0,1,3,-4,3,0,1,2,-4,4,0,1,3,-4,8,0,2,2,-3,-4,0,2,2,-3,-3,0,3,4,-3,3,0,3,2,-3,4,0,11,2,-3,8,0,2,2,-2,-4,0,3,2,-2,4,0,3,2,-2,8,0,2,2,-1,8,0,2,2,0,8,0,2,2,1,8,0,2,2,2,8,0,2,2,3,-4,0,1,2,3,4,0,1,2,3,8,0,2,2,4,-4,0,2,2,4,-3,0,1,4,4,3,0,1,2,4,4,0,13,2,4,8,0,2,2,5,-4,0,3,2,5,-3,0,3,3,5,3,0,3,2,5,4,0,3,3,5,8,0,2,2,6,8,0,2,2,7,8,0,2,2,8,-7,0,1,4,8,-6,0,1,3,8,-5,0,1,3,8,-4,0,1,3,8,3,0,1,2,8,4,0,1,3,8,5,0,1,3,8,6,0,1,3,8,7,0,1,3,8,8,0,13,2,9,-7,0,3,4,9,-6,0,3,3,9,-5,0,3,3,9,-4,0,3,3,9,3,0,3,2,9,4,0,3,3,9,5,0,3,3,9,6,0,3,3,9,7,0,3,3,9,8,0,11,2,10,8,0,2,2,11,8,0,2,2,12,-7,0,1,4,12,-1,0,1,2,12,0,0,1,3,12,1,0,1,3,12,7,0,1,2,12,8,0,13,2,13,-1,0,2,2,13,7,0,2,2,14,-1,0,2,2,14,7,0,2,2,15,-6,0,1,4,15,-5,0,1,3,15,-4,0,1,3,15,-3,0,1,3,15,-2,0,1,3,15,-1,0,13,2,15,2,0,1,4,15,3,0,1,3,15,4,0,1,3,15,5,0,1,3,15,6,0,1,3,15,7,0,13,2]} \ No newline at end of file diff --git a/DungeonShooting_Godot/resource/map/tileMaps/TestGroup1/battle/Battle2/Preinstall.json b/DungeonShooting_Godot/resource/map/tileMaps/TestGroup1/battle/Battle2/Preinstall.json index 1e5adb4..80edbe9 100644 --- a/DungeonShooting_Godot/resource/map/tileMaps/TestGroup1/battle/Battle2/Preinstall.json +++ b/DungeonShooting_Godot/resource/map/tileMaps/TestGroup1/battle/Battle2/Preinstall.json @@ -1 +1 @@ -[{"Name":"test1","Weight":100,"Remark":"","WaveList":[[{"Position":{"X":178,"Y":-21},"Size":{"X":92,"Y":73},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"enemy0001","Weight":100,"Attr":{"Face":"0","Weapon":"weapon0007","CurrAmmon":"60","ResidueAmmo":"60"},"Altitude":0,"VerticalSpeed":0}]},{"Position":{"X":76,"Y":140},"Size":{"X":43,"Y":77},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"enemy0001","Weight":100,"Attr":{"Face":"0","Weapon":null},"Altitude":0,"VerticalSpeed":0}]}],[{"Position":{"X":89,"Y":19},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"enemy0001","Weight":100,"Attr":{"Face":"0","Weapon":null},"Altitude":0,"VerticalSpeed":0}]}],[{"Position":{"X":78,"Y":89},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"enemy0001","Weight":100,"Attr":{"Face":"0","Weapon":null},"Altitude":0,"VerticalSpeed":0}]}]]}] \ No newline at end of file +[{"Name":"test1","Weight":100,"Remark":"","WaveList":[[{"Position":{"X":178,"Y":-21},"Size":{"X":92,"Y":73},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"enemy0001","Weight":100,"Attr":{"Face":"0","Weapon":"weapon0007","CurrAmmon":"60","ResidueAmmo":"60"},"Altitude":0,"VerticalSpeed":0}]},{"Position":{"X":76,"Y":168},"Size":{"X":43,"Y":77},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"enemy0001","Weight":100,"Attr":{"Face":"0","Weapon":null},"Altitude":0,"VerticalSpeed":0}]}],[{"Position":{"X":89,"Y":19},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"enemy0001","Weight":100,"Attr":{"Face":"0","Weapon":null},"Altitude":0,"VerticalSpeed":0}]},{"Position":{"X":65,"Y":142},"Size":{"X":48,"Y":160},"SpecialMarkType":0,"DelayTime":0.5,"MarkList":[{"Id":"weapon0005","Weight":100,"Attr":{"CurrAmmon":"10","ResidueAmmo":"40"},"Altitude":8,"VerticalSpeed":0}]},{"Position":{"X":79,"Y":45},"Size":{"X":46,"Y":121},"SpecialMarkType":0,"DelayTime":0.5,"MarkList":[{"Id":"weapon0005","Weight":100,"Attr":{"CurrAmmon":"10","ResidueAmmo":"40"},"Altitude":8,"VerticalSpeed":0}]},{"Position":{"X":181,"Y":203},"Size":{"X":66,"Y":33},"SpecialMarkType":0,"DelayTime":1,"MarkList":[{"Id":"enemy0001","Weight":100,"Attr":{"Face":"0","Weapon":null},"Altitude":0,"VerticalSpeed":0}]},{"Position":{"X":-19,"Y":100},"Size":{"X":97,"Y":63},"SpecialMarkType":0,"DelayTime":1.5,"MarkList":[{"Id":"enemy0001","Weight":100,"Attr":{"Face":"0","Weapon":null},"Altitude":0,"VerticalSpeed":0}]},{"Position":{"X":117,"Y":-14},"Size":{"X":122,"Y":78},"SpecialMarkType":0,"DelayTime":2,"MarkList":[{"Id":"enemy0001","Weight":100,"Attr":{"Face":"0","Weapon":null},"Altitude":0,"VerticalSpeed":0}]}],[{"Position":{"X":78,"Y":89},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"enemy0001","Weight":100,"Attr":{"Face":"0","Weapon":null},"Altitude":0,"VerticalSpeed":0}]},{"Position":{"X":-79,"Y":15},"Size":{"X":30,"Y":140},"SpecialMarkType":0,"DelayTime":1,"MarkList":[{"Id":"enemy0001","Weight":100,"Attr":{"Face":"0","Weapon":"weapon0007","CurrAmmon":"60","ResidueAmmo":"60"},"Altitude":0,"VerticalSpeed":0}]},{"Position":{"X":-50,"Y":114},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":2,"MarkList":[{"Id":"enemy0001","Weight":100,"Attr":{"Face":"0","Weapon":"weapon0003","CurrAmmon":"12","ResidueAmmo":"12"},"Altitude":0,"VerticalSpeed":0}]},{"Position":{"X":45,"Y":187},"Size":{"X":42,"Y":72},"SpecialMarkType":0,"DelayTime":3,"MarkList":[{"Id":"enemy0001","Weight":100,"Attr":{"Face":"0","Weapon":"weapon0003","CurrAmmon":"12","ResidueAmmo":"12"},"Altitude":0,"VerticalSpeed":0}]}]]}] \ No newline at end of file diff --git a/DungeonShooting_Godot/resource/map/tileMaps/TestGroup1/battle/Battle3/Preinstall.json b/DungeonShooting_Godot/resource/map/tileMaps/TestGroup1/battle/Battle3/Preinstall.json index 5c7dbfe..3734766 100644 --- a/DungeonShooting_Godot/resource/map/tileMaps/TestGroup1/battle/Battle3/Preinstall.json +++ b/DungeonShooting_Godot/resource/map/tileMaps/TestGroup1/battle/Battle3/Preinstall.json @@ -1 +1 @@ -[{"Name":"test12","Weight":100,"Remark":"","WaveList":[[{"Position":{"X":148,"Y":139},"Size":{"X":90,"Y":53},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"enemy0001","Weight":100,"Attr":{"Face":"0","Weapon":null},"Altitude":0,"VerticalSpeed":0}]},{"Position":{"X":126,"Y":79},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"weapon0001","Weight":100,"Attr":{"CurrAmmon":"30","ResidueAmmo":"210"},"Altitude":8,"VerticalSpeed":0}]},{"Position":{"X":40,"Y":46},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"enemy0001","Weight":100,"Attr":{"Face":"0","Weapon":null},"Altitude":0,"VerticalSpeed":0}]},{"Position":{"X":77,"Y":54},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"weapon0001","Weight":100,"Attr":{"CurrAmmon":"30","ResidueAmmo":"210"},"Altitude":8,"VerticalSpeed":0}]}],[{"Position":{"X":61,"Y":19},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":1,"MarkList":[{"Id":"enemy0001","Weight":100,"Attr":{"Face":"0","Weapon":"weapon0001","CurrAmmon":"30","ResidueAmmo":"30"},"Altitude":0,"VerticalSpeed":0}]},{"Position":{"X":110,"Y":18},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"enemy0001","Weight":100,"Attr":{"Face":"0","Weapon":"weapon0001","CurrAmmon":"30","ResidueAmmo":"30"},"Altitude":0,"VerticalSpeed":0}]}]]}] \ No newline at end of file +[{"Name":"test12","Weight":100,"Remark":"","WaveList":[[{"Position":{"X":406,"Y":427},"Size":{"X":66,"Y":54},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"enemy0001","Weight":100,"Attr":{"Face":"0","Weapon":"weapon0001","CurrAmmon":"30","ResidueAmmo":"30"},"Altitude":0,"VerticalSpeed":0}]},{"Position":{"X":250,"Y":439},"Size":{"X":98,"Y":68},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"enemy0001","Weight":100,"Attr":{"Face":"0","Weapon":"weapon0001","CurrAmmon":"30","ResidueAmmo":"30"},"Altitude":0,"VerticalSpeed":0}]},{"Position":{"X":329,"Y":370},"Size":{"X":44,"Y":65},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"enemy0001","Weight":100,"Attr":{"Face":"0","Weapon":"weapon0001","CurrAmmon":"30","ResidueAmmo":"30"},"Altitude":0,"VerticalSpeed":0}]},{"Position":{"X":317,"Y":196},"Size":{"X":201,"Y":60},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"enemy0001","Weight":100,"Attr":{"Face":"0","Weapon":null},"Altitude":0,"VerticalSpeed":0}]}],[{"Position":{"X":220,"Y":317},"Size":{"X":39,"Y":134},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"weapon0002","Weight":100,"Attr":{"CurrAmmon":"7","ResidueAmmo":"70"},"Altitude":8,"VerticalSpeed":0}]},{"Position":{"X":473,"Y":302},"Size":{"X":61,"Y":111},"SpecialMarkType":0,"DelayTime":0.5,"MarkList":[{"Id":"weapon0002","Weight":100,"Attr":{"CurrAmmon":"7","ResidueAmmo":"70"},"Altitude":8,"VerticalSpeed":0}]},{"Position":{"X":285,"Y":426},"Size":{"X":149,"Y":56},"SpecialMarkType":0,"DelayTime":1,"MarkList":[{"Id":"enemy0001","Weight":100,"Attr":{"Face":"0","Weapon":null},"Altitude":0,"VerticalSpeed":0}]},{"Position":{"X":468,"Y":324},"Size":{"X":66,"Y":110},"SpecialMarkType":0,"DelayTime":1.5,"MarkList":[{"Id":"enemy0001","Weight":100,"Attr":{"Face":"0","Weapon":null},"Altitude":0,"VerticalSpeed":0}]},{"Position":{"X":346,"Y":371},"Size":{"X":17,"Y":94},"SpecialMarkType":0,"DelayTime":2,"MarkList":[{"Id":"enemy0001","Weight":100,"Attr":{"Face":"0","Weapon":null},"Altitude":0,"VerticalSpeed":0}]},{"Position":{"X":387,"Y":200},"Size":{"X":82,"Y":36},"SpecialMarkType":0,"DelayTime":2.5,"MarkList":[{"Id":"enemy0001","Weight":100,"Attr":{"Face":"0","Weapon":null},"Altitude":0,"VerticalSpeed":0}]},{"Position":{"X":246,"Y":175},"Size":{"X":84,"Y":65},"SpecialMarkType":0,"DelayTime":3,"MarkList":[{"Id":"enemy0001","Weight":100,"Attr":{"Face":"0","Weapon":null},"Altitude":0,"VerticalSpeed":0}]}],[{"Position":{"X":325,"Y":417},"Size":{"X":41,"Y":45},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"enemy0001","Weight":100,"Attr":{"Face":"0","Weapon":"weapon0006","CurrAmmon":"20","ResidueAmmo":"20"},"Altitude":0,"VerticalSpeed":0}]},{"Position":{"X":443,"Y":242},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"enemy0001","Weight":100,"Attr":{"Face":"0","Weapon":"weapon0006","CurrAmmon":"20","ResidueAmmo":"20"},"Altitude":0,"VerticalSpeed":0}]},{"Position":{"X":241,"Y":227},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":1,"MarkList":[{"Id":"enemy0001","Weight":100,"Attr":{"Face":"0","Weapon":"weapon0006","CurrAmmon":"20","ResidueAmmo":"20"},"Altitude":0,"VerticalSpeed":0}]}]]}] \ No newline at end of file diff --git a/DungeonShooting_Godot/resource/map/tileMaps/TestGroup1/battle/Battle3/Preview.png b/DungeonShooting_Godot/resource/map/tileMaps/TestGroup1/battle/Battle3/Preview.png index 4aac99e..95d5f00 100644 --- a/DungeonShooting_Godot/resource/map/tileMaps/TestGroup1/battle/Battle3/Preview.png +++ b/DungeonShooting_Godot/resource/map/tileMaps/TestGroup1/battle/Battle3/Preview.png Binary files differ diff --git a/DungeonShooting_Godot/resource/map/tileMaps/TestGroup1/battle/Battle3/RoomInfo.json b/DungeonShooting_Godot/resource/map/tileMaps/TestGroup1/battle/Battle3/RoomInfo.json index a3cf1e0..61b84dc 100644 --- a/DungeonShooting_Godot/resource/map/tileMaps/TestGroup1/battle/Battle3/RoomInfo.json +++ b/DungeonShooting_Godot/resource/map/tileMaps/TestGroup1/battle/Battle3/RoomInfo.json @@ -1 +1 @@ -{"Position":{"X":-4,"Y":-3},"Size":{"X":19,"Y":15},"DoorAreaInfos":[{"Direction":3,"Start":0,"End":192},{"Direction":1,"Start":0,"End":128},{"Direction":2,"Start":96,"End":272},{"Direction":0,"Start":64,"End":208}],"GroupName":"TestGroup1","RoomType":0,"RoomName":"Battle3","Weight":100,"Remark":""} \ No newline at end of file +{"Position":{"X":10,"Y":6},"Size":{"X":24,"Y":25},"DoorAreaInfos":[{"Direction":1,"Start":0,"End":368},{"Direction":3,"Start":0,"End":208},{"Direction":0,"Start":96,"End":272},{"Direction":2,"Start":0,"End":144}],"GroupName":"TestGroup1","RoomType":0,"RoomName":"Battle3","Weight":100,"Remark":""} \ No newline at end of file diff --git a/DungeonShooting_Godot/resource/map/tileMaps/TestGroup1/battle/Battle3/TileInfo.json b/DungeonShooting_Godot/resource/map/tileMaps/TestGroup1/battle/Battle3/TileInfo.json index 74b1afa..6e7dcaa 100644 --- a/DungeonShooting_Godot/resource/map/tileMaps/TestGroup1/battle/Battle3/TileInfo.json +++ b/DungeonShooting_Godot/resource/map/tileMaps/TestGroup1/battle/Battle3/TileInfo.json @@ -1 +1 @@ -{"NavigationList":[{"Type":0,"Points":[-40,-40,88,-40,88,-24,104,-24,104,24,376,24,376,136,520,136,520,464,312,464,312,480,-120,480,-120,328,-88,328,-88,168,-72,168,-72,152,72,152,72,80,-40,80]},{"Type":1,"Points":[-40,208,72,208,72,224,296,224,296,328,-40,328]}],"Floor":[-4,29,0,0,8,-4,28,0,0,8,-4,27,0,0,8,-4,26,0,0,8,-4,25,0,0,8,-4,24,0,0,8,-4,23,0,0,8,-4,22,0,0,8,-4,21,0,0,8,-4,20,0,0,8,-4,11,0,0,8,-4,12,0,0,8,-4,9,0,0,8,-4,10,0,0,8,-4,13,0,0,8,-4,14,0,0,8,-4,15,0,0,8,-4,17,0,0,8,-4,18,0,0,8,-4,19,0,0,8,-4,16,0,0,8,-5,29,0,0,8,-5,28,0,0,8,-5,27,0,0,8,-5,26,0,0,8,-5,25,0,0,8,-5,24,0,0,8,-5,23,0,0,8,-5,22,0,0,8,-5,21,0,0,8,-5,20,0,0,8,-5,11,0,0,8,-5,13,0,0,8,-5,12,0,0,8,-5,9,0,0,8,-5,10,0,0,8,-5,18,0,0,8,-5,19,0,0,8,-5,14,0,0,8,-5,15,0,0,8,-5,16,0,0,8,-5,17,0,0,8,-6,29,0,0,8,-6,28,0,0,8,-6,27,0,0,8,-6,26,0,0,8,-6,25,0,0,8,-6,24,0,0,8,-6,23,0,0,8,-6,22,0,0,8,-6,21,0,0,8,-6,20,0,0,8,-6,11,0,0,8,-6,12,0,0,8,-6,13,0,0,8,-6,10,0,0,8,-6,14,0,0,8,-6,15,0,0,8,-6,16,0,0,8,-6,17,0,0,8,-6,18,0,0,8,-6,19,0,0,8,-7,29,0,0,8,-7,28,0,0,8,-7,27,0,0,8,-7,26,0,0,8,-7,25,0,0,8,-7,24,0,0,8,-7,23,0,0,8,-7,22,0,0,8,-7,21,0,0,8,-7,20,0,0,8,-8,29,0,0,8,-8,28,0,0,8,-8,27,0,0,8,-8,26,0,0,8,-8,25,0,0,8,-8,24,0,0,8,-8,23,0,0,8,-8,22,0,0,8,-8,21,0,0,8,-8,20,0,0,8,32,28,0,0,8,32,27,0,0,8,32,26,0,0,8,32,25,0,0,8,32,24,0,0,8,32,23,0,0,8,32,22,0,0,8,32,21,0,0,8,32,20,0,0,8,32,19,0,0,8,32,18,0,0,8,32,17,0,0,8,32,16,0,0,8,32,15,0,0,8,32,14,0,0,8,32,13,0,0,8,32,12,0,0,8,32,11,0,0,8,32,10,0,0,8,32,9,0,0,8,32,8,0,0,8,31,28,0,0,8,31,27,0,0,8,31,26,0,0,8,31,25,0,0,8,31,24,0,0,8,31,23,0,0,8,31,22,0,0,8,31,21,0,0,8,31,20,0,0,8,31,19,0,0,8,31,18,0,0,8,31,17,0,0,8,31,16,0,0,8,31,15,0,0,8,31,14,0,0,8,31,13,0,0,8,31,12,0,0,8,31,11,0,0,8,31,10,0,0,8,31,9,0,0,8,31,8,0,0,8,30,28,0,0,8,30,27,0,0,8,30,26,0,0,8,30,25,0,0,8,30,24,0,0,8,30,23,0,0,8,30,22,0,0,8,30,21,0,0,8,30,20,0,0,8,30,19,0,0,8,30,18,0,0,8,30,17,0,0,8,30,16,0,0,8,30,15,0,0,8,30,14,0,0,8,30,13,0,0,8,30,12,0,0,8,30,11,0,0,8,30,10,0,0,8,30,9,0,0,8,30,8,0,0,8,29,28,0,0,8,29,27,0,0,8,29,26,0,0,8,29,25,0,0,8,29,24,0,0,8,29,23,0,0,8,29,22,0,0,8,29,21,0,0,8,29,20,0,0,8,29,19,0,0,8,29,18,0,0,8,29,17,0,0,8,29,16,0,0,8,29,15,0,0,8,29,14,0,0,8,29,13,0,0,8,29,12,0,0,8,29,11,0,0,8,29,10,0,0,8,29,9,0,0,8,29,8,0,0,8,28,28,0,0,8,28,27,0,0,8,28,26,0,0,8,28,25,0,0,8,28,24,0,0,8,28,23,0,0,8,28,22,0,0,8,28,21,0,0,8,28,20,0,0,8,28,19,0,0,8,28,18,0,0,8,28,17,0,0,8,28,16,0,0,8,28,15,0,0,8,28,14,0,0,8,28,13,0,0,8,28,12,0,0,8,28,11,0,0,8,28,10,0,0,8,28,9,0,0,8,28,8,0,0,8,27,28,0,0,8,27,27,0,0,8,27,26,0,0,8,27,25,0,0,8,27,24,0,0,8,27,23,0,0,8,27,22,0,0,8,27,21,0,0,8,27,20,0,0,8,27,19,0,0,8,27,18,0,0,8,27,17,0,0,8,27,16,0,0,8,27,15,0,0,8,27,14,0,0,8,27,13,0,0,8,27,12,0,0,8,27,11,0,0,8,27,10,0,0,8,27,9,0,0,8,27,8,0,0,8,26,28,0,0,8,26,27,0,0,8,26,26,0,0,8,26,25,0,0,8,26,24,0,0,8,26,23,0,0,8,26,22,0,0,8,26,21,0,0,8,26,20,0,0,8,26,19,0,0,8,26,18,0,0,8,26,17,0,0,8,26,16,0,0,8,26,15,0,0,8,26,14,0,0,8,26,13,0,0,8,26,12,0,0,8,26,11,0,0,8,26,10,0,0,8,26,9,0,0,8,26,8,0,0,8,25,28,0,0,8,25,27,0,0,8,25,26,0,0,8,25,25,0,0,8,25,24,0,0,8,25,23,0,0,8,25,22,0,0,8,25,21,0,0,8,25,20,0,0,8,25,19,0,0,8,25,18,0,0,8,25,17,0,0,8,25,16,0,0,8,25,15,0,0,8,25,14,0,0,8,25,13,0,0,8,25,12,0,0,8,25,11,0,0,8,25,10,0,0,8,25,9,0,0,8,25,8,0,0,8,24,28,0,0,8,24,27,0,0,8,24,26,0,0,8,24,25,0,0,8,24,24,0,0,8,24,23,0,0,8,24,22,0,0,8,24,21,0,0,8,24,20,0,0,8,24,19,0,0,8,24,18,0,0,8,24,17,0,0,8,24,16,0,0,8,24,15,0,0,8,24,14,0,0,8,24,13,0,0,8,24,12,0,0,8,24,11,0,0,8,24,10,0,0,8,24,9,0,0,8,24,8,0,0,8,23,28,0,0,8,23,27,0,0,8,23,26,0,0,8,23,25,0,0,8,23,24,0,0,8,23,23,0,0,8,23,22,0,0,8,23,21,0,0,8,23,20,0,0,8,23,19,0,0,8,23,18,0,0,8,23,17,0,0,8,23,16,0,0,8,23,15,0,0,8,23,14,0,0,8,23,13,0,0,8,23,12,0,0,8,23,11,0,0,8,23,10,0,0,8,23,9,0,0,8,23,8,0,0,8,23,7,0,0,8,23,6,0,0,8,23,5,0,0,8,23,4,0,0,8,23,3,0,0,8,23,2,0,0,8,23,1,0,0,8,22,28,0,0,8,22,27,0,0,8,22,26,0,0,8,22,25,0,0,8,22,24,0,0,8,22,23,0,0,8,22,22,0,0,8,22,21,0,0,8,22,20,0,0,8,22,19,0,0,8,22,18,0,0,8,22,17,0,0,8,22,16,0,0,8,22,15,0,0,8,22,14,0,0,8,22,13,0,0,8,22,12,0,0,8,22,11,0,0,8,22,10,0,0,8,22,9,0,0,8,22,8,0,0,8,22,7,0,0,8,22,6,0,0,8,22,5,0,0,8,22,4,0,0,8,22,3,0,0,8,22,2,0,0,8,22,1,0,0,8,21,28,0,0,8,21,27,0,0,8,21,26,0,0,8,21,25,0,0,8,21,24,0,0,8,21,23,0,0,8,21,22,0,0,8,21,21,0,0,8,21,20,0,0,8,21,19,0,0,8,21,18,0,0,8,21,17,0,0,8,21,16,0,0,8,21,15,0,0,8,21,14,0,0,8,21,13,0,0,8,21,12,0,0,8,21,11,0,0,8,21,10,0,0,8,21,9,0,0,8,21,8,0,0,8,21,7,0,0,8,21,6,0,0,8,21,5,0,0,8,21,4,0,0,8,21,3,0,0,8,21,2,0,0,8,21,1,0,0,8,20,28,0,0,8,20,27,0,0,8,20,26,0,0,8,20,25,0,0,8,20,24,0,0,8,20,23,0,0,8,20,22,0,0,8,20,21,0,0,8,20,20,0,0,8,20,19,0,0,8,20,18,0,0,8,20,17,0,0,8,20,16,0,0,8,20,15,0,0,8,20,14,0,0,8,20,13,0,0,8,20,12,0,0,8,20,11,0,0,8,20,10,0,0,8,20,9,0,0,8,20,8,0,0,8,20,7,0,0,8,20,6,0,0,8,20,5,0,0,8,20,4,0,0,8,20,3,0,0,8,20,2,0,0,8,20,1,0,0,8,19,29,0,0,8,19,28,0,0,8,19,27,0,0,8,19,26,0,0,8,19,25,0,0,8,19,24,0,0,8,19,23,0,0,8,19,22,0,0,8,19,21,0,0,8,19,20,0,0,8,19,19,0,0,8,19,18,0,0,8,19,17,0,0,8,19,16,0,0,8,19,15,0,0,8,19,14,0,0,8,19,13,0,0,8,19,12,0,0,8,19,11,0,0,8,19,10,0,0,8,19,9,0,0,8,19,8,0,0,8,19,7,0,0,8,19,6,0,0,8,19,5,0,0,8,19,4,0,0,8,19,3,0,0,8,19,2,0,0,8,19,1,0,0,8,18,29,0,0,8,18,28,0,0,8,18,27,0,0,8,18,26,0,0,8,18,25,0,0,8,18,24,0,0,8,18,23,0,0,8,18,22,0,0,8,18,21,0,0,8,18,20,0,0,8,18,19,0,0,8,18,18,0,0,8,18,17,0,0,8,18,16,0,0,8,18,15,0,0,8,18,14,0,0,8,18,13,0,0,8,18,12,0,0,8,18,11,0,0,8,18,10,0,0,8,18,9,0,0,8,18,8,0,0,8,18,7,0,0,8,18,6,0,0,8,18,5,0,0,8,18,4,0,0,8,18,3,0,0,8,18,2,0,0,8,18,1,0,0,8,17,29,0,0,8,17,28,0,0,8,17,27,0,0,8,17,26,0,0,8,17,25,0,0,8,17,24,0,0,8,17,23,0,0,8,17,22,0,0,8,17,21,0,0,8,17,20,0,0,8,17,13,0,0,8,17,12,0,0,8,17,11,0,0,8,17,10,0,0,8,17,9,0,0,8,17,8,0,0,8,17,7,0,0,8,17,6,0,0,8,17,5,0,0,8,17,4,0,0,8,17,3,0,0,8,17,2,0,0,8,17,1,0,0,8,16,29,0,0,8,16,28,0,0,8,16,27,0,0,8,16,26,0,0,8,16,25,0,0,8,16,24,0,0,8,16,23,0,0,8,16,22,0,0,8,16,21,0,0,8,16,20,0,0,8,16,13,0,0,8,16,12,0,0,8,16,11,0,0,8,16,10,0,0,8,16,9,0,0,8,16,8,0,0,8,16,7,0,0,8,16,6,0,0,8,16,5,0,0,8,16,4,0,0,8,16,3,0,0,8,16,2,0,0,8,16,1,0,0,8,15,29,0,0,8,15,28,0,0,8,15,27,0,0,8,15,26,0,0,8,15,25,0,0,8,15,24,0,0,8,15,23,0,0,8,15,22,0,0,8,15,21,0,0,8,15,20,0,0,8,15,13,0,0,8,15,12,0,0,8,15,11,0,0,8,15,10,0,0,8,15,9,0,0,8,15,8,0,0,8,15,7,0,0,8,15,6,0,0,8,15,5,0,0,8,15,4,0,0,8,15,3,0,0,8,15,2,0,0,8,15,1,0,0,8,14,29,0,0,8,14,28,0,0,8,14,27,0,0,8,14,26,0,0,8,14,25,0,0,8,14,24,0,0,8,14,23,0,0,8,14,22,0,0,8,14,21,0,0,8,14,20,0,0,8,14,13,0,0,8,14,12,0,0,8,14,11,0,0,8,14,10,0,0,8,14,9,0,0,8,14,8,0,0,8,14,7,0,0,8,14,6,0,0,8,14,5,0,0,8,14,4,0,0,8,14,3,0,0,8,14,2,0,0,8,14,1,0,0,8,13,29,0,0,8,13,28,0,0,8,13,27,0,0,8,13,26,0,0,8,13,25,0,0,8,13,24,0,0,8,13,23,0,0,8,13,22,0,0,8,13,21,0,0,8,13,20,0,0,8,13,13,0,0,8,13,12,0,0,8,13,11,0,0,8,13,10,0,0,8,13,9,0,0,8,13,8,0,0,8,13,7,0,0,8,13,6,0,0,8,13,5,0,0,8,13,4,0,0,8,13,3,0,0,8,13,2,0,0,8,13,1,0,0,8,12,29,0,0,8,12,28,0,0,8,12,27,0,0,8,12,26,0,0,8,12,25,0,0,8,12,24,0,0,8,12,23,0,0,8,12,22,0,0,8,12,21,0,0,8,12,20,0,0,8,12,13,0,0,8,12,12,0,0,8,12,11,0,0,8,12,10,0,0,8,12,9,0,0,8,12,8,0,0,8,12,7,0,0,8,12,6,0,0,8,12,5,0,0,8,12,4,0,0,8,12,3,0,0,8,12,2,0,0,8,12,1,0,0,8,11,29,0,0,8,11,28,0,0,8,11,27,0,0,8,11,26,0,0,8,11,25,0,0,8,11,24,0,0,8,11,23,0,0,8,11,22,0,0,8,11,21,0,0,8,11,20,0,0,8,11,13,0,0,8,11,12,0,0,8,11,11,0,0,8,11,10,0,0,8,11,9,0,0,8,11,8,0,0,8,11,7,0,0,8,11,6,0,0,8,11,5,0,0,8,11,4,0,0,8,11,3,0,0,8,11,2,0,0,8,11,1,0,0,8,10,29,0,0,8,10,28,0,0,8,10,27,0,0,8,10,26,0,0,8,10,25,0,0,8,10,24,0,0,8,10,23,0,0,8,10,22,0,0,8,10,21,0,0,8,10,20,0,0,8,10,13,0,0,8,10,12,0,0,8,10,11,0,0,8,10,10,0,0,8,10,9,0,0,8,10,8,0,0,8,10,7,0,0,8,10,6,0,0,8,10,5,0,0,8,10,4,0,0,8,10,3,0,0,8,10,2,0,0,8,10,1,0,0,8,9,29,0,0,8,9,28,0,0,8,9,27,0,0,8,9,26,0,0,8,9,25,0,0,8,9,24,0,0,8,9,23,0,0,8,9,22,0,0,8,9,21,0,0,8,9,20,0,0,8,9,13,0,0,8,9,12,0,0,8,9,11,0,0,8,9,10,0,0,8,9,9,0,0,8,9,8,0,0,8,9,7,0,0,8,9,6,0,0,8,9,5,0,0,8,9,4,0,0,8,9,3,0,0,8,9,2,0,0,8,9,1,0,0,8,8,29,0,0,8,8,28,0,0,8,8,27,0,0,8,8,26,0,0,8,8,25,0,0,8,8,24,0,0,8,8,23,0,0,8,8,22,0,0,8,8,21,0,0,8,8,20,0,0,8,8,13,0,0,8,8,12,0,0,8,8,11,0,0,8,8,10,0,0,8,8,9,0,0,8,8,8,0,0,8,8,7,0,0,8,8,6,0,0,8,8,5,0,0,8,8,4,0,0,8,8,3,0,0,8,8,2,0,0,8,8,1,0,0,8,7,29,0,0,8,7,28,0,0,8,7,27,0,0,8,7,26,0,0,8,7,25,0,0,8,7,24,0,0,8,7,23,0,0,8,7,22,0,0,8,7,21,0,0,8,7,20,0,0,8,7,13,0,0,8,7,12,0,0,8,7,11,0,0,8,7,10,0,0,8,7,9,0,0,8,7,8,0,0,8,7,7,0,0,8,7,6,0,0,8,7,5,0,0,8,7,4,0,0,8,7,3,0,0,8,7,2,0,0,8,7,1,0,0,8,6,-2,0,0,8,6,-1,0,0,8,6,0,0,0,8,6,29,0,0,8,6,28,0,0,8,6,27,0,0,8,6,26,0,0,8,6,25,0,0,8,6,24,0,0,8,6,23,0,0,8,6,22,0,0,8,6,21,0,0,8,6,20,0,0,8,6,13,0,0,8,6,12,0,0,8,6,11,0,0,8,6,10,0,0,8,6,9,0,0,8,6,8,0,0,8,6,7,0,0,8,6,6,0,0,8,6,5,0,0,8,6,4,0,0,8,6,3,0,0,8,6,2,0,0,8,6,1,0,0,8,5,29,0,0,8,5,28,0,0,8,5,27,0,0,8,5,26,0,0,8,5,25,0,0,8,5,24,0,0,8,5,23,0,0,8,5,22,0,0,8,5,21,0,0,8,5,20,0,0,8,5,13,0,0,8,5,12,0,0,8,5,11,0,0,8,5,10,0,0,8,5,9,0,0,8,5,8,0,0,8,5,7,0,0,8,5,6,0,0,8,5,5,0,0,8,5,4,0,0,8,5,3,0,0,8,5,2,0,0,8,5,1,0,0,8,5,0,0,0,8,5,-1,0,0,8,5,-2,0,0,8,5,-3,0,0,8,4,29,0,0,8,4,28,0,0,8,4,27,0,0,8,4,26,0,0,8,4,25,0,0,8,4,24,0,0,8,4,23,0,0,8,4,22,0,0,8,4,21,0,0,8,4,20,0,0,8,4,13,0,0,8,4,12,0,0,8,4,11,0,0,8,4,10,0,0,8,4,9,0,0,8,4,8,0,0,8,4,7,0,0,8,4,6,0,0,8,4,5,0,0,8,4,4,0,0,8,4,3,0,0,8,4,2,0,0,8,4,1,0,0,8,4,0,0,0,8,4,-1,0,0,8,4,-2,0,0,8,4,-3,0,0,8,3,29,0,0,8,3,28,0,0,8,3,27,0,0,8,3,26,0,0,8,3,25,0,0,8,3,24,0,0,8,3,23,0,0,8,3,22,0,0,8,3,21,0,0,8,3,20,0,0,8,3,4,0,0,8,3,3,0,0,8,3,2,0,0,8,3,1,0,0,8,3,0,0,0,8,3,-1,0,0,8,3,-2,0,0,8,3,-3,0,0,8,3,10,0,0,8,3,12,0,0,8,3,11,0,0,8,3,9,0,0,8,2,29,0,0,8,2,28,0,0,8,2,27,0,0,8,2,26,0,0,8,2,25,0,0,8,2,24,0,0,8,2,23,0,0,8,2,22,0,0,8,2,21,0,0,8,2,20,0,0,8,2,4,0,0,8,2,3,0,0,8,2,2,0,0,8,2,1,0,0,8,2,0,0,0,8,2,-1,0,0,8,2,-2,0,0,8,2,-3,0,0,8,2,9,0,0,8,2,10,0,0,8,2,12,0,0,8,2,11,0,0,8,1,29,0,0,8,1,28,0,0,8,1,27,0,0,8,1,26,0,0,8,1,25,0,0,8,1,24,0,0,8,1,23,0,0,8,1,22,0,0,8,1,21,0,0,8,1,20,0,0,8,1,4,0,0,8,1,3,0,0,8,1,2,0,0,8,1,1,0,0,8,1,0,0,0,8,1,-1,0,0,8,1,-2,0,0,8,1,-3,0,0,8,1,9,0,0,8,1,10,0,0,8,1,12,0,0,8,1,11,0,0,8,0,29,0,0,8,0,28,0,0,8,0,27,0,0,8,0,26,0,0,8,0,25,0,0,8,0,24,0,0,8,0,23,0,0,8,0,22,0,0,8,0,21,0,0,8,0,20,0,0,8,0,4,0,0,8,0,3,0,0,8,0,2,0,0,8,0,1,0,0,8,0,0,0,0,8,0,-1,0,0,8,0,-2,0,0,8,0,-3,0,0,8,0,10,0,0,8,0,12,0,0,8,0,11,0,0,8,0,9,0,0,8,-1,29,0,0,8,-1,28,0,0,8,-1,27,0,0,8,-1,26,0,0,8,-1,25,0,0,8,-1,24,0,0,8,-1,23,0,0,8,-1,22,0,0,8,-1,21,0,0,8,-1,20,0,0,8,-1,4,0,0,8,-1,3,0,0,8,-1,2,0,0,8,-1,1,0,0,8,-1,0,0,0,8,-1,-1,0,0,8,-1,-2,0,0,8,-1,-3,0,0,8,-1,10,0,0,8,-1,12,0,0,8,-1,11,0,0,8,-1,9,0,0,8,-2,29,0,0,8,-2,28,0,0,8,-2,27,0,0,8,-2,26,0,0,8,-2,25,0,0,8,-2,24,0,0,8,-2,23,0,0,8,-2,22,0,0,8,-2,21,0,0,8,-2,20,0,0,8,-2,4,0,0,8,-2,3,0,0,8,-2,2,0,0,8,-2,1,0,0,8,-2,0,0,0,8,-2,-1,0,0,8,-2,-2,0,0,8,-2,-3,0,0,8,-2,10,0,0,8,-2,12,0,0,8,-2,11,0,0,8,-2,9,0,0,8,-3,29,0,0,8,-3,28,0,0,8,-3,27,0,0,8,-3,26,0,0,8,-3,25,0,0,8,-3,24,0,0,8,-3,23,0,0,8,-3,22,0,0,8,-3,21,0,0,8,-3,20,0,0,8,-3,4,0,0,8,-3,3,0,0,8,-3,2,0,0,8,-3,1,0,0,8,-3,0,0,0,8,-3,-1,0,0,8,-3,-2,0,0,8,-3,-3,0,0,8,-3,11,0,0,8,-3,10,0,0,8,-3,12,0,0,8,-3,9,0,0,8,-3,13,0,0,8,-3,14,0,0,8,-3,15,0,0,8,-3,16,0,0,8,-3,17,0,0,8,-3,18,0,0,8,-3,19,0,0,8],"Middle":[-8,19,0,2,7,-7,19,0,3,7,-6,9,0,3,7,-5,8,0,2,7,-4,8,0,2,7,-3,-4,0,2,7,-3,8,0,2,7,-2,-4,0,2,7,-2,8,0,2,7,-2,19,0,1,7,-1,-4,0,2,7,-1,8,0,2,7,-1,19,0,2,7,0,-4,0,2,7,0,8,0,2,7,0,19,0,2,7,1,-4,0,2,7,1,8,0,2,7,1,19,0,2,7,2,-4,0,2,7,2,8,0,2,7,2,19,0,2,7,3,-4,0,2,7,3,8,0,3,7,3,19,0,2,7,4,-4,0,2,7,4,19,0,2,7,5,-4,0,2,7,5,19,0,2,7,6,-3,0,1,7,6,19,0,2,7,7,0,0,1,7,7,19,0,2,7,8,0,0,2,7,8,19,0,2,7,9,0,0,2,7,9,19,0,2,7,10,0,0,2,7,10,19,0,2,7,11,0,0,2,7,11,19,0,2,7,12,0,0,2,7,12,19,0,2,7,13,0,0,2,7,13,19,0,2,7,14,0,0,2,7,14,19,0,2,7,15,0,0,2,7,15,19,0,2,7,16,0,0,2,7,16,19,0,2,7,17,0,0,2,7,17,19,0,3,7,18,0,0,2,7,19,0,0,2,7,20,0,0,2,7,21,0,0,2,7,22,0,0,2,7,23,0,0,2,7,24,7,0,1,7,25,7,0,2,7,26,7,0,2,7,27,7,0,2,7,28,7,0,2,7,29,7,0,2,7,30,7,0,2,7,31,7,0,2,7,32,7,0,2,7],"Top":[-9,19,0,3,4,-9,20,0,3,3,-9,21,0,3,3,-9,22,0,3,3,-9,23,0,3,3,-9,24,0,3,3,-9,25,0,3,3,-9,26,0,3,3,-9,27,0,3,3,-9,28,0,3,3,-9,29,0,3,3,-9,30,0,11,2,-8,30,0,2,2,-7,9,0,3,4,-7,10,0,3,3,-7,11,0,3,3,-7,12,0,3,3,-7,13,0,3,3,-7,14,0,3,3,-7,15,0,3,3,-7,16,0,3,3,-7,17,0,3,3,-7,18,0,3,3,-7,30,0,2,2,-6,8,0,3,4,-6,30,0,2,2,-5,30,0,2,2,-4,-4,0,3,4,-4,-3,0,3,3,-4,-2,0,3,3,-4,-1,0,3,3,-4,0,0,3,3,-4,1,0,3,3,-4,2,0,3,3,-4,3,0,3,3,-4,4,0,3,3,-4,5,0,11,2,-4,30,0,2,2,-3,5,0,2,2,-3,30,0,2,2,-2,5,0,2,2,-2,13,0,1,2,-2,14,0,1,3,-2,15,0,1,3,-2,16,0,1,3,-2,17,0,1,3,-2,18,0,1,3,-2,30,0,2,2,-1,5,0,2,2,-1,13,0,2,2,-1,30,0,2,2,0,5,0,2,2,0,13,0,2,2,0,30,0,2,2,1,5,0,2,2,1,13,0,2,2,1,30,0,2,2,2,5,0,2,2,2,13,0,2,2,2,30,0,2,2,3,5,0,3,2,3,6,0,3,3,3,7,0,3,3,3,13,0,3,2,3,14,0,11,2,3,30,0,2,2,4,14,0,2,2,4,30,0,2,2,5,14,0,2,2,5,30,0,2,2,6,-4,0,1,4,6,14,0,2,2,6,30,0,2,2,7,-3,0,1,4,7,-2,0,1,3,7,-1,0,1,3,7,14,0,2,2,7,30,0,2,2,8,14,0,2,2,8,30,0,2,2,9,14,0,2,2,9,30,0,2,2,10,14,0,2,2,10,30,0,2,2,11,14,0,2,2,11,30,0,2,2,12,14,0,2,2,12,30,0,2,2,13,14,0,2,2,13,30,0,2,2,14,14,0,2,2,14,30,0,2,2,15,14,0,2,2,15,30,0,2,2,16,14,0,2,2,16,30,0,2,2,17,14,0,3,2,17,15,0,3,3,17,16,0,3,3,17,17,0,3,3,17,18,0,3,3,17,30,0,2,2,18,30,0,2,2,19,30,0,2,2,20,29,0,1,2,20,30,0,13,2,21,29,0,2,2,22,29,0,2,2,23,29,0,2,2,24,0,0,1,4,24,1,0,1,3,24,2,0,1,3,24,3,0,1,3,24,4,0,1,3,24,5,0,1,3,24,6,0,1,3,24,29,0,2,2,25,29,0,2,2,26,29,0,2,2,27,29,0,2,2,28,29,0,2,2,29,29,0,2,2,30,29,0,2,2,31,29,0,2,2,32,29,0,2,2,33,7,0,1,4,33,8,0,1,3,33,9,0,1,3,33,10,0,1,3,33,11,0,1,3,33,12,0,1,3,33,13,0,1,3,33,14,0,1,3,33,15,0,1,3,33,16,0,1,3,33,17,0,1,3,33,18,0,1,3,33,19,0,1,3,33,20,0,1,3,33,21,0,1,3,33,22,0,1,3,33,23,0,1,3,33,24,0,1,3,33,25,0,1,3,33,26,0,1,3,33,27,0,1,3,33,28,0,1,3,33,29,0,13,2]} \ No newline at end of file +{"NavigationList":[{"Type":0,"Points":[184,120,376,120,376,152,440,152,440,216,520,216,520,384,456,384,456,464,312,464,312,480,184,480]},{"Type":1,"Points":[264,240,392,240,392,272,424,272,424,344,408,344,408,392,360,392,360,312,312,312,312,328,296,328,296,392,248,392,248,256,264,256]}],"Floor":[32,23,0,0,8,32,22,0,0,8,32,21,0,0,8,32,20,0,0,8,32,19,0,0,8,32,18,0,0,8,32,17,0,0,8,32,16,0,0,8,32,15,0,0,8,32,14,0,0,8,32,13,0,0,8,31,23,0,0,8,31,22,0,0,8,31,21,0,0,8,31,20,0,0,8,31,19,0,0,8,31,18,0,0,8,31,17,0,0,8,31,16,0,0,8,31,15,0,0,8,31,14,0,0,8,31,13,0,0,8,30,23,0,0,8,30,22,0,0,8,30,21,0,0,8,30,20,0,0,8,30,19,0,0,8,30,18,0,0,8,30,17,0,0,8,30,16,0,0,8,30,15,0,0,8,30,14,0,0,8,30,13,0,0,8,29,23,0,0,8,29,22,0,0,8,29,21,0,0,8,29,20,0,0,8,29,19,0,0,8,29,18,0,0,8,29,17,0,0,8,29,16,0,0,8,29,15,0,0,8,29,14,0,0,8,29,13,0,0,8,28,28,0,0,8,28,27,0,0,8,28,26,0,0,8,28,25,0,0,8,28,24,0,0,8,28,23,0,0,8,28,22,0,0,8,28,21,0,0,8,28,20,0,0,8,28,19,0,0,8,28,18,0,0,8,28,17,0,0,8,28,16,0,0,8,28,15,0,0,8,28,14,0,0,8,28,13,0,0,8,27,28,0,0,8,27,27,0,0,8,27,26,0,0,8,27,25,0,0,8,27,24,0,0,8,27,23,0,0,8,27,22,0,0,8,27,21,0,0,8,27,20,0,0,8,27,19,0,0,8,27,18,0,0,8,27,17,0,0,8,27,16,0,0,8,27,15,0,0,8,27,14,0,0,8,27,13,0,0,8,27,9,0,0,8,27,10,0,0,8,27,11,0,0,8,27,12,0,0,8,26,28,0,0,8,26,27,0,0,8,26,26,0,0,8,26,25,0,0,8,26,24,0,0,8,26,23,0,0,8,26,22,0,0,8,26,21,0,0,8,26,20,0,0,8,26,19,0,0,8,26,18,0,0,8,26,17,0,0,8,26,16,0,0,8,26,15,0,0,8,26,14,0,0,8,26,13,0,0,8,26,9,0,0,8,26,10,0,0,8,26,11,0,0,8,26,12,0,0,8,25,28,0,0,8,25,27,0,0,8,25,26,0,0,8,25,25,0,0,8,25,24,0,0,8,25,23,0,0,8,25,22,0,0,8,25,21,0,0,8,25,16,0,0,8,25,15,0,0,8,25,14,0,0,8,25,13,0,0,8,25,9,0,0,8,25,10,0,0,8,25,11,0,0,8,25,12,0,0,8,24,28,0,0,8,24,27,0,0,8,24,26,0,0,8,24,25,0,0,8,24,24,0,0,8,24,16,0,0,8,24,15,0,0,8,24,14,0,0,8,24,13,0,0,8,24,9,0,0,8,24,10,0,0,8,24,11,0,0,8,24,12,0,0,8,23,28,0,0,8,23,27,0,0,8,23,26,0,0,8,23,25,0,0,8,23,24,0,0,8,23,14,0,0,8,23,13,0,0,8,23,7,0,0,8,23,8,0,0,8,23,9,0,0,8,23,10,0,0,8,23,11,0,0,8,23,12,0,0,8,22,28,0,0,8,22,27,0,0,8,22,26,0,0,8,22,25,0,0,8,22,24,0,0,8,22,23,0,0,8,22,22,0,0,8,22,21,0,0,8,22,20,0,0,8,22,19,0,0,8,22,7,0,0,8,22,8,0,0,8,22,9,0,0,8,22,10,0,0,8,22,11,0,0,8,22,12,0,0,8,22,13,0,0,8,22,14,0,0,8,21,28,0,0,8,21,27,0,0,8,21,26,0,0,8,21,25,0,0,8,21,24,0,0,8,21,23,0,0,8,21,22,0,0,8,21,21,0,0,8,21,20,0,0,8,21,19,0,0,8,21,7,0,0,8,21,8,0,0,8,21,9,0,0,8,21,10,0,0,8,21,11,0,0,8,21,12,0,0,8,21,13,0,0,8,21,14,0,0,8,20,28,0,0,8,20,27,0,0,8,20,26,0,0,8,20,25,0,0,8,20,24,0,0,8,20,23,0,0,8,20,22,0,0,8,20,21,0,0,8,20,20,0,0,8,20,19,0,0,8,20,7,0,0,8,20,8,0,0,8,20,9,0,0,8,20,10,0,0,8,20,11,0,0,8,20,12,0,0,8,20,13,0,0,8,20,14,0,0,8,19,29,0,0,8,19,28,0,0,8,19,27,0,0,8,19,26,0,0,8,19,25,0,0,8,19,24,0,0,8,19,23,0,0,8,19,22,0,0,8,19,21,0,0,8,19,20,0,0,8,19,19,0,0,8,19,7,0,0,8,19,8,0,0,8,19,9,0,0,8,19,10,0,0,8,19,11,0,0,8,19,12,0,0,8,19,13,0,0,8,19,14,0,0,8,18,29,0,0,8,18,28,0,0,8,18,27,0,0,8,18,26,0,0,8,18,25,0,0,8,18,24,0,0,8,18,23,0,0,8,18,22,0,0,8,18,21,0,0,8,18,20,0,0,8,18,7,0,0,8,18,8,0,0,8,18,9,0,0,8,18,10,0,0,8,18,11,0,0,8,18,12,0,0,8,18,13,0,0,8,18,14,0,0,8,17,29,0,0,8,17,28,0,0,8,17,27,0,0,8,17,26,0,0,8,17,25,0,0,8,17,24,0,0,8,17,7,0,0,8,17,8,0,0,8,17,9,0,0,8,17,10,0,0,8,17,11,0,0,8,17,12,0,0,8,17,13,0,0,8,17,14,0,0,8,16,29,0,0,8,16,28,0,0,8,16,27,0,0,8,16,26,0,0,8,16,25,0,0,8,16,24,0,0,8,16,7,0,0,8,16,8,0,0,8,16,9,0,0,8,16,10,0,0,8,16,11,0,0,8,16,12,0,0,8,16,13,0,0,8,16,14,0,0,8,16,15,0,0,8,15,29,0,0,8,15,28,0,0,8,15,27,0,0,8,15,26,0,0,8,15,25,0,0,8,15,24,0,0,8,15,23,0,0,8,15,22,0,0,8,15,21,0,0,8,15,20,0,0,8,15,7,0,0,8,15,8,0,0,8,15,9,0,0,8,15,10,0,0,8,15,11,0,0,8,15,12,0,0,8,15,13,0,0,8,15,14,0,0,8,15,15,0,0,8,15,16,0,0,8,15,17,0,0,8,15,18,0,0,8,15,19,0,0,8,14,29,0,0,8,14,28,0,0,8,14,27,0,0,8,14,26,0,0,8,14,25,0,0,8,14,24,0,0,8,14,23,0,0,8,14,22,0,0,8,14,21,0,0,8,14,20,0,0,8,14,7,0,0,8,14,8,0,0,8,14,9,0,0,8,14,10,0,0,8,14,11,0,0,8,14,12,0,0,8,14,13,0,0,8,14,14,0,0,8,14,15,0,0,8,14,16,0,0,8,14,17,0,0,8,14,18,0,0,8,14,19,0,0,8,13,29,0,0,8,13,28,0,0,8,13,27,0,0,8,13,26,0,0,8,13,25,0,0,8,13,24,0,0,8,13,23,0,0,8,13,22,0,0,8,13,21,0,0,8,13,20,0,0,8,13,7,0,0,8,13,8,0,0,8,13,9,0,0,8,13,10,0,0,8,13,11,0,0,8,13,12,0,0,8,13,13,0,0,8,13,14,0,0,8,13,15,0,0,8,13,16,0,0,8,13,17,0,0,8,13,18,0,0,8,13,19,0,0,8,12,29,0,0,8,12,28,0,0,8,12,27,0,0,8,12,26,0,0,8,12,25,0,0,8,12,24,0,0,8,12,23,0,0,8,12,22,0,0,8,12,21,0,0,8,12,20,0,0,8,12,7,0,0,8,12,8,0,0,8,12,9,0,0,8,12,10,0,0,8,12,11,0,0,8,12,12,0,0,8,12,13,0,0,8,12,14,0,0,8,12,15,0,0,8,12,16,0,0,8,12,17,0,0,8,12,18,0,0,8,12,19,0,0,8,11,29,0,0,8,11,28,0,0,8,11,27,0,0,8,11,26,0,0,8,11,25,0,0,8,11,24,0,0,8,11,23,0,0,8,11,22,0,0,8,11,21,0,0,8,11,20,0,0,8,11,7,0,0,8,11,8,0,0,8,11,9,0,0,8,11,10,0,0,8,11,11,0,0,8,11,12,0,0,8,11,13,0,0,8,11,14,0,0,8,11,15,0,0,8,11,16,0,0,8,11,17,0,0,8,11,18,0,0,8,11,19,0,0,8],"Middle":[11,6,0,2,7,12,6,0,2,7,13,6,0,2,7,14,6,0,2,7,15,6,0,2,7,16,6,0,2,7,16,23,0,1,7,17,6,0,2,7,17,23,0,3,7,18,6,0,2,7,18,19,0,3,7,19,6,0,2,7,19,18,0,2,7,20,6,0,2,7,20,18,0,2,7,21,6,0,2,7,21,18,0,2,7,22,6,0,2,7,22,18,0,2,7,23,6,0,2,7,23,23,0,1,7,24,8,0,1,7,24,23,0,3,7,25,8,0,2,7,25,20,0,3,7,26,8,0,2,7,27,8,0,2,7,28,12,0,1,7,29,12,0,2,7,30,12,0,2,7,31,12,0,2,7,32,12,0,2,7],"Top":[10,6,0,3,4,10,7,0,3,3,10,8,0,3,3,10,9,0,3,3,10,10,0,3,3,10,11,0,3,3,10,12,0,3,3,10,13,0,3,3,10,14,0,3,3,10,15,0,3,3,10,16,0,3,3,10,17,0,3,3,10,18,0,3,3,10,19,0,3,3,10,20,0,3,3,10,21,0,3,3,10,22,0,3,3,10,23,0,3,3,10,24,0,3,3,10,25,0,3,3,10,26,0,3,3,10,27,0,3,3,10,28,0,3,3,10,29,0,3,3,10,30,0,11,2,11,30,0,2,2,12,30,0,2,2,13,30,0,2,2,14,30,0,2,2,15,30,0,2,2,16,16,0,1,2,16,17,0,1,3,16,18,0,1,3,16,19,0,1,3,16,20,0,1,3,16,21,0,1,3,16,22,0,1,3,16,30,0,2,2,17,15,0,1,2,17,16,0,13,2,17,19,0,3,4,17,20,0,3,3,17,21,0,3,3,17,22,0,3,3,17,30,0,2,2,18,15,0,2,2,18,18,0,3,4,18,30,0,2,2,19,15,0,2,2,19,30,0,2,2,20,15,0,2,2,20,29,0,1,2,20,30,0,13,2,21,15,0,2,2,21,29,0,2,2,22,15,0,2,2,22,29,0,2,2,23,15,0,3,2,23,16,0,3,3,23,17,0,11,2,23,18,0,1,4,23,19,0,1,3,23,20,0,1,3,23,21,0,1,3,23,22,0,1,3,23,29,0,2,2,24,6,0,1,4,24,7,0,1,3,24,17,0,2,2,24,20,0,3,4,24,21,0,3,3,24,22,0,3,3,24,29,0,2,2,25,17,0,3,2,25,18,0,3,3,25,19,0,3,3,25,29,0,2,2,26,29,0,2,2,27,29,0,2,2,28,8,0,1,4,28,9,0,1,3,28,10,0,1,3,28,11,0,1,3,28,29,0,2,2,29,24,0,1,2,29,25,0,1,3,29,26,0,1,3,29,27,0,1,3,29,28,0,1,3,29,29,0,13,2,30,24,0,2,2,31,24,0,2,2,32,24,0,2,2,33,12,0,1,4,33,13,0,1,3,33,14,0,1,3,33,15,0,1,3,33,16,0,1,3,33,17,0,1,3,33,18,0,1,3,33,19,0,1,3,33,20,0,1,3,33,21,0,1,3,33,22,0,1,3,33,23,0,1,3,33,24,0,13,2]} \ No newline at end of file diff --git a/DungeonShooting_Godot/resource/map/tileMaps/TestGroup1/inlet/Start1/Preinstall.json b/DungeonShooting_Godot/resource/map/tileMaps/TestGroup1/inlet/Start1/Preinstall.json index e81e616..131108d 100644 --- a/DungeonShooting_Godot/resource/map/tileMaps/TestGroup1/inlet/Start1/Preinstall.json +++ b/DungeonShooting_Godot/resource/map/tileMaps/TestGroup1/inlet/Start1/Preinstall.json @@ -1 +1 @@ -[{"Name":"test1","Weight":100,"Remark":"","WaveList":[[{"Position":{"X":19,"Y":2},"Size":{"X":0,"Y":0},"SpecialMarkType":1,"DelayTime":0,"MarkList":[]},{"Position":{"X":8,"Y":19},"Size":{"X":83,"Y":73},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"weapon0001","Weight":100,"Attr":{"CurrAmmon":"30","ResidueAmmo":"210"},"Altitude":8,"VerticalSpeed":0}]}],[{"Position":{"X":11,"Y":38},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":1,"MarkList":[{"Id":"prop0003","Weight":100,"Attr":null,"Altitude":8,"VerticalSpeed":0}]}],[{"Position":{"X":-13,"Y":3},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":1,"MarkList":[{"Id":"weapon0005","Weight":100,"Attr":{"CurrAmmon":"10","ResidueAmmo":"40"},"Altitude":8,"VerticalSpeed":0}]}]]}] \ No newline at end of file +[{"Name":"test1","Weight":100,"Remark":"","WaveList":[[{"Position":{"X":19,"Y":2},"Size":{"X":0,"Y":0},"SpecialMarkType":1,"DelayTime":0,"MarkList":[]},{"Position":{"X":10,"Y":22},"Size":{"X":0,"Y":0},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"weapon0001","Weight":100,"Attr":{"CurrAmmon":"30","ResidueAmmo":"210"},"Altitude":8,"VerticalSpeed":0}]}],[{"Position":{"X":11,"Y":38},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"prop0003","Weight":100,"Attr":null,"Altitude":8,"VerticalSpeed":0}]},{"Position":{"X":-15,"Y":31},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0.5,"MarkList":[{"Id":"prop5000","Weight":100,"Attr":null,"Altitude":8,"VerticalSpeed":0}]},{"Position":{"X":36,"Y":36},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":1,"MarkList":[{"Id":"prop5001","Weight":100,"Attr":null,"Altitude":8,"VerticalSpeed":0}]},{"Position":{"X":35,"Y":2},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":1.5,"MarkList":[{"Id":"prop0002","Weight":100,"Attr":null,"Altitude":8,"VerticalSpeed":0}]},{"Position":{"X":-12,"Y":3},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":2,"MarkList":[{"Id":"weapon0001","Weight":100,"Attr":{"CurrAmmon":"30","ResidueAmmo":"210"},"Altitude":8,"VerticalSpeed":0}]}]]}] \ No newline at end of file diff --git a/DungeonShooting_Godot/resource/map/tileMaps/TestGroup1/inlet/Start1/Preview.png b/DungeonShooting_Godot/resource/map/tileMaps/TestGroup1/inlet/Start1/Preview.png index 7d32b8e..3f0900c 100644 --- a/DungeonShooting_Godot/resource/map/tileMaps/TestGroup1/inlet/Start1/Preview.png +++ b/DungeonShooting_Godot/resource/map/tileMaps/TestGroup1/inlet/Start1/Preview.png Binary files differ diff --git a/DungeonShooting_Godot/resource/map/tileMaps/TestGroup1/inlet/Start1/RoomInfo.json b/DungeonShooting_Godot/resource/map/tileMaps/TestGroup1/inlet/Start1/RoomInfo.json index 02c0b53..4285d01 100644 --- a/DungeonShooting_Godot/resource/map/tileMaps/TestGroup1/inlet/Start1/RoomInfo.json +++ b/DungeonShooting_Godot/resource/map/tileMaps/TestGroup1/inlet/Start1/RoomInfo.json @@ -1 +1 @@ -{"Position":{"X":-4,"Y":-3},"Size":{"X":9,"Y":8},"DoorAreaInfos":[],"GroupName":"TestGroup1","RoomType":1,"RoomName":"Start1","Weight":100,"Remark":""} \ No newline at end of file +{"Position":{"X":-5,"Y":-4},"Size":{"X":11,"Y":10},"DoorAreaInfos":[],"GroupName":"TestGroup1","RoomType":1,"RoomName":"Start1","Weight":100,"Remark":""} \ No newline at end of file diff --git a/DungeonShooting_Godot/resource/map/tileMaps/TestGroup1/inlet/Start1/TileInfo.json b/DungeonShooting_Godot/resource/map/tileMaps/TestGroup1/inlet/Start1/TileInfo.json index 34882e2..22e1c00 100644 --- a/DungeonShooting_Godot/resource/map/tileMaps/TestGroup1/inlet/Start1/TileInfo.json +++ b/DungeonShooting_Godot/resource/map/tileMaps/TestGroup1/inlet/Start1/TileInfo.json @@ -1 +1 @@ -{"NavigationList":[{"Type":0,"Points":[-40,-24,56,-24,56,64,-40,64]}],"Floor":[3,3,0,0,8,3,2,0,0,8,3,1,0,0,8,3,0,0,0,8,3,-1,0,0,8,3,-2,0,0,8,2,3,0,0,8,2,2,0,0,8,2,1,0,0,8,2,0,0,0,8,2,-1,0,0,8,2,-2,0,0,8,1,3,0,0,8,1,2,0,0,8,1,1,0,0,8,1,0,0,0,8,1,-1,0,0,8,1,-2,0,0,8,0,3,0,0,8,0,2,0,0,8,0,1,0,0,8,0,0,0,0,8,0,-1,0,0,8,0,-2,0,0,8,-1,3,0,0,8,-1,2,0,0,8,-1,1,0,0,8,-1,0,0,0,8,-1,-1,0,0,8,-1,-2,0,0,8,-2,3,0,0,8,-2,2,0,0,8,-2,1,0,0,8,-2,0,0,0,8,-2,-1,0,0,8,-2,-2,0,0,8,-3,3,0,0,8,-3,2,0,0,8,-3,1,0,0,8,-3,0,0,0,8,-3,-1,0,0,8,-3,-2,0,0,8],"Middle":[-3,-3,0,2,7,-2,-3,0,2,7,-1,-3,0,2,7,0,-3,0,2,7,1,-3,0,2,7,2,-3,0,2,7,3,-3,0,2,7],"Top":[-4,-3,0,3,4,-4,-2,0,3,3,-4,-1,0,3,3,-4,0,0,3,3,-4,1,0,3,3,-4,2,0,3,3,-4,3,0,3,3,-4,4,0,11,2,-3,4,0,2,2,-2,4,0,2,2,-1,4,0,2,2,0,4,0,2,2,1,4,0,2,2,2,4,0,2,2,3,4,0,2,2,4,-3,0,1,4,4,-2,0,1,3,4,-1,0,1,3,4,0,0,1,3,4,1,0,1,3,4,2,0,1,3,4,3,0,1,3,4,4,0,13,2]} \ No newline at end of file +{"NavigationList":[{"Type":0,"Points":[-56,-40,72,-40,72,80,-56,80]}],"Floor":[-4,-3,0,0,8,-4,-2,0,0,8,-4,-1,0,0,8,-4,0,0,0,8,-4,1,0,0,8,-4,2,0,0,8,-4,3,0,0,8,-4,4,0,0,8,-3,-3,0,0,8,-3,-2,0,0,8,-3,-1,0,0,8,-3,0,0,0,8,-3,1,0,0,8,-3,2,0,0,8,-3,3,0,0,8,-3,4,0,0,8,-2,-3,0,0,8,-2,-2,0,0,8,-2,-1,0,0,8,-2,0,0,0,8,-2,1,0,0,8,-2,2,0,0,8,-2,3,0,0,8,-2,4,0,0,8,-1,-3,0,0,8,-1,-2,0,0,8,-1,-1,0,0,8,-1,0,0,0,8,-1,1,0,0,8,-1,2,0,0,8,-1,3,0,0,8,-1,4,0,0,8,0,-3,0,0,8,0,-2,0,0,8,0,-1,0,0,8,0,0,0,0,8,0,1,0,0,8,0,2,0,0,8,0,3,0,0,8,0,4,0,0,8,4,-3,0,0,8,4,-2,0,0,8,4,-1,0,0,8,4,0,0,0,8,4,1,0,0,8,4,2,0,0,8,4,3,0,0,8,4,4,0,0,8,3,-3,0,0,8,3,-2,0,0,8,3,-1,0,0,8,3,0,0,0,8,3,1,0,0,8,3,2,0,0,8,3,3,0,0,8,3,4,0,0,8,2,-3,0,0,8,2,-2,0,0,8,2,-1,0,0,8,2,0,0,0,8,2,1,0,0,8,2,2,0,0,8,2,3,0,0,8,2,4,0,0,8,1,-3,0,0,8,1,-2,0,0,8,1,-1,0,0,8,1,0,0,0,8,1,1,0,0,8,1,2,0,0,8,1,3,0,0,8,1,4,0,0,8],"Middle":[-4,-4,0,2,7,-3,-4,0,2,7,-2,-4,0,2,7,-1,-4,0,2,7,0,-4,0,2,7,1,-4,0,2,7,2,-4,0,2,7,3,-4,0,2,7,4,-4,0,2,7],"Top":[-5,-4,0,3,4,-5,-3,0,3,3,-5,-2,0,3,3,-5,-1,0,3,3,-5,0,0,3,3,-5,1,0,3,3,-5,2,0,3,3,-5,3,0,3,3,-5,4,0,3,3,-5,5,0,11,2,-4,5,0,2,2,-3,5,0,2,2,-2,5,0,2,2,-1,5,0,2,2,0,5,0,2,2,1,5,0,2,2,2,5,0,2,2,3,5,0,2,2,4,5,0,2,2,5,-4,0,1,4,5,-3,0,1,3,5,-2,0,1,3,5,-1,0,1,3,5,0,0,1,3,5,1,0,1,3,5,2,0,1,3,5,3,0,1,3,5,4,0,1,3,5,5,0,13,2]} \ No newline at end of file diff --git a/DungeonShooting_Godot/resource/material/Blend.gdshader b/DungeonShooting_Godot/resource/material/Blend.gdshader index a40db2f..f83601b 100644 --- a/DungeonShooting_Godot/resource/material/Blend.gdshader +++ b/DungeonShooting_Godot/resource/material/Blend.gdshader @@ -21,6 +21,7 @@ void fragment() { //显示轮廓 if (show_outline) { + vec4 color = texture(TEXTURE, UV); vec2 size = TEXTURE_PIXEL_SIZE; float outline; outline = texture(TEXTURE, UV + vec2(-size.x, 0)).a; @@ -29,18 +30,19 @@ outline += texture(TEXTURE, UV + vec2(0, -size.y)).a; outline = min(outline, 1.0); - vec4 animated_line_color = vec4( - light_offset + sin(2.0 * 3.14 * frequency * TIME), - light_offset + sin(2.0 * 3.14 * frequency * TIME + radians(120.0)), - light_offset + sin(2.0 * 3.14 * frequency * TIME + radians(240.0)), - 1.0 - ); - - vec4 color = texture(TEXTURE, UV); - if (outline_rainbow){ - COLOR = mix(color, animated_line_color, outline - color.a); - } else { - COLOR = mix(color, outline_color , outline - color.a); + if (color.a == 0.0 && outline > 0.0) { + vec4 animated_line_color = vec4( + light_offset + sin(2.0 * 3.14 * frequency * TIME), + light_offset + sin(2.0 * 3.14 * frequency * TIME + radians(120.0)), + light_offset + sin(2.0 * 3.14 * frequency * TIME + radians(240.0)), + 1.0 + ); + + if (outline_rainbow){ + COLOR = mix(color, animated_line_color, 1); + } else { + COLOR = mix(color, outline_color , 1); + } } } diff --git a/DungeonShooting_Godot/resource/sprite/bullet/bullet0001.png b/DungeonShooting_Godot/resource/sprite/bullet/bullet0001.png index fb6ccea..afa441e 100644 --- a/DungeonShooting_Godot/resource/sprite/bullet/bullet0001.png +++ b/DungeonShooting_Godot/resource/sprite/bullet/bullet0001.png Binary files differ diff --git a/DungeonShooting_Godot/resource/sprite/bullet/bullet0002.png b/DungeonShooting_Godot/resource/sprite/bullet/bullet0002.png index ce0577e..fc38c20 100644 --- a/DungeonShooting_Godot/resource/sprite/bullet/bullet0002.png +++ b/DungeonShooting_Godot/resource/sprite/bullet/bullet0002.png Binary files differ diff --git a/DungeonShooting_Godot/resource/sprite/bullet/bullet0003.png b/DungeonShooting_Godot/resource/sprite/bullet/bullet0003.png index 6478bfa..cbda060 100644 --- a/DungeonShooting_Godot/resource/sprite/bullet/bullet0003.png +++ b/DungeonShooting_Godot/resource/sprite/bullet/bullet0003.png Binary files differ diff --git a/DungeonShooting_Godot/resource/sprite/bullet/bullet2.png b/DungeonShooting_Godot/resource/sprite/bullet/bullet2.png index 3cea799..964f292 100644 --- a/DungeonShooting_Godot/resource/sprite/bullet/bullet2.png +++ b/DungeonShooting_Godot/resource/sprite/bullet/bullet2.png Binary files differ diff --git a/DungeonShooting_Godot/src/framework/activity/ActivityObject.cs b/DungeonShooting_Godot/src/framework/activity/ActivityObject.cs index 5bfbc5c..d5c52fa 100644 --- a/DungeonShooting_Godot/src/framework/activity/ActivityObject.cs +++ b/DungeonShooting_Godot/src/framework/activity/ActivityObject.cs @@ -425,7 +425,7 @@ _prevAnimationFrame = frame; IsShowShadow = true; - CalcShadow(); + CalcTransform(); ShadowSprite.Visible = true; } @@ -659,6 +659,7 @@ { //注意需要延时调用 CallDeferred(nameof(ShowShadowSprite)); + CalcTransform(); } } else @@ -1007,7 +1008,7 @@ _prevAnimationFrame = frame; //计算阴影 - CalcShadow(); + CalcTransform(); } // Hit 动画 @@ -1135,7 +1136,7 @@ /// /// 重新计算物体阴影的位置和旋转信息, 无论是否显示阴影 /// - public void CalcShadow() + public void CalcTransform() { //缩放 ShadowSprite.Scale = AnimatedSprite.Scale; diff --git a/DungeonShooting_Godot/src/framework/map/AffiliationArea.cs b/DungeonShooting_Godot/src/framework/map/AffiliationArea.cs index 40c0c4a..a2cb922 100644 --- a/DungeonShooting_Godot/src/framework/map/AffiliationArea.cs +++ b/DungeonShooting_Godot/src/framework/map/AffiliationArea.cs @@ -31,6 +31,8 @@ public bool IsFirstEnterFlag { get; private set; } = true; private bool _init = false; + private Vector2 _initSize; + private RectangleShape2D _shape; /// /// 根据矩形区域初始化归属区域 @@ -44,10 +46,12 @@ _init = true; + _initSize = rect2.Size; RoomInfo = roomInfo; var collisionShape = new CollisionShape2D(); collisionShape.GlobalPosition = rect2.Position + rect2.Size / 2; var shape = new RectangleShape2D(); + _shape = shape; shape.Size = rect2.Size; collisionShape.Shape = shape; AddChild(collisionShape); @@ -270,4 +274,20 @@ _includeItems.Clear(); _enterItems.Clear(); } + + /// + /// 在初始区域的基础上扩展区域, size为扩展大小 + /// + public void ExtendedRegion(Vector2 size) + { + _shape.Size = _initSize + size; + } + + /// + /// 将区域还原到初始大小 + /// + public void RestoreRegion() + { + _shape.Size = _initSize; + } } \ No newline at end of file diff --git a/DungeonShooting_Godot/src/framework/map/preinstall/RoomPreinstall.cs b/DungeonShooting_Godot/src/framework/map/preinstall/RoomPreinstall.cs index ea305fd..9536b85 100644 --- a/DungeonShooting_Godot/src/framework/map/preinstall/RoomPreinstall.cs +++ b/DungeonShooting_Godot/src/framework/map/preinstall/RoomPreinstall.cs @@ -292,8 +292,6 @@ if (activityMark.MarkType == SpecialMarkType.Normal) { var activityObject = CreateItem(activityMark); - activityObject.VerticalSpeed = activityMark.VerticalSpeed; - activityObject.Altitude = activityMark.Altitude; //初始化属性 InitAttr(activityObject, activityMark); //播放出生动画 @@ -357,6 +355,8 @@ { var activityObject = ActivityObject.Create(activityMark.Id); activityObject.Position = activityMark.Position; + activityObject.VerticalSpeed = activityMark.VerticalSpeed; + activityObject.Altitude = activityMark.Altitude; return activityObject; } diff --git a/DungeonShooting_Godot/src/framework/map/room/RoomInfo.cs b/DungeonShooting_Godot/src/framework/map/room/RoomInfo.cs index a37d67c..1d3b34a 100644 --- a/DungeonShooting_Godot/src/framework/map/room/RoomInfo.cs +++ b/DungeonShooting_Godot/src/framework/map/room/RoomInfo.cs @@ -85,6 +85,7 @@ public bool IsSeclusion { get; private set; } = false; public bool IsDestroyed { get; private set; } + private bool _openDoorFlag = true; // private bool _beReady = false; // private bool _waveStart = false; @@ -229,12 +230,9 @@ RoomPreinstall.StartWave(); return; } - + //关门 - foreach (var doorInfo in Doors) - { - doorInfo.Door.CloseDoor(); - } + CloseDoor(); IsSeclusion = true; //执行第一波生成 @@ -249,13 +247,10 @@ if (RoomPreinstall.IsLastWave) //所有 mark 都走完了 { IsSeclusion = false; - //开门 if (RoomPreinstall.HasEnemy()) { - foreach (var doorInfo in Doors) - { - doorInfo.Door.OpenDoor(); - } + //开门 + OpenDoor(); } //所有标记执行完成 RoomPreinstall.OverWave(); @@ -265,4 +260,38 @@ RoomPreinstall.NextWave(); } } + + /// + /// 打开所有门 + /// + public void OpenDoor() + { + if (!_openDoorFlag) + { + _openDoorFlag = true; + AffiliationArea.RestoreRegion(); + } + + foreach (var doorInfo in Doors) + { + doorInfo.Door.OpenDoor(); + } + } + + /// + /// 关闭所有门 + /// + public void CloseDoor() + { + if (_openDoorFlag) + { + _openDoorFlag = false; + AffiliationArea.ExtendedRegion(new Vector2(GameConfig.TileCellSize * 4, GameConfig.TileCellSize * 4)); + } + + foreach (var doorInfo in Doors) + { + doorInfo.Door.CloseDoor(); + } + } } \ No newline at end of file diff --git a/DungeonShooting_Godot/src/game/activity/bullet/Bullet.cs b/DungeonShooting_Godot/src/game/activity/bullet/Bullet.cs index 28d9bfa..743708a 100644 --- a/DungeonShooting_Godot/src/game/activity/bullet/Bullet.cs +++ b/DungeonShooting_Godot/src/game/activity/bullet/Bullet.cs @@ -41,7 +41,17 @@ //当前子弹已经飞行的距离 private float CurrFlyDistance = 0; - public void Init(Weapon weapon, float speed, float maxDistance, Vector2 position, float rotation, uint targetLayer) + /// + /// 初始化子弹属性 + /// + /// 触发开火的角色 + /// 射出该子弹的武器 + /// 速度 + /// 最大飞行距离 + /// 位置 + /// 角度 + /// 攻击目标层级 + public void Init(Role trigger, Weapon weapon, float speed, float maxDistance, Vector2 position, float rotation, uint targetLayer) { Weapon = weapon; Role = weapon.Master; @@ -49,20 +59,26 @@ CollisionArea.AreaEntered += OnArea2dEntered; //只有玩家使用该武器才能获得正常速度的子弹 - if (weapon.Master is Player) + if (trigger != null && !trigger.IsAi) { FlySpeed = speed; } else { - FlySpeed = speed * weapon.Attribute.AiBulletSpeedScale; + FlySpeed = speed * weapon.AiUseAttribute.AiBulletSpeedScale; } MaxDistance = maxDistance; Position = position; Rotation = rotation; ShadowOffset = new Vector2(0, 5); - BasisVelocity = new Vector2(FlySpeed, 0).Rotated(Rotation); + + //如果子弹会对玩家造成伤害, 则显示红色描边 + if (Player.Current.CollisionWithMask(targetLayer)) + { + ShowOutline = true; + OutlineColor = new Color(1, 0, 0, 0.9f); + } } protected override void PhysicsProcessOver(float delta) diff --git a/DungeonShooting_Godot/src/game/activity/role/Player.cs b/DungeonShooting_Godot/src/game/activity/role/Player.cs index ad22cfb..a4f3640 100644 --- a/DungeonShooting_Godot/src/game/activity/role/Player.cs +++ b/DungeonShooting_Godot/src/game/activity/role/Player.cs @@ -105,6 +105,11 @@ if (InputManager.Fire) //开火 { Attack(); + // var weaponArray = AffiliationArea.FindEnterItems(o => o is Weapon); + // foreach (Weapon activityObject in weaponArray) + // { + // activityObject.Trigger(this); + // } } if (InputManager.UseActiveProp) //使用道具 diff --git a/DungeonShooting_Godot/src/game/activity/role/Role.cs b/DungeonShooting_Godot/src/game/activity/role/Role.cs index 23604aa..1221d33 100644 --- a/DungeonShooting_Godot/src/game/activity/role/Role.cs +++ b/DungeonShooting_Godot/src/game/activity/role/Role.cs @@ -844,7 +844,7 @@ { if (WeaponPack.ActiveItem != null) { - WeaponPack.ActiveItem.Trigger(); + WeaponPack.ActiveItem.Trigger(this); } } diff --git a/DungeonShooting_Godot/src/game/activity/weapon/Weapon.cs b/DungeonShooting_Godot/src/game/activity/weapon/Weapon.cs index 8428a0f..f8d877d 100644 --- a/DungeonShooting_Godot/src/game/activity/weapon/Weapon.cs +++ b/DungeonShooting_Godot/src/game/activity/weapon/Weapon.cs @@ -9,9 +9,15 @@ public abstract partial class Weapon : ActivityObject, IPackageItem { /// - /// 武器属性数据 + /// 武器使用的属性数据, 该属性会根据是否是玩家使用武器, 如果是Ai使用武器, 则会返回 AiUseAttribute 的属性对象 /// public ExcelConfig.Weapon Attribute => _weaponAttribute; + + /// + /// Ai使用该武器的属性 + /// + public ExcelConfig.Weapon AiUseAttribute => _aiWeaponAttribute; + private ExcelConfig.Weapon _weaponAttribute; private ExcelConfig.Weapon _playerWeaponAttribute; private ExcelConfig.Weapon _aiWeaponAttribute; @@ -131,6 +137,9 @@ //-------------------------------------------------------------------------------------------- + //触发按下扳机的角色 + private Role _attackTrigger; + //是否按下 private bool _triggerFlag = false; @@ -287,7 +296,7 @@ /// 发射子弹时调用的函数, 每发射一枚子弹调用一次, /// 如果做霰弹武器效果, 一次开火发射5枚子弹, 则该函数调用5次 /// - /// 开火时枪口旋转角度 + /// 开火时枪口旋转角度, 弧度制 protected abstract void OnShoot(float fireRotation); /// @@ -606,7 +615,7 @@ if (!_looseShootFlag && _continuousCount > 0 && _delayedTime <= 0 && _attackTimer <= 0) { //连发开火 - TriggerFire(); + TriggerFire(_attackTrigger); //连发最后一发打完了 if (Attribute.ManualBeLoaded && _continuousCount <= 0) { @@ -647,21 +656,25 @@ { return Master == null && GetParent() == GameApplication.Instance.World.NormalLayer; } - + /// /// 扳机函数, 调用即视为按下扳机 /// - public void Trigger() + /// 按下扳机的角色, 如果传 null, 则视为走火 + public void Trigger(Role trigger) { //这一帧已经按过了, 不需要再按下 if (_triggerFlag) return; + _triggerFlag = true; + _attackTrigger = trigger; + //是否第一帧按下 var justDown = _downTimer == 0; if (_beLoadedState == 0 || _beLoadedState == -1) //需要执行上膛操作 { - if (justDown && !Reloading) + if (justDown && !Reloading && Master != null) { if (CurrAmmo <= 0) { @@ -731,7 +744,7 @@ else if (CurrAmmo <= 0) //子弹不够 { fireFlag = false; - if (justDown) + if (justDown && Master != null) { //第一帧按下, 触发换弹 Reload(); @@ -767,7 +780,7 @@ else { //开火 - TriggerFire(); + TriggerFire(_attackTrigger); //非连射模式 if (!Attribute.ContinuousShoot && Attribute.ManualBeLoaded && _continuousCount <= 0) @@ -783,8 +796,6 @@ } } - - _triggerFlag = true; } /// @@ -845,7 +856,7 @@ _looseShootFlag = false; if (_chargeTime >= Attribute.MinChargeTime) //判断蓄力是否够了 { - TriggerFire(); + TriggerFire(_attackTrigger); //非连射模式 if (!Attribute.ContinuousShoot && Attribute.ManualBeLoaded && _continuousCount <= 0) { @@ -866,7 +877,7 @@ /// /// 触发开火 /// - private void TriggerFire() + private void TriggerFire(Role trigger) { _noAttackTime = 0; @@ -931,11 +942,15 @@ if (Master != null) { bulletCount = Master.RoleState.CallCalcBulletCountEvent(this, bulletCount); - fireRotation += Mathf.DegToRad(Master.MountPoint.RealRotationDegrees); + fireRotation += Master.MountPoint.RealRotation; + } + else + { + fireRotation += GlobalRotation; } //创建子弹 - for (int i = 0; i < bulletCount; i++) + for (var i = 0; i < bulletCount; i++) { //发射子弹 OnShoot(fireRotation); @@ -946,16 +961,23 @@ //武器的旋转角度 tempAngle -= Attribute.UpliftAngle; - RotationDegrees = tempAngle; _fireAngle = tempAngle; - //武器身位置 - var max = Mathf.Abs(Mathf.Max(Attribute.MaxBacklash, Attribute.MinBacklash)); - _currBacklashLength = Mathf.Clamp( - _currBacklashLength - Utils.Random.RandomRangeFloat(Attribute.MinBacklash, Attribute.MaxBacklash), - -max, max - ); - Position = new Vector2(_currBacklashLength, 0).Rotated(Rotation); + if (Master != null) //是否被拾起 + { + //武器身位置 + var max = Mathf.Abs(Mathf.Max(Attribute.MaxBacklash, Attribute.MinBacklash)); + _currBacklashLength = Mathf.Clamp( + _currBacklashLength - Utils.Random.RandomRangeFloat(Attribute.MinBacklash, Attribute.MaxBacklash), + -max, max + ); + Position = new Vector2(_currBacklashLength, 0).Rotated(Rotation); + RotationDegrees = tempAngle; + } + else + { + + } } /// @@ -1632,6 +1654,11 @@ public void OnRemoveItem() { + //要重置部分重要属性属性 + if (Master.IsAi) + { + _triggerTimer = 0; + } GetParent().RemoveChild(this); CollisionLayer = _tempLayer; _weaponAttribute = _playerWeaponAttribute; @@ -1716,10 +1743,19 @@ /// protected ActivityObject ThrowShell(string shellId, float speedScale = 1) { - var shellPosition = (Master != null ? Master.MountPoint.Position : Position) + ShellPoint.Position; var startPos = ShellPoint.GlobalPosition; - var startHeight = -shellPosition.Y; - startPos.Y += startHeight; + float startHeight; + if (Master != null) + { + var shellPosition = (Master != null ? Master.MountPoint.Position : Position) + ShellPoint.Position; + startHeight = -shellPosition.Y; + startPos.Y += startHeight; + } + else + { + startHeight = Altitude; + } + var direction = GlobalRotationDegrees + Utils.Random.RandomRangeInt(-30, 30) + 180; var verticalSpeed = Utils.Random.RandomRangeInt((int)(60 * speedScale), (int)(120 * speedScale)); var velocity = new Vector2(Utils.Random.RandomRangeInt((int)(20 * speedScale), (int)(60 * speedScale)), 0).Rotated(direction * Mathf.Pi / 180); @@ -1755,15 +1791,18 @@ distance = Master.RoleState.CallCalcBulletDistanceEvent(this, distance); deviationAngle = Master.RoleState.CallCalcBulletDeviationAngleEvent(this, deviationAngle); } + + var attackLayer = _attackTrigger != null ? _attackTrigger.AttackLayer : GetAttackLayer(); //创建子弹 var bullet = Create(bulletId); bullet.Init( + _attackTrigger, this, speed, distance, FirePoint.GlobalPosition, fireRotation + Mathf.DegToRad(deviationAngle), - GetAttackLayer() + attackLayer ); bullet.MinHarm = Attribute.BulletMinHarm; bullet.MaxHarm = Attribute.BulletMaxHarm;