diff --git a/DungeonShooting_Godot/excel/ActivePropBase.xlsx b/DungeonShooting_Godot/excel/ActivePropBase.xlsx index 328dfa1..dbd73e7 100644 --- a/DungeonShooting_Godot/excel/ActivePropBase.xlsx +++ b/DungeonShooting_Godot/excel/ActivePropBase.xlsx Binary files differ diff --git a/DungeonShooting_Godot/excel/ActivityBase.xlsx b/DungeonShooting_Godot/excel/ActivityBase.xlsx index f6b3513..9ec1b0b 100644 --- a/DungeonShooting_Godot/excel/ActivityBase.xlsx +++ b/DungeonShooting_Godot/excel/ActivityBase.xlsx Binary files differ diff --git a/DungeonShooting_Godot/prefab/ui/RoomUI.tscn b/DungeonShooting_Godot/prefab/ui/RoomUI.tscn index e0a86af..b05ed70 100644 --- a/DungeonShooting_Godot/prefab/ui/RoomUI.tscn +++ b/DungeonShooting_Godot/prefab/ui/RoomUI.tscn @@ -87,7 +87,6 @@ texture = ExtResource("2_ruc0p") [node name="InteractiveIcon" type="TextureRect" parent="InteractiveTipBar"] -visible = false layout_mode = 0 offset_top = -30.0 offset_bottom = -30.0 diff --git a/DungeonShooting_Godot/resource/config/ActivePropBase.json b/DungeonShooting_Godot/resource/config/ActivePropBase.json index b43aeff..68f18ce 100644 --- a/DungeonShooting_Godot/resource/config/ActivePropBase.json +++ b/DungeonShooting_Godot/resource/config/ActivePropBase.json @@ -10,7 +10,7 @@ ] }, "Effect": { - "Hp": [ + "ChangeHp": [ 2 ] }, @@ -76,5 +76,81 @@ "CooldownTime": 0, "IsConsumables": false, "MaxCount": 1 + }, + { + "Id": "0005", + "Remark": "\u9B54\u672F\u68D2", + "__Activity": "prop5004", + "Buff": null, + "Condition": null, + "Effect": { + "SwapWeapon": [] + }, + "Charge": { + "EnterRoom": [ + 0.5 + ] + }, + "Duration": 0, + "CooldownTime": 0, + "IsConsumables": false, + "MaxCount": 1 + }, + { + "Id": "0006", + "Remark": "\u4FBF\u643A\u5F0F\u4F9B\u8840\u5668", + "__Activity": "prop5005", + "Buff": null, + "Condition": { + "HpFull": [ + 0 + ], + "Gold": [ + "\u003E=", + 25 + ] + }, + "Effect": { + "ChangeHp": [ + 1 + ], + "UseGold": [ + 25 + ] + }, + "Charge": { + "EnterRoom": [ + 1 + ] + }, + "Duration": 0, + "CooldownTime": 0, + "IsConsumables": false, + "MaxCount": 1 + }, + { + "Id": "0007", + "Remark": "\u4FBF\u643A\u5F0F\u732E\u8840\u5668", + "__Activity": "prop5006", + "Buff": null, + "Condition": { + "Hp": [ + "\u003E", + 1 + ] + }, + "Effect": { + "ChangeHp": [ + -1 + ], + "GetGold": [ + 20 + ] + }, + "Charge": null, + "Duration": 0, + "CooldownTime": 3, + "IsConsumables": false, + "MaxCount": 1 } ] \ No newline at end of file diff --git a/DungeonShooting_Godot/resource/config/ActivityBase.json b/DungeonShooting_Godot/resource/config/ActivityBase.json index 501c22b..b1466f3 100644 --- a/DungeonShooting_Godot/resource/config/ActivityBase.json +++ b/DungeonShooting_Godot/resource/config/ActivityBase.json @@ -700,6 +700,48 @@ "ShowInMapEditor": true }, { + "Id": "prop5004", + "Name": "\u9B54\u672F\u68D2", + "Type": 9, + "Quality": 1, + "Price": 0, + "Intro": "\u968F\u673A\u9009\u62E9\u623F\u95F4\u5185\u7684\u4E00\u4E2A\u624B\u6301\u6B66\u5668\u7684\u654C\u4EBA, \u4EA4\u6362\u4F60\u4EEC\u624B\u4E2D\u7684\u6B66\u5668", + "Details": "", + "IsStatic": false, + "__Material": "", + "Prefab": "res://prefab/prop/ActiveProp.tscn", + "Icon": "res://resource/sprite/prop/active/ActiveProp5004.png", + "ShowInMapEditor": true + }, + { + "Id": "prop5005", + "Name": "\u4FBF\u643A\u5F0F\u4F9B\u8840\u5668", + "Type": 9, + "Quality": 1, + "Price": 0, + "Intro": "\u4F7F\u7528\u91D1\u5E01\u6362\u53D6\u8840\u91CF", + "Details": "", + "IsStatic": false, + "__Material": "", + "Prefab": "res://prefab/prop/ActiveProp.tscn", + "Icon": "res://resource/sprite/prop/active/ActiveProp5005.png", + "ShowInMapEditor": true + }, + { + "Id": "prop5006", + "Name": "\u4FBF\u643A\u5F0F\u732E\u8840\u5668", + "Type": 9, + "Quality": 1, + "Price": 0, + "Intro": "\u4F7F\u7528\u8840\u91CF\u6362\u53D6\u91D1\u5E01", + "Details": "", + "IsStatic": false, + "__Material": "", + "Prefab": "res://prefab/prop/ActiveProp.tscn", + "Icon": "res://resource/sprite/prop/active/ActiveProp5006.png", + "ShowInMapEditor": true + }, + { "Id": "treasure_box0001", "Name": "\u6728\u8D28\u5B9D\u7BB1", "Type": 10, diff --git a/DungeonShooting_Godot/resource/map/tileMaps/Test1/inlet/Start/Preinstall.json b/DungeonShooting_Godot/resource/map/tileMaps/Test1/inlet/Start/Preinstall.json index caaa543..0151d25 100644 --- a/DungeonShooting_Godot/resource/map/tileMaps/Test1/inlet/Start/Preinstall.json +++ b/DungeonShooting_Godot/resource/map/tileMaps/Test1/inlet/Start/Preinstall.json @@ -1 +1 @@ -[{"Name":"Preinstall1","Weight":100,"Remark":"","AutoFill":false,"WaveList":[[{"Position":{"X":39,"Y":8},"Size":{"X":0,"Y":0},"SpecialMarkType":1,"DelayTime":0,"MarkList":[]},{"Position":{"X":-16,"Y":-18},"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":66,"Y":6},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"weapon0009","Weight":100,"Attr":{"CurrAmmon":"1","ResidueAmmo":"25"},"Altitude":8,"VerticalSpeed":0}]},{"Position":{"X":66,"Y":47},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"weapon0010","Weight":100,"Attr":{"CurrAmmon":"10","ResidueAmmo":"120"},"Altitude":8,"VerticalSpeed":0}]},{"Position":{"X":47,"Y":-32},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"weapon0008","Weight":100,"Attr":{"CurrAmmon":"10","ResidueAmmo":"120"},"Altitude":8,"VerticalSpeed":0}]},{"Position":{"X":23,"Y":37},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"prop0010","Weight":100,"Attr":null,"Altitude":8,"VerticalSpeed":0}]},{"Position":{"X":2,"Y":18},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"prop0005","Weight":100,"Attr":null,"Altitude":8,"VerticalSpeed":0}]},{"Position":{"X":24,"Y":-30},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"weapon0006","Weight":100,"Attr":{"CurrAmmon":"20","ResidueAmmo":"300"},"Altitude":8,"VerticalSpeed":0}]},{"Position":{"X":40,"Y":-10},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"weapon0003","Weight":100,"Attr":{"CurrAmmon":"12","ResidueAmmo":"90"},"Altitude":8,"VerticalSpeed":0}]},{"Position":{"X":2,"Y":-37},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"weapon0007","Weight":100,"Attr":{"CurrAmmon":"60","ResidueAmmo":"300"},"Altitude":8,"VerticalSpeed":0}]},{"Position":{"X":-2,"Y":47},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"weapon0002","Weight":100,"Attr":{"CurrAmmon":"7","ResidueAmmo":"70"},"Altitude":8,"VerticalSpeed":0}]},{"Position":{"X":29,"Y":63},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"weapon0013","Weight":100,"Attr":{"CurrAmmon":"50","ResidueAmmo":"250"},"Altitude":8,"VerticalSpeed":0}]},{"Position":{"X":-30,"Y":39},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"prop0003","Weight":100,"Attr":null,"Altitude":8,"VerticalSpeed":0}]},{"Position":{"X":-19,"Y":71},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"prop0003","Weight":100,"Attr":null,"Altitude":8,"VerticalSpeed":0}]},{"Position":{"X":48,"Y":29},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"weapon0004","Weight":100,"Attr":{"CurrAmmon":"180","ResidueAmmo":"90"},"Altitude":8,"VerticalSpeed":0}]},{"Position":{"X":20,"Y":94},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"weapon0014","Weight":100,"Attr":{"CurrAmmon":"5","ResidueAmmo":"60"},"Altitude":8,"VerticalSpeed":0}]},{"Position":{"X":-14,"Y":97},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"weapon0011","Weight":100,"Attr":{"CurrAmmon":"20","ResidueAmmo":"300"},"Altitude":8,"VerticalSpeed":0}]},{"Position":{"X":9,"Y":-7},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"prop0011","Weight":100,"Attr":null,"Altitude":8,"VerticalSpeed":0}]},{"Position":{"X":-41,"Y":61},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"weapon0016","Weight":100,"Attr":{"CurrAmmon":"5","ResidueAmmo":"60"},"Altitude":8,"VerticalSpeed":0}]},{"Position":{"X":73,"Y":-19},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"weapon0005","Weight":100,"Attr":{"CurrAmmon":"10","ResidueAmmo":"40"},"Altitude":8,"VerticalSpeed":5.551115E-14}]},{"Position":{"X":-72,"Y":71},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"prop0001","Weight":100,"Attr":null,"Altitude":8,"VerticalSpeed":5.551115E-14}]},{"Position":{"X":-67,"Y":50},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"prop5001","Weight":100,"Attr":null,"Altitude":8,"VerticalSpeed":5.551115E-14}]},{"Position":{"X":-91,"Y":46},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"prop5001","Weight":100,"Attr":null,"Altitude":8,"VerticalSpeed":5.551115E-14}]},{"Position":{"X":-92,"Y":74},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"prop5001","Weight":100,"Attr":null,"Altitude":8,"VerticalSpeed":5.551115E-14}]},{"Position":{"X":-26,"Y":-46},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"prop5000","Weight":100,"Attr":null,"Altitude":8,"VerticalSpeed":5.551115E-14}]},{"Position":{"X":-52,"Y":-33},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"prop5000","Weight":100,"Attr":null,"Altitude":8,"VerticalSpeed":5.551115E-14}]},{"Position":{"X":-79,"Y":-28},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"prop5000","Weight":100,"Attr":null,"Altitude":8,"VerticalSpeed":5.551115E-14}]},{"Position":{"X":-38,"Y":107},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"prop5002","Weight":100,"Attr":null,"Altitude":8,"VerticalSpeed":5.551115E-14}]},{"Position":{"X":62,"Y":71},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"prop5003","Weight":100,"Attr":null,"Altitude":8,"VerticalSpeed":5.551115E-14}]}]]}] \ No newline at end of file +[{"Name":"Preinstall1","Weight":100,"Remark":"","AutoFill":false,"WaveList":[[{"Position":{"X":39,"Y":8},"Size":{"X":0,"Y":0},"SpecialMarkType":1,"DelayTime":0,"MarkList":[]},{"Position":{"X":-16,"Y":-18},"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":66,"Y":6},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"weapon0009","Weight":100,"Attr":{"CurrAmmon":"1","ResidueAmmo":"25"},"Altitude":8,"VerticalSpeed":0}]},{"Position":{"X":66,"Y":47},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"weapon0010","Weight":100,"Attr":{"CurrAmmon":"10","ResidueAmmo":"120"},"Altitude":8,"VerticalSpeed":0}]},{"Position":{"X":47,"Y":-32},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"weapon0008","Weight":100,"Attr":{"CurrAmmon":"10","ResidueAmmo":"120"},"Altitude":8,"VerticalSpeed":0}]},{"Position":{"X":23,"Y":37},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"prop0010","Weight":100,"Attr":null,"Altitude":8,"VerticalSpeed":0}]},{"Position":{"X":2,"Y":18},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"prop0005","Weight":100,"Attr":null,"Altitude":8,"VerticalSpeed":0}]},{"Position":{"X":24,"Y":-30},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"weapon0006","Weight":100,"Attr":{"CurrAmmon":"20","ResidueAmmo":"300"},"Altitude":8,"VerticalSpeed":0}]},{"Position":{"X":40,"Y":-10},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"weapon0003","Weight":100,"Attr":{"CurrAmmon":"12","ResidueAmmo":"90"},"Altitude":8,"VerticalSpeed":0}]},{"Position":{"X":2,"Y":-37},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"weapon0007","Weight":100,"Attr":{"CurrAmmon":"60","ResidueAmmo":"300"},"Altitude":8,"VerticalSpeed":0}]},{"Position":{"X":-2,"Y":47},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"weapon0002","Weight":100,"Attr":{"CurrAmmon":"7","ResidueAmmo":"70"},"Altitude":8,"VerticalSpeed":0}]},{"Position":{"X":29,"Y":63},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"weapon0013","Weight":100,"Attr":{"CurrAmmon":"50","ResidueAmmo":"250"},"Altitude":8,"VerticalSpeed":0}]},{"Position":{"X":-30,"Y":39},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"prop0003","Weight":100,"Attr":null,"Altitude":8,"VerticalSpeed":0}]},{"Position":{"X":-19,"Y":71},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"prop0003","Weight":100,"Attr":null,"Altitude":8,"VerticalSpeed":0}]},{"Position":{"X":48,"Y":29},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"weapon0004","Weight":100,"Attr":{"CurrAmmon":"180","ResidueAmmo":"90"},"Altitude":8,"VerticalSpeed":0}]},{"Position":{"X":20,"Y":94},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"weapon0014","Weight":100,"Attr":{"CurrAmmon":"5","ResidueAmmo":"60"},"Altitude":8,"VerticalSpeed":0}]},{"Position":{"X":-14,"Y":97},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"weapon0011","Weight":100,"Attr":{"CurrAmmon":"20","ResidueAmmo":"300"},"Altitude":8,"VerticalSpeed":0}]},{"Position":{"X":9,"Y":-7},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"prop0011","Weight":100,"Attr":null,"Altitude":8,"VerticalSpeed":0}]},{"Position":{"X":-41,"Y":61},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"weapon0016","Weight":100,"Attr":{"CurrAmmon":"5","ResidueAmmo":"60"},"Altitude":8,"VerticalSpeed":0}]},{"Position":{"X":73,"Y":-19},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"weapon0005","Weight":100,"Attr":{"CurrAmmon":"10","ResidueAmmo":"40"},"Altitude":8,"VerticalSpeed":5.551115E-14}]},{"Position":{"X":-72,"Y":71},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"prop0001","Weight":100,"Attr":null,"Altitude":8,"VerticalSpeed":5.551115E-14}]},{"Position":{"X":-67,"Y":50},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"prop5001","Weight":100,"Attr":null,"Altitude":8,"VerticalSpeed":5.551115E-14}]},{"Position":{"X":-91,"Y":46},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"prop5001","Weight":100,"Attr":null,"Altitude":8,"VerticalSpeed":5.551115E-14}]},{"Position":{"X":-92,"Y":74},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"prop5001","Weight":100,"Attr":null,"Altitude":8,"VerticalSpeed":5.551115E-14}]},{"Position":{"X":-26,"Y":-46},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"prop5000","Weight":100,"Attr":null,"Altitude":8,"VerticalSpeed":5.551115E-14}]},{"Position":{"X":-52,"Y":-33},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"prop5000","Weight":100,"Attr":null,"Altitude":8,"VerticalSpeed":5.551115E-14}]},{"Position":{"X":-79,"Y":-28},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"prop5000","Weight":100,"Attr":null,"Altitude":8,"VerticalSpeed":5.551115E-14}]},{"Position":{"X":-38,"Y":107},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"prop5002","Weight":100,"Attr":null,"Altitude":8,"VerticalSpeed":5.551115E-14}]},{"Position":{"X":62,"Y":71},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"prop5003","Weight":100,"Attr":null,"Altitude":8,"VerticalSpeed":5.551115E-14}]},{"Position":{"X":24,"Y":-15},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"prop0014","Weight":100,"Attr":null,"Altitude":8,"VerticalSpeed":5.551115E-14}]},{"Position":{"X":71,"Y":-43},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"prop0014","Weight":100,"Attr":null,"Altitude":8,"VerticalSpeed":5.551115E-14}]},{"Position":{"X":-67,"Y":-101},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"prop5004","Weight":100,"Attr":null,"Altitude":8,"VerticalSpeed":5.551115E-14}]},{"Position":{"X":-84,"Y":-73},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"prop5005","Weight":100,"Attr":null,"Altitude":8,"VerticalSpeed":5.551115E-14}]},{"Position":{"X":-54,"Y":-71},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"prop5006","Weight":100,"Attr":null,"Altitude":8,"VerticalSpeed":5.551115E-14}]}]]}] \ No newline at end of file diff --git a/DungeonShooting_Godot/resource/map/tileMaps/Test1/inlet/Start/Preview.png b/DungeonShooting_Godot/resource/map/tileMaps/Test1/inlet/Start/Preview.png index beb8cab..cc18c22 100644 --- a/DungeonShooting_Godot/resource/map/tileMaps/Test1/inlet/Start/Preview.png +++ b/DungeonShooting_Godot/resource/map/tileMaps/Test1/inlet/Start/Preview.png Binary files differ diff --git a/DungeonShooting_Godot/resource/map/tileMaps/Test1/inlet/Start/RoomInfo.json b/DungeonShooting_Godot/resource/map/tileMaps/Test1/inlet/Start/RoomInfo.json index 5a7e0cd..6091345 100644 --- a/DungeonShooting_Godot/resource/map/tileMaps/Test1/inlet/Start/RoomInfo.json +++ b/DungeonShooting_Godot/resource/map/tileMaps/Test1/inlet/Start/RoomInfo.json @@ -1 +1 @@ -{"Position":{"X":-9,"Y":-11},"Size":{"X":20,"Y":21},"DoorAreaInfos":[{"Direction":2,"Start":48,"End":176},{"Direction":3,"Start":64,"End":208},{"Direction":0,"Start":80,"End":208},{"Direction":1,"Start":80,"End":224}],"GroupName":"Test1","RoomType":2,"RoomName":"Start","Weight":100,"Remark":""} \ No newline at end of file +{"Position":{"X":-9,"Y":-11},"Size":{"X":20,"Y":21},"DoorAreaInfos":[{"Direction":2,"Start":48,"End":176},{"Direction":3,"Start":0,"End":256},{"Direction":0,"Start":0,"End":208},{"Direction":1,"Start":0,"End":224}],"GroupName":"Test1","RoomType":2,"RoomName":"Start","Weight":100,"Remark":""} \ No newline at end of file diff --git a/DungeonShooting_Godot/resource/map/tileMaps/Test1/inlet/Start/TileInfo.json b/DungeonShooting_Godot/resource/map/tileMaps/Test1/inlet/Start/TileInfo.json index e9bcf84..04f62db 100644 --- a/DungeonShooting_Godot/resource/map/tileMaps/Test1/inlet/Start/TileInfo.json +++ b/DungeonShooting_Godot/resource/map/tileMaps/Test1/inlet/Start/TileInfo.json @@ -1 +1 @@ -{"NavigationVertices":[{"X":134,"Y":38},{"X":134,"Y":-6},{"X":138,"Y":-42},{"X":138,"Y":138},{"X":90,"Y":-122},{"X":90,"Y":-42},{"X":86,"Y":-58},{"X":86,"Y":-102},{"X":-42,"Y":-122},{"X":-38,"Y":-102},{"X":-42,"Y":-42},{"X":-38,"Y":-58},{"X":74,"Y":10},{"X":74,"Y":54},{"X":58,"Y":90},{"X":-26,"Y":38},{"X":-26,"Y":-6},{"X":90,"Y":-6},{"X":90,"Y":10},{"X":118,"Y":54},{"X":118,"Y":38},{"X":134,"Y":90},{"X":134,"Y":138},{"X":58,"Y":138},{"X":-58,"Y":138},{"X":-58,"Y":106},{"X":-86,"Y":38},{"X":-106,"Y":106},{"X":-106,"Y":-42},{"X":-86,"Y":-6}],"NavigationPolygon":[[0,1,2,3],[4,5,6,7],[8,4,7,9],[10,8,9,11],[12,13,14,15,16],[5,2,1,17],[17,18,12],[19,20,0,21],[3,22,21],[0,3,21],[19,21,14,13],[15,14,23,24,25],[26,15,25,27],[26,27,28,29],[29,28,10,16],[12,16,10,11,6,5,17]],"Floor":[-3,-4,0,3,-2,-4,0,3,-2,-3,0,3,-3,-3,0,3,-7,-2,0,3,-7,-1,0,3,-7,0,0,3,-7,1,0,3,-7,2,0,3,-7,3,0,3,-7,4,0,3,-7,5,0,3,-6,-3,0,3,-6,-2,0,3,-6,-1,0,3,-6,0,0,3,-6,1,0,3,-6,2,0,3,-6,3,0,3,-6,4,0,3,-6,5,0,3,-5,-3,0,3,-5,-2,0,3,-5,2,0,3,-5,3,0,3,-5,4,0,3,-5,5,0,3,-4,-3,0,3,-4,-2,0,3,-4,2,0,3,-4,3,0,3,-4,4,0,3,-4,5,0,3,-3,-2,0,3,-3,2,0,3,-3,3,0,3,-3,4,0,3,-3,5,0,3,-2,-2,0,3,-2,-1,0,3,-2,0,0,3,-2,1,0,3,-2,2,0,3,-2,3,0,3,-2,4,0,3,-2,5,0,3,-4,6,0,3,-4,7,0,3,-3,6,0,3,-3,7,0,3,-2,6,0,3,-2,7,0,3,-1,3,0,3,-1,4,0,3,-1,7,0,3,0,3,0,3,0,4,0,3,0,7,0,3,1,3,0,3,1,4,0,3,1,5,0,3,1,6,0,3,1,7,0,3,2,3,0,3,2,4,0,3,2,5,0,3,2,6,0,3,2,7,0,3,3,3,0,3,3,4,0,3,3,5,0,3,3,6,0,3,-1,-4,0,3,-1,-3,0,3,-1,-2,0,3,-1,-1,0,3,-1,0,0,3,0,-4,0,3,0,-3,0,3,0,-2,0,3,0,-1,0,3,0,0,0,3,1,-4,0,3,1,-3,0,3,1,-2,0,3,1,-1,0,3,1,0,0,3,2,-4,0,3,2,-3,0,3,2,-2,0,3,2,-1,0,3,2,0,0,3,3,-4,0,3,3,-3,0,3,3,-2,0,3,3,-1,0,3,3,0,0,3,4,-4,0,3,4,-3,0,3,4,-2,0,3,4,-1,0,3,4,0,0,3,5,-4,0,3,5,-3,0,3,5,-1,0,3,3,1,0,3,3,2,0,3,4,1,0,3,4,2,0,3,4,3,0,3,4,4,0,3,5,3,0,3,5,4,0,3,6,3,0,3,6,4,0,3,6,-3,0,3,7,-3,0,3,7,-2,0,3,7,2,0,3,7,3,0,3,7,4,0,3,8,-3,0,3,8,-2,0,3,8,-1,0,3,8,0,0,3,8,1,0,3,8,2,0,3,8,3,0,3,8,4,0,3,-1,2,0,3,0,2,0,3,1,2,0,3,2,2,0,3,2,1,0,3,1,1,0,3,0,1,0,3,-1,1,0,3,-1,5,0,3,0,5,0,3,0,6,0,3,-1,6,0,3,-7,-3,0,3,6,-2,0,3,5,-2,0,3,8,5,0,3,8,6,0,3,8,7,0,3,-3,-5,0,3,-3,-6,0,3,5,-6,0,3,5,-5,0,3,5,-7,0,3,-3,-7,0,3,5,-8,0,3,4,-8,0,3,3,-8,0,3,2,-8,0,3,1,-8,0,3,0,-8,0,3,-1,-8,0,3,-2,-8,0,3,-3,-8,0,3,3,7,0,3],"CustomFloor1":[-4,2,1,7,14,-3,3,1,8,15,-4,3,1,7,15,-5,3,1,6,15,6,4,1,8,15,5,4,1,7,15,-5,2,1,6,14,4,3,1,6,14,4,4,1,6,15,6,3,1,8,14,5,3,1,7,14,-3,2,1,8,14],"CustomFloor2":[],"CustomFloor3":[],"CustomMiddle1":[-3,4,1,10,5,-3,5,1,10,6,2,4,1,10,5,2,5,1,10,6],"CustomMiddle2":[5,-4,1,6,0,5,-3,1,6,1,-2,-1,1,5,0,-2,0,1,5,1],"CustomTop":[]} \ No newline at end of file +{"NavigationVertices":[{"X":134,"Y":38},{"X":138,"Y":-122},{"X":138,"Y":138},{"X":134,"Y":90},{"X":134,"Y":-6},{"X":90,"Y":-6},{"X":86,"Y":-58},{"X":86,"Y":-102},{"X":-106,"Y":-122},{"X":-38,"Y":-102},{"X":74,"Y":10},{"X":74,"Y":54},{"X":58,"Y":90},{"X":-26,"Y":38},{"X":-26,"Y":-6},{"X":90,"Y":10},{"X":-38,"Y":-58},{"X":118,"Y":54},{"X":118,"Y":38},{"X":134,"Y":138},{"X":58,"Y":138},{"X":-58,"Y":138},{"X":-58,"Y":106},{"X":-86,"Y":38},{"X":-106,"Y":106},{"X":-86,"Y":-6}],"NavigationPolygon":[[0,1,2,3],[1,0,4],[1,4,5,6,7],[8,1,7,9],[10,11,12,13,14],[6,5,15,10,14,16],[17,18,0,3],[2,19,3],[17,3,12,11],[13,12,20,21,22],[23,13,22,24],[23,24,8,25],[25,8,9,16],[14,25,16]],"Floor":[-3,-4,0,3,-2,-4,0,3,-2,-3,0,3,-3,-3,0,3,-7,-2,0,3,-7,-1,0,3,-7,0,0,3,-7,1,0,3,-7,2,0,3,-7,3,0,3,-7,4,0,3,-7,5,0,3,-6,-3,0,3,-6,-2,0,3,-6,-1,0,3,-6,0,0,3,-6,1,0,3,-6,2,0,3,-6,3,0,3,-6,4,0,3,-6,5,0,3,-5,-3,0,3,-5,-2,0,3,-5,2,0,3,-5,3,0,3,-5,4,0,3,-5,5,0,3,-4,-3,0,3,-4,-2,0,3,-4,2,0,3,-4,3,0,3,-4,4,0,3,-4,5,0,3,-3,-2,0,3,-3,2,0,3,-3,3,0,3,-3,4,0,3,-3,5,0,3,-2,-2,0,3,-2,-1,0,3,-2,0,0,3,-2,1,0,3,-2,2,0,3,-2,3,0,3,-2,4,0,3,-2,5,0,3,-4,6,0,3,-4,7,0,3,-3,6,0,3,-3,7,0,3,-2,6,0,3,-2,7,0,3,-1,3,0,3,-1,4,0,3,-1,7,0,3,0,3,0,3,0,4,0,3,0,7,0,3,1,3,0,3,1,4,0,3,1,5,0,3,1,6,0,3,1,7,0,3,2,3,0,3,2,4,0,3,2,5,0,3,2,6,0,3,2,7,0,3,3,3,0,3,3,4,0,3,3,5,0,3,3,6,0,3,-1,-4,0,3,-1,-3,0,3,-1,-2,0,3,-1,-1,0,3,-1,0,0,3,0,-4,0,3,0,-3,0,3,0,-2,0,3,0,-1,0,3,0,0,0,3,1,-4,0,3,1,-3,0,3,1,-2,0,3,1,-1,0,3,1,0,0,3,2,-4,0,3,2,-3,0,3,2,-2,0,3,2,-1,0,3,2,0,0,3,3,-4,0,3,3,-3,0,3,3,-2,0,3,3,-1,0,3,3,0,0,3,4,-4,0,3,4,-3,0,3,4,-2,0,3,4,-1,0,3,4,0,0,3,5,-4,0,3,5,-3,0,3,5,-1,0,3,3,1,0,3,3,2,0,3,4,1,0,3,4,2,0,3,4,3,0,3,4,4,0,3,5,3,0,3,5,4,0,3,6,3,0,3,6,4,0,3,6,-3,0,3,7,-3,0,3,7,-2,0,3,7,2,0,3,7,3,0,3,7,4,0,3,8,-3,0,3,8,-2,0,3,8,-1,0,3,8,0,0,3,8,1,0,3,8,2,0,3,8,3,0,3,8,4,0,3,-1,2,0,3,0,2,0,3,1,2,0,3,2,2,0,3,2,1,0,3,1,1,0,3,0,1,0,3,-1,1,0,3,-1,5,0,3,0,5,0,3,0,6,0,3,-1,6,0,3,-7,-3,0,3,6,-2,0,3,5,-2,0,3,8,5,0,3,8,6,0,3,8,7,0,3,-3,-5,0,3,-3,-6,0,3,5,-6,0,3,5,-5,0,3,5,-7,0,3,-3,-7,0,3,5,-8,0,3,4,-8,0,3,3,-8,0,3,2,-8,0,3,1,-8,0,3,0,-8,0,3,-1,-8,0,3,-2,-8,0,3,-3,-8,0,3,3,7,0,3,-7,-8,0,3,-7,-7,0,3,-7,-6,0,3,-7,-5,0,3,-7,-4,0,3,-6,-8,0,3,-6,-7,0,3,-6,-6,0,3,-6,-5,0,3,-6,-4,0,3,-5,-8,0,3,-5,-7,0,3,-5,-6,0,3,-5,-5,0,3,-5,-4,0,3,-4,-8,0,3,-4,-7,0,3,-4,-6,0,3,-4,-5,0,3,-4,-4,0,3,6,-8,0,3,6,-7,0,3,6,-6,0,3,6,-5,0,3,6,-4,0,3,7,-8,0,3,7,-7,0,3,7,-6,0,3,7,-5,0,3,7,-4,0,3,8,-8,0,3,8,-7,0,3,8,-6,0,3,8,-5,0,3,8,-4,0,3],"CustomFloor1":[-4,2,1,7,14,-3,3,1,8,15,-4,3,1,7,15,-5,3,1,6,15,6,4,1,8,15,5,4,1,7,15,-5,2,1,6,14,4,3,1,6,14,4,4,1,6,15,6,3,1,8,14,5,3,1,7,14,-3,2,1,8,14],"CustomFloor2":[],"CustomFloor3":[],"CustomMiddle1":[-3,4,1,10,5,-3,5,1,10,6,2,4,1,10,5,2,5,1,10,6],"CustomMiddle2":[5,-4,1,6,0,5,-3,1,6,1,-2,-1,1,5,0,-2,0,1,5,1],"CustomTop":[]} \ No newline at end of file diff --git a/DungeonShooting_Godot/resource/sprite/prop/active/ActiveProp5003.png b/DungeonShooting_Godot/resource/sprite/prop/active/ActiveProp5003.png index ec4e4d5..cbdf94f 100644 --- a/DungeonShooting_Godot/resource/sprite/prop/active/ActiveProp5003.png +++ b/DungeonShooting_Godot/resource/sprite/prop/active/ActiveProp5003.png Binary files differ diff --git a/DungeonShooting_Godot/resource/sprite/prop/active/ActiveProp5004.png b/DungeonShooting_Godot/resource/sprite/prop/active/ActiveProp5004.png new file mode 100644 index 0000000..6c6ba7b --- /dev/null +++ b/DungeonShooting_Godot/resource/sprite/prop/active/ActiveProp5004.png Binary files differ diff --git a/DungeonShooting_Godot/resource/sprite/prop/active/ActiveProp5004.png.import b/DungeonShooting_Godot/resource/sprite/prop/active/ActiveProp5004.png.import new file mode 100644 index 0000000..3de1a23 --- /dev/null +++ b/DungeonShooting_Godot/resource/sprite/prop/active/ActiveProp5004.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://bo80bcwleji1v" +path="res://.godot/imported/ActiveProp5004.png-d8820f3029374f01685c3c0e6fa5ba2c.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://resource/sprite/prop/active/ActiveProp5004.png" +dest_files=["res://.godot/imported/ActiveProp5004.png-d8820f3029374f01685c3c0e6fa5ba2c.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 diff --git a/DungeonShooting_Godot/resource/sprite/prop/active/ActiveProp5005.png b/DungeonShooting_Godot/resource/sprite/prop/active/ActiveProp5005.png new file mode 100644 index 0000000..b409284 --- /dev/null +++ b/DungeonShooting_Godot/resource/sprite/prop/active/ActiveProp5005.png Binary files differ diff --git a/DungeonShooting_Godot/resource/sprite/prop/active/ActiveProp5005.png.import b/DungeonShooting_Godot/resource/sprite/prop/active/ActiveProp5005.png.import new file mode 100644 index 0000000..b834250 --- /dev/null +++ b/DungeonShooting_Godot/resource/sprite/prop/active/ActiveProp5005.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://bmtchn3tnb0rq" +path="res://.godot/imported/ActiveProp5005.png-15f900b095a5bff93432e841f6c6aa7e.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://resource/sprite/prop/active/ActiveProp5005.png" +dest_files=["res://.godot/imported/ActiveProp5005.png-15f900b095a5bff93432e841f6c6aa7e.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 diff --git a/DungeonShooting_Godot/resource/sprite/prop/active/ActiveProp5006.png b/DungeonShooting_Godot/resource/sprite/prop/active/ActiveProp5006.png new file mode 100644 index 0000000..539f8f1 --- /dev/null +++ b/DungeonShooting_Godot/resource/sprite/prop/active/ActiveProp5006.png Binary files differ diff --git a/DungeonShooting_Godot/resource/sprite/prop/active/ActiveProp5006.png.import b/DungeonShooting_Godot/resource/sprite/prop/active/ActiveProp5006.png.import new file mode 100644 index 0000000..2c8c693 --- /dev/null +++ b/DungeonShooting_Godot/resource/sprite/prop/active/ActiveProp5006.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://gwbclbl7vnt8" +path="res://.godot/imported/ActiveProp5006.png-3dfe862becb03e916076078ebbcbd626.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://resource/sprite/prop/active/ActiveProp5006.png" +dest_files=["res://.godot/imported/ActiveProp5006.png-3dfe862becb03e916076078ebbcbd626.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 diff --git a/DungeonShooting_Godot/resource/sprite/ui/roomUI/Cooldown.png b/DungeonShooting_Godot/resource/sprite/ui/roomUI/Cooldown.png index 1445214..250e7bb 100644 --- a/DungeonShooting_Godot/resource/sprite/ui/roomUI/Cooldown.png +++ b/DungeonShooting_Godot/resource/sprite/ui/roomUI/Cooldown.png Binary files differ diff --git a/DungeonShooting_Godot/scene/Hall.tscn b/DungeonShooting_Godot/scene/Hall.tscn index 95bfb09..1f298e3 100644 --- a/DungeonShooting_Godot/scene/Hall.tscn +++ b/DungeonShooting_Godot/scene/Hall.tscn @@ -123,7 +123,7 @@ ShowOffset = Vector2(2.08165e-12, 2) CollisionVisible = false -[node name="Sprite2D" type="Sprite2D" parent="ItemRoot/Item0006" index="1"] +[node name="Sprite2D" type="Sprite2D" parent="ItemRoot/Item0006" index="0"] position = Vector2(-11, -3) texture = ExtResource("7_30qwa") @@ -135,7 +135,7 @@ ShowOffset = Vector2(2.08165e-12, 2) CollisionVisible = false -[node name="ActivityInstance" type="Node2D" parent="ItemRoot/Item0008" index="1"] +[node name="ActivityInstance" type="Node2D" parent="ItemRoot/Item0008" index="0"] position = Vector2(2.5, -12) script = ExtResource("5_lowqi") Id = "item_0031" @@ -151,7 +151,7 @@ ShowOffset = Vector2(2.08165e-12, 2) CollisionVisible = false -[node name="Item26" type="Sprite2D" parent="ItemRoot/Item0013" index="1"] +[node name="Item26" type="Sprite2D" parent="ItemRoot/Item0013" index="0"] position = Vector2(18, -2) texture = ExtResource("8_61dkg") @@ -163,19 +163,19 @@ ShowOffset = Vector2(2.08165e-12, 2) CollisionVisible = false -[node name="Sprite2D" type="Sprite2D" parent="ItemRoot/Item0017" index="1"] +[node name="Sprite2D" type="Sprite2D" parent="ItemRoot/Item0017" index="0"] position = Vector2(-2, -13) texture = ExtResource("8_u3vry") -[node name="Sprite2D2" type="Sprite2D" parent="ItemRoot/Item0017" index="2"] +[node name="Sprite2D2" type="Sprite2D" parent="ItemRoot/Item0017" index="1"] position = Vector2(18, -11) texture = ExtResource("9_lhdr8") -[node name="Sprite2D3" type="Sprite2D" parent="ItemRoot/Item0017" index="3"] +[node name="Sprite2D3" type="Sprite2D" parent="ItemRoot/Item0017" index="2"] position = Vector2(-16, -2) texture = ExtResource("10_4eqn0") -[node name="Sprite2D4" type="Sprite2D" parent="ItemRoot/Item0017" index="4"] +[node name="Sprite2D4" type="Sprite2D" parent="ItemRoot/Item0017" index="3"] position = Vector2(10, -1) texture = ExtResource("11_tg3jo") @@ -201,11 +201,11 @@ DefaultLayer = 1 CollisionVisible = false -[node name="Sprite2D" type="Sprite2D" parent="ItemRoot/Item0002" index="1"] +[node name="Sprite2D" type="Sprite2D" parent="ItemRoot/Item0002" index="0"] position = Vector2(32, -2) texture = ExtResource("12_agfji") -[node name="Sprite2D2" type="Sprite2D" parent="ItemRoot/Item0002" index="2"] +[node name="Sprite2D2" type="Sprite2D" parent="ItemRoot/Item0002" index="1"] material = SubResource("ShaderMaterial_i7git") position = Vector2(0, -15) scale = Vector2(1, -1) @@ -223,7 +223,7 @@ Id = "item_0004" DefaultLayer = 1 -[node name="Sprite2D" type="Sprite2D" parent="ItemRoot/Item0004" index="1"] +[node name="Sprite2D" type="Sprite2D" parent="ItemRoot/Item0004" index="0"] position = Vector2(0, -17) texture = ExtResource("13_unnpl") @@ -258,15 +258,15 @@ Id = "item_0009" DefaultLayer = 1 -[node name="Sprite2D" type="Sprite2D" parent="ItemRoot/Item0009" index="1"] +[node name="Sprite2D" type="Sprite2D" parent="ItemRoot/Item0009" index="0"] position = Vector2(-24, -10) texture = ExtResource("15_h7524") -[node name="Sprite2D2" type="Sprite2D" parent="ItemRoot/Item0009" index="2"] +[node name="Sprite2D2" type="Sprite2D" parent="ItemRoot/Item0009" index="1"] position = Vector2(1, -10) texture = ExtResource("15_h7524") -[node name="Sprite2D3" type="Sprite2D" parent="ItemRoot/Item0009" index="3"] +[node name="Sprite2D3" type="Sprite2D" parent="ItemRoot/Item0009" index="2"] position = Vector2(37, -10) texture = ExtResource("15_h7524") @@ -300,7 +300,7 @@ Id = "item_0015" DefaultLayer = 1 -[node name="Slice04" type="Sprite2D" parent="ItemRoot/Item0015" index="1"] +[node name="Slice04" type="Sprite2D" parent="ItemRoot/Item0015" index="0"] position = Vector2(16, -9) texture = ExtResource("15_h7524") @@ -323,11 +323,11 @@ Id = "item_0019" DefaultLayer = 1 -[node name="Sprite2D" type="Sprite2D" parent="ItemRoot/Item0019" index="1"] +[node name="Sprite2D" type="Sprite2D" parent="ItemRoot/Item0019" index="0"] position = Vector2(-23, -7) texture = ExtResource("16_xj0e1") -[node name="Sprite2D2" type="Sprite2D" parent="ItemRoot/Item0019" index="2"] +[node name="Sprite2D2" type="Sprite2D" parent="ItemRoot/Item0019" index="1"] position = Vector2(24, -8) texture = ExtResource("17_gwwce") diff --git a/DungeonShooting_Godot/src/framework/activity/ActivityObject_Init.cs b/DungeonShooting_Godot/src/framework/activity/ActivityObject_Init.cs index e051a61..fd0e5d5 100644 --- a/DungeonShooting_Godot/src/framework/activity/ActivityObject_Init.cs +++ b/DungeonShooting_Godot/src/framework/activity/ActivityObject_Init.cs @@ -259,6 +259,21 @@ /// public const string Id_prop5003 = "prop5003"; /// + /// 名称: 魔术棒
+ /// 简介: 随机选择房间内的一个手持武器的敌人, 交换你们手中的武器 + ///
+ public const string Id_prop5004 = "prop5004"; + /// + /// 名称: 便携式供血器
+ /// 简介: 使用金币换取血量 + ///
+ public const string Id_prop5005 = "prop5005"; + /// + /// 名称: 便携式献血器
+ /// 简介: 使用血量换取金币 + ///
+ public const string Id_prop5006 = "prop5006"; + /// /// 名称: 木质宝箱
/// 简介: 木质宝箱 ///
diff --git a/DungeonShooting_Godot/src/framework/map/AffiliationArea.cs b/DungeonShooting_Godot/src/framework/map/AffiliationArea.cs index 0ebce39..1b59d19 100644 --- a/DungeonShooting_Godot/src/framework/map/AffiliationArea.cs +++ b/DungeonShooting_Godot/src/framework/map/AffiliationArea.cs @@ -287,6 +287,7 @@ { if (IsFirstEnterFlag) { + Player.Current.OnFirstEnterRoom(RoomInfo); EventManager.EmitEvent(EventEnum.OnPlayerFirstEnterRoom, RoomInfo); } EventManager.EmitEvent(EventEnum.OnPlayerEnterRoom, RoomInfo); diff --git a/DungeonShooting_Godot/src/game/activity/role/Role.cs b/DungeonShooting_Godot/src/game/activity/role/Role.cs index ecb1011..4fbde5a 100644 --- a/DungeonShooting_Godot/src/game/activity/role/Role.cs +++ b/DungeonShooting_Godot/src/game/activity/role/Role.cs @@ -1234,11 +1234,11 @@ return; } - var temp = weapon.AnimatedSprite.Position; - if (Face == FaceDirection.Left) - { - temp.Y = -temp.Y; - } + // var temp = weapon.AnimatedSprite.Position; + // if (Face == FaceDirection.Left) + // { + // temp.Y = -temp.Y; + // } //var pos = GlobalPosition + temp.Rotated(weapon.GlobalRotation); WeaponPack.RemoveItem(index); //播放抛出效果 @@ -1246,6 +1246,21 @@ } /// + /// 从背包中移除指定武器, 不会触发投抛效果 + /// + /// 武器在武器背包中的位置 + public void RemoveWeapon(int index) + { + var weapon = WeaponPack.GetItem(index); + if (weapon == null) + { + return; + } + + WeaponPack.RemoveItem(index); + } + + /// /// 扔掉所有武器 /// public void ThrowAllWeapon() @@ -1342,6 +1357,14 @@ } /// + /// 使用金币 + /// + public virtual void UseGold(int goldCount) + { + RoleState.Gold -= goldCount; + } + + /// /// 切换当前使用的武器的回调 /// private void OnChangeActiveItem(Weapon weapon) diff --git a/DungeonShooting_Godot/src/game/activity/role/player/Player.cs b/DungeonShooting_Godot/src/game/activity/role/player/Player.cs index 6153367..9834eac 100644 --- a/DungeonShooting_Godot/src/game/activity/role/player/Player.cs +++ b/DungeonShooting_Godot/src/game/activity/role/player/Player.cs @@ -10,6 +10,11 @@ public partial class Player : Role { /// + /// 当玩家第一次进入房间时调用 + /// + public event Action OnFirstEnterRoomEvent; + + /// /// 获取当前操作的角色 /// public static Player Current { get; private set; } @@ -420,4 +425,21 @@ base.AddGold(goldCount); EventManager.EmitEvent(EventEnum.OnPlayerGoldChange, RoleState.Gold); } + + public override void UseGold(int goldCount) + { + base.UseGold(goldCount); + EventManager.EmitEvent(EventEnum.OnPlayerGoldChange, RoleState.Gold); + } + + /// + /// 玩家第一次进入房间时调用 + /// + public virtual void OnFirstEnterRoom(RoomInfo roomInfo) + { + if (OnFirstEnterRoomEvent != null) + { + OnFirstEnterRoomEvent(roomInfo); + } + } } \ No newline at end of file diff --git a/DungeonShooting_Godot/src/game/buff/charge/Cha_EnterRoom.cs b/DungeonShooting_Godot/src/game/buff/charge/Cha_EnterRoom.cs new file mode 100644 index 0000000..772cae4 --- /dev/null +++ b/DungeonShooting_Godot/src/game/buff/charge/Cha_EnterRoom.cs @@ -0,0 +1,39 @@ + +using System.Text.Json; + +[ChargeFragment("EnterRoom", "玩家第一次进入某个房间充能, 该条充能件仅对玩家生效, 参数1为进入房间充能量(0-1)")] +public class Cha_EnterRoom : ChargeFragment +{ + private float _value = 0.2f; + + public override void InitParam(JsonElement[] args) + { + _value = args[0].GetSingle(); + } + + public override void OnUse() + { + Master.ChargeProgress = 0; + } + + public override void OnPickUpItem() + { + if (Role is Player player) + { + player.OnFirstEnterRoomEvent += OnFirstEnterRoom; + } + } + + public override void OnRemoveItem() + { + if (Role is Player player) + { + player.OnFirstEnterRoomEvent -= OnFirstEnterRoom; + } + } + + private void OnFirstEnterRoom(RoomInfo roomInfo) + { + Master.ChargeProgress += _value; + } +} \ No newline at end of file diff --git a/DungeonShooting_Godot/src/game/buff/condition/Cond_Gold.cs b/DungeonShooting_Godot/src/game/buff/condition/Cond_Gold.cs new file mode 100644 index 0000000..cf1776d --- /dev/null +++ b/DungeonShooting_Godot/src/game/buff/condition/Cond_Gold.cs @@ -0,0 +1,36 @@ + +using System.Text.Json; + +[ConditionFragment("Gold", + "判断金币数量, " + + "参数1为判断条件符号, 分别为: >, <, =, >=, <=; " + + "参数2为比较的值")] +public class Cond_Gold : ConditionFragment +{ + private string _symbol; + private int _value; + public override void InitParam(JsonElement[] args) + { + _symbol = args[0].GetString(); + _value = args[1].GetInt32(); + } + + public override bool OnCheckUse() + { + switch (_symbol) + { + case ">": + return Role.RoleState.Gold > _value; + case "<": + return Role.RoleState.Gold < _value; + case "=": + return Role.RoleState.Gold == _value; + case ">=": + return Role.RoleState.Gold >= _value; + case "<=": + return Role.RoleState.Gold <= _value; + } + + return false; + } +} \ No newline at end of file diff --git a/DungeonShooting_Godot/src/game/buff/condition/Cond_Hp.cs b/DungeonShooting_Godot/src/game/buff/condition/Cond_Hp.cs new file mode 100644 index 0000000..e6f8e0d --- /dev/null +++ b/DungeonShooting_Godot/src/game/buff/condition/Cond_Hp.cs @@ -0,0 +1,35 @@ +using System.Text.Json; + +[ConditionFragment("Hp", + "判断血量, " + + "参数1为判断条件符号, 分别为: >, <, =, >=, <=; " + + "参数2为比较的值")] +public class Cond_Hp : ConditionFragment +{ + private string _symbol; + private int _value; + public override void InitParam(JsonElement[] args) + { + _symbol = args[0].GetString(); + _value = args[1].GetInt32(); + } + + public override bool OnCheckUse() + { + switch (_symbol) + { + case ">": + return Role.Hp > _value; + case "<": + return Role.Hp < _value; + case "=": + return Role.Hp == _value; + case ">=": + return Role.Hp >= _value; + case "<=": + return Role.Hp <= _value; + } + + return false; + } +} \ No newline at end of file diff --git a/DungeonShooting_Godot/src/game/buff/effect/Eff_ChangeHp.cs b/DungeonShooting_Godot/src/game/buff/effect/Eff_ChangeHp.cs new file mode 100644 index 0000000..d61b6d9 --- /dev/null +++ b/DungeonShooting_Godot/src/game/buff/effect/Eff_ChangeHp.cs @@ -0,0 +1,18 @@ + +using System.Text.Json; + +[EffectFragment("ChangeHp", "修改血量, 参数1为血量变化的具体值")] +public class Eff_ChangeHp : EffectFragment +{ + private int _value; + + public override void InitParam(JsonElement[] arg) + { + _value = arg[0].GetInt32(); + } + + public override void OnUse() + { + Role.Hp += _value; + } +} \ No newline at end of file diff --git a/DungeonShooting_Godot/src/game/buff/effect/Eff_GetGold.cs b/DungeonShooting_Godot/src/game/buff/effect/Eff_GetGold.cs new file mode 100644 index 0000000..6ab2512 --- /dev/null +++ b/DungeonShooting_Godot/src/game/buff/effect/Eff_GetGold.cs @@ -0,0 +1,29 @@ + + +using System.Text.Json; +using Godot; + +[EffectFragment("GetGold", "获得金币, 参数1为金币的值")] +public class Eff_GetGold : EffectFragment +{ + private int _value; + public override void InitParam(JsonElement[] args) + { + _value = args[0].GetInt32(); + } + + public override void OnUse() + { + var goldList = Utils.GetGoldList(Mathf.FloorToInt(_value)); + foreach (var id in goldList) + { + var o = ObjectManager.GetActivityObject(id); + o.Position = Role.Position; + o.Throw(0, + Utils.Random.RandomRangeInt(50, 110), + new Vector2(Utils.Random.RandomRangeInt(-20, 20), Utils.Random.RandomRangeInt(-20, 20)), + 0 + ); + } + } +} \ No newline at end of file diff --git a/DungeonShooting_Godot/src/game/buff/effect/Eff_Hp.cs b/DungeonShooting_Godot/src/game/buff/effect/Eff_Hp.cs deleted file mode 100644 index d1adddf..0000000 --- a/DungeonShooting_Godot/src/game/buff/effect/Eff_Hp.cs +++ /dev/null @@ -1,18 +0,0 @@ - -using System.Text.Json; - -[EffectFragment("Hp", "修改血量, 参数1为血量变化的具体值")] -public class Eff_Hp : EffectFragment -{ - private int _value; - - public override void InitParam(JsonElement[] arg) - { - _value = arg[0].GetInt32(); - } - - public override void OnUse() - { - Role.Hp += _value; - } -} \ No newline at end of file diff --git a/DungeonShooting_Godot/src/game/buff/effect/Eff_SwapWeapon.cs b/DungeonShooting_Godot/src/game/buff/effect/Eff_SwapWeapon.cs new file mode 100644 index 0000000..08da4c3 --- /dev/null +++ b/DungeonShooting_Godot/src/game/buff/effect/Eff_SwapWeapon.cs @@ -0,0 +1,55 @@ +using System.Collections.Generic; +using System.Text.Json; + +[EffectFragment("SwapWeapon", "随机选择房间内的一个手持武器的敌人, 交换你们手中的武器, 无参数")] +public class Eff_SwapWeapon : EffectFragment +{ + public override void InitParam(JsonElement[] args) + { + + } + + public override void OnUse() + { + var list = new List(); + foreach (var enemy in Master.World.Enemy_InstanceList) + { + if (enemy.WeaponPack.ActiveItem != null) + { + list.Add(enemy); + + } + } + + var targetEnemy = Utils.Random.RandomChoose(list); + if (targetEnemy != null) + { + var enemyWeapon = targetEnemy.WeaponPack.ActiveItem; + + var selfWeapon = Role.WeaponPack.ActiveItem; + targetEnemy.RemoveWeapon(enemyWeapon.PackageIndex); + Role.RemoveWeapon(selfWeapon.PackageIndex); + + targetEnemy.PickUpWeapon(selfWeapon); + Role.PickUpWeapon(enemyWeapon); + } + } + + public override bool OnCheckUse() + { + if (Role.World == null || Role.WeaponPack.ActiveItem == null) + { + return false; + } + + foreach (var enemy in Master.World.Enemy_InstanceList) + { + if (enemy.WeaponPack.ActiveItem != null) + { + return true; + } + } + + return false; + } +} \ No newline at end of file diff --git a/DungeonShooting_Godot/src/game/buff/effect/Eff_UseGold.cs b/DungeonShooting_Godot/src/game/buff/effect/Eff_UseGold.cs new file mode 100644 index 0000000..8226c3b --- /dev/null +++ b/DungeonShooting_Godot/src/game/buff/effect/Eff_UseGold.cs @@ -0,0 +1,18 @@ + + +using System.Text.Json; + +[EffectFragment("UseGold", "使用金币, 参数1为金币的值")] +public class Eff_UseGold : EffectFragment +{ + private int _value; + public override void InitParam(JsonElement[] args) + { + _value = args[0].GetInt32(); + } + + public override void OnUse() + { + Role.UseGold(_value); + } +} \ No newline at end of file diff --git a/DungeonShooting_Godot/src/game/ui/roomUI/ActivePropBarHandler.cs b/DungeonShooting_Godot/src/game/ui/roomUI/ActivePropBarHandler.cs index f01ec1b..69a2654 100644 --- a/DungeonShooting_Godot/src/game/ui/roomUI/ActivePropBarHandler.cs +++ b/DungeonShooting_Godot/src/game/ui/roomUI/ActivePropBarHandler.cs @@ -51,7 +51,7 @@ } else { - _shaderMaterial.SetShaderParameter("schedule", 0.6f); + _shaderMaterial.SetShaderParameter("schedule", 0.8f); } //冷却