diff --git a/DungeonShooting_Godot/excel/excelFile/ActivityBase.xlsx b/DungeonShooting_Godot/excel/excelFile/ActivityBase.xlsx new file mode 100644 index 0000000..26adfca --- /dev/null +++ b/DungeonShooting_Godot/excel/excelFile/ActivityBase.xlsx Binary files differ diff --git a/DungeonShooting_Godot/excel/excelFile/ActivityObject.xlsx b/DungeonShooting_Godot/excel/excelFile/ActivityObject.xlsx deleted file mode 100644 index eb9fabc..0000000 --- a/DungeonShooting_Godot/excel/excelFile/ActivityObject.xlsx +++ /dev/null Binary files differ diff --git a/DungeonShooting_Godot/excel/excelFile/AiAttackAttr.xlsx b/DungeonShooting_Godot/excel/excelFile/AiAttackAttr.xlsx index a9e7ba9..c96c509 100644 --- a/DungeonShooting_Godot/excel/excelFile/AiAttackAttr.xlsx +++ b/DungeonShooting_Godot/excel/excelFile/AiAttackAttr.xlsx Binary files differ diff --git a/DungeonShooting_Godot/excel/excelFile/AmmoBase.xlsx b/DungeonShooting_Godot/excel/excelFile/AmmoBase.xlsx new file mode 100644 index 0000000..737bb6e --- /dev/null +++ b/DungeonShooting_Godot/excel/excelFile/AmmoBase.xlsx Binary files differ diff --git a/DungeonShooting_Godot/excel/excelFile/Sound.xlsx b/DungeonShooting_Godot/excel/excelFile/Sound.xlsx index 33c5fe7..d98f2d6 100644 --- a/DungeonShooting_Godot/excel/excelFile/Sound.xlsx +++ b/DungeonShooting_Godot/excel/excelFile/Sound.xlsx Binary files differ diff --git a/DungeonShooting_Godot/excel/excelFile/Weapon.xlsx b/DungeonShooting_Godot/excel/excelFile/Weapon.xlsx deleted file mode 100644 index b1614e0..0000000 --- a/DungeonShooting_Godot/excel/excelFile/Weapon.xlsx +++ /dev/null Binary files differ diff --git a/DungeonShooting_Godot/excel/excelFile/WeaponBase.xlsx b/DungeonShooting_Godot/excel/excelFile/WeaponBase.xlsx new file mode 100644 index 0000000..9fa0147 --- /dev/null +++ b/DungeonShooting_Godot/excel/excelFile/WeaponBase.xlsx Binary files differ diff --git a/DungeonShooting_Godot/resource/config/ActivityBase.json b/DungeonShooting_Godot/resource/config/ActivityBase.json new file mode 100644 index 0000000..427d31b --- /dev/null +++ b/DungeonShooting_Godot/resource/config/ActivityBase.json @@ -0,0 +1,322 @@ +[ + { + "Id": "role0001", + "Type": 3, + "Name": "\u73A9\u5BB6", + "Intro": "\u73A9\u5BB6", + "Details": "", + "Prefab": "res://prefab/role/Role0001.tscn", + "Icon": "res://resource/sprite/role/role0001/Role0001_Icon.png", + "ShowInMapEditor": false + }, + { + "Id": "enemy0001", + "Type": 4, + "Name": "\u654C\u4EBA", + "Intro": "\u654C\u4EBA", + "Details": "", + "Prefab": "res://prefab/role/Enemy0001.tscn", + "Icon": "res://resource/sprite/role/enemy0001/enemy0001_Icon.png", + "ShowInMapEditor": true + }, + { + "Id": "weapon0001", + "Type": 5, + "Name": "\u6B65\u67AA", + "Intro": "", + "Details": "", + "Prefab": "res://prefab/weapon/Weapon0001.tscn", + "Icon": "res://resource/sprite/weapon/weapon0001/Weapon0001.png", + "ShowInMapEditor": true + }, + { + "Id": "weapon0002", + "Type": 5, + "Name": "\u9730\u5F39\u67AA", + "Intro": "", + "Details": "", + "Prefab": "res://prefab/weapon/Weapon0002.tscn", + "Icon": "res://resource/sprite/weapon/weapon0002/Weapon0002.png", + "ShowInMapEditor": true + }, + { + "Id": "weapon0003", + "Type": 5, + "Name": "\u624B\u67AA", + "Intro": "", + "Details": "", + "Prefab": "res://prefab/weapon/Weapon0003.tscn", + "Icon": "res://resource/sprite/weapon/weapon0003/Weapon0003.png", + "ShowInMapEditor": true + }, + { + "Id": "weapon0004", + "Type": 5, + "Name": "\u5200", + "Intro": "", + "Details": "", + "Prefab": "res://prefab/weapon/Weapon0004.tscn", + "Icon": "res://resource/sprite/weapon/knife1.png", + "ShowInMapEditor": true + }, + { + "Id": "weapon0005", + "Type": 5, + "Name": "\u72D9\u51FB\u67AA", + "Intro": "", + "Details": "", + "Prefab": "res://prefab/weapon/Weapon0005.tscn", + "Icon": "res://resource/sprite/weapon/weapon0005/Weapon0005.png", + "ShowInMapEditor": true + }, + { + "Id": "weapon0006", + "Type": 5, + "Name": "\u51B2\u950B\u67AA", + "Intro": "", + "Details": "", + "Prefab": "res://prefab/weapon/Weapon0006.tscn", + "Icon": "res://resource/sprite/weapon/weapon0006/Weapon0006.png", + "ShowInMapEditor": true + }, + { + "Id": "weapon0007", + "Type": 5, + "Name": "\u6C64\u59C6\u900A\u51B2\u950B\u67AA", + "Intro": "", + "Details": "", + "Prefab": "res://prefab/weapon/Weapon0007.tscn", + "Icon": "res://resource/sprite/weapon/weapon0007/Weapon0007.png", + "ShowInMapEditor": true + }, + { + "Id": "bullet0001", + "Type": 6, + "Name": "", + "Intro": "", + "Details": "", + "Prefab": "res://prefab/ammo/Bullet0001.tscn", + "Icon": "", + "ShowInMapEditor": false + }, + { + "Id": "bullet0002", + "Type": 6, + "Name": "", + "Intro": "", + "Details": "", + "Prefab": "res://prefab/ammo/Bullet0002.tscn", + "Icon": "", + "ShowInMapEditor": false + }, + { + "Id": "bullet0003", + "Type": 6, + "Name": "", + "Intro": "", + "Details": "", + "Prefab": "res://prefab/ammo/Bullet0003.tscn", + "Icon": "", + "ShowInMapEditor": false + }, + { + "Id": "shell0001", + "Type": 7, + "Name": "", + "Intro": "", + "Details": "", + "Prefab": "res://prefab/shell/Shell0001.tscn", + "Icon": "", + "ShowInMapEditor": false + }, + { + "Id": "shell0002", + "Type": 7, + "Name": "", + "Intro": "", + "Details": "", + "Prefab": "res://prefab/shell/Shell0002.tscn", + "Icon": "", + "ShowInMapEditor": false + }, + { + "Id": "shell0003", + "Type": 7, + "Name": "", + "Intro": "", + "Details": "", + "Prefab": "res://prefab/shell/Shell0003.tscn", + "Icon": "", + "ShowInMapEditor": false + }, + { + "Id": "effect0001", + "Type": 8, + "Name": "", + "Intro": "\u654C\u4EBA\u6B7B\u4EA1\u788E\u7247", + "Details": "", + "Prefab": "res://prefab/effect/enemy/Effect0001.tscn", + "Icon": "", + "ShowInMapEditor": false + }, + { + "Id": "prop0001", + "Type": 9, + "Name": "\u978B\u5B50", + "Intro": "\u63D0\u9AD8\u79FB\u52A8\u901F\u5EA6", + "Details": "", + "Prefab": "res://prefab/effect/enemy/Effect0001.tscn", + "Icon": "res://resource/sprite/prop/buff/BuffProp0001.png", + "ShowInMapEditor": true + }, + { + "Id": "prop0002", + "Type": 9, + "Name": "\u5FC3\u4E4B\u5BB9\u5668", + "Intro": "\u63D0\u9AD8\u8840\u91CF\u4E0A\u9650", + "Details": "", + "Prefab": "res://prefab/prop/buff/BuffProp0002.tscn", + "Icon": "res://resource/sprite/prop/buff/BuffProp0002.png", + "ShowInMapEditor": true + }, + { + "Id": "prop0003", + "Type": 9, + "Name": "\u62A4\u76FE", + "Intro": "\u53EF\u4EE5\u62B5\u6321\u5B50\u5F39\uFF0C\u968F\u65F6\u95F4\u63A8\u79FB\u81EA\u52A8\u6062\u590D", + "Details": "", + "Prefab": "res://prefab/prop/buff/BuffProp0003.tscn", + "Icon": "res://resource/sprite/prop/buff/BuffProp0003.png", + "ShowInMapEditor": true + }, + { + "Id": "prop0004", + "Type": 9, + "Name": "\u62A4\u76FE\u8BA1\u65F6\u5668", + "Intro": "\u63D0\u9AD8\u62A4\u76FE\u6062\u590D\u901F\u5EA6", + "Details": "", + "Prefab": "res://prefab/prop/buff/BuffProp0004.tscn", + "Icon": "res://resource/sprite/prop/buff/BuffProp0004.png", + "ShowInMapEditor": true + }, + { + "Id": "prop0005", + "Type": 9, + "Name": "\u6740\u4F24\u5F39", + "Intro": "\u63D0\u9AD8\u5B50\u5F39\u4F24\u5BB3", + "Details": "", + "Prefab": "res://prefab/prop/buff/BuffProp0005.tscn", + "Icon": "res://resource/sprite/prop/buff/BuffProp0005.png", + "ShowInMapEditor": true + }, + { + "Id": "prop0006", + "Type": 9, + "Name": "\u7EA2\u5B9D\u77F3\u6212\u6307", + "Intro": "\u53D7\u4F24\u540E\u5EF6\u957F\u65E0\u654C\u65F6\u95F4", + "Details": "", + "Prefab": "res://prefab/prop/buff/BuffProp0006.tscn", + "Icon": "res://resource/sprite/prop/buff/BuffProp0006.png", + "ShowInMapEditor": true + }, + { + "Id": "prop0007", + "Type": 9, + "Name": "\u5907\u7528\u62A4\u76FE", + "Intro": "\u53D7\u4F24\u65F6\u6709\u4E00\u5B9A\u6982\u7387\u62B5\u6D88\u4F24\u5BB3", + "Details": "", + "Prefab": "res://prefab/prop/buff/BuffProp0007.tscn", + "Icon": "res://resource/sprite/prop/buff/BuffProp0007.png", + "ShowInMapEditor": true + }, + { + "Id": "prop0008", + "Type": 9, + "Name": "\u773C\u955C", + "Intro": "\u63D0\u9AD8\u6B66\u5668\u7CBE\u51C6\u5EA6", + "Details": "", + "Prefab": "res://prefab/prop/buff/BuffProp0008.tscn", + "Icon": "res://resource/sprite/prop/buff/BuffProp0008.png", + "ShowInMapEditor": true + }, + { + "Id": "prop0009", + "Type": 9, + "Name": "\u9AD8\u901F\u5B50\u5F39", + "Intro": "\u63D0\u9AD8\u5B50\u5F39\u901F\u5EA6\u548C\u5C04\u7A0B", + "Details": "", + "Prefab": "res://prefab/prop/buff/BuffProp0009.tscn", + "Icon": "res://resource/sprite/prop/buff/BuffProp0009.png", + "ShowInMapEditor": true + }, + { + "Id": "prop0010", + "Type": 9, + "Name": "\u5206\u88C2\u5B50\u5F39", + "Intro": "\u5B50\u5F39\u6570\u91CF\u7FFB\u500D, \u4F46\u662F\u7CBE\u51C6\u5EA6\u548C\u4F24\u5BB3\u964D\u4F4E", + "Details": "", + "Prefab": "res://prefab/prop/buff/BuffProp0010.tscn", + "Icon": "res://resource/sprite/prop/buff/BuffProp0010.png", + "ShowInMapEditor": true + }, + { + "Id": "prop5000", + "Type": 9, + "Name": "\u533B\u836F\u7BB1", + "Intro": "\u4F7F\u7528\u540E\u56DE\u590D\u4E00\u9897\u7EA2\u5FC3", + "Details": "", + "Prefab": "res://prefab/prop/active/ActiveProp5000.tscn", + "Icon": "res://resource/sprite/prop/active/ActiveProp5000.png", + "ShowInMapEditor": true + }, + { + "Id": "prop5001", + "Type": 9, + "Name": "\u5F39\u836F\u7BB1", + "Intro": "\u4F7F\u7528\u540E\u8865\u5145\u5F53\u524D\u6B66\u5668\u5907\u7528\u5F39\u836F", + "Details": "", + "Prefab": "res://prefab/prop/active/ActiveProp5001.tscn", + "Icon": "res://resource/sprite/prop/active/ActiveProp5001.png", + "ShowInMapEditor": true + }, + { + "Id": "other_door_e", + "Type": 99, + "Name": "", + "Intro": "\u5730\u7262\u623F\u95F4\u7684\u95E8(\u4E1C\u4FA7)", + "Details": "", + "Prefab": "res://prefab/map/RoomDoor_E.tscn", + "Icon": "", + "ShowInMapEditor": false + }, + { + "Id": "other_door_w", + "Type": 99, + "Name": "", + "Intro": "\u5730\u7262\u623F\u95F4\u7684\u95E8(\u897F\u4FA7)", + "Details": "", + "Prefab": "res://prefab/map/RoomDoor_W.tscn", + "Icon": "", + "ShowInMapEditor": false + }, + { + "Id": "other_door_s", + "Type": 99, + "Name": "", + "Intro": "\u5730\u7262\u623F\u95F4\u7684\u95E8(\u5357\u4FA7)", + "Details": "", + "Prefab": "res://prefab/map/RoomDoor_S.tscn", + "Icon": "", + "ShowInMapEditor": false + }, + { + "Id": "other_door_n", + "Type": 99, + "Name": "", + "Intro": "\u5730\u7262\u623F\u95F4\u7684\u95E8(\u5317\u4FA7)", + "Details": "", + "Prefab": "res://prefab/map/RoomDoor_N.tscn", + "Icon": "", + "ShowInMapEditor": false + } +] \ No newline at end of file diff --git a/DungeonShooting_Godot/resource/config/ActivityObject.json b/DungeonShooting_Godot/resource/config/ActivityObject.json deleted file mode 100644 index 427d31b..0000000 --- a/DungeonShooting_Godot/resource/config/ActivityObject.json +++ /dev/null @@ -1,322 +0,0 @@ -[ - { - "Id": "role0001", - "Type": 3, - "Name": "\u73A9\u5BB6", - "Intro": "\u73A9\u5BB6", - "Details": "", - "Prefab": "res://prefab/role/Role0001.tscn", - "Icon": "res://resource/sprite/role/role0001/Role0001_Icon.png", - "ShowInMapEditor": false - }, - { - "Id": "enemy0001", - "Type": 4, - "Name": "\u654C\u4EBA", - "Intro": "\u654C\u4EBA", - "Details": "", - "Prefab": "res://prefab/role/Enemy0001.tscn", - "Icon": "res://resource/sprite/role/enemy0001/enemy0001_Icon.png", - "ShowInMapEditor": true - }, - { - "Id": "weapon0001", - "Type": 5, - "Name": "\u6B65\u67AA", - "Intro": "", - "Details": "", - "Prefab": "res://prefab/weapon/Weapon0001.tscn", - "Icon": "res://resource/sprite/weapon/weapon0001/Weapon0001.png", - "ShowInMapEditor": true - }, - { - "Id": "weapon0002", - "Type": 5, - "Name": "\u9730\u5F39\u67AA", - "Intro": "", - "Details": "", - "Prefab": "res://prefab/weapon/Weapon0002.tscn", - "Icon": "res://resource/sprite/weapon/weapon0002/Weapon0002.png", - "ShowInMapEditor": true - }, - { - "Id": "weapon0003", - "Type": 5, - "Name": "\u624B\u67AA", - "Intro": "", - "Details": "", - "Prefab": "res://prefab/weapon/Weapon0003.tscn", - "Icon": "res://resource/sprite/weapon/weapon0003/Weapon0003.png", - "ShowInMapEditor": true - }, - { - "Id": "weapon0004", - "Type": 5, - "Name": "\u5200", - "Intro": "", - "Details": "", - "Prefab": "res://prefab/weapon/Weapon0004.tscn", - "Icon": "res://resource/sprite/weapon/knife1.png", - "ShowInMapEditor": true - }, - { - "Id": "weapon0005", - "Type": 5, - "Name": "\u72D9\u51FB\u67AA", - "Intro": "", - "Details": "", - "Prefab": "res://prefab/weapon/Weapon0005.tscn", - "Icon": "res://resource/sprite/weapon/weapon0005/Weapon0005.png", - "ShowInMapEditor": true - }, - { - "Id": "weapon0006", - "Type": 5, - "Name": "\u51B2\u950B\u67AA", - "Intro": "", - "Details": "", - "Prefab": "res://prefab/weapon/Weapon0006.tscn", - "Icon": "res://resource/sprite/weapon/weapon0006/Weapon0006.png", - "ShowInMapEditor": true - }, - { - "Id": "weapon0007", - "Type": 5, - "Name": "\u6C64\u59C6\u900A\u51B2\u950B\u67AA", - "Intro": "", - "Details": "", - "Prefab": "res://prefab/weapon/Weapon0007.tscn", - "Icon": "res://resource/sprite/weapon/weapon0007/Weapon0007.png", - "ShowInMapEditor": true - }, - { - "Id": "bullet0001", - "Type": 6, - "Name": "", - "Intro": "", - "Details": "", - "Prefab": "res://prefab/ammo/Bullet0001.tscn", - "Icon": "", - "ShowInMapEditor": false - }, - { - "Id": "bullet0002", - "Type": 6, - "Name": "", - "Intro": "", - "Details": "", - "Prefab": "res://prefab/ammo/Bullet0002.tscn", - "Icon": "", - "ShowInMapEditor": false - }, - { - "Id": "bullet0003", - "Type": 6, - "Name": "", - "Intro": "", - "Details": "", - "Prefab": "res://prefab/ammo/Bullet0003.tscn", - "Icon": "", - "ShowInMapEditor": false - }, - { - "Id": "shell0001", - "Type": 7, - "Name": "", - "Intro": "", - "Details": "", - "Prefab": "res://prefab/shell/Shell0001.tscn", - "Icon": "", - "ShowInMapEditor": false - }, - { - "Id": "shell0002", - "Type": 7, - "Name": "", - "Intro": "", - "Details": "", - "Prefab": "res://prefab/shell/Shell0002.tscn", - "Icon": "", - "ShowInMapEditor": false - }, - { - "Id": "shell0003", - "Type": 7, - "Name": "", - "Intro": "", - "Details": "", - "Prefab": "res://prefab/shell/Shell0003.tscn", - "Icon": "", - "ShowInMapEditor": false - }, - { - "Id": "effect0001", - "Type": 8, - "Name": "", - "Intro": "\u654C\u4EBA\u6B7B\u4EA1\u788E\u7247", - "Details": "", - "Prefab": "res://prefab/effect/enemy/Effect0001.tscn", - "Icon": "", - "ShowInMapEditor": false - }, - { - "Id": "prop0001", - "Type": 9, - "Name": "\u978B\u5B50", - "Intro": "\u63D0\u9AD8\u79FB\u52A8\u901F\u5EA6", - "Details": "", - "Prefab": "res://prefab/effect/enemy/Effect0001.tscn", - "Icon": "res://resource/sprite/prop/buff/BuffProp0001.png", - "ShowInMapEditor": true - }, - { - "Id": "prop0002", - "Type": 9, - "Name": "\u5FC3\u4E4B\u5BB9\u5668", - "Intro": "\u63D0\u9AD8\u8840\u91CF\u4E0A\u9650", - "Details": "", - "Prefab": "res://prefab/prop/buff/BuffProp0002.tscn", - "Icon": "res://resource/sprite/prop/buff/BuffProp0002.png", - "ShowInMapEditor": true - }, - { - "Id": "prop0003", - "Type": 9, - "Name": "\u62A4\u76FE", - "Intro": "\u53EF\u4EE5\u62B5\u6321\u5B50\u5F39\uFF0C\u968F\u65F6\u95F4\u63A8\u79FB\u81EA\u52A8\u6062\u590D", - "Details": "", - "Prefab": "res://prefab/prop/buff/BuffProp0003.tscn", - "Icon": "res://resource/sprite/prop/buff/BuffProp0003.png", - "ShowInMapEditor": true - }, - { - "Id": "prop0004", - "Type": 9, - "Name": "\u62A4\u76FE\u8BA1\u65F6\u5668", - "Intro": "\u63D0\u9AD8\u62A4\u76FE\u6062\u590D\u901F\u5EA6", - "Details": "", - "Prefab": "res://prefab/prop/buff/BuffProp0004.tscn", - "Icon": "res://resource/sprite/prop/buff/BuffProp0004.png", - "ShowInMapEditor": true - }, - { - "Id": "prop0005", - "Type": 9, - "Name": "\u6740\u4F24\u5F39", - "Intro": "\u63D0\u9AD8\u5B50\u5F39\u4F24\u5BB3", - "Details": "", - "Prefab": "res://prefab/prop/buff/BuffProp0005.tscn", - "Icon": "res://resource/sprite/prop/buff/BuffProp0005.png", - "ShowInMapEditor": true - }, - { - "Id": "prop0006", - "Type": 9, - "Name": "\u7EA2\u5B9D\u77F3\u6212\u6307", - "Intro": "\u53D7\u4F24\u540E\u5EF6\u957F\u65E0\u654C\u65F6\u95F4", - "Details": "", - "Prefab": "res://prefab/prop/buff/BuffProp0006.tscn", - "Icon": "res://resource/sprite/prop/buff/BuffProp0006.png", - "ShowInMapEditor": true - }, - { - "Id": "prop0007", - "Type": 9, - "Name": "\u5907\u7528\u62A4\u76FE", - "Intro": "\u53D7\u4F24\u65F6\u6709\u4E00\u5B9A\u6982\u7387\u62B5\u6D88\u4F24\u5BB3", - "Details": "", - "Prefab": "res://prefab/prop/buff/BuffProp0007.tscn", - "Icon": "res://resource/sprite/prop/buff/BuffProp0007.png", - "ShowInMapEditor": true - }, - { - "Id": "prop0008", - "Type": 9, - "Name": "\u773C\u955C", - "Intro": "\u63D0\u9AD8\u6B66\u5668\u7CBE\u51C6\u5EA6", - "Details": "", - "Prefab": "res://prefab/prop/buff/BuffProp0008.tscn", - "Icon": "res://resource/sprite/prop/buff/BuffProp0008.png", - "ShowInMapEditor": true - }, - { - "Id": "prop0009", - "Type": 9, - "Name": "\u9AD8\u901F\u5B50\u5F39", - "Intro": "\u63D0\u9AD8\u5B50\u5F39\u901F\u5EA6\u548C\u5C04\u7A0B", - "Details": "", - "Prefab": "res://prefab/prop/buff/BuffProp0009.tscn", - "Icon": "res://resource/sprite/prop/buff/BuffProp0009.png", - "ShowInMapEditor": true - }, - { - "Id": "prop0010", - "Type": 9, - "Name": "\u5206\u88C2\u5B50\u5F39", - "Intro": "\u5B50\u5F39\u6570\u91CF\u7FFB\u500D, \u4F46\u662F\u7CBE\u51C6\u5EA6\u548C\u4F24\u5BB3\u964D\u4F4E", - "Details": "", - "Prefab": "res://prefab/prop/buff/BuffProp0010.tscn", - "Icon": "res://resource/sprite/prop/buff/BuffProp0010.png", - "ShowInMapEditor": true - }, - { - "Id": "prop5000", - "Type": 9, - "Name": "\u533B\u836F\u7BB1", - "Intro": "\u4F7F\u7528\u540E\u56DE\u590D\u4E00\u9897\u7EA2\u5FC3", - "Details": "", - "Prefab": "res://prefab/prop/active/ActiveProp5000.tscn", - "Icon": "res://resource/sprite/prop/active/ActiveProp5000.png", - "ShowInMapEditor": true - }, - { - "Id": "prop5001", - "Type": 9, - "Name": "\u5F39\u836F\u7BB1", - "Intro": "\u4F7F\u7528\u540E\u8865\u5145\u5F53\u524D\u6B66\u5668\u5907\u7528\u5F39\u836F", - "Details": "", - "Prefab": "res://prefab/prop/active/ActiveProp5001.tscn", - "Icon": "res://resource/sprite/prop/active/ActiveProp5001.png", - "ShowInMapEditor": true - }, - { - "Id": "other_door_e", - "Type": 99, - "Name": "", - "Intro": "\u5730\u7262\u623F\u95F4\u7684\u95E8(\u4E1C\u4FA7)", - "Details": "", - "Prefab": "res://prefab/map/RoomDoor_E.tscn", - "Icon": "", - "ShowInMapEditor": false - }, - { - "Id": "other_door_w", - "Type": 99, - "Name": "", - "Intro": "\u5730\u7262\u623F\u95F4\u7684\u95E8(\u897F\u4FA7)", - "Details": "", - "Prefab": "res://prefab/map/RoomDoor_W.tscn", - "Icon": "", - "ShowInMapEditor": false - }, - { - "Id": "other_door_s", - "Type": 99, - "Name": "", - "Intro": "\u5730\u7262\u623F\u95F4\u7684\u95E8(\u5357\u4FA7)", - "Details": "", - "Prefab": "res://prefab/map/RoomDoor_S.tscn", - "Icon": "", - "ShowInMapEditor": false - }, - { - "Id": "other_door_n", - "Type": 99, - "Name": "", - "Intro": "\u5730\u7262\u623F\u95F4\u7684\u95E8(\u5317\u4FA7)", - "Details": "", - "Prefab": "res://prefab/map/RoomDoor_N.tscn", - "Icon": "", - "ShowInMapEditor": false - } -] \ No newline at end of file diff --git a/DungeonShooting_Godot/resource/config/AmmoBase.json b/DungeonShooting_Godot/resource/config/AmmoBase.json new file mode 100644 index 0000000..0637a08 --- /dev/null +++ b/DungeonShooting_Godot/resource/config/AmmoBase.json @@ -0,0 +1 @@ +[] \ No newline at end of file diff --git a/DungeonShooting_Godot/resource/config/Weapon.json b/DungeonShooting_Godot/resource/config/Weapon.json deleted file mode 100644 index 11a4daf..0000000 --- a/DungeonShooting_Godot/resource/config/Weapon.json +++ /dev/null @@ -1,1272 +0,0 @@ -[ - { - "Id": "0001", - "WeaponId": "weapon0001", - "Remark": "\u6B65\u67AA", - "Weight": 40, - "WeightType": 2, - "ContinuousShoot": true, - "AmmoCapacity": 30, - "MaxAmmoCapacity": 420, - "StandbyAmmoCapacity": 390, - "ReloadTime": 2.2, - "AloneReload": false, - "AloneReloadCount": 1, - "AloneReloadBeginIntervalTime": 0, - "AloneReloadFinishIntervalTime": 0, - "AloneReloadCanShoot": false, - "LooseShoot": false, - "MinChargeTime": 0, - "ManualBeLoaded": false, - "AutoManualBeLoaded": false, - "BeLoadedTime": 0, - "ContinuousCountRange": [ - 1 - ], - "TriggerInterval": 0, - "StartFiringSpeed": 480, - "FinalFiringSpeed": 480, - "FiringSpeedAddSpeed": 0, - "FiringSpeedBackSpeed": 0, - "FireBulletCountRange": [ - 1 - ], - "DelayedTime": 0, - "StartScatteringRange": 5, - "FinalScatteringRange": 45, - "ScatteringRangeAddValue": 3, - "ScatteringRangeBackSpeed": 40, - "ScatteringRangeBackDelayTime": 0.5, - "CameraShake": 2, - "BacklashRange": [ - 2, - 4 - ], - "BacklashRegressionSpeed": 35, - "UpliftAngle": 10, - "DefaultAngle": 0, - "UpliftAngleRestore": 1, - "BulletId": "bullet0001", - "HarmRange": [ - 4 - ], - "RepelRnage": [ - 20 - ], - "BulletDeviationAngleRange": [ - 0 - ], - "BulletSpeedRange": [ - 320, - 350 - ], - "BulletDistanceRange": [ - 300, - 400 - ], - "ShellId": "shell0001", - "ThrowShellDelayTime": 0, - "ThrowCollisionSize": { - "X": 20, - "Y": 15 - }, - "CanMeleeAttack": true, - "MeleeAttackHarmRange": [ - 10 - ], - "MeleeAttackRepelRnage": [ - 100 - ], - "__ShootSound": "shooting0005", - "__BeginReloadSound": "reloadBegin0004", - "BeginReloadSoundDelayTime": 0.2, - "__ReloadSound": "", - "ReloadSoundDelayTime": 0, - "__ReloadFinishSound": "beLoaded0011", - "ReloadFinishSoundAdvanceTime": 0.4, - "__BeLoadedSound": "", - "BeLoadedSoundDelayTime": 0, - "__OtherSoundMap": null, - "__AiUseAttribute": "0002", - "__AiAttackAttr": "" - }, - { - "Id": "0002", - "WeaponId": "", - "Remark": "\u6B65\u67AA", - "Weight": 40, - "WeightType": 2, - "ContinuousShoot": false, - "AmmoCapacity": 30, - "MaxAmmoCapacity": 420, - "StandbyAmmoCapacity": 390, - "ReloadTime": 2.2, - "AloneReload": false, - "AloneReloadCount": 1, - "AloneReloadBeginIntervalTime": 0, - "AloneReloadFinishIntervalTime": 0, - "AloneReloadCanShoot": false, - "LooseShoot": false, - "MinChargeTime": 0, - "ManualBeLoaded": false, - "AutoManualBeLoaded": false, - "BeLoadedTime": 0, - "ContinuousCountRange": [ - 3 - ], - "TriggerInterval": 3, - "StartFiringSpeed": 480, - "FinalFiringSpeed": 480, - "FiringSpeedAddSpeed": 0, - "FiringSpeedBackSpeed": 0, - "FireBulletCountRange": [ - 1 - ], - "DelayedTime": 0, - "StartScatteringRange": 5, - "FinalScatteringRange": 45, - "ScatteringRangeAddValue": 3, - "ScatteringRangeBackSpeed": 40, - "ScatteringRangeBackDelayTime": 0.5, - "CameraShake": 2, - "BacklashRange": [ - 2, - 4 - ], - "BacklashRegressionSpeed": 35, - "UpliftAngle": 10, - "DefaultAngle": 0, - "UpliftAngleRestore": 1, - "BulletId": "bullet0001", - "HarmRange": [ - 4 - ], - "RepelRnage": [ - 20 - ], - "BulletDeviationAngleRange": [ - 0 - ], - "BulletSpeedRange": [ - 320, - 350 - ], - "BulletDistanceRange": [ - 300, - 400 - ], - "ShellId": "shell0001", - "ThrowShellDelayTime": 0, - "ThrowCollisionSize": { - "X": 20, - "Y": 15 - }, - "CanMeleeAttack": true, - "MeleeAttackHarmRange": [ - 10 - ], - "MeleeAttackRepelRnage": [ - 100 - ], - "__ShootSound": "shooting0005", - "__BeginReloadSound": "reloadBegin0004", - "BeginReloadSoundDelayTime": 0.2, - "__ReloadSound": "", - "ReloadSoundDelayTime": 0, - "__ReloadFinishSound": "beLoaded0011", - "ReloadFinishSoundAdvanceTime": 0.4, - "__BeLoadedSound": "", - "BeLoadedSoundDelayTime": 0, - "__OtherSoundMap": null, - "__AiUseAttribute": "", - "__AiAttackAttr": "0001" - }, - { - "Id": "0003", - "WeaponId": "weapon0002", - "Remark": "\u9730\u5F39\u67AA", - "Weight": 40, - "WeightType": 2, - "ContinuousShoot": false, - "AmmoCapacity": 7, - "MaxAmmoCapacity": 140, - "StandbyAmmoCapacity": 133, - "ReloadTime": 0.4, - "AloneReload": true, - "AloneReloadCount": 1, - "AloneReloadBeginIntervalTime": 0.6, - "AloneReloadFinishIntervalTime": 0.6, - "AloneReloadCanShoot": true, - "LooseShoot": false, - "MinChargeTime": 0, - "ManualBeLoaded": true, - "AutoManualBeLoaded": true, - "BeLoadedTime": 0.6, - "ContinuousCountRange": [ - 1 - ], - "TriggerInterval": 0, - "StartFiringSpeed": 120, - "FinalFiringSpeed": 120, - "FiringSpeedAddSpeed": 0, - "FiringSpeedBackSpeed": 0, - "FireBulletCountRange": [ - 5 - ], - "DelayedTime": 0, - "StartScatteringRange": 12, - "FinalScatteringRange": 30, - "ScatteringRangeAddValue": 20, - "ScatteringRangeBackSpeed": 40, - "ScatteringRangeBackDelayTime": 0.5, - "CameraShake": 4, - "BacklashRange": [ - 5, - 6 - ], - "BacklashRegressionSpeed": 35, - "UpliftAngle": 15, - "DefaultAngle": 0, - "UpliftAngleRestore": 1, - "BulletId": "bullet0002", - "HarmRange": [ - 4 - ], - "RepelRnage": [ - 30 - ], - "BulletDeviationAngleRange": [ - -10, - 10 - ], - "BulletSpeedRange": [ - 280, - 380 - ], - "BulletDistanceRange": [ - 200, - 250 - ], - "ShellId": "shell0002", - "ThrowShellDelayTime": 0.2, - "ThrowCollisionSize": { - "X": 20, - "Y": 15 - }, - "CanMeleeAttack": true, - "MeleeAttackHarmRange": [ - 10 - ], - "MeleeAttackRepelRnage": [ - 100 - ], - "__ShootSound": "shooting0003", - "__BeginReloadSound": "reloadBegin0002", - "BeginReloadSoundDelayTime": 0, - "__ReloadSound": "reloading0002", - "ReloadSoundDelayTime": 0, - "__ReloadFinishSound": "reloadFinish0002", - "ReloadFinishSoundAdvanceTime": 0.3, - "__BeLoadedSound": "beLoaded0005", - "BeLoadedSoundDelayTime": 0, - "__OtherSoundMap": null, - "__AiUseAttribute": "0004", - "__AiAttackAttr": "" - }, - { - "Id": "0004", - "WeaponId": "", - "Remark": "\u9730\u5F39\u67AA", - "Weight": 40, - "WeightType": 2, - "ContinuousShoot": false, - "AmmoCapacity": 7, - "MaxAmmoCapacity": 140, - "StandbyAmmoCapacity": 133, - "ReloadTime": 0.4, - "AloneReload": true, - "AloneReloadCount": 1, - "AloneReloadBeginIntervalTime": 0.6, - "AloneReloadFinishIntervalTime": 0.6, - "AloneReloadCanShoot": true, - "LooseShoot": false, - "MinChargeTime": 0, - "ManualBeLoaded": true, - "AutoManualBeLoaded": true, - "BeLoadedTime": 0.6, - "ContinuousCountRange": [ - 1 - ], - "TriggerInterval": 3.5, - "StartFiringSpeed": 120, - "FinalFiringSpeed": 120, - "FiringSpeedAddSpeed": 0, - "FiringSpeedBackSpeed": 0, - "FireBulletCountRange": [ - 5 - ], - "DelayedTime": 0, - "StartScatteringRange": 12, - "FinalScatteringRange": 30, - "ScatteringRangeAddValue": 20, - "ScatteringRangeBackSpeed": 40, - "ScatteringRangeBackDelayTime": 0.5, - "CameraShake": 4, - "BacklashRange": [ - 5, - 6 - ], - "BacklashRegressionSpeed": 35, - "UpliftAngle": 15, - "DefaultAngle": 0, - "UpliftAngleRestore": 1, - "BulletId": "bullet0002", - "HarmRange": [ - 4 - ], - "RepelRnage": [ - 30 - ], - "BulletDeviationAngleRange": [ - -10, - 10 - ], - "BulletSpeedRange": [ - 280, - 380 - ], - "BulletDistanceRange": [ - 200, - 250 - ], - "ShellId": "shell0002", - "ThrowShellDelayTime": 0.2, - "ThrowCollisionSize": { - "X": 20, - "Y": 15 - }, - "CanMeleeAttack": true, - "MeleeAttackHarmRange": [ - 10 - ], - "MeleeAttackRepelRnage": [ - 100 - ], - "__ShootSound": "shooting0003", - "__BeginReloadSound": "reloadBegin0002", - "BeginReloadSoundDelayTime": 0, - "__ReloadSound": "reloading0002", - "ReloadSoundDelayTime": 0, - "__ReloadFinishSound": "reloadFinish0002", - "ReloadFinishSoundAdvanceTime": 0.3, - "__BeLoadedSound": "beLoaded0005", - "BeLoadedSoundDelayTime": 0, - "__OtherSoundMap": null, - "__AiUseAttribute": "", - "__AiAttackAttr": "0002" - }, - { - "Id": "0005", - "WeaponId": "weapon0003", - "Remark": "\u624B\u67AA", - "Weight": 20, - "WeightType": 1, - "ContinuousShoot": false, - "AmmoCapacity": 12, - "MaxAmmoCapacity": 180, - "StandbyAmmoCapacity": 168, - "ReloadTime": 1.5, - "AloneReload": false, - "AloneReloadCount": 1, - "AloneReloadBeginIntervalTime": 0, - "AloneReloadFinishIntervalTime": 0, - "AloneReloadCanShoot": false, - "LooseShoot": false, - "MinChargeTime": 0, - "ManualBeLoaded": false, - "AutoManualBeLoaded": false, - "BeLoadedTime": 0.05, - "ContinuousCountRange": [ - 1 - ], - "TriggerInterval": 0, - "StartFiringSpeed": 460, - "FinalFiringSpeed": 460, - "FiringSpeedAddSpeed": 0, - "FiringSpeedBackSpeed": 0, - "FireBulletCountRange": [ - 1 - ], - "DelayedTime": 0, - "StartScatteringRange": 5, - "FinalScatteringRange": 25, - "ScatteringRangeAddValue": 4, - "ScatteringRangeBackSpeed": 40, - "ScatteringRangeBackDelayTime": 0.5, - "CameraShake": 4, - "BacklashRange": [ - 3, - 5 - ], - "BacklashRegressionSpeed": 35, - "UpliftAngle": 20, - "DefaultAngle": 0, - "UpliftAngleRestore": 1, - "BulletId": "bullet0001", - "HarmRange": [ - 4 - ], - "RepelRnage": [ - 20 - ], - "BulletDeviationAngleRange": [ - 0 - ], - "BulletSpeedRange": [ - 320, - 350 - ], - "BulletDistanceRange": [ - 250, - 300 - ], - "ShellId": "shell0001", - "ThrowShellDelayTime": 0, - "ThrowCollisionSize": { - "X": 20, - "Y": 15 - }, - "CanMeleeAttack": true, - "MeleeAttackHarmRange": [ - 10 - ], - "MeleeAttackRepelRnage": [ - 100 - ], - "__ShootSound": "shooting0004", - "__BeginReloadSound": "reloading0001", - "BeginReloadSoundDelayTime": 0, - "__ReloadSound": "", - "ReloadSoundDelayTime": 0, - "__ReloadFinishSound": "beLoaded0015", - "ReloadFinishSoundAdvanceTime": 0.43, - "__BeLoadedSound": "", - "BeLoadedSoundDelayTime": 0, - "__OtherSoundMap": null, - "__AiUseAttribute": "0006", - "__AiAttackAttr": "" - }, - { - "Id": "0006", - "WeaponId": "", - "Remark": "\u624B\u67AA", - "Weight": 20, - "WeightType": 1, - "ContinuousShoot": false, - "AmmoCapacity": 12, - "MaxAmmoCapacity": 180, - "StandbyAmmoCapacity": 168, - "ReloadTime": 1.5, - "AloneReload": false, - "AloneReloadCount": 1, - "AloneReloadBeginIntervalTime": 0, - "AloneReloadFinishIntervalTime": 0, - "AloneReloadCanShoot": false, - "LooseShoot": false, - "MinChargeTime": 0, - "ManualBeLoaded": false, - "AutoManualBeLoaded": false, - "BeLoadedTime": 0.05, - "ContinuousCountRange": [ - 1 - ], - "TriggerInterval": 2, - "StartFiringSpeed": 300, - "FinalFiringSpeed": 300, - "FiringSpeedAddSpeed": 0, - "FiringSpeedBackSpeed": 0, - "FireBulletCountRange": [ - 1 - ], - "DelayedTime": 0, - "StartScatteringRange": 5, - "FinalScatteringRange": 25, - "ScatteringRangeAddValue": 4, - "ScatteringRangeBackSpeed": 40, - "ScatteringRangeBackDelayTime": 0.5, - "CameraShake": 4, - "BacklashRange": [ - 3, - 5 - ], - "BacklashRegressionSpeed": 35, - "UpliftAngle": 20, - "DefaultAngle": 0, - "UpliftAngleRestore": 1, - "BulletId": "bullet0001", - "HarmRange": [ - 4 - ], - "RepelRnage": [ - 20 - ], - "BulletDeviationAngleRange": [ - 0 - ], - "BulletSpeedRange": [ - 320, - 350 - ], - "BulletDistanceRange": [ - 250, - 300 - ], - "ShellId": "shell0001", - "ThrowShellDelayTime": 0, - "ThrowCollisionSize": { - "X": 20, - "Y": 15 - }, - "CanMeleeAttack": true, - "MeleeAttackHarmRange": [ - 10 - ], - "MeleeAttackRepelRnage": [ - 100 - ], - "__ShootSound": "shooting0004", - "__BeginReloadSound": "reloading0001", - "BeginReloadSoundDelayTime": 0, - "__ReloadSound": "", - "ReloadSoundDelayTime": 0, - "__ReloadFinishSound": "beLoaded0015", - "ReloadFinishSoundAdvanceTime": 0.43, - "__BeLoadedSound": "", - "BeLoadedSoundDelayTime": 0, - "__OtherSoundMap": null, - "__AiUseAttribute": "", - "__AiAttackAttr": "0003" - }, - { - "Id": "0007", - "WeaponId": "weapon0004", - "Remark": "\u5200", - "Weight": 40, - "WeightType": 2, - "ContinuousShoot": false, - "AmmoCapacity": 180, - "MaxAmmoCapacity": 180, - "StandbyAmmoCapacity": 180, - "ReloadTime": 2, - "AloneReload": false, - "AloneReloadCount": 1, - "AloneReloadBeginIntervalTime": 0, - "AloneReloadFinishIntervalTime": 0, - "AloneReloadCanShoot": false, - "LooseShoot": true, - "MinChargeTime": 0, - "ManualBeLoaded": false, - "AutoManualBeLoaded": false, - "BeLoadedTime": 0, - "ContinuousCountRange": [ - 1 - ], - "TriggerInterval": 0, - "StartFiringSpeed": 180, - "FinalFiringSpeed": 180, - "FiringSpeedAddSpeed": 0, - "FiringSpeedBackSpeed": 0, - "FireBulletCountRange": [ - 1 - ], - "DelayedTime": 0, - "StartScatteringRange": 0, - "FinalScatteringRange": 0, - "ScatteringRangeAddValue": 0, - "ScatteringRangeBackSpeed": 0, - "ScatteringRangeBackDelayTime": 0, - "CameraShake": 7, - "BacklashRange": [ - -8 - ], - "BacklashRegressionSpeed": 24, - "UpliftAngle": -95, - "DefaultAngle": 0, - "UpliftAngleRestore": 1, - "BulletId": "bullet0001", - "HarmRange": [ - 25 - ], - "RepelRnage": [ - 150 - ], - "BulletDeviationAngleRange": [ - 0 - ], - "BulletSpeedRange": [ - 350 - ], - "BulletDistanceRange": [ - 35 - ], - "ShellId": "", - "ThrowShellDelayTime": 0, - "ThrowCollisionSize": { - "X": 20, - "Y": 15 - }, - "CanMeleeAttack": true, - "MeleeAttackHarmRange": [ - 10 - ], - "MeleeAttackRepelRnage": [ - 100 - ], - "__ShootSound": "", - "__BeginReloadSound": "", - "BeginReloadSoundDelayTime": 0, - "__ReloadSound": "", - "ReloadSoundDelayTime": 0, - "__ReloadFinishSound": "", - "ReloadFinishSoundAdvanceTime": 0, - "__BeLoadedSound": "", - "BeLoadedSoundDelayTime": 0, - "__OtherSoundMap": null, - "__AiUseAttribute": "0008", - "__AiAttackAttr": "" - }, - { - "Id": "0008", - "WeaponId": "", - "Remark": "\u5200", - "Weight": 40, - "WeightType": 2, - "ContinuousShoot": false, - "AmmoCapacity": 180, - "MaxAmmoCapacity": 180, - "StandbyAmmoCapacity": 180, - "ReloadTime": 2, - "AloneReload": false, - "AloneReloadCount": 1, - "AloneReloadBeginIntervalTime": 0, - "AloneReloadFinishIntervalTime": 0, - "AloneReloadCanShoot": false, - "LooseShoot": true, - "MinChargeTime": 0, - "ManualBeLoaded": false, - "AutoManualBeLoaded": false, - "BeLoadedTime": 0, - "ContinuousCountRange": [ - 1 - ], - "TriggerInterval": 3, - "StartFiringSpeed": 180, - "FinalFiringSpeed": 180, - "FiringSpeedAddSpeed": 0, - "FiringSpeedBackSpeed": 0, - "FireBulletCountRange": [ - 1 - ], - "DelayedTime": 0, - "StartScatteringRange": 0, - "FinalScatteringRange": 0, - "ScatteringRangeAddValue": 0, - "ScatteringRangeBackSpeed": 0, - "ScatteringRangeBackDelayTime": 0, - "CameraShake": 7, - "BacklashRange": [ - -8 - ], - "BacklashRegressionSpeed": 24, - "UpliftAngle": -95, - "DefaultAngle": 0, - "UpliftAngleRestore": 1, - "BulletId": "bullet0001", - "HarmRange": [ - 25 - ], - "RepelRnage": [ - 150 - ], - "BulletDeviationAngleRange": [ - 0 - ], - "BulletSpeedRange": [ - 350 - ], - "BulletDistanceRange": [ - 35 - ], - "ShellId": "", - "ThrowShellDelayTime": 0, - "ThrowCollisionSize": { - "X": 20, - "Y": 15 - }, - "CanMeleeAttack": true, - "MeleeAttackHarmRange": [ - 10 - ], - "MeleeAttackRepelRnage": [ - 100 - ], - "__ShootSound": "", - "__BeginReloadSound": "", - "BeginReloadSoundDelayTime": 0, - "__ReloadSound": "", - "ReloadSoundDelayTime": 0, - "__ReloadFinishSound": "", - "ReloadFinishSoundAdvanceTime": 0, - "__BeLoadedSound": "", - "BeLoadedSoundDelayTime": 0, - "__OtherSoundMap": null, - "__AiUseAttribute": "", - "__AiAttackAttr": "0004" - }, - { - "Id": "0009", - "WeaponId": "weapon0005", - "Remark": "\u72D9\u51FB\u67AA", - "Weight": 50, - "WeightType": 2, - "ContinuousShoot": false, - "AmmoCapacity": 10, - "MaxAmmoCapacity": 80, - "StandbyAmmoCapacity": 70, - "ReloadTime": 3, - "AloneReload": false, - "AloneReloadCount": 1, - "AloneReloadBeginIntervalTime": 0, - "AloneReloadFinishIntervalTime": 0, - "AloneReloadCanShoot": false, - "LooseShoot": false, - "MinChargeTime": 0, - "ManualBeLoaded": true, - "AutoManualBeLoaded": false, - "BeLoadedTime": 0.9, - "ContinuousCountRange": [ - 1 - ], - "TriggerInterval": 0, - "StartFiringSpeed": 150, - "FinalFiringSpeed": 150, - "FiringSpeedAddSpeed": 0, - "FiringSpeedBackSpeed": 0, - "FireBulletCountRange": [ - 1 - ], - "DelayedTime": 0, - "StartScatteringRange": 3, - "FinalScatteringRange": 60, - "ScatteringRangeAddValue": 40, - "ScatteringRangeBackSpeed": 40, - "ScatteringRangeBackDelayTime": 0.8, - "CameraShake": 5, - "BacklashRange": [ - 5, - 7 - ], - "BacklashRegressionSpeed": 20, - "UpliftAngle": 15, - "DefaultAngle": 0, - "UpliftAngleRestore": 1, - "BulletId": "bullet0001", - "HarmRange": [ - 30 - ], - "RepelRnage": [ - 250 - ], - "BulletDeviationAngleRange": [ - 0 - ], - "BulletSpeedRange": [ - 600, - 620 - ], - "BulletDistanceRange": [ - 700, - 900 - ], - "ShellId": "shell0003", - "ThrowShellDelayTime": 0.2, - "ThrowCollisionSize": { - "X": 20, - "Y": 15 - }, - "CanMeleeAttack": true, - "MeleeAttackHarmRange": [ - 10 - ], - "MeleeAttackRepelRnage": [ - 100 - ], - "__ShootSound": "shooting0008", - "__BeginReloadSound": "reloadBegin0009", - "BeginReloadSoundDelayTime": 0, - "__ReloadSound": "", - "ReloadSoundDelayTime": 0, - "__ReloadFinishSound": "beLoaded0007", - "ReloadFinishSoundAdvanceTime": 1, - "__BeLoadedSound": "beLoaded0007", - "BeLoadedSoundDelayTime": 0, - "__OtherSoundMap": null, - "__AiUseAttribute": "0010", - "__AiAttackAttr": "" - }, - { - "Id": "0010", - "WeaponId": "", - "Remark": "\u72D9\u51FB\u67AA", - "Weight": 50, - "WeightType": 2, - "ContinuousShoot": false, - "AmmoCapacity": 10, - "MaxAmmoCapacity": 80, - "StandbyAmmoCapacity": 70, - "ReloadTime": 3, - "AloneReload": false, - "AloneReloadCount": 1, - "AloneReloadBeginIntervalTime": 0, - "AloneReloadFinishIntervalTime": 0, - "AloneReloadCanShoot": false, - "LooseShoot": false, - "MinChargeTime": 0, - "ManualBeLoaded": true, - "AutoManualBeLoaded": false, - "BeLoadedTime": 0.9, - "ContinuousCountRange": [ - 1 - ], - "TriggerInterval": 5, - "StartFiringSpeed": 150, - "FinalFiringSpeed": 150, - "FiringSpeedAddSpeed": 0, - "FiringSpeedBackSpeed": 0, - "FireBulletCountRange": [ - 1 - ], - "DelayedTime": 0, - "StartScatteringRange": 3, - "FinalScatteringRange": 60, - "ScatteringRangeAddValue": 40, - "ScatteringRangeBackSpeed": 40, - "ScatteringRangeBackDelayTime": 0.8, - "CameraShake": 5, - "BacklashRange": [ - 5, - 7 - ], - "BacklashRegressionSpeed": 20, - "UpliftAngle": 15, - "DefaultAngle": 0, - "UpliftAngleRestore": 1, - "BulletId": "bullet0001", - "HarmRange": [ - 30 - ], - "RepelRnage": [ - 250 - ], - "BulletDeviationAngleRange": [ - 0 - ], - "BulletSpeedRange": [ - 600, - 620 - ], - "BulletDistanceRange": [ - 700, - 900 - ], - "ShellId": "shell0003", - "ThrowShellDelayTime": 0.2, - "ThrowCollisionSize": { - "X": 20, - "Y": 15 - }, - "CanMeleeAttack": true, - "MeleeAttackHarmRange": [ - 10 - ], - "MeleeAttackRepelRnage": [ - 100 - ], - "__ShootSound": "shooting0008", - "__BeginReloadSound": "reloadBegin0009", - "BeginReloadSoundDelayTime": 0, - "__ReloadSound": "", - "ReloadSoundDelayTime": 0, - "__ReloadFinishSound": "beLoaded0007", - "ReloadFinishSoundAdvanceTime": 1, - "__BeLoadedSound": "beLoaded0007", - "BeLoadedSoundDelayTime": 0, - "__OtherSoundMap": null, - "__AiUseAttribute": "", - "__AiAttackAttr": "0005" - }, - { - "Id": "0011", - "WeaponId": "weapon0006", - "Remark": "\u51B2\u950B\u67AA", - "Weight": 30, - "WeightType": 2, - "ContinuousShoot": true, - "AmmoCapacity": 20, - "MaxAmmoCapacity": 600, - "StandbyAmmoCapacity": 580, - "ReloadTime": 2.2, - "AloneReload": false, - "AloneReloadCount": 1, - "AloneReloadBeginIntervalTime": 0, - "AloneReloadFinishIntervalTime": 0, - "AloneReloadCanShoot": false, - "LooseShoot": false, - "MinChargeTime": 0, - "ManualBeLoaded": false, - "AutoManualBeLoaded": false, - "BeLoadedTime": 0, - "ContinuousCountRange": [ - 1 - ], - "TriggerInterval": 0, - "StartFiringSpeed": 700, - "FinalFiringSpeed": 700, - "FiringSpeedAddSpeed": 0, - "FiringSpeedBackSpeed": 0, - "FireBulletCountRange": [ - 1 - ], - "DelayedTime": 0, - "StartScatteringRange": 3, - "FinalScatteringRange": 30, - "ScatteringRangeAddValue": 2, - "ScatteringRangeBackSpeed": 40, - "ScatteringRangeBackDelayTime": 0.3, - "CameraShake": 2, - "BacklashRange": [ - 1, - 2 - ], - "BacklashRegressionSpeed": 35, - "UpliftAngle": 5, - "DefaultAngle": 0, - "UpliftAngleRestore": 1, - "BulletId": "bullet0002", - "HarmRange": [ - 3 - ], - "RepelRnage": [ - 10 - ], - "BulletDeviationAngleRange": [ - 0 - ], - "BulletSpeedRange": [ - 320, - 340 - ], - "BulletDistanceRange": [ - 300, - 400 - ], - "ShellId": "shell0001", - "ThrowShellDelayTime": 0, - "ThrowCollisionSize": { - "X": 20, - "Y": 15 - }, - "CanMeleeAttack": true, - "MeleeAttackHarmRange": [ - 10 - ], - "MeleeAttackRepelRnage": [ - 100 - ], - "__ShootSound": "shooting0002", - "__BeginReloadSound": "reloadBegin0005", - "BeginReloadSoundDelayTime": 0.2, - "__ReloadSound": "", - "ReloadSoundDelayTime": 0, - "__ReloadFinishSound": "beLoaded0016", - "ReloadFinishSoundAdvanceTime": 0.5, - "__BeLoadedSound": "", - "BeLoadedSoundDelayTime": 0, - "__OtherSoundMap": null, - "__AiUseAttribute": "0012", - "__AiAttackAttr": "" - }, - { - "Id": "0012", - "WeaponId": "", - "Remark": "\u51B2\u950B\u67AA", - "Weight": 30, - "WeightType": 2, - "ContinuousShoot": false, - "AmmoCapacity": 20, - "MaxAmmoCapacity": 600, - "StandbyAmmoCapacity": 580, - "ReloadTime": 2.2, - "AloneReload": false, - "AloneReloadCount": 1, - "AloneReloadBeginIntervalTime": 0, - "AloneReloadFinishIntervalTime": 0, - "AloneReloadCanShoot": false, - "LooseShoot": false, - "MinChargeTime": 0, - "ManualBeLoaded": false, - "AutoManualBeLoaded": false, - "BeLoadedTime": 0, - "ContinuousCountRange": [ - 5 - ], - "TriggerInterval": 3.5, - "StartFiringSpeed": 700, - "FinalFiringSpeed": 700, - "FiringSpeedAddSpeed": 0, - "FiringSpeedBackSpeed": 0, - "FireBulletCountRange": [ - 1 - ], - "DelayedTime": 0, - "StartScatteringRange": 3, - "FinalScatteringRange": 30, - "ScatteringRangeAddValue": 2, - "ScatteringRangeBackSpeed": 30, - "ScatteringRangeBackDelayTime": 0.3, - "CameraShake": 2, - "BacklashRange": [ - 1, - 2 - ], - "BacklashRegressionSpeed": 35, - "UpliftAngle": 5, - "DefaultAngle": 0, - "UpliftAngleRestore": 1, - "BulletId": "bullet0002", - "HarmRange": [ - 3 - ], - "RepelRnage": [ - 10 - ], - "BulletDeviationAngleRange": [ - 0 - ], - "BulletSpeedRange": [ - 320, - 340 - ], - "BulletDistanceRange": [ - 300, - 400 - ], - "ShellId": "shell0001", - "ThrowShellDelayTime": 0, - "ThrowCollisionSize": { - "X": 20, - "Y": 15 - }, - "CanMeleeAttack": true, - "MeleeAttackHarmRange": [ - 10 - ], - "MeleeAttackRepelRnage": [ - 100 - ], - "__ShootSound": "shooting0002", - "__BeginReloadSound": "reloadBegin0005", - "BeginReloadSoundDelayTime": 0.2, - "__ReloadSound": "", - "ReloadSoundDelayTime": 0, - "__ReloadFinishSound": "beLoaded0016", - "ReloadFinishSoundAdvanceTime": 0.5, - "__BeLoadedSound": "", - "BeLoadedSoundDelayTime": 0, - "__OtherSoundMap": null, - "__AiUseAttribute": "", - "__AiAttackAttr": "0004" - }, - { - "Id": "0013", - "WeaponId": "weapon0007", - "Remark": "\u6C64\u59C6\u900A\u51B2\u950B\u67AA", - "Weight": 40, - "WeightType": 2, - "ContinuousShoot": true, - "AmmoCapacity": 60, - "MaxAmmoCapacity": 600, - "StandbyAmmoCapacity": 540, - "ReloadTime": 2.2, - "AloneReload": false, - "AloneReloadCount": 1, - "AloneReloadBeginIntervalTime": 0, - "AloneReloadFinishIntervalTime": 0, - "AloneReloadCanShoot": false, - "LooseShoot": false, - "MinChargeTime": 0, - "ManualBeLoaded": false, - "AutoManualBeLoaded": false, - "BeLoadedTime": 0, - "ContinuousCountRange": [ - 1 - ], - "TriggerInterval": 0, - "StartFiringSpeed": 700, - "FinalFiringSpeed": 700, - "FiringSpeedAddSpeed": 0, - "FiringSpeedBackSpeed": 0, - "FireBulletCountRange": [ - 1 - ], - "DelayedTime": 0, - "StartScatteringRange": 6, - "FinalScatteringRange": 60, - "ScatteringRangeAddValue": 3, - "ScatteringRangeBackSpeed": 50, - "ScatteringRangeBackDelayTime": 0.3, - "CameraShake": 2, - "BacklashRange": [ - 1, - 2 - ], - "BacklashRegressionSpeed": 35, - "UpliftAngle": 5, - "DefaultAngle": 0, - "UpliftAngleRestore": 1, - "BulletId": "bullet0003", - "HarmRange": [ - 3 - ], - "RepelRnage": [ - 15 - ], - "BulletDeviationAngleRange": [ - 0 - ], - "BulletSpeedRange": [ - 300, - 330 - ], - "BulletDistanceRange": [ - 270, - 360 - ], - "ShellId": "shell0001", - "ThrowShellDelayTime": 0, - "ThrowCollisionSize": { - "X": 20, - "Y": 15 - }, - "CanMeleeAttack": true, - "MeleeAttackHarmRange": [ - 10 - ], - "MeleeAttackRepelRnage": [ - 100 - ], - "__ShootSound": "shooting0007", - "__BeginReloadSound": "reloadBegin0006", - "BeginReloadSoundDelayTime": 0.2, - "__ReloadSound": "", - "ReloadSoundDelayTime": 0, - "__ReloadFinishSound": "beLoaded0017", - "ReloadFinishSoundAdvanceTime": 0.65, - "__BeLoadedSound": "", - "BeLoadedSoundDelayTime": 0, - "__OtherSoundMap": null, - "__AiUseAttribute": "0014", - "__AiAttackAttr": "" - }, - { - "Id": "0014", - "WeaponId": "", - "Remark": "\u6C64\u59C6\u900A\u51B2\u950B\u67AA", - "Weight": 40, - "WeightType": 2, - "ContinuousShoot": false, - "AmmoCapacity": 60, - "MaxAmmoCapacity": 600, - "StandbyAmmoCapacity": 540, - "ReloadTime": 2.2, - "AloneReload": false, - "AloneReloadCount": 1, - "AloneReloadBeginIntervalTime": 0, - "AloneReloadFinishIntervalTime": 0, - "AloneReloadCanShoot": false, - "LooseShoot": false, - "MinChargeTime": 0, - "ManualBeLoaded": false, - "AutoManualBeLoaded": false, - "BeLoadedTime": 0, - "ContinuousCountRange": [ - 10 - ], - "TriggerInterval": 5, - "StartFiringSpeed": 200, - "FinalFiringSpeed": 200, - "FiringSpeedAddSpeed": 0, - "FiringSpeedBackSpeed": 0, - "FireBulletCountRange": [ - 1 - ], - "DelayedTime": 0, - "StartScatteringRange": 10, - "FinalScatteringRange": 30, - "ScatteringRangeAddValue": 3, - "ScatteringRangeBackSpeed": 50, - "ScatteringRangeBackDelayTime": 0.3, - "CameraShake": 2, - "BacklashRange": [ - 1, - 2 - ], - "BacklashRegressionSpeed": 35, - "UpliftAngle": 5, - "DefaultAngle": 0, - "UpliftAngleRestore": 1, - "BulletId": "bullet0003", - "HarmRange": [ - 3 - ], - "RepelRnage": [ - 15 - ], - "BulletDeviationAngleRange": [ - 0 - ], - "BulletSpeedRange": [ - 300, - 330 - ], - "BulletDistanceRange": [ - 270, - 360 - ], - "ShellId": "shell0001", - "ThrowShellDelayTime": 0, - "ThrowCollisionSize": { - "X": 20, - "Y": 15 - }, - "CanMeleeAttack": true, - "MeleeAttackHarmRange": [ - 10 - ], - "MeleeAttackRepelRnage": [ - 100 - ], - "__ShootSound": "shooting0007", - "__BeginReloadSound": "reloadBegin0006", - "BeginReloadSoundDelayTime": 0.2, - "__ReloadSound": "", - "ReloadSoundDelayTime": 0, - "__ReloadFinishSound": "beLoaded0017", - "ReloadFinishSoundAdvanceTime": 0.65, - "__BeLoadedSound": "", - "BeLoadedSoundDelayTime": 0, - "__OtherSoundMap": null, - "__AiUseAttribute": "", - "__AiAttackAttr": "0006" - } -] \ No newline at end of file diff --git a/DungeonShooting_Godot/resource/config/WeaponBase.json b/DungeonShooting_Godot/resource/config/WeaponBase.json new file mode 100644 index 0000000..11a4daf --- /dev/null +++ b/DungeonShooting_Godot/resource/config/WeaponBase.json @@ -0,0 +1,1272 @@ +[ + { + "Id": "0001", + "WeaponId": "weapon0001", + "Remark": "\u6B65\u67AA", + "Weight": 40, + "WeightType": 2, + "ContinuousShoot": true, + "AmmoCapacity": 30, + "MaxAmmoCapacity": 420, + "StandbyAmmoCapacity": 390, + "ReloadTime": 2.2, + "AloneReload": false, + "AloneReloadCount": 1, + "AloneReloadBeginIntervalTime": 0, + "AloneReloadFinishIntervalTime": 0, + "AloneReloadCanShoot": false, + "LooseShoot": false, + "MinChargeTime": 0, + "ManualBeLoaded": false, + "AutoManualBeLoaded": false, + "BeLoadedTime": 0, + "ContinuousCountRange": [ + 1 + ], + "TriggerInterval": 0, + "StartFiringSpeed": 480, + "FinalFiringSpeed": 480, + "FiringSpeedAddSpeed": 0, + "FiringSpeedBackSpeed": 0, + "FireBulletCountRange": [ + 1 + ], + "DelayedTime": 0, + "StartScatteringRange": 5, + "FinalScatteringRange": 45, + "ScatteringRangeAddValue": 3, + "ScatteringRangeBackSpeed": 40, + "ScatteringRangeBackDelayTime": 0.5, + "CameraShake": 2, + "BacklashRange": [ + 2, + 4 + ], + "BacklashRegressionSpeed": 35, + "UpliftAngle": 10, + "DefaultAngle": 0, + "UpliftAngleRestore": 1, + "BulletId": "bullet0001", + "HarmRange": [ + 4 + ], + "RepelRnage": [ + 20 + ], + "BulletDeviationAngleRange": [ + 0 + ], + "BulletSpeedRange": [ + 320, + 350 + ], + "BulletDistanceRange": [ + 300, + 400 + ], + "ShellId": "shell0001", + "ThrowShellDelayTime": 0, + "ThrowCollisionSize": { + "X": 20, + "Y": 15 + }, + "CanMeleeAttack": true, + "MeleeAttackHarmRange": [ + 10 + ], + "MeleeAttackRepelRnage": [ + 100 + ], + "__ShootSound": "shooting0005", + "__BeginReloadSound": "reloadBegin0004", + "BeginReloadSoundDelayTime": 0.2, + "__ReloadSound": "", + "ReloadSoundDelayTime": 0, + "__ReloadFinishSound": "beLoaded0011", + "ReloadFinishSoundAdvanceTime": 0.4, + "__BeLoadedSound": "", + "BeLoadedSoundDelayTime": 0, + "__OtherSoundMap": null, + "__AiUseAttribute": "0002", + "__AiAttackAttr": "" + }, + { + "Id": "0002", + "WeaponId": "", + "Remark": "\u6B65\u67AA", + "Weight": 40, + "WeightType": 2, + "ContinuousShoot": false, + "AmmoCapacity": 30, + "MaxAmmoCapacity": 420, + "StandbyAmmoCapacity": 390, + "ReloadTime": 2.2, + "AloneReload": false, + "AloneReloadCount": 1, + "AloneReloadBeginIntervalTime": 0, + "AloneReloadFinishIntervalTime": 0, + "AloneReloadCanShoot": false, + "LooseShoot": false, + "MinChargeTime": 0, + "ManualBeLoaded": false, + "AutoManualBeLoaded": false, + "BeLoadedTime": 0, + "ContinuousCountRange": [ + 3 + ], + "TriggerInterval": 3, + "StartFiringSpeed": 480, + "FinalFiringSpeed": 480, + "FiringSpeedAddSpeed": 0, + "FiringSpeedBackSpeed": 0, + "FireBulletCountRange": [ + 1 + ], + "DelayedTime": 0, + "StartScatteringRange": 5, + "FinalScatteringRange": 45, + "ScatteringRangeAddValue": 3, + "ScatteringRangeBackSpeed": 40, + "ScatteringRangeBackDelayTime": 0.5, + "CameraShake": 2, + "BacklashRange": [ + 2, + 4 + ], + "BacklashRegressionSpeed": 35, + "UpliftAngle": 10, + "DefaultAngle": 0, + "UpliftAngleRestore": 1, + "BulletId": "bullet0001", + "HarmRange": [ + 4 + ], + "RepelRnage": [ + 20 + ], + "BulletDeviationAngleRange": [ + 0 + ], + "BulletSpeedRange": [ + 320, + 350 + ], + "BulletDistanceRange": [ + 300, + 400 + ], + "ShellId": "shell0001", + "ThrowShellDelayTime": 0, + "ThrowCollisionSize": { + "X": 20, + "Y": 15 + }, + "CanMeleeAttack": true, + "MeleeAttackHarmRange": [ + 10 + ], + "MeleeAttackRepelRnage": [ + 100 + ], + "__ShootSound": "shooting0005", + "__BeginReloadSound": "reloadBegin0004", + "BeginReloadSoundDelayTime": 0.2, + "__ReloadSound": "", + "ReloadSoundDelayTime": 0, + "__ReloadFinishSound": "beLoaded0011", + "ReloadFinishSoundAdvanceTime": 0.4, + "__BeLoadedSound": "", + "BeLoadedSoundDelayTime": 0, + "__OtherSoundMap": null, + "__AiUseAttribute": "", + "__AiAttackAttr": "0001" + }, + { + "Id": "0003", + "WeaponId": "weapon0002", + "Remark": "\u9730\u5F39\u67AA", + "Weight": 40, + "WeightType": 2, + "ContinuousShoot": false, + "AmmoCapacity": 7, + "MaxAmmoCapacity": 140, + "StandbyAmmoCapacity": 133, + "ReloadTime": 0.4, + "AloneReload": true, + "AloneReloadCount": 1, + "AloneReloadBeginIntervalTime": 0.6, + "AloneReloadFinishIntervalTime": 0.6, + "AloneReloadCanShoot": true, + "LooseShoot": false, + "MinChargeTime": 0, + "ManualBeLoaded": true, + "AutoManualBeLoaded": true, + "BeLoadedTime": 0.6, + "ContinuousCountRange": [ + 1 + ], + "TriggerInterval": 0, + "StartFiringSpeed": 120, + "FinalFiringSpeed": 120, + "FiringSpeedAddSpeed": 0, + "FiringSpeedBackSpeed": 0, + "FireBulletCountRange": [ + 5 + ], + "DelayedTime": 0, + "StartScatteringRange": 12, + "FinalScatteringRange": 30, + "ScatteringRangeAddValue": 20, + "ScatteringRangeBackSpeed": 40, + "ScatteringRangeBackDelayTime": 0.5, + "CameraShake": 4, + "BacklashRange": [ + 5, + 6 + ], + "BacklashRegressionSpeed": 35, + "UpliftAngle": 15, + "DefaultAngle": 0, + "UpliftAngleRestore": 1, + "BulletId": "bullet0002", + "HarmRange": [ + 4 + ], + "RepelRnage": [ + 30 + ], + "BulletDeviationAngleRange": [ + -10, + 10 + ], + "BulletSpeedRange": [ + 280, + 380 + ], + "BulletDistanceRange": [ + 200, + 250 + ], + "ShellId": "shell0002", + "ThrowShellDelayTime": 0.2, + "ThrowCollisionSize": { + "X": 20, + "Y": 15 + }, + "CanMeleeAttack": true, + "MeleeAttackHarmRange": [ + 10 + ], + "MeleeAttackRepelRnage": [ + 100 + ], + "__ShootSound": "shooting0003", + "__BeginReloadSound": "reloadBegin0002", + "BeginReloadSoundDelayTime": 0, + "__ReloadSound": "reloading0002", + "ReloadSoundDelayTime": 0, + "__ReloadFinishSound": "reloadFinish0002", + "ReloadFinishSoundAdvanceTime": 0.3, + "__BeLoadedSound": "beLoaded0005", + "BeLoadedSoundDelayTime": 0, + "__OtherSoundMap": null, + "__AiUseAttribute": "0004", + "__AiAttackAttr": "" + }, + { + "Id": "0004", + "WeaponId": "", + "Remark": "\u9730\u5F39\u67AA", + "Weight": 40, + "WeightType": 2, + "ContinuousShoot": false, + "AmmoCapacity": 7, + "MaxAmmoCapacity": 140, + "StandbyAmmoCapacity": 133, + "ReloadTime": 0.4, + "AloneReload": true, + "AloneReloadCount": 1, + "AloneReloadBeginIntervalTime": 0.6, + "AloneReloadFinishIntervalTime": 0.6, + "AloneReloadCanShoot": true, + "LooseShoot": false, + "MinChargeTime": 0, + "ManualBeLoaded": true, + "AutoManualBeLoaded": true, + "BeLoadedTime": 0.6, + "ContinuousCountRange": [ + 1 + ], + "TriggerInterval": 3.5, + "StartFiringSpeed": 120, + "FinalFiringSpeed": 120, + "FiringSpeedAddSpeed": 0, + "FiringSpeedBackSpeed": 0, + "FireBulletCountRange": [ + 5 + ], + "DelayedTime": 0, + "StartScatteringRange": 12, + "FinalScatteringRange": 30, + "ScatteringRangeAddValue": 20, + "ScatteringRangeBackSpeed": 40, + "ScatteringRangeBackDelayTime": 0.5, + "CameraShake": 4, + "BacklashRange": [ + 5, + 6 + ], + "BacklashRegressionSpeed": 35, + "UpliftAngle": 15, + "DefaultAngle": 0, + "UpliftAngleRestore": 1, + "BulletId": "bullet0002", + "HarmRange": [ + 4 + ], + "RepelRnage": [ + 30 + ], + "BulletDeviationAngleRange": [ + -10, + 10 + ], + "BulletSpeedRange": [ + 280, + 380 + ], + "BulletDistanceRange": [ + 200, + 250 + ], + "ShellId": "shell0002", + "ThrowShellDelayTime": 0.2, + "ThrowCollisionSize": { + "X": 20, + "Y": 15 + }, + "CanMeleeAttack": true, + "MeleeAttackHarmRange": [ + 10 + ], + "MeleeAttackRepelRnage": [ + 100 + ], + "__ShootSound": "shooting0003", + "__BeginReloadSound": "reloadBegin0002", + "BeginReloadSoundDelayTime": 0, + "__ReloadSound": "reloading0002", + "ReloadSoundDelayTime": 0, + "__ReloadFinishSound": "reloadFinish0002", + "ReloadFinishSoundAdvanceTime": 0.3, + "__BeLoadedSound": "beLoaded0005", + "BeLoadedSoundDelayTime": 0, + "__OtherSoundMap": null, + "__AiUseAttribute": "", + "__AiAttackAttr": "0002" + }, + { + "Id": "0005", + "WeaponId": "weapon0003", + "Remark": "\u624B\u67AA", + "Weight": 20, + "WeightType": 1, + "ContinuousShoot": false, + "AmmoCapacity": 12, + "MaxAmmoCapacity": 180, + "StandbyAmmoCapacity": 168, + "ReloadTime": 1.5, + "AloneReload": false, + "AloneReloadCount": 1, + "AloneReloadBeginIntervalTime": 0, + "AloneReloadFinishIntervalTime": 0, + "AloneReloadCanShoot": false, + "LooseShoot": false, + "MinChargeTime": 0, + "ManualBeLoaded": false, + "AutoManualBeLoaded": false, + "BeLoadedTime": 0.05, + "ContinuousCountRange": [ + 1 + ], + "TriggerInterval": 0, + "StartFiringSpeed": 460, + "FinalFiringSpeed": 460, + "FiringSpeedAddSpeed": 0, + "FiringSpeedBackSpeed": 0, + "FireBulletCountRange": [ + 1 + ], + "DelayedTime": 0, + "StartScatteringRange": 5, + "FinalScatteringRange": 25, + "ScatteringRangeAddValue": 4, + "ScatteringRangeBackSpeed": 40, + "ScatteringRangeBackDelayTime": 0.5, + "CameraShake": 4, + "BacklashRange": [ + 3, + 5 + ], + "BacklashRegressionSpeed": 35, + "UpliftAngle": 20, + "DefaultAngle": 0, + "UpliftAngleRestore": 1, + "BulletId": "bullet0001", + "HarmRange": [ + 4 + ], + "RepelRnage": [ + 20 + ], + "BulletDeviationAngleRange": [ + 0 + ], + "BulletSpeedRange": [ + 320, + 350 + ], + "BulletDistanceRange": [ + 250, + 300 + ], + "ShellId": "shell0001", + "ThrowShellDelayTime": 0, + "ThrowCollisionSize": { + "X": 20, + "Y": 15 + }, + "CanMeleeAttack": true, + "MeleeAttackHarmRange": [ + 10 + ], + "MeleeAttackRepelRnage": [ + 100 + ], + "__ShootSound": "shooting0004", + "__BeginReloadSound": "reloading0001", + "BeginReloadSoundDelayTime": 0, + "__ReloadSound": "", + "ReloadSoundDelayTime": 0, + "__ReloadFinishSound": "beLoaded0015", + "ReloadFinishSoundAdvanceTime": 0.43, + "__BeLoadedSound": "", + "BeLoadedSoundDelayTime": 0, + "__OtherSoundMap": null, + "__AiUseAttribute": "0006", + "__AiAttackAttr": "" + }, + { + "Id": "0006", + "WeaponId": "", + "Remark": "\u624B\u67AA", + "Weight": 20, + "WeightType": 1, + "ContinuousShoot": false, + "AmmoCapacity": 12, + "MaxAmmoCapacity": 180, + "StandbyAmmoCapacity": 168, + "ReloadTime": 1.5, + "AloneReload": false, + "AloneReloadCount": 1, + "AloneReloadBeginIntervalTime": 0, + "AloneReloadFinishIntervalTime": 0, + "AloneReloadCanShoot": false, + "LooseShoot": false, + "MinChargeTime": 0, + "ManualBeLoaded": false, + "AutoManualBeLoaded": false, + "BeLoadedTime": 0.05, + "ContinuousCountRange": [ + 1 + ], + "TriggerInterval": 2, + "StartFiringSpeed": 300, + "FinalFiringSpeed": 300, + "FiringSpeedAddSpeed": 0, + "FiringSpeedBackSpeed": 0, + "FireBulletCountRange": [ + 1 + ], + "DelayedTime": 0, + "StartScatteringRange": 5, + "FinalScatteringRange": 25, + "ScatteringRangeAddValue": 4, + "ScatteringRangeBackSpeed": 40, + "ScatteringRangeBackDelayTime": 0.5, + "CameraShake": 4, + "BacklashRange": [ + 3, + 5 + ], + "BacklashRegressionSpeed": 35, + "UpliftAngle": 20, + "DefaultAngle": 0, + "UpliftAngleRestore": 1, + "BulletId": "bullet0001", + "HarmRange": [ + 4 + ], + "RepelRnage": [ + 20 + ], + "BulletDeviationAngleRange": [ + 0 + ], + "BulletSpeedRange": [ + 320, + 350 + ], + "BulletDistanceRange": [ + 250, + 300 + ], + "ShellId": "shell0001", + "ThrowShellDelayTime": 0, + "ThrowCollisionSize": { + "X": 20, + "Y": 15 + }, + "CanMeleeAttack": true, + "MeleeAttackHarmRange": [ + 10 + ], + "MeleeAttackRepelRnage": [ + 100 + ], + "__ShootSound": "shooting0004", + "__BeginReloadSound": "reloading0001", + "BeginReloadSoundDelayTime": 0, + "__ReloadSound": "", + "ReloadSoundDelayTime": 0, + "__ReloadFinishSound": "beLoaded0015", + "ReloadFinishSoundAdvanceTime": 0.43, + "__BeLoadedSound": "", + "BeLoadedSoundDelayTime": 0, + "__OtherSoundMap": null, + "__AiUseAttribute": "", + "__AiAttackAttr": "0003" + }, + { + "Id": "0007", + "WeaponId": "weapon0004", + "Remark": "\u5200", + "Weight": 40, + "WeightType": 2, + "ContinuousShoot": false, + "AmmoCapacity": 180, + "MaxAmmoCapacity": 180, + "StandbyAmmoCapacity": 180, + "ReloadTime": 2, + "AloneReload": false, + "AloneReloadCount": 1, + "AloneReloadBeginIntervalTime": 0, + "AloneReloadFinishIntervalTime": 0, + "AloneReloadCanShoot": false, + "LooseShoot": true, + "MinChargeTime": 0, + "ManualBeLoaded": false, + "AutoManualBeLoaded": false, + "BeLoadedTime": 0, + "ContinuousCountRange": [ + 1 + ], + "TriggerInterval": 0, + "StartFiringSpeed": 180, + "FinalFiringSpeed": 180, + "FiringSpeedAddSpeed": 0, + "FiringSpeedBackSpeed": 0, + "FireBulletCountRange": [ + 1 + ], + "DelayedTime": 0, + "StartScatteringRange": 0, + "FinalScatteringRange": 0, + "ScatteringRangeAddValue": 0, + "ScatteringRangeBackSpeed": 0, + "ScatteringRangeBackDelayTime": 0, + "CameraShake": 7, + "BacklashRange": [ + -8 + ], + "BacklashRegressionSpeed": 24, + "UpliftAngle": -95, + "DefaultAngle": 0, + "UpliftAngleRestore": 1, + "BulletId": "bullet0001", + "HarmRange": [ + 25 + ], + "RepelRnage": [ + 150 + ], + "BulletDeviationAngleRange": [ + 0 + ], + "BulletSpeedRange": [ + 350 + ], + "BulletDistanceRange": [ + 35 + ], + "ShellId": "", + "ThrowShellDelayTime": 0, + "ThrowCollisionSize": { + "X": 20, + "Y": 15 + }, + "CanMeleeAttack": true, + "MeleeAttackHarmRange": [ + 10 + ], + "MeleeAttackRepelRnage": [ + 100 + ], + "__ShootSound": "", + "__BeginReloadSound": "", + "BeginReloadSoundDelayTime": 0, + "__ReloadSound": "", + "ReloadSoundDelayTime": 0, + "__ReloadFinishSound": "", + "ReloadFinishSoundAdvanceTime": 0, + "__BeLoadedSound": "", + "BeLoadedSoundDelayTime": 0, + "__OtherSoundMap": null, + "__AiUseAttribute": "0008", + "__AiAttackAttr": "" + }, + { + "Id": "0008", + "WeaponId": "", + "Remark": "\u5200", + "Weight": 40, + "WeightType": 2, + "ContinuousShoot": false, + "AmmoCapacity": 180, + "MaxAmmoCapacity": 180, + "StandbyAmmoCapacity": 180, + "ReloadTime": 2, + "AloneReload": false, + "AloneReloadCount": 1, + "AloneReloadBeginIntervalTime": 0, + "AloneReloadFinishIntervalTime": 0, + "AloneReloadCanShoot": false, + "LooseShoot": true, + "MinChargeTime": 0, + "ManualBeLoaded": false, + "AutoManualBeLoaded": false, + "BeLoadedTime": 0, + "ContinuousCountRange": [ + 1 + ], + "TriggerInterval": 3, + "StartFiringSpeed": 180, + "FinalFiringSpeed": 180, + "FiringSpeedAddSpeed": 0, + "FiringSpeedBackSpeed": 0, + "FireBulletCountRange": [ + 1 + ], + "DelayedTime": 0, + "StartScatteringRange": 0, + "FinalScatteringRange": 0, + "ScatteringRangeAddValue": 0, + "ScatteringRangeBackSpeed": 0, + "ScatteringRangeBackDelayTime": 0, + "CameraShake": 7, + "BacklashRange": [ + -8 + ], + "BacklashRegressionSpeed": 24, + "UpliftAngle": -95, + "DefaultAngle": 0, + "UpliftAngleRestore": 1, + "BulletId": "bullet0001", + "HarmRange": [ + 25 + ], + "RepelRnage": [ + 150 + ], + "BulletDeviationAngleRange": [ + 0 + ], + "BulletSpeedRange": [ + 350 + ], + "BulletDistanceRange": [ + 35 + ], + "ShellId": "", + "ThrowShellDelayTime": 0, + "ThrowCollisionSize": { + "X": 20, + "Y": 15 + }, + "CanMeleeAttack": true, + "MeleeAttackHarmRange": [ + 10 + ], + "MeleeAttackRepelRnage": [ + 100 + ], + "__ShootSound": "", + "__BeginReloadSound": "", + "BeginReloadSoundDelayTime": 0, + "__ReloadSound": "", + "ReloadSoundDelayTime": 0, + "__ReloadFinishSound": "", + "ReloadFinishSoundAdvanceTime": 0, + "__BeLoadedSound": "", + "BeLoadedSoundDelayTime": 0, + "__OtherSoundMap": null, + "__AiUseAttribute": "", + "__AiAttackAttr": "0004" + }, + { + "Id": "0009", + "WeaponId": "weapon0005", + "Remark": "\u72D9\u51FB\u67AA", + "Weight": 50, + "WeightType": 2, + "ContinuousShoot": false, + "AmmoCapacity": 10, + "MaxAmmoCapacity": 80, + "StandbyAmmoCapacity": 70, + "ReloadTime": 3, + "AloneReload": false, + "AloneReloadCount": 1, + "AloneReloadBeginIntervalTime": 0, + "AloneReloadFinishIntervalTime": 0, + "AloneReloadCanShoot": false, + "LooseShoot": false, + "MinChargeTime": 0, + "ManualBeLoaded": true, + "AutoManualBeLoaded": false, + "BeLoadedTime": 0.9, + "ContinuousCountRange": [ + 1 + ], + "TriggerInterval": 0, + "StartFiringSpeed": 150, + "FinalFiringSpeed": 150, + "FiringSpeedAddSpeed": 0, + "FiringSpeedBackSpeed": 0, + "FireBulletCountRange": [ + 1 + ], + "DelayedTime": 0, + "StartScatteringRange": 3, + "FinalScatteringRange": 60, + "ScatteringRangeAddValue": 40, + "ScatteringRangeBackSpeed": 40, + "ScatteringRangeBackDelayTime": 0.8, + "CameraShake": 5, + "BacklashRange": [ + 5, + 7 + ], + "BacklashRegressionSpeed": 20, + "UpliftAngle": 15, + "DefaultAngle": 0, + "UpliftAngleRestore": 1, + "BulletId": "bullet0001", + "HarmRange": [ + 30 + ], + "RepelRnage": [ + 250 + ], + "BulletDeviationAngleRange": [ + 0 + ], + "BulletSpeedRange": [ + 600, + 620 + ], + "BulletDistanceRange": [ + 700, + 900 + ], + "ShellId": "shell0003", + "ThrowShellDelayTime": 0.2, + "ThrowCollisionSize": { + "X": 20, + "Y": 15 + }, + "CanMeleeAttack": true, + "MeleeAttackHarmRange": [ + 10 + ], + "MeleeAttackRepelRnage": [ + 100 + ], + "__ShootSound": "shooting0008", + "__BeginReloadSound": "reloadBegin0009", + "BeginReloadSoundDelayTime": 0, + "__ReloadSound": "", + "ReloadSoundDelayTime": 0, + "__ReloadFinishSound": "beLoaded0007", + "ReloadFinishSoundAdvanceTime": 1, + "__BeLoadedSound": "beLoaded0007", + "BeLoadedSoundDelayTime": 0, + "__OtherSoundMap": null, + "__AiUseAttribute": "0010", + "__AiAttackAttr": "" + }, + { + "Id": "0010", + "WeaponId": "", + "Remark": "\u72D9\u51FB\u67AA", + "Weight": 50, + "WeightType": 2, + "ContinuousShoot": false, + "AmmoCapacity": 10, + "MaxAmmoCapacity": 80, + "StandbyAmmoCapacity": 70, + "ReloadTime": 3, + "AloneReload": false, + "AloneReloadCount": 1, + "AloneReloadBeginIntervalTime": 0, + "AloneReloadFinishIntervalTime": 0, + "AloneReloadCanShoot": false, + "LooseShoot": false, + "MinChargeTime": 0, + "ManualBeLoaded": true, + "AutoManualBeLoaded": false, + "BeLoadedTime": 0.9, + "ContinuousCountRange": [ + 1 + ], + "TriggerInterval": 5, + "StartFiringSpeed": 150, + "FinalFiringSpeed": 150, + "FiringSpeedAddSpeed": 0, + "FiringSpeedBackSpeed": 0, + "FireBulletCountRange": [ + 1 + ], + "DelayedTime": 0, + "StartScatteringRange": 3, + "FinalScatteringRange": 60, + "ScatteringRangeAddValue": 40, + "ScatteringRangeBackSpeed": 40, + "ScatteringRangeBackDelayTime": 0.8, + "CameraShake": 5, + "BacklashRange": [ + 5, + 7 + ], + "BacklashRegressionSpeed": 20, + "UpliftAngle": 15, + "DefaultAngle": 0, + "UpliftAngleRestore": 1, + "BulletId": "bullet0001", + "HarmRange": [ + 30 + ], + "RepelRnage": [ + 250 + ], + "BulletDeviationAngleRange": [ + 0 + ], + "BulletSpeedRange": [ + 600, + 620 + ], + "BulletDistanceRange": [ + 700, + 900 + ], + "ShellId": "shell0003", + "ThrowShellDelayTime": 0.2, + "ThrowCollisionSize": { + "X": 20, + "Y": 15 + }, + "CanMeleeAttack": true, + "MeleeAttackHarmRange": [ + 10 + ], + "MeleeAttackRepelRnage": [ + 100 + ], + "__ShootSound": "shooting0008", + "__BeginReloadSound": "reloadBegin0009", + "BeginReloadSoundDelayTime": 0, + "__ReloadSound": "", + "ReloadSoundDelayTime": 0, + "__ReloadFinishSound": "beLoaded0007", + "ReloadFinishSoundAdvanceTime": 1, + "__BeLoadedSound": "beLoaded0007", + "BeLoadedSoundDelayTime": 0, + "__OtherSoundMap": null, + "__AiUseAttribute": "", + "__AiAttackAttr": "0005" + }, + { + "Id": "0011", + "WeaponId": "weapon0006", + "Remark": "\u51B2\u950B\u67AA", + "Weight": 30, + "WeightType": 2, + "ContinuousShoot": true, + "AmmoCapacity": 20, + "MaxAmmoCapacity": 600, + "StandbyAmmoCapacity": 580, + "ReloadTime": 2.2, + "AloneReload": false, + "AloneReloadCount": 1, + "AloneReloadBeginIntervalTime": 0, + "AloneReloadFinishIntervalTime": 0, + "AloneReloadCanShoot": false, + "LooseShoot": false, + "MinChargeTime": 0, + "ManualBeLoaded": false, + "AutoManualBeLoaded": false, + "BeLoadedTime": 0, + "ContinuousCountRange": [ + 1 + ], + "TriggerInterval": 0, + "StartFiringSpeed": 700, + "FinalFiringSpeed": 700, + "FiringSpeedAddSpeed": 0, + "FiringSpeedBackSpeed": 0, + "FireBulletCountRange": [ + 1 + ], + "DelayedTime": 0, + "StartScatteringRange": 3, + "FinalScatteringRange": 30, + "ScatteringRangeAddValue": 2, + "ScatteringRangeBackSpeed": 40, + "ScatteringRangeBackDelayTime": 0.3, + "CameraShake": 2, + "BacklashRange": [ + 1, + 2 + ], + "BacklashRegressionSpeed": 35, + "UpliftAngle": 5, + "DefaultAngle": 0, + "UpliftAngleRestore": 1, + "BulletId": "bullet0002", + "HarmRange": [ + 3 + ], + "RepelRnage": [ + 10 + ], + "BulletDeviationAngleRange": [ + 0 + ], + "BulletSpeedRange": [ + 320, + 340 + ], + "BulletDistanceRange": [ + 300, + 400 + ], + "ShellId": "shell0001", + "ThrowShellDelayTime": 0, + "ThrowCollisionSize": { + "X": 20, + "Y": 15 + }, + "CanMeleeAttack": true, + "MeleeAttackHarmRange": [ + 10 + ], + "MeleeAttackRepelRnage": [ + 100 + ], + "__ShootSound": "shooting0002", + "__BeginReloadSound": "reloadBegin0005", + "BeginReloadSoundDelayTime": 0.2, + "__ReloadSound": "", + "ReloadSoundDelayTime": 0, + "__ReloadFinishSound": "beLoaded0016", + "ReloadFinishSoundAdvanceTime": 0.5, + "__BeLoadedSound": "", + "BeLoadedSoundDelayTime": 0, + "__OtherSoundMap": null, + "__AiUseAttribute": "0012", + "__AiAttackAttr": "" + }, + { + "Id": "0012", + "WeaponId": "", + "Remark": "\u51B2\u950B\u67AA", + "Weight": 30, + "WeightType": 2, + "ContinuousShoot": false, + "AmmoCapacity": 20, + "MaxAmmoCapacity": 600, + "StandbyAmmoCapacity": 580, + "ReloadTime": 2.2, + "AloneReload": false, + "AloneReloadCount": 1, + "AloneReloadBeginIntervalTime": 0, + "AloneReloadFinishIntervalTime": 0, + "AloneReloadCanShoot": false, + "LooseShoot": false, + "MinChargeTime": 0, + "ManualBeLoaded": false, + "AutoManualBeLoaded": false, + "BeLoadedTime": 0, + "ContinuousCountRange": [ + 5 + ], + "TriggerInterval": 3.5, + "StartFiringSpeed": 700, + "FinalFiringSpeed": 700, + "FiringSpeedAddSpeed": 0, + "FiringSpeedBackSpeed": 0, + "FireBulletCountRange": [ + 1 + ], + "DelayedTime": 0, + "StartScatteringRange": 3, + "FinalScatteringRange": 30, + "ScatteringRangeAddValue": 2, + "ScatteringRangeBackSpeed": 30, + "ScatteringRangeBackDelayTime": 0.3, + "CameraShake": 2, + "BacklashRange": [ + 1, + 2 + ], + "BacklashRegressionSpeed": 35, + "UpliftAngle": 5, + "DefaultAngle": 0, + "UpliftAngleRestore": 1, + "BulletId": "bullet0002", + "HarmRange": [ + 3 + ], + "RepelRnage": [ + 10 + ], + "BulletDeviationAngleRange": [ + 0 + ], + "BulletSpeedRange": [ + 320, + 340 + ], + "BulletDistanceRange": [ + 300, + 400 + ], + "ShellId": "shell0001", + "ThrowShellDelayTime": 0, + "ThrowCollisionSize": { + "X": 20, + "Y": 15 + }, + "CanMeleeAttack": true, + "MeleeAttackHarmRange": [ + 10 + ], + "MeleeAttackRepelRnage": [ + 100 + ], + "__ShootSound": "shooting0002", + "__BeginReloadSound": "reloadBegin0005", + "BeginReloadSoundDelayTime": 0.2, + "__ReloadSound": "", + "ReloadSoundDelayTime": 0, + "__ReloadFinishSound": "beLoaded0016", + "ReloadFinishSoundAdvanceTime": 0.5, + "__BeLoadedSound": "", + "BeLoadedSoundDelayTime": 0, + "__OtherSoundMap": null, + "__AiUseAttribute": "", + "__AiAttackAttr": "0004" + }, + { + "Id": "0013", + "WeaponId": "weapon0007", + "Remark": "\u6C64\u59C6\u900A\u51B2\u950B\u67AA", + "Weight": 40, + "WeightType": 2, + "ContinuousShoot": true, + "AmmoCapacity": 60, + "MaxAmmoCapacity": 600, + "StandbyAmmoCapacity": 540, + "ReloadTime": 2.2, + "AloneReload": false, + "AloneReloadCount": 1, + "AloneReloadBeginIntervalTime": 0, + "AloneReloadFinishIntervalTime": 0, + "AloneReloadCanShoot": false, + "LooseShoot": false, + "MinChargeTime": 0, + "ManualBeLoaded": false, + "AutoManualBeLoaded": false, + "BeLoadedTime": 0, + "ContinuousCountRange": [ + 1 + ], + "TriggerInterval": 0, + "StartFiringSpeed": 700, + "FinalFiringSpeed": 700, + "FiringSpeedAddSpeed": 0, + "FiringSpeedBackSpeed": 0, + "FireBulletCountRange": [ + 1 + ], + "DelayedTime": 0, + "StartScatteringRange": 6, + "FinalScatteringRange": 60, + "ScatteringRangeAddValue": 3, + "ScatteringRangeBackSpeed": 50, + "ScatteringRangeBackDelayTime": 0.3, + "CameraShake": 2, + "BacklashRange": [ + 1, + 2 + ], + "BacklashRegressionSpeed": 35, + "UpliftAngle": 5, + "DefaultAngle": 0, + "UpliftAngleRestore": 1, + "BulletId": "bullet0003", + "HarmRange": [ + 3 + ], + "RepelRnage": [ + 15 + ], + "BulletDeviationAngleRange": [ + 0 + ], + "BulletSpeedRange": [ + 300, + 330 + ], + "BulletDistanceRange": [ + 270, + 360 + ], + "ShellId": "shell0001", + "ThrowShellDelayTime": 0, + "ThrowCollisionSize": { + "X": 20, + "Y": 15 + }, + "CanMeleeAttack": true, + "MeleeAttackHarmRange": [ + 10 + ], + "MeleeAttackRepelRnage": [ + 100 + ], + "__ShootSound": "shooting0007", + "__BeginReloadSound": "reloadBegin0006", + "BeginReloadSoundDelayTime": 0.2, + "__ReloadSound": "", + "ReloadSoundDelayTime": 0, + "__ReloadFinishSound": "beLoaded0017", + "ReloadFinishSoundAdvanceTime": 0.65, + "__BeLoadedSound": "", + "BeLoadedSoundDelayTime": 0, + "__OtherSoundMap": null, + "__AiUseAttribute": "0014", + "__AiAttackAttr": "" + }, + { + "Id": "0014", + "WeaponId": "", + "Remark": "\u6C64\u59C6\u900A\u51B2\u950B\u67AA", + "Weight": 40, + "WeightType": 2, + "ContinuousShoot": false, + "AmmoCapacity": 60, + "MaxAmmoCapacity": 600, + "StandbyAmmoCapacity": 540, + "ReloadTime": 2.2, + "AloneReload": false, + "AloneReloadCount": 1, + "AloneReloadBeginIntervalTime": 0, + "AloneReloadFinishIntervalTime": 0, + "AloneReloadCanShoot": false, + "LooseShoot": false, + "MinChargeTime": 0, + "ManualBeLoaded": false, + "AutoManualBeLoaded": false, + "BeLoadedTime": 0, + "ContinuousCountRange": [ + 10 + ], + "TriggerInterval": 5, + "StartFiringSpeed": 200, + "FinalFiringSpeed": 200, + "FiringSpeedAddSpeed": 0, + "FiringSpeedBackSpeed": 0, + "FireBulletCountRange": [ + 1 + ], + "DelayedTime": 0, + "StartScatteringRange": 10, + "FinalScatteringRange": 30, + "ScatteringRangeAddValue": 3, + "ScatteringRangeBackSpeed": 50, + "ScatteringRangeBackDelayTime": 0.3, + "CameraShake": 2, + "BacklashRange": [ + 1, + 2 + ], + "BacklashRegressionSpeed": 35, + "UpliftAngle": 5, + "DefaultAngle": 0, + "UpliftAngleRestore": 1, + "BulletId": "bullet0003", + "HarmRange": [ + 3 + ], + "RepelRnage": [ + 15 + ], + "BulletDeviationAngleRange": [ + 0 + ], + "BulletSpeedRange": [ + 300, + 330 + ], + "BulletDistanceRange": [ + 270, + 360 + ], + "ShellId": "shell0001", + "ThrowShellDelayTime": 0, + "ThrowCollisionSize": { + "X": 20, + "Y": 15 + }, + "CanMeleeAttack": true, + "MeleeAttackHarmRange": [ + 10 + ], + "MeleeAttackRepelRnage": [ + 100 + ], + "__ShootSound": "shooting0007", + "__BeginReloadSound": "reloadBegin0006", + "BeginReloadSoundDelayTime": 0.2, + "__ReloadSound": "", + "ReloadSoundDelayTime": 0, + "__ReloadFinishSound": "beLoaded0017", + "ReloadFinishSoundAdvanceTime": 0.65, + "__BeLoadedSound": "", + "BeLoadedSoundDelayTime": 0, + "__OtherSoundMap": null, + "__AiUseAttribute": "", + "__AiAttackAttr": "0006" + } +] \ No newline at end of file diff --git a/DungeonShooting_Godot/src/config/ExcelConfig.cs b/DungeonShooting_Godot/src/config/ExcelConfig.cs index 6416ead..bd8077c 100644 --- a/DungeonShooting_Godot/src/config/ExcelConfig.cs +++ b/DungeonShooting_Godot/src/config/ExcelConfig.cs @@ -8,13 +8,13 @@ public static partial class ExcelConfig { /// - /// ActivityObject.xlsx表数据集合, 以 List 形式存储, 数据顺序与 Excel 表相同 + /// ActivityBase.xlsx表数据集合, 以 List 形式存储, 数据顺序与 Excel 表相同 /// - public static List ActivityObject_List { get; private set; } + public static List ActivityBase_List { get; private set; } /// - /// ActivityObject.xlsx表数据集合, 里 Map 形式存储, key 为 Id + /// ActivityBase.xlsx表数据集合, 里 Map 形式存储, key 为 Id /// - public static Dictionary ActivityObject_Map { get; private set; } + public static Dictionary ActivityBase_Map { get; private set; } /// /// AiAttackAttr.xlsx表数据集合, 以 List 形式存储, 数据顺序与 Excel 表相同 @@ -26,6 +26,15 @@ public static Dictionary AiAttackAttr_Map { get; private set; } /// + /// AmmoBase.xlsx表数据集合, 以 List 形式存储, 数据顺序与 Excel 表相同 + /// + public static List AmmoBase_List { get; private set; } + /// + /// AmmoBase.xlsx表数据集合, 里 Map 形式存储, key 为 Id + /// + public static Dictionary AmmoBase_Map { get; private set; } + + /// /// Sound.xlsx表数据集合, 以 List 形式存储, 数据顺序与 Excel 表相同 /// public static List Sound_List { get; private set; } @@ -35,13 +44,13 @@ public static Dictionary Sound_Map { get; private set; } /// - /// Weapon.xlsx表数据集合, 以 List 形式存储, 数据顺序与 Excel 表相同 + /// WeaponBase.xlsx表数据集合, 以 List 形式存储, 数据顺序与 Excel 表相同 /// - public static List Weapon_List { get; private set; } + public static List WeaponBase_List { get; private set; } /// - /// Weapon.xlsx表数据集合, 里 Map 形式存储, key 为 Id + /// WeaponBase.xlsx表数据集合, 里 Map 形式存储, key 为 Id /// - public static Dictionary Weapon_Map { get; private set; } + public static Dictionary WeaponBase_Map { get; private set; } private static bool _init = false; @@ -53,29 +62,30 @@ if (_init) return; _init = true; - _InitActivityObjectConfig(); + _InitActivityBaseConfig(); _InitAiAttackAttrConfig(); + _InitAmmoBaseConfig(); _InitSoundConfig(); - _InitWeaponConfig(); + _InitWeaponBaseConfig(); - _InitWeaponRef(); + _InitWeaponBaseRef(); } - private static void _InitActivityObjectConfig() + private static void _InitActivityBaseConfig() { try { - var text = _ReadConfigAsText("res://resource/config/ActivityObject.json"); - ActivityObject_List = JsonSerializer.Deserialize>(text); - ActivityObject_Map = new Dictionary(); - foreach (var item in ActivityObject_List) + var text = _ReadConfigAsText("res://resource/config/ActivityBase.json"); + ActivityBase_List = JsonSerializer.Deserialize>(text); + ActivityBase_Map = new Dictionary(); + foreach (var item in ActivityBase_List) { - ActivityObject_Map.Add(item.Id, item); + ActivityBase_Map.Add(item.Id, item); } } catch (Exception e) { GD.PrintErr(e.ToString()); - throw new Exception("初始化表'ActivityObject'失败!"); + throw new Exception("初始化表'ActivityBase'失败!"); } } private static void _InitAiAttackAttrConfig() @@ -96,6 +106,24 @@ throw new Exception("初始化表'AiAttackAttr'失败!"); } } + private static void _InitAmmoBaseConfig() + { + try + { + var text = _ReadConfigAsText("res://resource/config/AmmoBase.json"); + AmmoBase_List = JsonSerializer.Deserialize>(text); + AmmoBase_Map = new Dictionary(); + foreach (var item in AmmoBase_List) + { + AmmoBase_Map.Add(item.Id, item); + } + } + catch (Exception e) + { + GD.PrintErr(e.ToString()); + throw new Exception("初始化表'AmmoBase'失败!"); + } + } private static void _InitSoundConfig() { try @@ -114,28 +142,28 @@ throw new Exception("初始化表'Sound'失败!"); } } - private static void _InitWeaponConfig() + private static void _InitWeaponBaseConfig() { try { - var text = _ReadConfigAsText("res://resource/config/Weapon.json"); - Weapon_List = new List(JsonSerializer.Deserialize>(text)); - Weapon_Map = new Dictionary(); - foreach (var item in Weapon_List) + var text = _ReadConfigAsText("res://resource/config/WeaponBase.json"); + WeaponBase_List = new List(JsonSerializer.Deserialize>(text)); + WeaponBase_Map = new Dictionary(); + foreach (var item in WeaponBase_List) { - Weapon_Map.Add(item.Id, item); + WeaponBase_Map.Add(item.Id, item); } } catch (Exception e) { GD.PrintErr(e.ToString()); - throw new Exception("初始化表'Weapon'失败!"); + throw new Exception("初始化表'WeaponBase'失败!"); } } - private static void _InitWeaponRef() + private static void _InitWeaponBaseRef() { - foreach (Ref_Weapon item in Weapon_List) + foreach (Ref_WeaponBase item in WeaponBase_List) { try { @@ -175,7 +203,7 @@ if (!string.IsNullOrEmpty(item.__AiUseAttribute)) { - item.AiUseAttribute = Weapon_Map[item.__AiUseAttribute]; + item.AiUseAttribute = WeaponBase_Map[item.__AiUseAttribute]; } if (!string.IsNullOrEmpty(item.__AiAttackAttr)) @@ -187,7 +215,7 @@ catch (Exception e) { GD.PrintErr(e.ToString()); - throw new Exception("初始化'Weapon'引用其他表数据失败, 当前行id: " + item.Id); + throw new Exception("初始化'WeaponBase'引用其他表数据失败, 当前行id: " + item.Id); } } } diff --git a/DungeonShooting_Godot/src/config/ExcelConfig_ActivityBase.cs b/DungeonShooting_Godot/src/config/ExcelConfig_ActivityBase.cs new file mode 100644 index 0000000..7f52d37 --- /dev/null +++ b/DungeonShooting_Godot/src/config/ExcelConfig_ActivityBase.cs @@ -0,0 +1,87 @@ +using System.Text.Json.Serialization; +using System.Collections.Generic; + +namespace Config; + +public static partial class ExcelConfig +{ + public class ActivityBase + { + /// + /// 物体唯一id
+ /// 需要添加类型前缀 + ///
+ [JsonInclude] + public string Id; + + /// + /// Test(测试对象): 2
+ /// Role(角色): 3
+ /// Enemy(敌人): 4
+ /// Weapon(武器): 5
+ /// Bullet(子弹): 6
+ /// Shell(弹壳): 7
+ /// Effect(特效): 8
+ /// Prop(道具): 9
+ /// Other(其它类型): 99 + ///
+ [JsonInclude] + public int Type; + + /// + /// 物体名称 + /// + [JsonInclude] + public string Name; + + /// + /// 物体简介
+ /// 一句对物体简短的介绍, 比如拾起物体时弹出的描述 + ///
+ [JsonInclude] + public string Intro; + + /// + /// 物体详情
+ /// 在图鉴中的描述 + ///
+ [JsonInclude] + public string Details; + + /// + /// 物体预制场景路径, 场景根节点必须是ActivityObject子类 + /// + [JsonInclude] + public string Prefab; + + /// + /// 物体图标
+ /// 如果不需要在图鉴或者地图编辑器中显示该物体, 则可以不用设置 + ///
+ [JsonInclude] + public string Icon; + + /// + /// 是否在地图编辑器中显示该物体 + /// + [JsonInclude] + public bool ShowInMapEditor; + + /// + /// 返回浅拷贝出的新对象 + /// + public ActivityBase Clone() + { + var inst = new ActivityBase(); + inst.Id = Id; + inst.Type = Type; + inst.Name = Name; + inst.Intro = Intro; + inst.Details = Details; + inst.Prefab = Prefab; + inst.Icon = Icon; + inst.ShowInMapEditor = ShowInMapEditor; + return inst; + } + } +} \ No newline at end of file diff --git a/DungeonShooting_Godot/src/config/ExcelConfig_ActivityObject.cs b/DungeonShooting_Godot/src/config/ExcelConfig_ActivityObject.cs deleted file mode 100644 index 1d3dbe4..0000000 --- a/DungeonShooting_Godot/src/config/ExcelConfig_ActivityObject.cs +++ /dev/null @@ -1,87 +0,0 @@ -using System.Text.Json.Serialization; -using System.Collections.Generic; - -namespace Config; - -public static partial class ExcelConfig -{ - public class ActivityObject - { - /// - /// 物体唯一id
- /// 需要添加类型前缀 - ///
- [JsonInclude] - public string Id; - - /// - /// Test(测试对象): 2
- /// Role(角色): 3
- /// Enemy(敌人): 4
- /// Weapon(武器): 5
- /// Bullet(子弹): 6
- /// Shell(弹壳): 7
- /// Effect(特效): 8
- /// Prop(道具): 9
- /// Other(其它类型): 99 - ///
- [JsonInclude] - public int Type; - - /// - /// 物体名称 - /// - [JsonInclude] - public string Name; - - /// - /// 物体简介
- /// 一句对物体简短的介绍, 比如拾起物体时弹出的描述 - ///
- [JsonInclude] - public string Intro; - - /// - /// 物体详情
- /// 在图鉴中的描述 - ///
- [JsonInclude] - public string Details; - - /// - /// 物体预制场景路径, 场景根节点必须是ActivityObject子类 - /// - [JsonInclude] - public string Prefab; - - /// - /// 物体图标
- /// 如果不需要在图鉴或者地图编辑器中显示该物体, 则可以不用设置 - ///
- [JsonInclude] - public string Icon; - - /// - /// 是否在地图编辑器中显示该物体 - /// - [JsonInclude] - public bool ShowInMapEditor; - - /// - /// 返回浅拷贝出的新对象 - /// - public ActivityObject Clone() - { - var inst = new ActivityObject(); - inst.Id = Id; - inst.Type = Type; - inst.Name = Name; - inst.Intro = Intro; - inst.Details = Details; - inst.Prefab = Prefab; - inst.Icon = Icon; - inst.ShowInMapEditor = ShowInMapEditor; - return inst; - } - } -} \ No newline at end of file diff --git a/DungeonShooting_Godot/src/config/ExcelConfig_AmmoBase.cs b/DungeonShooting_Godot/src/config/ExcelConfig_AmmoBase.cs new file mode 100644 index 0000000..ce2fb9d --- /dev/null +++ b/DungeonShooting_Godot/src/config/ExcelConfig_AmmoBase.cs @@ -0,0 +1,26 @@ +using System.Text.Json.Serialization; +using System.Collections.Generic; + +namespace Config; + +public static partial class ExcelConfig +{ + public class AmmoBase + { + /// + /// 武器属性id + /// + [JsonInclude] + public string Id; + + /// + /// 返回浅拷贝出的新对象 + /// + public AmmoBase Clone() + { + var inst = new AmmoBase(); + inst.Id = Id; + return inst; + } + } +} \ No newline at end of file diff --git a/DungeonShooting_Godot/src/config/ExcelConfig_Weapon.cs b/DungeonShooting_Godot/src/config/ExcelConfig_Weapon.cs deleted file mode 100644 index c9dd584..0000000 --- a/DungeonShooting_Godot/src/config/ExcelConfig_Weapon.cs +++ /dev/null @@ -1,499 +0,0 @@ -using System.Text.Json.Serialization; -using System.Collections.Generic; - -namespace Config; - -public static partial class ExcelConfig -{ - public class Weapon - { - /// - /// 武器属性id - /// - [JsonInclude] - public string Id; - - /// - /// 属性绑定武器的Id,如果是Ai使用的数据, 则填空字符串串 - /// - [JsonInclude] - public string WeaponId; - - /// - /// 备注 - /// - [JsonInclude] - public string Remark; - - /// - /// 重量 - /// - [JsonInclude] - public float Weight; - - /// - /// 武器类型:
- /// 1.副武器
- /// 2.主武器
- /// 3.重型武器 - ///
- [JsonInclude] - public byte WeightType; - - /// - /// 是否连续发射, 如果为false, 则每次发射都需要扣动扳机 - /// - [JsonInclude] - public bool ContinuousShoot; - - /// - /// 弹夹容量 - /// - [JsonInclude] - public int AmmoCapacity; - - /// - /// 弹药容量上限 - /// - [JsonInclude] - public int MaxAmmoCapacity; - - /// - /// 默认起始备用弹药数量 - /// - [JsonInclude] - public int StandbyAmmoCapacity; - - /// - /// 装弹时间 (单位: 秒) - /// - [JsonInclude] - public float ReloadTime; - - /// - /// 每粒子弹是否是单独装填, 如果是, 那么每上一发子弹的时间就是 ReloadTime, 可以做霰弹枪装填效果 - /// - [JsonInclude] - public bool AloneReload; - - /// - /// 单独装填时每次装填子弹数量, 必须要将 'AloneReload' 属性设置为 true - /// - [JsonInclude] - public int AloneReloadCount; - - /// - /// 单独装弹模式下,从触发装弹到开始装第一发子弹中间的间隔时间, 必须要将 'AloneReload' 属性设置为 true - /// - [JsonInclude] - public float AloneReloadBeginIntervalTime; - - /// - /// 单独装弹模式下,从装完最后一发子弹到可以射击中间的间隔时间, 必须要将 'AloneReload' 属性设置为 true - /// - [JsonInclude] - public float AloneReloadFinishIntervalTime; - - /// - /// 单独装填的子弹时可以立即射击, 必须要将 'AloneReload' 属性设置为 true - /// - [JsonInclude] - public bool AloneReloadCanShoot; - - /// - /// 是否为松发开火, 也就是松开扳机才开火, 若要启用该属性, 必须将 'ContinuousShoot' 设置为 false - /// - [JsonInclude] - public bool LooseShoot; - - /// - /// 最少需要蓄力多久才能开火, 必须将 'LooseShoot' 设置为 true - /// - [JsonInclude] - public float MinChargeTime; - - /// - /// 单次射击后是否需要手动上膛动作, 必须将 'ContinuousShoot' 设置为 false - /// - [JsonInclude] - public bool ManualBeLoaded; - - /// - /// 手动上膛模式下, 单次射击后是否自动执行上膛操作, 必须将 'ManualBeLoaded' 设置为 true - /// - [JsonInclude] - public bool AutoManualBeLoaded; - - /// - /// 上膛时间, 如果时间为0, 则不会播放上膛动画和音效, 可以视为没有上膛动作, 必须将 'ManualBeLoaded' 设置为 true - /// - [JsonInclude] - public float BeLoadedTime; - - /// - /// 连续发射次数区间, 仅当 'ContinuousShoot' 为 false 时生效
- /// 格式为[value]或者[min,max] - ///
- [JsonInclude] - public int[] ContinuousCountRange; - - /// - /// 按下一次扳机后需要多长时间才能再次感应按下 - /// - [JsonInclude] - public float TriggerInterval; - - /// - /// 初始射速, 初始每分钟能开火次数 - /// - [JsonInclude] - public float StartFiringSpeed; - - /// - /// 最终射速, 最终每分钟能开火次数, 仅当 'ContinuousShoot' 为 true 时生效 - /// - [JsonInclude] - public float FinalFiringSpeed; - - /// - /// 按下扳机并开火后射速每秒增加量 - /// - [JsonInclude] - public float FiringSpeedAddSpeed; - - /// - /// 松开扳机后射速消散速率 - /// - [JsonInclude] - public float FiringSpeedBackSpeed; - - /// - /// 单次开火发射子弹数量区间
- /// 格式为[value]或者[min,max] - ///
- [JsonInclude] - public int[] FireBulletCountRange; - - /// - /// 从按下扳机到发射第一发子弹的延时时, 如果中途松开扳机, 那么延时时间会重新计算, 必须将 'LooseShoot' 设置为 false - /// - [JsonInclude] - public float DelayedTime; - - /// - /// 初始散射半径 - /// - [JsonInclude] - public float StartScatteringRange; - - /// - /// 最终散射半径 - /// - [JsonInclude] - public float FinalScatteringRange; - - /// - /// 每次发射后散射增加值 - /// - [JsonInclude] - public float ScatteringRangeAddValue; - - /// - /// 散射值销退速率 - /// - [JsonInclude] - public float ScatteringRangeBackSpeed; - - /// - /// 开始销退散射值的延时时间 - /// - [JsonInclude] - public float ScatteringRangeBackDelayTime; - - /// - /// 开火后相机抖动强度,只有玩家拾起武器开火才会抖动相机 - /// - [JsonInclude] - public float CameraShake; - - /// - /// 后坐力区间 (仅用于开火后武器身抖动)
- /// 格式为[value]或者[min,max] - ///
- [JsonInclude] - public float[] BacklashRange; - - /// - /// 后坐力偏移回归回归速度 - /// - [JsonInclude] - public float BacklashRegressionSpeed; - - /// - /// 开火后武器口上抬角度 - /// - [JsonInclude] - public float UpliftAngle; - - /// - /// 武器默认上抬角度 - /// - [JsonInclude] - public float DefaultAngle; - - /// - /// 开火后武器口角度恢复速度倍数 - /// - [JsonInclude] - public float UpliftAngleRestore; - - /// - /// 默认射出的子弹id - /// - [JsonInclude] - public string BulletId; - - /// - /// 造成的伤害区间
- /// 格式为[value]或者[min,max] - ///
- [JsonInclude] - public int[] HarmRange; - - /// - /// 造成伤害后击退值区间
- /// 如果发射子弹,则按每发子弹算击退
- /// 格式为[value]或者[min,max] - ///
- [JsonInclude] - public float[] RepelRnage; - - /// - /// 子弹偏移角度区间
- /// 用于设置子弹偏移朝向, 该属性和射半径效果类似, 但与其不同的是, 散射半径是用来控制枪口朝向的, 而该属性是控制子弹朝向的, 可用于制作霰弹枪子弹效果
- /// 格式为[value]或者[min,max] - ///
- [JsonInclude] - public float[] BulletDeviationAngleRange; - - /// - /// 子弹初速度区间
- /// 格式为[value]或者[min,max] - ///
- [JsonInclude] - public float[] BulletSpeedRange; - - /// - /// 子弹飞行距离区间
- /// 格式为[value]或者[min,max] - ///
- [JsonInclude] - public float[] BulletDistanceRange; - - /// - /// 默认抛出的弹壳 - /// - [JsonInclude] - public string ShellId; - - /// - /// 投抛弹壳的延时时间, 在射击或者上膛后会触发抛弹壳效果
- /// 如果为负数, 则不自动抛弹 - ///
- [JsonInclude] - public float ThrowShellDelayTime; - - /// - /// 投抛状态下物体碰撞器大小 - /// - [JsonInclude] - public SerializeVector2 ThrowCollisionSize; - - /// - /// 是否可以触发近战攻击 - /// - [JsonInclude] - public bool CanMeleeAttack; - - /// - /// 近战攻击伤害区间
- /// 格式为格式为[value]或者[min,max] - ///
- [JsonInclude] - public int[] MeleeAttackHarmRange; - - /// - /// 近战攻击造成伤害后击退值区间
- /// 格式为[value]或者[min,max] - ///
- [JsonInclude] - public float[] MeleeAttackRepelRnage; - - /// - /// 射击音效 - /// - public Sound ShootSound; - - /// - /// 开始换弹音效 - /// - public Sound BeginReloadSound; - - /// - /// 开始换弹音效延时时间 - /// - [JsonInclude] - public float BeginReloadSoundDelayTime; - - /// - /// 换弹音效 - /// - public Sound ReloadSound; - - /// - /// 换弹音效延时时间 - /// - [JsonInclude] - public float ReloadSoundDelayTime; - - /// - /// 换弹结束音效 - /// - public Sound ReloadFinishSound; - - /// - /// 换弹结束音效在换弹结束前多久开始
- /// 注意: 如果'AloneReload'为true, 那么当前属性的值应该小于'AloneReloadFinishIntervalTime' - ///
- [JsonInclude] - public float ReloadFinishSoundAdvanceTime; - - /// - /// 上膛音效 - /// - public Sound BeLoadedSound; - - /// - /// 上膛音效延时时间, 这个时间应该小于'BeLoadedTime' - /// - [JsonInclude] - public float BeLoadedSoundDelayTime; - - /// - /// 其他音效 - /// - public Dictionary OtherSoundMap; - - /// - /// Ai属性
- /// Ai 使用该武器时的武器数据, 设置该字段, 可让同一把武器在敌人和玩家手上有不同属性
- /// 如果不填则Ai和玩家使用同一种属性 - ///
- public Weapon AiUseAttribute; - - /// - /// Ai使用该武器开火时的一些额外配置属性
- /// 玩家使用的武器不需要填写该字段 - ///
- public AiAttackAttr AiAttackAttr; - - /// - /// 返回浅拷贝出的新对象 - /// - public Weapon Clone() - { - var inst = new Weapon(); - inst.Id = Id; - inst.WeaponId = WeaponId; - inst.Remark = Remark; - inst.Weight = Weight; - inst.WeightType = WeightType; - inst.ContinuousShoot = ContinuousShoot; - inst.AmmoCapacity = AmmoCapacity; - inst.MaxAmmoCapacity = MaxAmmoCapacity; - inst.StandbyAmmoCapacity = StandbyAmmoCapacity; - inst.ReloadTime = ReloadTime; - inst.AloneReload = AloneReload; - inst.AloneReloadCount = AloneReloadCount; - inst.AloneReloadBeginIntervalTime = AloneReloadBeginIntervalTime; - inst.AloneReloadFinishIntervalTime = AloneReloadFinishIntervalTime; - inst.AloneReloadCanShoot = AloneReloadCanShoot; - inst.LooseShoot = LooseShoot; - inst.MinChargeTime = MinChargeTime; - inst.ManualBeLoaded = ManualBeLoaded; - inst.AutoManualBeLoaded = AutoManualBeLoaded; - inst.BeLoadedTime = BeLoadedTime; - inst.ContinuousCountRange = ContinuousCountRange; - inst.TriggerInterval = TriggerInterval; - inst.StartFiringSpeed = StartFiringSpeed; - inst.FinalFiringSpeed = FinalFiringSpeed; - inst.FiringSpeedAddSpeed = FiringSpeedAddSpeed; - inst.FiringSpeedBackSpeed = FiringSpeedBackSpeed; - inst.FireBulletCountRange = FireBulletCountRange; - inst.DelayedTime = DelayedTime; - inst.StartScatteringRange = StartScatteringRange; - inst.FinalScatteringRange = FinalScatteringRange; - inst.ScatteringRangeAddValue = ScatteringRangeAddValue; - inst.ScatteringRangeBackSpeed = ScatteringRangeBackSpeed; - inst.ScatteringRangeBackDelayTime = ScatteringRangeBackDelayTime; - inst.CameraShake = CameraShake; - inst.BacklashRange = BacklashRange; - inst.BacklashRegressionSpeed = BacklashRegressionSpeed; - inst.UpliftAngle = UpliftAngle; - inst.DefaultAngle = DefaultAngle; - inst.UpliftAngleRestore = UpliftAngleRestore; - inst.BulletId = BulletId; - inst.HarmRange = HarmRange; - inst.RepelRnage = RepelRnage; - inst.BulletDeviationAngleRange = BulletDeviationAngleRange; - inst.BulletSpeedRange = BulletSpeedRange; - inst.BulletDistanceRange = BulletDistanceRange; - inst.ShellId = ShellId; - inst.ThrowShellDelayTime = ThrowShellDelayTime; - inst.ThrowCollisionSize = ThrowCollisionSize; - inst.CanMeleeAttack = CanMeleeAttack; - inst.MeleeAttackHarmRange = MeleeAttackHarmRange; - inst.MeleeAttackRepelRnage = MeleeAttackRepelRnage; - inst.ShootSound = ShootSound; - inst.BeginReloadSound = BeginReloadSound; - inst.BeginReloadSoundDelayTime = BeginReloadSoundDelayTime; - inst.ReloadSound = ReloadSound; - inst.ReloadSoundDelayTime = ReloadSoundDelayTime; - inst.ReloadFinishSound = ReloadFinishSound; - inst.ReloadFinishSoundAdvanceTime = ReloadFinishSoundAdvanceTime; - inst.BeLoadedSound = BeLoadedSound; - inst.BeLoadedSoundDelayTime = BeLoadedSoundDelayTime; - inst.OtherSoundMap = OtherSoundMap; - inst.AiUseAttribute = AiUseAttribute; - inst.AiAttackAttr = AiAttackAttr; - return inst; - } - } - private class Ref_Weapon : Weapon - { - [JsonInclude] - public string __ShootSound; - - [JsonInclude] - public string __BeginReloadSound; - - [JsonInclude] - public string __ReloadSound; - - [JsonInclude] - public string __ReloadFinishSound; - - [JsonInclude] - public string __BeLoadedSound; - - [JsonInclude] - public Dictionary __OtherSoundMap; - - [JsonInclude] - public string __AiUseAttribute; - - [JsonInclude] - public string __AiAttackAttr; - - } -} \ No newline at end of file diff --git a/DungeonShooting_Godot/src/config/ExcelConfig_WeaponBase.cs b/DungeonShooting_Godot/src/config/ExcelConfig_WeaponBase.cs new file mode 100644 index 0000000..bb7ce94 --- /dev/null +++ b/DungeonShooting_Godot/src/config/ExcelConfig_WeaponBase.cs @@ -0,0 +1,499 @@ +using System.Text.Json.Serialization; +using System.Collections.Generic; + +namespace Config; + +public static partial class ExcelConfig +{ + public class WeaponBase + { + /// + /// 武器属性id + /// + [JsonInclude] + public string Id; + + /// + /// 属性绑定武器的Id,如果是Ai使用的数据, 则填空字符串串 + /// + [JsonInclude] + public string WeaponId; + + /// + /// 备注 + /// + [JsonInclude] + public string Remark; + + /// + /// 重量 + /// + [JsonInclude] + public float Weight; + + /// + /// 武器类型:
+ /// 1.副武器
+ /// 2.主武器
+ /// 3.重型武器 + ///
+ [JsonInclude] + public byte WeightType; + + /// + /// 是否连续发射, 如果为false, 则每次发射都需要扣动扳机 + /// + [JsonInclude] + public bool ContinuousShoot; + + /// + /// 弹夹容量 + /// + [JsonInclude] + public int AmmoCapacity; + + /// + /// 弹药容量上限 + /// + [JsonInclude] + public int MaxAmmoCapacity; + + /// + /// 默认起始备用弹药数量 + /// + [JsonInclude] + public int StandbyAmmoCapacity; + + /// + /// 装弹时间 (单位: 秒) + /// + [JsonInclude] + public float ReloadTime; + + /// + /// 每粒子弹是否是单独装填, 如果是, 那么每上一发子弹的时间就是 ReloadTime, 可以做霰弹枪装填效果 + /// + [JsonInclude] + public bool AloneReload; + + /// + /// 单独装填时每次装填子弹数量, 必须要将 'AloneReload' 属性设置为 true + /// + [JsonInclude] + public int AloneReloadCount; + + /// + /// 单独装弹模式下,从触发装弹到开始装第一发子弹中间的间隔时间, 必须要将 'AloneReload' 属性设置为 true + /// + [JsonInclude] + public float AloneReloadBeginIntervalTime; + + /// + /// 单独装弹模式下,从装完最后一发子弹到可以射击中间的间隔时间, 必须要将 'AloneReload' 属性设置为 true + /// + [JsonInclude] + public float AloneReloadFinishIntervalTime; + + /// + /// 单独装填的子弹时可以立即射击, 必须要将 'AloneReload' 属性设置为 true + /// + [JsonInclude] + public bool AloneReloadCanShoot; + + /// + /// 是否为松发开火, 也就是松开扳机才开火, 若要启用该属性, 必须将 'ContinuousShoot' 设置为 false + /// + [JsonInclude] + public bool LooseShoot; + + /// + /// 最少需要蓄力多久才能开火, 必须将 'LooseShoot' 设置为 true + /// + [JsonInclude] + public float MinChargeTime; + + /// + /// 单次射击后是否需要手动上膛动作, 必须将 'ContinuousShoot' 设置为 false + /// + [JsonInclude] + public bool ManualBeLoaded; + + /// + /// 手动上膛模式下, 单次射击后是否自动执行上膛操作, 必须将 'ManualBeLoaded' 设置为 true + /// + [JsonInclude] + public bool AutoManualBeLoaded; + + /// + /// 上膛时间, 如果时间为0, 则不会播放上膛动画和音效, 可以视为没有上膛动作, 必须将 'ManualBeLoaded' 设置为 true + /// + [JsonInclude] + public float BeLoadedTime; + + /// + /// 连续发射次数区间, 仅当 'ContinuousShoot' 为 false 时生效
+ /// 格式为[value]或者[min,max] + ///
+ [JsonInclude] + public int[] ContinuousCountRange; + + /// + /// 按下一次扳机后需要多长时间才能再次感应按下 + /// + [JsonInclude] + public float TriggerInterval; + + /// + /// 初始射速, 初始每分钟能开火次数 + /// + [JsonInclude] + public float StartFiringSpeed; + + /// + /// 最终射速, 最终每分钟能开火次数, 仅当 'ContinuousShoot' 为 true 时生效 + /// + [JsonInclude] + public float FinalFiringSpeed; + + /// + /// 按下扳机并开火后射速每秒增加量 + /// + [JsonInclude] + public float FiringSpeedAddSpeed; + + /// + /// 松开扳机后射速消散速率 + /// + [JsonInclude] + public float FiringSpeedBackSpeed; + + /// + /// 单次开火发射子弹数量区间
+ /// 格式为[value]或者[min,max] + ///
+ [JsonInclude] + public int[] FireBulletCountRange; + + /// + /// 从按下扳机到发射第一发子弹的延时时, 如果中途松开扳机, 那么延时时间会重新计算, 必须将 'LooseShoot' 设置为 false + /// + [JsonInclude] + public float DelayedTime; + + /// + /// 初始散射半径 + /// + [JsonInclude] + public float StartScatteringRange; + + /// + /// 最终散射半径 + /// + [JsonInclude] + public float FinalScatteringRange; + + /// + /// 每次发射后散射增加值 + /// + [JsonInclude] + public float ScatteringRangeAddValue; + + /// + /// 散射值销退速率 + /// + [JsonInclude] + public float ScatteringRangeBackSpeed; + + /// + /// 开始销退散射值的延时时间 + /// + [JsonInclude] + public float ScatteringRangeBackDelayTime; + + /// + /// 开火后相机抖动强度,只有玩家拾起武器开火才会抖动相机 + /// + [JsonInclude] + public float CameraShake; + + /// + /// 后坐力区间 (仅用于开火后武器身抖动)
+ /// 格式为[value]或者[min,max] + ///
+ [JsonInclude] + public float[] BacklashRange; + + /// + /// 后坐力偏移回归回归速度 + /// + [JsonInclude] + public float BacklashRegressionSpeed; + + /// + /// 开火后武器口上抬角度 + /// + [JsonInclude] + public float UpliftAngle; + + /// + /// 武器默认上抬角度 + /// + [JsonInclude] + public float DefaultAngle; + + /// + /// 开火后武器口角度恢复速度倍数 + /// + [JsonInclude] + public float UpliftAngleRestore; + + /// + /// 默认射出的子弹id + /// + [JsonInclude] + public string BulletId; + + /// + /// 造成的伤害区间
+ /// 格式为[value]或者[min,max] + ///
+ [JsonInclude] + public int[] HarmRange; + + /// + /// 造成伤害后击退值区间
+ /// 如果发射子弹,则按每发子弹算击退
+ /// 格式为[value]或者[min,max] + ///
+ [JsonInclude] + public float[] RepelRnage; + + /// + /// 子弹偏移角度区间
+ /// 用于设置子弹偏移朝向, 该属性和射半径效果类似, 但与其不同的是, 散射半径是用来控制枪口朝向的, 而该属性是控制子弹朝向的, 可用于制作霰弹枪子弹效果
+ /// 格式为[value]或者[min,max] + ///
+ [JsonInclude] + public float[] BulletDeviationAngleRange; + + /// + /// 子弹初速度区间
+ /// 格式为[value]或者[min,max] + ///
+ [JsonInclude] + public float[] BulletSpeedRange; + + /// + /// 子弹飞行距离区间
+ /// 格式为[value]或者[min,max] + ///
+ [JsonInclude] + public float[] BulletDistanceRange; + + /// + /// 默认抛出的弹壳 + /// + [JsonInclude] + public string ShellId; + + /// + /// 投抛弹壳的延时时间, 在射击或者上膛后会触发抛弹壳效果
+ /// 如果为负数, 则不自动抛弹 + ///
+ [JsonInclude] + public float ThrowShellDelayTime; + + /// + /// 投抛状态下物体碰撞器大小 + /// + [JsonInclude] + public SerializeVector2 ThrowCollisionSize; + + /// + /// 是否可以触发近战攻击 + /// + [JsonInclude] + public bool CanMeleeAttack; + + /// + /// 近战攻击伤害区间
+ /// 格式为格式为[value]或者[min,max] + ///
+ [JsonInclude] + public int[] MeleeAttackHarmRange; + + /// + /// 近战攻击造成伤害后击退值区间
+ /// 格式为[value]或者[min,max] + ///
+ [JsonInclude] + public float[] MeleeAttackRepelRnage; + + /// + /// 射击音效 + /// + public Sound ShootSound; + + /// + /// 开始换弹音效 + /// + public Sound BeginReloadSound; + + /// + /// 开始换弹音效延时时间 + /// + [JsonInclude] + public float BeginReloadSoundDelayTime; + + /// + /// 换弹音效 + /// + public Sound ReloadSound; + + /// + /// 换弹音效延时时间 + /// + [JsonInclude] + public float ReloadSoundDelayTime; + + /// + /// 换弹结束音效 + /// + public Sound ReloadFinishSound; + + /// + /// 换弹结束音效在换弹结束前多久开始
+ /// 注意: 如果'AloneReload'为true, 那么当前属性的值应该小于'AloneReloadFinishIntervalTime' + ///
+ [JsonInclude] + public float ReloadFinishSoundAdvanceTime; + + /// + /// 上膛音效 + /// + public Sound BeLoadedSound; + + /// + /// 上膛音效延时时间, 这个时间应该小于'BeLoadedTime' + /// + [JsonInclude] + public float BeLoadedSoundDelayTime; + + /// + /// 其他音效 + /// + public Dictionary OtherSoundMap; + + /// + /// Ai属性
+ /// Ai 使用该武器时的武器数据, 设置该字段, 可让同一把武器在敌人和玩家手上有不同属性
+ /// 如果不填则Ai和玩家使用同一种属性 + ///
+ public WeaponBase AiUseAttribute; + + /// + /// Ai使用该武器开火时的一些额外配置属性
+ /// 玩家使用的武器不需要填写该字段 + ///
+ public AiAttackAttr AiAttackAttr; + + /// + /// 返回浅拷贝出的新对象 + /// + public WeaponBase Clone() + { + var inst = new WeaponBase(); + inst.Id = Id; + inst.WeaponId = WeaponId; + inst.Remark = Remark; + inst.Weight = Weight; + inst.WeightType = WeightType; + inst.ContinuousShoot = ContinuousShoot; + inst.AmmoCapacity = AmmoCapacity; + inst.MaxAmmoCapacity = MaxAmmoCapacity; + inst.StandbyAmmoCapacity = StandbyAmmoCapacity; + inst.ReloadTime = ReloadTime; + inst.AloneReload = AloneReload; + inst.AloneReloadCount = AloneReloadCount; + inst.AloneReloadBeginIntervalTime = AloneReloadBeginIntervalTime; + inst.AloneReloadFinishIntervalTime = AloneReloadFinishIntervalTime; + inst.AloneReloadCanShoot = AloneReloadCanShoot; + inst.LooseShoot = LooseShoot; + inst.MinChargeTime = MinChargeTime; + inst.ManualBeLoaded = ManualBeLoaded; + inst.AutoManualBeLoaded = AutoManualBeLoaded; + inst.BeLoadedTime = BeLoadedTime; + inst.ContinuousCountRange = ContinuousCountRange; + inst.TriggerInterval = TriggerInterval; + inst.StartFiringSpeed = StartFiringSpeed; + inst.FinalFiringSpeed = FinalFiringSpeed; + inst.FiringSpeedAddSpeed = FiringSpeedAddSpeed; + inst.FiringSpeedBackSpeed = FiringSpeedBackSpeed; + inst.FireBulletCountRange = FireBulletCountRange; + inst.DelayedTime = DelayedTime; + inst.StartScatteringRange = StartScatteringRange; + inst.FinalScatteringRange = FinalScatteringRange; + inst.ScatteringRangeAddValue = ScatteringRangeAddValue; + inst.ScatteringRangeBackSpeed = ScatteringRangeBackSpeed; + inst.ScatteringRangeBackDelayTime = ScatteringRangeBackDelayTime; + inst.CameraShake = CameraShake; + inst.BacklashRange = BacklashRange; + inst.BacklashRegressionSpeed = BacklashRegressionSpeed; + inst.UpliftAngle = UpliftAngle; + inst.DefaultAngle = DefaultAngle; + inst.UpliftAngleRestore = UpliftAngleRestore; + inst.BulletId = BulletId; + inst.HarmRange = HarmRange; + inst.RepelRnage = RepelRnage; + inst.BulletDeviationAngleRange = BulletDeviationAngleRange; + inst.BulletSpeedRange = BulletSpeedRange; + inst.BulletDistanceRange = BulletDistanceRange; + inst.ShellId = ShellId; + inst.ThrowShellDelayTime = ThrowShellDelayTime; + inst.ThrowCollisionSize = ThrowCollisionSize; + inst.CanMeleeAttack = CanMeleeAttack; + inst.MeleeAttackHarmRange = MeleeAttackHarmRange; + inst.MeleeAttackRepelRnage = MeleeAttackRepelRnage; + inst.ShootSound = ShootSound; + inst.BeginReloadSound = BeginReloadSound; + inst.BeginReloadSoundDelayTime = BeginReloadSoundDelayTime; + inst.ReloadSound = ReloadSound; + inst.ReloadSoundDelayTime = ReloadSoundDelayTime; + inst.ReloadFinishSound = ReloadFinishSound; + inst.ReloadFinishSoundAdvanceTime = ReloadFinishSoundAdvanceTime; + inst.BeLoadedSound = BeLoadedSound; + inst.BeLoadedSoundDelayTime = BeLoadedSoundDelayTime; + inst.OtherSoundMap = OtherSoundMap; + inst.AiUseAttribute = AiUseAttribute; + inst.AiAttackAttr = AiAttackAttr; + return inst; + } + } + private class Ref_WeaponBase : WeaponBase + { + [JsonInclude] + public string __ShootSound; + + [JsonInclude] + public string __BeginReloadSound; + + [JsonInclude] + public string __ReloadSound; + + [JsonInclude] + public string __ReloadFinishSound; + + [JsonInclude] + public string __BeLoadedSound; + + [JsonInclude] + public Dictionary __OtherSoundMap; + + [JsonInclude] + public string __AiUseAttribute; + + [JsonInclude] + public string __AiAttackAttr; + + } +} \ No newline at end of file diff --git a/DungeonShooting_Godot/src/framework/activity/ActivityObject.cs b/DungeonShooting_Godot/src/framework/activity/ActivityObject.cs index 966f5da..004b3e5 100644 --- a/DungeonShooting_Godot/src/framework/activity/ActivityObject.cs +++ b/DungeonShooting_Godot/src/framework/activity/ActivityObject.cs @@ -20,7 +20,7 @@ /// /// 当前物体对应的配置数据, 如果不是通过 ActivityObject.Create() 函数创建出来的对象那么 ItemConfig 为 null /// - public ExcelConfig.ActivityObject ItemConfig { get; private set; } + public ExcelConfig.ActivityBase ItemConfig { get; private set; } /// /// 是否是静态物体, 如果为true, 则会禁用移动处理 diff --git a/DungeonShooting_Godot/src/framework/activity/ActivityObject_Init.cs b/DungeonShooting_Godot/src/framework/activity/ActivityObject_Init.cs index 6806cfc..ac2a591 100644 --- a/DungeonShooting_Godot/src/framework/activity/ActivityObject_Init.cs +++ b/DungeonShooting_Godot/src/framework/activity/ActivityObject_Init.cs @@ -171,37 +171,37 @@ } private static void _InitRegister() { - _activityRegisterMap.Add("role0001", new RegisterActivityData("res://prefab/role/Role0001.tscn", ExcelConfig.ActivityObject_Map["role0001"])); - _activityRegisterMap.Add("enemy0001", new RegisterActivityData("res://prefab/role/Enemy0001.tscn", ExcelConfig.ActivityObject_Map["enemy0001"])); - _activityRegisterMap.Add("weapon0001", new RegisterActivityData("res://prefab/weapon/Weapon0001.tscn", ExcelConfig.ActivityObject_Map["weapon0001"])); - _activityRegisterMap.Add("weapon0002", new RegisterActivityData("res://prefab/weapon/Weapon0002.tscn", ExcelConfig.ActivityObject_Map["weapon0002"])); - _activityRegisterMap.Add("weapon0003", new RegisterActivityData("res://prefab/weapon/Weapon0003.tscn", ExcelConfig.ActivityObject_Map["weapon0003"])); - _activityRegisterMap.Add("weapon0004", new RegisterActivityData("res://prefab/weapon/Weapon0004.tscn", ExcelConfig.ActivityObject_Map["weapon0004"])); - _activityRegisterMap.Add("weapon0005", new RegisterActivityData("res://prefab/weapon/Weapon0005.tscn", ExcelConfig.ActivityObject_Map["weapon0005"])); - _activityRegisterMap.Add("weapon0006", new RegisterActivityData("res://prefab/weapon/Weapon0006.tscn", ExcelConfig.ActivityObject_Map["weapon0006"])); - _activityRegisterMap.Add("weapon0007", new RegisterActivityData("res://prefab/weapon/Weapon0007.tscn", ExcelConfig.ActivityObject_Map["weapon0007"])); - _activityRegisterMap.Add("bullet0001", new RegisterActivityData("res://prefab/ammo/Bullet0001.tscn", ExcelConfig.ActivityObject_Map["bullet0001"])); - _activityRegisterMap.Add("bullet0002", new RegisterActivityData("res://prefab/ammo/Bullet0002.tscn", ExcelConfig.ActivityObject_Map["bullet0002"])); - _activityRegisterMap.Add("bullet0003", new RegisterActivityData("res://prefab/ammo/Bullet0003.tscn", ExcelConfig.ActivityObject_Map["bullet0003"])); - _activityRegisterMap.Add("shell0001", new RegisterActivityData("res://prefab/shell/Shell0001.tscn", ExcelConfig.ActivityObject_Map["shell0001"])); - _activityRegisterMap.Add("shell0002", new RegisterActivityData("res://prefab/shell/Shell0002.tscn", ExcelConfig.ActivityObject_Map["shell0002"])); - _activityRegisterMap.Add("shell0003", new RegisterActivityData("res://prefab/shell/Shell0003.tscn", ExcelConfig.ActivityObject_Map["shell0003"])); - _activityRegisterMap.Add("effect0001", new RegisterActivityData("res://prefab/effect/enemy/Effect0001.tscn", ExcelConfig.ActivityObject_Map["effect0001"])); - _activityRegisterMap.Add("prop0001", new RegisterActivityData("res://prefab/effect/enemy/Effect0001.tscn", ExcelConfig.ActivityObject_Map["prop0001"])); - _activityRegisterMap.Add("prop0002", new RegisterActivityData("res://prefab/prop/buff/BuffProp0002.tscn", ExcelConfig.ActivityObject_Map["prop0002"])); - _activityRegisterMap.Add("prop0003", new RegisterActivityData("res://prefab/prop/buff/BuffProp0003.tscn", ExcelConfig.ActivityObject_Map["prop0003"])); - _activityRegisterMap.Add("prop0004", new RegisterActivityData("res://prefab/prop/buff/BuffProp0004.tscn", ExcelConfig.ActivityObject_Map["prop0004"])); - _activityRegisterMap.Add("prop0005", new RegisterActivityData("res://prefab/prop/buff/BuffProp0005.tscn", ExcelConfig.ActivityObject_Map["prop0005"])); - _activityRegisterMap.Add("prop0006", new RegisterActivityData("res://prefab/prop/buff/BuffProp0006.tscn", ExcelConfig.ActivityObject_Map["prop0006"])); - _activityRegisterMap.Add("prop0007", new RegisterActivityData("res://prefab/prop/buff/BuffProp0007.tscn", ExcelConfig.ActivityObject_Map["prop0007"])); - _activityRegisterMap.Add("prop0008", new RegisterActivityData("res://prefab/prop/buff/BuffProp0008.tscn", ExcelConfig.ActivityObject_Map["prop0008"])); - _activityRegisterMap.Add("prop0009", new RegisterActivityData("res://prefab/prop/buff/BuffProp0009.tscn", ExcelConfig.ActivityObject_Map["prop0009"])); - _activityRegisterMap.Add("prop0010", new RegisterActivityData("res://prefab/prop/buff/BuffProp0010.tscn", ExcelConfig.ActivityObject_Map["prop0010"])); - _activityRegisterMap.Add("prop5000", new RegisterActivityData("res://prefab/prop/active/ActiveProp5000.tscn", ExcelConfig.ActivityObject_Map["prop5000"])); - _activityRegisterMap.Add("prop5001", new RegisterActivityData("res://prefab/prop/active/ActiveProp5001.tscn", ExcelConfig.ActivityObject_Map["prop5001"])); - _activityRegisterMap.Add("other_door_e", new RegisterActivityData("res://prefab/map/RoomDoor_E.tscn", ExcelConfig.ActivityObject_Map["other_door_e"])); - _activityRegisterMap.Add("other_door_w", new RegisterActivityData("res://prefab/map/RoomDoor_W.tscn", ExcelConfig.ActivityObject_Map["other_door_w"])); - _activityRegisterMap.Add("other_door_s", new RegisterActivityData("res://prefab/map/RoomDoor_S.tscn", ExcelConfig.ActivityObject_Map["other_door_s"])); - _activityRegisterMap.Add("other_door_n", new RegisterActivityData("res://prefab/map/RoomDoor_N.tscn", ExcelConfig.ActivityObject_Map["other_door_n"])); + _activityRegisterMap.Add("role0001", new RegisterActivityData("res://prefab/role/Role0001.tscn", ExcelConfig.ActivityBase_Map["role0001"])); + _activityRegisterMap.Add("enemy0001", new RegisterActivityData("res://prefab/role/Enemy0001.tscn", ExcelConfig.ActivityBase_Map["enemy0001"])); + _activityRegisterMap.Add("weapon0001", new RegisterActivityData("res://prefab/weapon/Weapon0001.tscn", ExcelConfig.ActivityBase_Map["weapon0001"])); + _activityRegisterMap.Add("weapon0002", new RegisterActivityData("res://prefab/weapon/Weapon0002.tscn", ExcelConfig.ActivityBase_Map["weapon0002"])); + _activityRegisterMap.Add("weapon0003", new RegisterActivityData("res://prefab/weapon/Weapon0003.tscn", ExcelConfig.ActivityBase_Map["weapon0003"])); + _activityRegisterMap.Add("weapon0004", new RegisterActivityData("res://prefab/weapon/Weapon0004.tscn", ExcelConfig.ActivityBase_Map["weapon0004"])); + _activityRegisterMap.Add("weapon0005", new RegisterActivityData("res://prefab/weapon/Weapon0005.tscn", ExcelConfig.ActivityBase_Map["weapon0005"])); + _activityRegisterMap.Add("weapon0006", new RegisterActivityData("res://prefab/weapon/Weapon0006.tscn", ExcelConfig.ActivityBase_Map["weapon0006"])); + _activityRegisterMap.Add("weapon0007", new RegisterActivityData("res://prefab/weapon/Weapon0007.tscn", ExcelConfig.ActivityBase_Map["weapon0007"])); + _activityRegisterMap.Add("bullet0001", new RegisterActivityData("res://prefab/ammo/Bullet0001.tscn", ExcelConfig.ActivityBase_Map["bullet0001"])); + _activityRegisterMap.Add("bullet0002", new RegisterActivityData("res://prefab/ammo/Bullet0002.tscn", ExcelConfig.ActivityBase_Map["bullet0002"])); + _activityRegisterMap.Add("bullet0003", new RegisterActivityData("res://prefab/ammo/Bullet0003.tscn", ExcelConfig.ActivityBase_Map["bullet0003"])); + _activityRegisterMap.Add("shell0001", new RegisterActivityData("res://prefab/shell/Shell0001.tscn", ExcelConfig.ActivityBase_Map["shell0001"])); + _activityRegisterMap.Add("shell0002", new RegisterActivityData("res://prefab/shell/Shell0002.tscn", ExcelConfig.ActivityBase_Map["shell0002"])); + _activityRegisterMap.Add("shell0003", new RegisterActivityData("res://prefab/shell/Shell0003.tscn", ExcelConfig.ActivityBase_Map["shell0003"])); + _activityRegisterMap.Add("effect0001", new RegisterActivityData("res://prefab/effect/enemy/Effect0001.tscn", ExcelConfig.ActivityBase_Map["effect0001"])); + _activityRegisterMap.Add("prop0001", new RegisterActivityData("res://prefab/effect/enemy/Effect0001.tscn", ExcelConfig.ActivityBase_Map["prop0001"])); + _activityRegisterMap.Add("prop0002", new RegisterActivityData("res://prefab/prop/buff/BuffProp0002.tscn", ExcelConfig.ActivityBase_Map["prop0002"])); + _activityRegisterMap.Add("prop0003", new RegisterActivityData("res://prefab/prop/buff/BuffProp0003.tscn", ExcelConfig.ActivityBase_Map["prop0003"])); + _activityRegisterMap.Add("prop0004", new RegisterActivityData("res://prefab/prop/buff/BuffProp0004.tscn", ExcelConfig.ActivityBase_Map["prop0004"])); + _activityRegisterMap.Add("prop0005", new RegisterActivityData("res://prefab/prop/buff/BuffProp0005.tscn", ExcelConfig.ActivityBase_Map["prop0005"])); + _activityRegisterMap.Add("prop0006", new RegisterActivityData("res://prefab/prop/buff/BuffProp0006.tscn", ExcelConfig.ActivityBase_Map["prop0006"])); + _activityRegisterMap.Add("prop0007", new RegisterActivityData("res://prefab/prop/buff/BuffProp0007.tscn", ExcelConfig.ActivityBase_Map["prop0007"])); + _activityRegisterMap.Add("prop0008", new RegisterActivityData("res://prefab/prop/buff/BuffProp0008.tscn", ExcelConfig.ActivityBase_Map["prop0008"])); + _activityRegisterMap.Add("prop0009", new RegisterActivityData("res://prefab/prop/buff/BuffProp0009.tscn", ExcelConfig.ActivityBase_Map["prop0009"])); + _activityRegisterMap.Add("prop0010", new RegisterActivityData("res://prefab/prop/buff/BuffProp0010.tscn", ExcelConfig.ActivityBase_Map["prop0010"])); + _activityRegisterMap.Add("prop5000", new RegisterActivityData("res://prefab/prop/active/ActiveProp5000.tscn", ExcelConfig.ActivityBase_Map["prop5000"])); + _activityRegisterMap.Add("prop5001", new RegisterActivityData("res://prefab/prop/active/ActiveProp5001.tscn", ExcelConfig.ActivityBase_Map["prop5001"])); + _activityRegisterMap.Add("other_door_e", new RegisterActivityData("res://prefab/map/RoomDoor_E.tscn", ExcelConfig.ActivityBase_Map["other_door_e"])); + _activityRegisterMap.Add("other_door_w", new RegisterActivityData("res://prefab/map/RoomDoor_W.tscn", ExcelConfig.ActivityBase_Map["other_door_w"])); + _activityRegisterMap.Add("other_door_s", new RegisterActivityData("res://prefab/map/RoomDoor_S.tscn", ExcelConfig.ActivityBase_Map["other_door_s"])); + _activityRegisterMap.Add("other_door_n", new RegisterActivityData("res://prefab/map/RoomDoor_N.tscn", ExcelConfig.ActivityBase_Map["other_door_n"])); } } diff --git a/DungeonShooting_Godot/src/framework/activity/ActivityObject_Register.cs b/DungeonShooting_Godot/src/framework/activity/ActivityObject_Register.cs index 28a5d5a..d5126dd 100644 --- a/DungeonShooting_Godot/src/framework/activity/ActivityObject_Register.cs +++ b/DungeonShooting_Godot/src/framework/activity/ActivityObject_Register.cs @@ -8,14 +8,14 @@ { private class RegisterActivityData { - public RegisterActivityData(string path, ExcelConfig.ActivityObject config) + public RegisterActivityData(string path, ExcelConfig.ActivityBase config) { Path = path; Config = config; } public string Path; - public ExcelConfig.ActivityObject Config; + public ExcelConfig.ActivityBase Config; } //负责存放所有注册对象数据 diff --git a/DungeonShooting_Godot/src/framework/generator/ExcelGenerator.cs b/DungeonShooting_Godot/src/framework/generator/ExcelGenerator.cs index ee59049..d1d1b4f 100644 --- a/DungeonShooting_Godot/src/framework/generator/ExcelGenerator.cs +++ b/DungeonShooting_Godot/src/framework/generator/ExcelGenerator.cs @@ -52,7 +52,7 @@ code1 += $" /// 简介: {intro.Replace("\n", "
\n /// ")}\n"; code1 += $" ///
\n"; code1 += $" public const string Id_{id} = \"{id}\";\n"; - code2 += $" _activityRegisterMap.Add(\"{id}\", new RegisterActivityData(\"{item["Prefab"]}\", ExcelConfig.ActivityObject_Map[\"{id}\"]));\n"; + code2 += $" _activityRegisterMap.Add(\"{id}\", new RegisterActivityData(\"{item["Prefab"]}\", ExcelConfig.ActivityBase_Map[\"{id}\"]));\n"; } var str = $"using Config;\n\n"; diff --git a/DungeonShooting_Godot/src/framework/map/preinstall/RoomPreinstall.cs b/DungeonShooting_Godot/src/framework/map/preinstall/RoomPreinstall.cs index 409eeab..987771d 100644 --- a/DungeonShooting_Godot/src/framework/map/preinstall/RoomPreinstall.cs +++ b/DungeonShooting_Godot/src/framework/map/preinstall/RoomPreinstall.cs @@ -120,7 +120,7 @@ mark.DerivedAttr = new Dictionary(); mark.VerticalSpeed = markInfoItem.VerticalSpeed; mark.Altitude = markInfoItem.Altitude; - mark.ActivityType = (ActivityType)ExcelConfig.ActivityObject_Map[markInfoItem.Id].Type; + mark.ActivityType = (ActivityType)ExcelConfig.ActivityBase_Map[markInfoItem.Id].Type; if (mark.ActivityType == ActivityType.Enemy) //敌人类型 { diff --git a/DungeonShooting_Godot/src/game/activity/weapon/Weapon.cs b/DungeonShooting_Godot/src/game/activity/weapon/Weapon.cs index 706d4b1..f4bfd88 100644 --- a/DungeonShooting_Godot/src/game/activity/weapon/Weapon.cs +++ b/DungeonShooting_Godot/src/game/activity/weapon/Weapon.cs @@ -11,21 +11,21 @@ /// /// 武器使用的属性数据, 该属性会根据是否是玩家使用武器, 如果是Ai使用武器, 则会返回 AiUseAttribute 的属性对象 /// - public ExcelConfig.Weapon Attribute => _weaponAttribute; + public ExcelConfig.WeaponBase Attribute => _weaponAttribute; /// /// Ai使用该武器的属性 /// - public ExcelConfig.Weapon AiUseAttribute => _aiWeaponAttribute; + public ExcelConfig.WeaponBase AiUseAttribute => _aiWeaponAttribute; /// /// 玩家使用该武器的属性 /// - public ExcelConfig.Weapon PlayerUseAttribute => _playerWeaponAttribute; + public ExcelConfig.WeaponBase PlayerUseAttribute => _playerWeaponAttribute; - private ExcelConfig.Weapon _weaponAttribute; - private ExcelConfig.Weapon _playerWeaponAttribute; - private ExcelConfig.Weapon _aiWeaponAttribute; + private ExcelConfig.WeaponBase _weaponAttribute; + private ExcelConfig.WeaponBase _playerWeaponAttribute; + private ExcelConfig.WeaponBase _aiWeaponAttribute; /// /// 武器攻击的目标阵营 @@ -236,8 +236,8 @@ private uint _tempLayer; private static bool _init = false; - private static Dictionary _weaponAttributeMap = - new Dictionary(); + private static Dictionary _weaponAttributeMap = + new Dictionary(); /// /// 初始化武器属性数据 @@ -250,7 +250,7 @@ } _init = true; - foreach (var weaponAttr in ExcelConfig.Weapon_List) + foreach (var weaponAttr in ExcelConfig.WeaponBase_List) { if (!string.IsNullOrEmpty(weaponAttr.WeaponId)) { @@ -262,7 +262,7 @@ } } - private static ExcelConfig.Weapon _GetWeaponAttribute(string itemId) + private static ExcelConfig.WeaponBase _GetWeaponAttribute(string itemId) { if (_weaponAttributeMap.TryGetValue(itemId, out var attr)) { @@ -281,7 +281,7 @@ /// /// 初始化武器属性 /// - public void InitWeapon(ExcelConfig.Weapon attribute) + public void InitWeapon(ExcelConfig.WeaponBase attribute) { _playerWeaponAttribute = attribute; _weaponAttribute = attribute; @@ -1076,7 +1076,7 @@ /// /// 根据触扳机的角色对象判断该角色使用的武器数据 /// - public ExcelConfig.Weapon GetUseAttribute(Role triggerRole) + public ExcelConfig.WeaponBase GetUseAttribute(Role triggerRole) { if (triggerRole == null || !triggerRole.IsAi) { diff --git a/DungeonShooting_Godot/src/game/manager/EditorWindowManager.cs b/DungeonShooting_Godot/src/game/manager/EditorWindowManager.cs index 878db9c..35f7451 100644 --- a/DungeonShooting_Godot/src/game/manager/EditorWindowManager.cs +++ b/DungeonShooting_Godot/src/game/manager/EditorWindowManager.cs @@ -332,7 +332,7 @@ /// 查找的类型, 如果为 none, 则查找所有类型数据 /// 选中物体时回调 /// 所属父级Ui - public static void ShowSelectObject(ActivityType findType, Action onSelectObject, UiBase parentUi = null) + public static void ShowSelectObject(ActivityType findType, Action onSelectObject, UiBase parentUi = null) { var window = CreateWindowInstance(parentUi); window.S_Window.Instance.Size = new Vector2I(1000, 700); diff --git a/DungeonShooting_Godot/src/game/ui/mapEditorCreateMark/MapEditorCreateMarkPanel.cs b/DungeonShooting_Godot/src/game/ui/mapEditorCreateMark/MapEditorCreateMarkPanel.cs index ca97690..0dce3e9 100644 --- a/DungeonShooting_Godot/src/game/ui/mapEditorCreateMark/MapEditorCreateMarkPanel.cs +++ b/DungeonShooting_Godot/src/game/ui/mapEditorCreateMark/MapEditorCreateMarkPanel.cs @@ -201,7 +201,7 @@ } //选中物体回调, 创建标记数据 - private void OnSelectObject(ExcelConfig.ActivityObject activityObject) + private void OnSelectObject(ExcelConfig.ActivityBase activityObject) { _grid.Add(new MarkInfoItem() { diff --git a/DungeonShooting_Godot/src/game/ui/mapEditorCreateMark/MarkObjectCell.cs b/DungeonShooting_Godot/src/game/ui/mapEditorCreateMark/MarkObjectCell.cs index aefa59c..4665a2a 100644 --- a/DungeonShooting_Godot/src/game/ui/mapEditorCreateMark/MarkObjectCell.cs +++ b/DungeonShooting_Godot/src/game/ui/mapEditorCreateMark/MarkObjectCell.cs @@ -11,7 +11,7 @@ private MapEditorCreateMark.ExpandPanel _expandPanel; //自定义额外属性 private List _attributeBases; - private ExcelConfig.ActivityObject _activityObject; + private ExcelConfig.ActivityBase _activityObject; private MapEditorCreateMark.NumberBar _altitude; private MapEditorCreateMark.NumberBar _vSpeed; @@ -25,7 +25,7 @@ public override void OnSetData(MarkInfoItem data) { //记得判断随机对象, 后面再做 - _activityObject = ExcelConfig.ActivityObject_Map[data.Id]; + _activityObject = ExcelConfig.ActivityBase_Map[data.Id]; //图标 if (string.IsNullOrEmpty(_activityObject.Icon)) { @@ -161,7 +161,7 @@ } } - private void CreateExpandPanel(ExcelConfig.ActivityObject activityObject, MarkInfoItem markInfoItem) + private void CreateExpandPanel(ExcelConfig.ActivityBase activityObject, MarkInfoItem markInfoItem) { if (_expandPanel != null) { @@ -218,7 +218,7 @@ numberBar.L_NumInput.Instance.MinValue = 0; numberBar2.L_NumInput.Instance.MinValue = 0; //武器配置数据 - var weapon = ExcelConfig.Weapon_List.Find(weapon => weapon.WeaponId == activityObject.Id); + var weapon = ExcelConfig.WeaponBase_List.Find(weapon => weapon.WeaponId == activityObject.Id); if (weapon != null) { numberBar.L_NumInput.Instance.MaxValue = weapon.AmmoCapacity; //弹夹上限 @@ -276,7 +276,7 @@ } if (markInfoItem.Attr.TryGetValue("Weapon", out var weaponId)) //武器 { - weaponBar.Instance.SelectWeapon(ExcelConfig.Weapon_List.Find(w => w.WeaponId == weaponId)); + weaponBar.Instance.SelectWeapon(ExcelConfig.WeaponBase_List.Find(w => w.WeaponId == weaponId)); } if (markInfoItem.Attr.TryGetValue("CurrAmmon", out var currAmmon)) //弹夹弹药量 { diff --git a/DungeonShooting_Godot/src/game/ui/mapEditorCreateMark/attribute/ObjectAttribute.cs b/DungeonShooting_Godot/src/game/ui/mapEditorCreateMark/attribute/ObjectAttribute.cs index 0761a9a..7c7e837 100644 --- a/DungeonShooting_Godot/src/game/ui/mapEditorCreateMark/attribute/ObjectAttribute.cs +++ b/DungeonShooting_Godot/src/game/ui/mapEditorCreateMark/attribute/ObjectAttribute.cs @@ -10,7 +10,7 @@ public ActivityType ActivityType { get; set; } private MapEditorCreateMark.ObjectBar _objectBar; //选择的武器数据 - private ExcelConfig.Weapon _selectWeapon; + private ExcelConfig.WeaponBase _selectWeapon; //关联属性 private MapEditorCreateMark.NumberBar _currAmmonAttr; private MapEditorCreateMark.NumberBar _residueAmmoAttr; @@ -48,9 +48,9 @@ SelectWeapon(null); } - private void OnSelectObject(ExcelConfig.ActivityObject activityObject) + private void OnSelectObject(ExcelConfig.ActivityBase activityObject) { - var weapon = ExcelConfig.Weapon_List.Find(weapon => weapon.WeaponId == activityObject.Id); + var weapon = ExcelConfig.WeaponBase_List.Find(weapon => weapon.WeaponId == activityObject.Id); if (weapon != null) { SelectWeapon(weapon); @@ -60,7 +60,7 @@ /// /// 设置选择的武器物体 /// - public void SelectWeapon(ExcelConfig.Weapon weapon) + public void SelectWeapon(ExcelConfig.WeaponBase weapon) { if (weapon == null) { @@ -76,7 +76,7 @@ { _objectBar.L_HBoxContainer.L_DeleteButton.Instance.Visible = true; _selectWeapon = weapon; - var o = ExcelConfig.ActivityObject_Map[weapon.WeaponId]; + var o = ExcelConfig.ActivityBase_Map[weapon.WeaponId]; //显示关联属性 _currAmmonAttr.Instance.Visible = true; _residueAmmoAttr.Instance.Visible = true; diff --git a/DungeonShooting_Godot/src/game/ui/mapEditorMapMark/EditorMarkCell.cs b/DungeonShooting_Godot/src/game/ui/mapEditorMapMark/EditorMarkCell.cs index c36e547..8f96ec5 100644 --- a/DungeonShooting_Godot/src/game/ui/mapEditorMapMark/EditorMarkCell.cs +++ b/DungeonShooting_Godot/src/game/ui/mapEditorMapMark/EditorMarkCell.cs @@ -30,7 +30,7 @@ str += ","; } - str += ExcelConfig.ActivityObject_Map[markInfoItem.Id].Name; + str += ExcelConfig.ActivityBase_Map[markInfoItem.Id].Name; } text += str; } diff --git a/DungeonShooting_Godot/src/game/ui/mapEditorSelectObject/MapEditorSelectObjectPanel.cs b/DungeonShooting_Godot/src/game/ui/mapEditorSelectObject/MapEditorSelectObjectPanel.cs index c06f20b..5776073 100644 --- a/DungeonShooting_Godot/src/game/ui/mapEditorSelectObject/MapEditorSelectObjectPanel.cs +++ b/DungeonShooting_Godot/src/game/ui/mapEditorSelectObject/MapEditorSelectObjectPanel.cs @@ -10,7 +10,7 @@ /// /// 双击选中物体事件 /// - public event Action SelectObjectEvent; + public event Action SelectObjectEvent; public class TypeButtonData { @@ -32,7 +32,7 @@ //类型网格组件 private UiGrid _typeGrid; //物体网格组件 - private UiGrid _objectGrid; + private UiGrid _objectGrid; //允许出现在该面板中的物体类型 private int[] _typeArray = new[] { 4, 5, 9 }; @@ -45,7 +45,7 @@ _typeGrid.SetHorizontalExpand(true); _typeGrid.SetCellOffset(new Vector2I(0, 5)); - _objectGrid = new UiGrid(S_ObjectButton, typeof(ObjectButtonCell)); + _objectGrid = new UiGrid(S_ObjectButton, typeof(ObjectButtonCell)); _objectGrid.SetAutoColumns(true); _objectGrid.SetHorizontalExpand(true); _objectGrid.SetCellOffset(new Vector2I(10, 10)); @@ -97,7 +97,7 @@ } //搜索结果 - var arr = ExcelConfig.ActivityObject_List.Where( + var arr = ExcelConfig.ActivityBase_List.Where( o => { return o.ShowInMapEditor && @@ -111,7 +111,7 @@ /// /// 选中对象 /// - public void SelectCell(ExcelConfig.ActivityObject activityObject) + public void SelectCell(ExcelConfig.ActivityBase activityObject) { if (SelectObjectEvent != null) { @@ -122,7 +122,7 @@ /// /// 获取选中的数据 /// - public ExcelConfig.ActivityObject GetSelectData() + public ExcelConfig.ActivityBase GetSelectData() { return _objectGrid.SelectData; } diff --git a/DungeonShooting_Godot/src/game/ui/mapEditorSelectObject/ObjectButtonCell.cs b/DungeonShooting_Godot/src/game/ui/mapEditorSelectObject/ObjectButtonCell.cs index 9c4e03f..3b325c5 100644 --- a/DungeonShooting_Godot/src/game/ui/mapEditorSelectObject/ObjectButtonCell.cs +++ b/DungeonShooting_Godot/src/game/ui/mapEditorSelectObject/ObjectButtonCell.cs @@ -3,14 +3,14 @@ namespace UI.MapEditorSelectObject; -public class ObjectButtonCell : UiCell +public class ObjectButtonCell : UiCell { public override void OnInit() { CellNode.L_Select.Instance.Visible = false; } - public override void OnSetData(ExcelConfig.ActivityObject data) + public override void OnSetData(ExcelConfig.ActivityBase data) { CellNode.L_ObjectName.Instance.Text = data.Name; if (!string.IsNullOrEmpty(data.Icon))