diff --git a/DungeonShooting_Godot/excel/excelFile/ActivityObject.xlsx b/DungeonShooting_Godot/excel/excelFile/ActivityObject.xlsx
index bc275f4..86823dc 100644
--- a/DungeonShooting_Godot/excel/excelFile/ActivityObject.xlsx
+++ b/DungeonShooting_Godot/excel/excelFile/ActivityObject.xlsx
Binary files differ
diff --git a/DungeonShooting_Godot/excel/excelFile/Sound.xlsx b/DungeonShooting_Godot/excel/excelFile/Sound.xlsx
index c589bfb..1da2165 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
index 22ce387..1272beb 100644
--- a/DungeonShooting_Godot/excel/excelFile/Weapon.xlsx
+++ b/DungeonShooting_Godot/excel/excelFile/Weapon.xlsx
Binary files differ
diff --git a/DungeonShooting_Godot/prefab/bullet/Bullet0001.tscn b/DungeonShooting_Godot/prefab/bullet/Bullet0001.tscn
index 04e71b9..3ee607f 100644
--- a/DungeonShooting_Godot/prefab/bullet/Bullet0001.tscn
+++ b/DungeonShooting_Godot/prefab/bullet/Bullet0001.tscn
@@ -1,8 +1,8 @@
-[gd_scene load_steps=9 format=3 uid="uid://bj4kmvt8jg1cf"]
+[gd_scene load_steps=8 format=3 uid="uid://bj4kmvt8jg1cf"]
[ext_resource type="Script" path="res://src/game/activity/bullet/Bullet.cs" id="1_82ma0"]
[ext_resource type="Shader" path="res://resource/material/Blend.gdshader" id="2_6wvtu"]
-[ext_resource type="Texture2D" uid="uid://bu0b11hiuecxy" path="res://resource/sprite/bullet/bullet.png" id="3_hjgpe"]
+[ext_resource type="Texture2D" uid="uid://bu0b11hiuecxy" path="res://resource/sprite/bullet/bullet0001.png" id="3_hjgpe"]
[sub_resource type="ShaderMaterial" id="ShaderMaterial_w5w0i"]
resource_local_to_scene = true
@@ -35,9 +35,6 @@
"speed": 5.0
}]
-[sub_resource type="RectangleShape2D" id="RectangleShape2D_c0onq"]
-size = Vector2(44.72, 12)
-
[sub_resource type="RectangleShape2D" id="RectangleShape2D_lcqb8"]
size = Vector2(11, 4)
@@ -65,8 +62,7 @@
[node name="CollisionShape2D" type="CollisionShape2D" parent="CollisionArea"]
position = Vector2(2.93353, 0)
-scale = Vector2(0.226586, 0.333333)
-shape = SubResource("RectangleShape2D_c0onq")
+shape = SubResource("RectangleShape2D_lcqb8")
[node name="Collision" type="CollisionShape2D" parent="."]
position = Vector2(2.5, 0)
diff --git a/DungeonShooting_Godot/prefab/bullet/Bullet0002.tscn b/DungeonShooting_Godot/prefab/bullet/Bullet0002.tscn
index 5378a44..89c2130 100644
--- a/DungeonShooting_Godot/prefab/bullet/Bullet0002.tscn
+++ b/DungeonShooting_Godot/prefab/bullet/Bullet0002.tscn
@@ -24,8 +24,8 @@
shader_parameter/outline_color = Color(0, 0, 0, 1)
shader_parameter/outline_rainbow = false
-[sub_resource type="RectangleShape2D" id="RectangleShape2D_c0onq"]
-size = Vector2(44.72, 12)
+[sub_resource type="CircleShape2D" id="CircleShape2D_0vxfv"]
+radius = 3.0
[sub_resource type="CircleShape2D" id="CircleShape2D_e2yn3"]
radius = 3.0
@@ -53,9 +53,8 @@
monitorable = false
[node name="CollisionShape2D" type="CollisionShape2D" parent="CollisionArea"]
-position = Vector2(2.93353, 0)
-scale = Vector2(0.226586, 0.333333)
-shape = SubResource("RectangleShape2D_c0onq")
+position = Vector2(-2.38419e-07, 0)
+shape = SubResource("CircleShape2D_0vxfv")
[node name="Collision" type="CollisionShape2D" parent="."]
shape = SubResource("CircleShape2D_e2yn3")
diff --git a/DungeonShooting_Godot/prefab/bullet/Bullet0003.tscn b/DungeonShooting_Godot/prefab/bullet/Bullet0003.tscn
new file mode 100644
index 0000000..4890b1e
--- /dev/null
+++ b/DungeonShooting_Godot/prefab/bullet/Bullet0003.tscn
@@ -0,0 +1,58 @@
+[gd_scene load_steps=7 format=3 uid="uid://ee24ocwk8snj"]
+
+[ext_resource type="Script" path="res://src/game/activity/bullet/Bullet.cs" id="1_h6lfm"]
+[ext_resource type="Shader" path="res://resource/material/Blend.gdshader" id="2_bteri"]
+[ext_resource type="SpriteFrames" uid="uid://bcnhyin0aufl1" path="res://resource/spriteFrames/bullet/Bullet0003.tres" id="3_qvo0u"]
+
+[sub_resource type="ShaderMaterial" id="ShaderMaterial_v77gw"]
+resource_local_to_scene = true
+shader = ExtResource("2_bteri")
+shader_parameter/blend = Color(0, 0, 0, 0.470588)
+shader_parameter/schedule = 1.0
+shader_parameter/modulate = Color(1, 1, 1, 1)
+shader_parameter/show_outline = false
+shader_parameter/outline_color = Color(0, 0, 0, 1)
+shader_parameter/outline_rainbow = false
+
+[sub_resource type="ShaderMaterial" id="ShaderMaterial_p0wfd"]
+resource_local_to_scene = true
+shader = ExtResource("2_bteri")
+shader_parameter/blend = Color(1, 1, 1, 1)
+shader_parameter/schedule = 0.0
+shader_parameter/modulate = Color(1, 1, 1, 1)
+shader_parameter/show_outline = false
+shader_parameter/outline_color = Color(0, 0, 0, 1)
+shader_parameter/outline_rainbow = false
+
+[sub_resource type="RectangleShape2D" id="RectangleShape2D_c0onq"]
+size = Vector2(6, 3.125)
+
+[node name="Bullet0003" type="CharacterBody2D" node_paths=PackedStringArray("CollisionArea", "ShadowSprite", "AnimatedSprite", "Collision")]
+collision_layer = 2
+script = ExtResource("1_h6lfm")
+CollisionArea = NodePath("CollisionArea")
+ShadowSprite = NodePath("ShadowSprite")
+AnimatedSprite = NodePath("AnimatedSprite")
+Collision = NodePath("Collision")
+
+[node name="ShadowSprite" type="Sprite2D" parent="."]
+z_index = -1
+material = SubResource("ShaderMaterial_v77gw")
+
+[node name="AnimatedSprite" type="AnimatedSprite2D" parent="."]
+material = SubResource("ShaderMaterial_p0wfd")
+sprite_frames = ExtResource("3_qvo0u")
+
+[node name="CollisionArea" type="Area2D" parent="."]
+visible = false
+collision_layer = 0
+collision_mask = 0
+monitorable = false
+
+[node name="CollisionShape2D" type="CollisionShape2D" parent="CollisionArea"]
+position = Vector2(1, 0)
+shape = SubResource("RectangleShape2D_c0onq")
+
+[node name="Collision" type="CollisionShape2D" parent="."]
+position = Vector2(1, 0)
+shape = SubResource("RectangleShape2D_c0onq")
diff --git a/DungeonShooting_Godot/prefab/weapon/Weapon0006.tscn b/DungeonShooting_Godot/prefab/weapon/Weapon0006.tscn
index 63caa2e..2a5a07b 100644
--- a/DungeonShooting_Godot/prefab/weapon/Weapon0006.tscn
+++ b/DungeonShooting_Godot/prefab/weapon/Weapon0006.tscn
@@ -4,18 +4,25 @@
[ext_resource type="Shader" path="res://resource/material/Blend.gdshader" id="1_rp1bw"]
[ext_resource type="SpriteFrames" uid="uid://dx1mjbx4acs3q" path="res://resource/spriteFrames/weapon/Weapon0006.tres" id="2_j3sji"]
-
[sub_resource type="ShaderMaterial" id="ShaderMaterial_cbiyh"]
resource_local_to_scene = true
shader = ExtResource("1_rp1bw")
shader_parameter/blend = Color(0, 0, 0, 0.470588)
shader_parameter/schedule = 1.0
+shader_parameter/modulate = Color(1, 1, 1, 1)
+shader_parameter/show_outline = true
+shader_parameter/outline_color = Color(0, 0, 0, 1)
+shader_parameter/outline_rainbow = false
[sub_resource type="ShaderMaterial" id="ShaderMaterial_o36tv"]
resource_local_to_scene = true
shader = ExtResource("1_rp1bw")
shader_parameter/blend = Color(1, 1, 1, 1)
shader_parameter/schedule = 0.0
+shader_parameter/modulate = Color(1, 1, 1, 1)
+shader_parameter/show_outline = true
+shader_parameter/outline_color = Color(0, 0, 0, 1)
+shader_parameter/outline_rainbow = false
[sub_resource type="RectangleShape2D" id="RectangleShape2D_3p5jk"]
size = Vector2(12, 10)
diff --git a/DungeonShooting_Godot/prefab/weapon/Weapon0007.tscn b/DungeonShooting_Godot/prefab/weapon/Weapon0007.tscn
new file mode 100644
index 0000000..4277b9a
--- /dev/null
+++ b/DungeonShooting_Godot/prefab/weapon/Weapon0007.tscn
@@ -0,0 +1,102 @@
+[gd_scene load_steps=10 format=3 uid="uid://btd0wc11ajcuo"]
+
+[ext_resource type="Script" path="res://src/game/activity/weapon/gun/Gun.cs" id="1_exwbu"]
+[ext_resource type="Shader" path="res://resource/material/Blend.gdshader" id="2_7rywx"]
+[ext_resource type="SpriteFrames" uid="uid://xxyokrbt10xm" path="res://resource/spriteFrames/weapon/Weapon0007.tres" id="3_ms2gs"]
+
+[sub_resource type="ShaderMaterial" id="ShaderMaterial_cbiyh"]
+resource_local_to_scene = true
+shader = ExtResource("2_7rywx")
+shader_parameter/blend = Color(0, 0, 0, 0.470588)
+shader_parameter/schedule = 1.0
+shader_parameter/modulate = Color(1, 1, 1, 1)
+shader_parameter/show_outline = true
+shader_parameter/outline_color = Color(0, 0, 0, 1)
+shader_parameter/outline_rainbow = false
+
+[sub_resource type="ShaderMaterial" id="ShaderMaterial_o36tv"]
+resource_local_to_scene = true
+shader = ExtResource("2_7rywx")
+shader_parameter/blend = Color(1, 1, 1, 1)
+shader_parameter/schedule = 0.0
+shader_parameter/modulate = Color(1, 1, 1, 1)
+shader_parameter/show_outline = true
+shader_parameter/outline_color = Color(0, 0, 0, 1)
+shader_parameter/outline_rainbow = false
+
+[sub_resource type="RectangleShape2D" id="RectangleShape2D_3p5jk"]
+size = Vector2(12, 10)
+
+[sub_resource type="Animation" id="Animation_x136i"]
+length = 0.001
+tracks/0/type = "value"
+tracks/0/imported = false
+tracks/0/enabled = true
+tracks/0/path = NodePath("AnimatedSprite:material:shader_parameter/schedule")
+tracks/0/interp = 1
+tracks/0/loop_wrap = true
+tracks/0/keys = {
+"times": PackedFloat32Array(0),
+"transitions": PackedFloat32Array(1),
+"update": 0,
+"values": [0]
+}
+
+[sub_resource type="Animation" id="Animation_3piau"]
+resource_name = "floodlight"
+length = 3.0
+loop_mode = 1
+tracks/0/type = "value"
+tracks/0/imported = false
+tracks/0/enabled = true
+tracks/0/path = NodePath("AnimatedSprite:material:shader_parameter/schedule")
+tracks/0/interp = 1
+tracks/0/loop_wrap = true
+tracks/0/keys = {
+"times": PackedFloat32Array(0, 2.3, 2.6, 2.7, 3),
+"transitions": PackedFloat32Array(1, 1, 1, 1, 1),
+"update": 0,
+"values": [0, 0, 0.5, 0.5, 0]
+}
+
+[sub_resource type="AnimationLibrary" id="AnimationLibrary_trkjd"]
+_data = {
+"RESET": SubResource("Animation_x136i"),
+"floodlight": SubResource("Animation_3piau")
+}
+
+[node name="Weapon0007" type="CharacterBody2D" node_paths=PackedStringArray("FirePoint", "ShellPoint", "GripPoint", "AnimationPlayer", "ShadowSprite", "AnimatedSprite", "Collision")]
+collision_layer = 4
+script = ExtResource("1_exwbu")
+FirePoint = NodePath("AnimatedSprite/FirePoint")
+ShellPoint = NodePath("AnimatedSprite/ShellPoint")
+GripPoint = NodePath("GripPoint")
+AnimationPlayer = NodePath("AnimationPlayer")
+ShadowSprite = NodePath("ShadowSprite")
+AnimatedSprite = NodePath("AnimatedSprite")
+Collision = NodePath("Collision")
+
+[node name="ShadowSprite" type="Sprite2D" parent="."]
+z_index = -1
+material = SubResource("ShaderMaterial_cbiyh")
+
+[node name="AnimatedSprite" type="AnimatedSprite2D" parent="."]
+material = SubResource("ShaderMaterial_o36tv")
+sprite_frames = ExtResource("3_ms2gs")
+
+[node name="ShellPoint" type="Marker2D" parent="AnimatedSprite"]
+position = Vector2(-1, -3)
+
+[node name="FirePoint" type="Marker2D" parent="AnimatedSprite"]
+position = Vector2(13, -3)
+
+[node name="GripPoint" type="Marker2D" parent="."]
+position = Vector2(-6, 0)
+
+[node name="Collision" type="CollisionShape2D" parent="."]
+shape = SubResource("RectangleShape2D_3p5jk")
+
+[node name="AnimationPlayer" type="AnimationPlayer" parent="."]
+libraries = {
+"": SubResource("AnimationLibrary_trkjd")
+}
diff --git a/DungeonShooting_Godot/resource/config/ActivityObject.json b/DungeonShooting_Godot/resource/config/ActivityObject.json
index 953ac5c..0cd7611 100644
--- a/DungeonShooting_Godot/resource/config/ActivityObject.json
+++ b/DungeonShooting_Godot/resource/config/ActivityObject.json
@@ -56,6 +56,13 @@
"Prefab": "res://prefab/weapon/Weapon0006.tscn"
},
{
+ "Id": "weapon0007",
+ "Type": 5,
+ "Name": "\u6C64\u59C6\u900A\u51B2\u950B\u67AA",
+ "Remark": "",
+ "Prefab": "res://prefab/weapon/Weapon0007.tscn"
+ },
+ {
"Id": "bullet0001",
"Type": 6,
"Name": "",
@@ -70,6 +77,13 @@
"Prefab": "res://prefab/bullet/Bullet0002.tscn"
},
{
+ "Id": "bullet0003",
+ "Type": 6,
+ "Name": "",
+ "Remark": "",
+ "Prefab": "res://prefab/bullet/Bullet0003.tscn"
+ },
+ {
"Id": "shell0001",
"Type": 7,
"Name": "",
diff --git a/DungeonShooting_Godot/resource/config/Sound.json b/DungeonShooting_Godot/resource/config/Sound.json
index 43673b4..9d7050d 100644
--- a/DungeonShooting_Godot/resource/config/Sound.json
+++ b/DungeonShooting_Godot/resource/config/Sound.json
@@ -84,12 +84,24 @@
"Remark": "\u51B2\u950B\u67AA"
},
{
+ "Id": "reloadBegin0006",
+ "Path": "res://resource/sound/sfx/reloading/Reloading_begin0006.ogg",
+ "Volume": 1,
+ "Remark": ""
+ },
+ {
"Id": "reloadBegin0009",
"Path": "res://resource/sound/sfx/reloading/Reloading_begin0009.ogg",
"Volume": 1,
"Remark": "\u72D9\u51FB\u67AA"
},
{
+ "Id": "reloadBegin0010",
+ "Path": "res://resource/sound/sfx/reloading/Reloading_begin0010.ogg",
+ "Volume": 1,
+ "Remark": ""
+ },
+ {
"Id": "reloadFinish0002",
"Path": "res://resource/sound/sfx/reloading/Reloading_finish0002.ogg",
"Volume": 1,
@@ -190,5 +202,11 @@
"Path": "res://resource/sound/sfx/beLoaded/BeLoaded0016.ogg",
"Volume": 1,
"Remark": "\u51B2\u950B\u67AA"
+ },
+ {
+ "Id": "beLoaded0017",
+ "Path": "res://resource/sound/sfx/beLoaded/BeLoaded0017.ogg",
+ "Volume": 1,
+ "Remark": ""
}
]
\ No newline at end of file
diff --git a/DungeonShooting_Godot/resource/config/Weapon.json b/DungeonShooting_Godot/resource/config/Weapon.json
index 5aa3e13..3a63b28 100644
--- a/DungeonShooting_Godot/resource/config/Weapon.json
+++ b/DungeonShooting_Godot/resource/config/Weapon.json
@@ -32,7 +32,7 @@
"MaxFireBulletCount": 1,
"DelayedTime": 0,
"StartScatteringRange": 5,
- "FinalScatteringRange": 50,
+ "FinalScatteringRange": 45,
"ScatteringRangeAddValue": 3,
"ScatteringRangeBackSpeed": 40,
"ScatteringRangeBackDelayTime": 0.5,
@@ -47,7 +47,7 @@
"BulletMinHarm": 4,
"BulletMinDeviationAngle": 0,
"BulletMaxDeviationAngle": 0,
- "BulletMaxSpeed": 350,
+ "BulletMaxSpeed": 320,
"BulletMinSpeed": 350,
"BulletMinDistance": 300,
"BulletMaxDistance": 400,
@@ -105,7 +105,7 @@
"MaxFireBulletCount": 1,
"DelayedTime": 0,
"StartScatteringRange": 5,
- "FinalScatteringRange": 50,
+ "FinalScatteringRange": 45,
"ScatteringRangeAddValue": 3,
"ScatteringRangeBackSpeed": 40,
"ScatteringRangeBackDelayTime": 0.5,
@@ -120,7 +120,7 @@
"BulletMinHarm": 4,
"BulletMinDeviationAngle": 0,
"BulletMaxDeviationAngle": 0,
- "BulletMaxSpeed": 350,
+ "BulletMaxSpeed": 320,
"BulletMinSpeed": 350,
"BulletMinDistance": 300,
"BulletMaxDistance": 400,
@@ -324,7 +324,7 @@
"MaxFireBulletCount": 1,
"DelayedTime": 0,
"StartScatteringRange": 5,
- "FinalScatteringRange": 35,
+ "FinalScatteringRange": 25,
"ScatteringRangeAddValue": 4,
"ScatteringRangeBackSpeed": 40,
"ScatteringRangeBackDelayTime": 0.5,
@@ -339,7 +339,7 @@
"BulletMinHarm": 4,
"BulletMinDeviationAngle": 0,
"BulletMaxDeviationAngle": 0,
- "BulletMaxSpeed": 350,
+ "BulletMaxSpeed": 320,
"BulletMinSpeed": 350,
"BulletMinDistance": 250,
"BulletMaxDistance": 300,
@@ -397,7 +397,7 @@
"MaxFireBulletCount": 1,
"DelayedTime": 0,
"StartScatteringRange": 5,
- "FinalScatteringRange": 35,
+ "FinalScatteringRange": 25,
"ScatteringRangeAddValue": 4,
"ScatteringRangeBackSpeed": 40,
"ScatteringRangeBackDelayTime": 0.5,
@@ -412,7 +412,7 @@
"BulletMinHarm": 4,
"BulletMinDeviationAngle": 0,
"BulletMaxDeviationAngle": 0,
- "BulletMaxSpeed": 350,
+ "BulletMaxSpeed": 320,
"BulletMinSpeed": 350,
"BulletMinDistance": 250,
"BulletMaxDistance": 300,
@@ -632,7 +632,7 @@
"BulletMinDeviationAngle": 0,
"BulletMaxDeviationAngle": 0,
"BulletMaxSpeed": 600,
- "BulletMinSpeed": 600,
+ "BulletMinSpeed": 620,
"BulletMinDistance": 700,
"BulletMaxDistance": 900,
"ShellId": "shell0003",
@@ -705,7 +705,7 @@
"BulletMinDeviationAngle": 0,
"BulletMaxDeviationAngle": 0,
"BulletMaxSpeed": 600,
- "BulletMinSpeed": 600,
+ "BulletMinSpeed": 620,
"BulletMinDistance": 700,
"BulletMaxDistance": 900,
"ShellId": "shell0003",
@@ -762,7 +762,7 @@
"MaxFireBulletCount": 1,
"DelayedTime": 0,
"StartScatteringRange": 3,
- "FinalScatteringRange": 40,
+ "FinalScatteringRange": 30,
"ScatteringRangeAddValue": 2,
"ScatteringRangeBackSpeed": 40,
"ScatteringRangeBackDelayTime": 0.3,
@@ -778,7 +778,7 @@
"BulletMinDeviationAngle": 0,
"BulletMaxDeviationAngle": 0,
"BulletMaxSpeed": 320,
- "BulletMinSpeed": 320,
+ "BulletMinSpeed": 340,
"BulletMinDistance": 300,
"BulletMaxDistance": 400,
"ShellId": "shell0001",
@@ -835,9 +835,9 @@
"MaxFireBulletCount": 1,
"DelayedTime": 0,
"StartScatteringRange": 3,
- "FinalScatteringRange": 40,
+ "FinalScatteringRange": 30,
"ScatteringRangeAddValue": 2,
- "ScatteringRangeBackSpeed": 40,
+ "ScatteringRangeBackSpeed": 30,
"ScatteringRangeBackDelayTime": 0.3,
"MinBacklash": 1,
"MaxBacklash": 2,
@@ -851,7 +851,7 @@
"BulletMinDeviationAngle": 0,
"BulletMaxDeviationAngle": 0,
"BulletMaxSpeed": 320,
- "BulletMinSpeed": 320,
+ "BulletMinSpeed": 340,
"BulletMinDistance": 300,
"BulletMaxDistance": 400,
"ShellId": "shell0001",
@@ -874,5 +874,78 @@
"AiTargetLockingTime": 0.5,
"AiBulletSpeedScale": 0.5,
"AiAmmoConsumptionProbability": 0
+ },
+ {
+ "Id": "0013",
+ "WeaponId": "weapon0007",
+ "Remark": "\u6C64\u59C6\u900A\u51B2\u950B\u67AA",
+ "Icon": "res://resource/sprite/gun/gun4.png",
+ "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,
+ "MinContinuousCount": 1,
+ "MaxContinuousCount": 1,
+ "TriggerInterval": 0,
+ "StartFiringSpeed": 700,
+ "FinalFiringSpeed": 700,
+ "FiringSpeedAddSpeed": 0,
+ "FiringSpeedBackSpeed": 0,
+ "MinFireBulletCount": 1,
+ "MaxFireBulletCount": 1,
+ "DelayedTime": 0,
+ "StartScatteringRange": 6,
+ "FinalScatteringRange": 60,
+ "ScatteringRangeAddValue": 3,
+ "ScatteringRangeBackSpeed": 50,
+ "ScatteringRangeBackDelayTime": 0.3,
+ "MinBacklash": 1,
+ "MaxBacklash": 2,
+ "BacklashRegressionSpeed": 35,
+ "UpliftAngle": 5,
+ "DefaultAngle": 0,
+ "UpliftAngleRestore": 1,
+ "BulletId": "bullet0003",
+ "BulletMaxHarm": 3,
+ "BulletMinHarm": 3,
+ "BulletMinDeviationAngle": 0,
+ "BulletMaxDeviationAngle": 0,
+ "BulletMaxSpeed": 300,
+ "BulletMinSpeed": 330,
+ "BulletMinDistance": 270,
+ "BulletMaxDistance": 360,
+ "ShellId": "shell0001",
+ "ThrowShellDelayTime": 0,
+ "ThrowCollisionSize": {
+ "X": 20,
+ "Y": 15
+ },
+ "__ShootSound": "shooting0007",
+ "__BeginReloadSound": "reloadBegin0006",
+ "BeginReloadSoundDelayTime": 0,
+ "__ReloadSound": "",
+ "ReloadSoundDelayTime": 0,
+ "__ReloadFinishSound": "beLoaded0017",
+ "ReloadFinishSoundAdvanceTime": 0.65,
+ "__BeLoadedSound": "",
+ "BeLoadedSoundDelayTime": 0,
+ "__OtherSoundMap": null,
+ "__AiUseAttribute": "",
+ "AiTargetLockingTime": 0,
+ "AiBulletSpeedScale": 0,
+ "AiAmmoConsumptionProbability": 0
}
]
\ No newline at end of file
diff --git a/DungeonShooting_Godot/resource/map/tileMaps/testGroup/inlet/Room1.tscn b/DungeonShooting_Godot/resource/map/tileMaps/testGroup/inlet/Room1.tscn
index 381e5d5..c251cda 100644
--- a/DungeonShooting_Godot/resource/map/tileMaps/testGroup/inlet/Room1.tscn
+++ b/DungeonShooting_Godot/resource/map/tileMaps/testGroup/inlet/Room1.tscn
@@ -23,6 +23,13 @@
ItemExpression = "0003"
WaveNumber = 2
+[node name="ActivityMark22" type="Node2D" parent="."]
+position = Vector2(63, 73)
+script = ExtResource("3_m4jrh")
+Type = 5
+ItemExpression = "0007"
+WaveNumber = 2
+
[node name="ActivityMark8" type="Node2D" parent="."]
position = Vector2(126, 41)
script = ExtResource("3_m4jrh")
diff --git a/DungeonShooting_Godot/resource/sound/sfx/beLoaded/BeLoaded0017.ogg b/DungeonShooting_Godot/resource/sound/sfx/beLoaded/BeLoaded0017.ogg
new file mode 100644
index 0000000..89968a5
--- /dev/null
+++ b/DungeonShooting_Godot/resource/sound/sfx/beLoaded/BeLoaded0017.ogg
Binary files differ
diff --git a/DungeonShooting_Godot/resource/sound/sfx/beLoaded/BeLoaded0017.ogg.import b/DungeonShooting_Godot/resource/sound/sfx/beLoaded/BeLoaded0017.ogg.import
new file mode 100644
index 0000000..468cb03
--- /dev/null
+++ b/DungeonShooting_Godot/resource/sound/sfx/beLoaded/BeLoaded0017.ogg.import
@@ -0,0 +1,19 @@
+[remap]
+
+importer="oggvorbisstr"
+type="AudioStreamOggVorbis"
+uid="uid://b5xrepclt2iv7"
+path="res://.godot/imported/BeLoaded0017.ogg-ec605554f247f40ebf11bdd31c578999.oggvorbisstr"
+
+[deps]
+
+source_file="res://resource/sound/sfx/beLoaded/BeLoaded0017.ogg"
+dest_files=["res://.godot/imported/BeLoaded0017.ogg-ec605554f247f40ebf11bdd31c578999.oggvorbisstr"]
+
+[params]
+
+loop=false
+loop_offset=0
+bpm=0
+beat_count=0
+bar_beats=4
diff --git a/DungeonShooting_Godot/resource/sound/sfx/reloading/Reloading_begin0010.ogg b/DungeonShooting_Godot/resource/sound/sfx/reloading/Reloading_begin0010.ogg
new file mode 100644
index 0000000..e7c1325
--- /dev/null
+++ b/DungeonShooting_Godot/resource/sound/sfx/reloading/Reloading_begin0010.ogg
Binary files differ
diff --git a/DungeonShooting_Godot/resource/sound/sfx/reloading/Reloading_begin0010.ogg.import b/DungeonShooting_Godot/resource/sound/sfx/reloading/Reloading_begin0010.ogg.import
new file mode 100644
index 0000000..f1cec24
--- /dev/null
+++ b/DungeonShooting_Godot/resource/sound/sfx/reloading/Reloading_begin0010.ogg.import
@@ -0,0 +1,19 @@
+[remap]
+
+importer="oggvorbisstr"
+type="AudioStreamOggVorbis"
+uid="uid://bue6k2ypa2asr"
+path="res://.godot/imported/Reloading_begin0010.ogg-8fb0c428aef5d7391c12a35366fe6ffc.oggvorbisstr"
+
+[deps]
+
+source_file="res://resource/sound/sfx/reloading/Reloading_begin0010.ogg"
+dest_files=["res://.godot/imported/Reloading_begin0010.ogg-8fb0c428aef5d7391c12a35366fe6ffc.oggvorbisstr"]
+
+[params]
+
+loop=false
+loop_offset=0
+bpm=0
+beat_count=0
+bar_beats=4
diff --git a/DungeonShooting_Godot/resource/sprite/bullet/bullet.png b/DungeonShooting_Godot/resource/sprite/bullet/bullet.png
deleted file mode 100644
index fb6ccea..0000000
--- a/DungeonShooting_Godot/resource/sprite/bullet/bullet.png
+++ /dev/null
Binary files differ
diff --git a/DungeonShooting_Godot/resource/sprite/bullet/bullet.png.import b/DungeonShooting_Godot/resource/sprite/bullet/bullet.png.import
deleted file mode 100644
index 8e7e5e0..0000000
--- a/DungeonShooting_Godot/resource/sprite/bullet/bullet.png.import
+++ /dev/null
@@ -1,34 +0,0 @@
-[remap]
-
-importer="texture"
-type="CompressedTexture2D"
-uid="uid://bu0b11hiuecxy"
-path="res://.godot/imported/bullet.png-d058b3cd1f93a450750c6a914d76f944.ctex"
-metadata={
-"vram_texture": false
-}
-
-[deps]
-
-source_file="res://resource/sprite/bullet/bullet.png"
-dest_files=["res://.godot/imported/bullet.png-d058b3cd1f93a450750c6a914d76f944.ctex"]
-
-[params]
-
-compress/mode=0
-compress/high_quality=false
-compress/lossy_quality=0.7
-compress/hdr_compression=1
-compress/normal_map=0
-compress/channel_pack=0
-mipmaps/generate=false
-mipmaps/limit=-1
-roughness/mode=0
-roughness/src_normal=""
-process/fix_alpha_border=true
-process/premult_alpha=false
-process/normal_map_invert_y=false
-process/hdr_as_srgb=false
-process/hdr_clamp_exposure=false
-process/size_limit=0
-detect_3d/compress_to=1
diff --git a/DungeonShooting_Godot/resource/sprite/bullet/bullet0001.png b/DungeonShooting_Godot/resource/sprite/bullet/bullet0001.png
new file mode 100644
index 0000000..fb6ccea
--- /dev/null
+++ b/DungeonShooting_Godot/resource/sprite/bullet/bullet0001.png
Binary files differ
diff --git a/DungeonShooting_Godot/resource/sprite/bullet/bullet0001.png.import b/DungeonShooting_Godot/resource/sprite/bullet/bullet0001.png.import
new file mode 100644
index 0000000..fe2ba90
--- /dev/null
+++ b/DungeonShooting_Godot/resource/sprite/bullet/bullet0001.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://bu0b11hiuecxy"
+path="res://.godot/imported/bullet0001.png-09e29b083f51e2b282ac1fb1dd682734.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://resource/sprite/bullet/bullet0001.png"
+dest_files=["res://.godot/imported/bullet0001.png-09e29b083f51e2b282ac1fb1dd682734.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/DungeonShooting_Godot/resource/sprite/bullet/bullet0002.png b/DungeonShooting_Godot/resource/sprite/bullet/bullet0002.png
new file mode 100644
index 0000000..ce0577e
--- /dev/null
+++ b/DungeonShooting_Godot/resource/sprite/bullet/bullet0002.png
Binary files differ
diff --git a/DungeonShooting_Godot/resource/sprite/bullet/bullet0002.png.import b/DungeonShooting_Godot/resource/sprite/bullet/bullet0002.png.import
new file mode 100644
index 0000000..90b0c71
--- /dev/null
+++ b/DungeonShooting_Godot/resource/sprite/bullet/bullet0002.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://ctsvj4y1t538u"
+path="res://.godot/imported/bullet0002.png-5a53e3706ec2ef023e52e256612c2c94.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://resource/sprite/bullet/bullet0002.png"
+dest_files=["res://.godot/imported/bullet0002.png-5a53e3706ec2ef023e52e256612c2c94.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/DungeonShooting_Godot/resource/sprite/bullet/bullet0003.png b/DungeonShooting_Godot/resource/sprite/bullet/bullet0003.png
new file mode 100644
index 0000000..6478bfa
--- /dev/null
+++ b/DungeonShooting_Godot/resource/sprite/bullet/bullet0003.png
Binary files differ
diff --git a/DungeonShooting_Godot/resource/sprite/bullet/bullet0003.png.import b/DungeonShooting_Godot/resource/sprite/bullet/bullet0003.png.import
new file mode 100644
index 0000000..808d9f3
--- /dev/null
+++ b/DungeonShooting_Godot/resource/sprite/bullet/bullet0003.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://cs6pa7h8ffvy4"
+path="res://.godot/imported/bullet0003.png-968c6a657388df80893fe68898e87dae.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://resource/sprite/bullet/bullet0003.png"
+dest_files=["res://.godot/imported/bullet0003.png-968c6a657388df80893fe68898e87dae.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/DungeonShooting_Godot/resource/sprite/bullet/bullet3.png b/DungeonShooting_Godot/resource/sprite/bullet/bullet3.png
deleted file mode 100644
index ce0577e..0000000
--- a/DungeonShooting_Godot/resource/sprite/bullet/bullet3.png
+++ /dev/null
Binary files differ
diff --git a/DungeonShooting_Godot/resource/sprite/bullet/bullet3.png.import b/DungeonShooting_Godot/resource/sprite/bullet/bullet3.png.import
deleted file mode 100644
index 765caff..0000000
--- a/DungeonShooting_Godot/resource/sprite/bullet/bullet3.png.import
+++ /dev/null
@@ -1,34 +0,0 @@
-[remap]
-
-importer="texture"
-type="CompressedTexture2D"
-uid="uid://ctsvj4y1t538u"
-path="res://.godot/imported/bullet3.png-da66182a32c8e83b9b95206d8e836cf2.ctex"
-metadata={
-"vram_texture": false
-}
-
-[deps]
-
-source_file="res://resource/sprite/bullet/bullet3.png"
-dest_files=["res://.godot/imported/bullet3.png-da66182a32c8e83b9b95206d8e836cf2.ctex"]
-
-[params]
-
-compress/mode=0
-compress/high_quality=false
-compress/lossy_quality=0.7
-compress/hdr_compression=1
-compress/normal_map=0
-compress/channel_pack=0
-mipmaps/generate=false
-mipmaps/limit=-1
-roughness/mode=0
-roughness/src_normal=""
-process/fix_alpha_border=true
-process/premult_alpha=false
-process/normal_map_invert_y=false
-process/hdr_as_srgb=false
-process/hdr_clamp_exposure=false
-process/size_limit=0
-detect_3d/compress_to=1
diff --git a/DungeonShooting_Godot/resource/sprite/weapon/weapon0007/Weapon0007.png b/DungeonShooting_Godot/resource/sprite/weapon/weapon0007/Weapon0007.png
new file mode 100644
index 0000000..979a075
--- /dev/null
+++ b/DungeonShooting_Godot/resource/sprite/weapon/weapon0007/Weapon0007.png
Binary files differ
diff --git a/DungeonShooting_Godot/resource/sprite/weapon/weapon0007/Weapon0007.png.import b/DungeonShooting_Godot/resource/sprite/weapon/weapon0007/Weapon0007.png.import
new file mode 100644
index 0000000..ed4a3fc
--- /dev/null
+++ b/DungeonShooting_Godot/resource/sprite/weapon/weapon0007/Weapon0007.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://dad448pfvadyg"
+path="res://.godot/imported/Weapon0007.png-dbce587059a3277ffd9a6a8070793a23.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://resource/sprite/weapon/weapon0007/Weapon0007.png"
+dest_files=["res://.godot/imported/Weapon0007.png-dbce587059a3277ffd9a6a8070793a23.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/DungeonShooting_Godot/resource/spriteFrames/bullet/Bullet0001.tres b/DungeonShooting_Godot/resource/spriteFrames/bullet/Bullet0001.tres
index 6af29a8..b8cfbc6 100644
--- a/DungeonShooting_Godot/resource/spriteFrames/bullet/Bullet0001.tres
+++ b/DungeonShooting_Godot/resource/spriteFrames/bullet/Bullet0001.tres
@@ -1,6 +1,7 @@
[gd_resource type="SpriteFrames" load_steps=2 format=3 uid="uid://baoxep7vami72"]
-[ext_resource type="Texture2D" uid="uid://bu0b11hiuecxy" path="res://resource/sprite/bullet/bullet.png" id="1_ktu7r"]
+[ext_resource type="Texture2D" uid="uid://bu0b11hiuecxy" path="res://resource/sprite/bullet/bullet0001.png" id="1_ktu7r"]
+
[resource]
animations = [{
diff --git a/DungeonShooting_Godot/resource/spriteFrames/bullet/Bullet0002.tres b/DungeonShooting_Godot/resource/spriteFrames/bullet/Bullet0002.tres
index cb31134..635a03b 100644
--- a/DungeonShooting_Godot/resource/spriteFrames/bullet/Bullet0002.tres
+++ b/DungeonShooting_Godot/resource/spriteFrames/bullet/Bullet0002.tres
@@ -1,6 +1,6 @@
[gd_resource type="SpriteFrames" load_steps=2 format=3 uid="uid://bpeodjqiy3mil"]
-[ext_resource type="Texture2D" uid="uid://ctsvj4y1t538u" path="res://resource/sprite/bullet/bullet3.png" id="1_53f3g"]
+[ext_resource type="Texture2D" uid="uid://ctsvj4y1t538u" path="res://resource/sprite/bullet/bullet0002.png" id="1_53f3g"]
[resource]
animations = [{
diff --git a/DungeonShooting_Godot/resource/spriteFrames/bullet/Bullet0003.tres b/DungeonShooting_Godot/resource/spriteFrames/bullet/Bullet0003.tres
new file mode 100644
index 0000000..2e724e8
--- /dev/null
+++ b/DungeonShooting_Godot/resource/spriteFrames/bullet/Bullet0003.tres
@@ -0,0 +1,14 @@
+[gd_resource type="SpriteFrames" load_steps=2 format=3 uid="uid://bcnhyin0aufl1"]
+
+[ext_resource type="Texture2D" uid="uid://cs6pa7h8ffvy4" path="res://resource/sprite/bullet/bullet0003.png" id="1_sl01e"]
+
+[resource]
+animations = [{
+"frames": [{
+"duration": 1.0,
+"texture": ExtResource("1_sl01e")
+}],
+"loop": true,
+"name": &"default",
+"speed": 5.0
+}]
diff --git a/DungeonShooting_Godot/resource/spriteFrames/weapon/Weapon0007.tres b/DungeonShooting_Godot/resource/spriteFrames/weapon/Weapon0007.tres
new file mode 100644
index 0000000..9fb12d9
--- /dev/null
+++ b/DungeonShooting_Godot/resource/spriteFrames/weapon/Weapon0007.tres
@@ -0,0 +1,14 @@
+[gd_resource type="SpriteFrames" load_steps=2 format=3 uid="uid://xxyokrbt10xm"]
+
+[ext_resource type="Texture2D" uid="uid://dad448pfvadyg" path="res://resource/sprite/weapon/weapon0007/Weapon0007.png" id="1_3ohcf"]
+
+[resource]
+animations = [{
+"frames": [{
+"duration": 1.0,
+"texture": ExtResource("1_3ohcf")
+}],
+"loop": true,
+"name": &"default",
+"speed": 5.0
+}]
diff --git a/DungeonShooting_Godot/src/framework/activity/ActivityObject_Init.cs b/DungeonShooting_Godot/src/framework/activity/ActivityObject_Init.cs
index 6d53823..72e6d35 100644
--- a/DungeonShooting_Godot/src/framework/activity/ActivityObject_Init.cs
+++ b/DungeonShooting_Godot/src/framework/activity/ActivityObject_Init.cs
@@ -51,6 +51,11 @@
///
public const string Id_weapon0006 = "weapon0006";
///
+ /// 名称: 汤姆逊冲锋枪
+ /// 备注:
+ ///
+ public const string Id_weapon0007 = "weapon0007";
+ ///
/// 名称:
/// 备注:
///
@@ -64,6 +69,11 @@
/// 名称:
/// 备注:
///
+ public const string Id_bullet0003 = "bullet0003";
+ ///
+ /// 名称:
+ /// 备注:
+ ///
public const string Id_shell0001 = "shell0001";
///
/// 名称:
@@ -171,8 +181,10 @@
_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/bullet/Bullet0001.tscn", ExcelConfig.ActivityObject_Map["bullet0001"]));
_activityRegisterMap.Add("bullet0002", new RegisterActivityData("res://prefab/bullet/Bullet0002.tscn", ExcelConfig.ActivityObject_Map["bullet0002"]));
+ _activityRegisterMap.Add("bullet0003", new RegisterActivityData("res://prefab/bullet/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"]));