diff --git a/DungeonShooting_Godot/excel/excelFile/ActivityBase.xlsx b/DungeonShooting_Godot/excel/excelFile/ActivityBase.xlsx
index 62bfa42..9ba6191 100644
--- a/DungeonShooting_Godot/excel/excelFile/ActivityBase.xlsx
+++ b/DungeonShooting_Godot/excel/excelFile/ActivityBase.xlsx
Binary files differ
diff --git a/DungeonShooting_Godot/excel/excelFile/ActivityMaterial.xlsx b/DungeonShooting_Godot/excel/excelFile/ActivityMaterial.xlsx
index ec9a07d..216f7f6 100644
--- a/DungeonShooting_Godot/excel/excelFile/ActivityMaterial.xlsx
+++ b/DungeonShooting_Godot/excel/excelFile/ActivityMaterial.xlsx
Binary files differ
diff --git a/DungeonShooting_Godot/excel/excelFile/AiAttackAttr.xlsx b/DungeonShooting_Godot/excel/excelFile/AiAttackAttr.xlsx
index e0fb367..9bafc6d 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/BulletBase.xlsx b/DungeonShooting_Godot/excel/excelFile/BulletBase.xlsx
index 9ed95ae..9d78f08 100644
--- a/DungeonShooting_Godot/excel/excelFile/BulletBase.xlsx
+++ b/DungeonShooting_Godot/excel/excelFile/BulletBase.xlsx
Binary files differ
diff --git a/DungeonShooting_Godot/excel/excelFile/Sound.xlsx b/DungeonShooting_Godot/excel/excelFile/Sound.xlsx
index de134b5..63764f1 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/WeaponBase.xlsx b/DungeonShooting_Godot/excel/excelFile/WeaponBase.xlsx
index 23a82e3..6a85ce0 100644
--- a/DungeonShooting_Godot/excel/excelFile/WeaponBase.xlsx
+++ b/DungeonShooting_Godot/excel/excelFile/WeaponBase.xlsx
Binary files differ
diff --git a/DungeonShooting_Godot/prefab/effect/weapon/BulletSmoke.tscn b/DungeonShooting_Godot/prefab/effect/weapon/BulletSmoke.tscn
index e34e5aa..a6c4f6b 100644
--- a/DungeonShooting_Godot/prefab/effect/weapon/BulletSmoke.tscn
+++ b/DungeonShooting_Godot/prefab/effect/weapon/BulletSmoke.tscn
@@ -29,7 +29,7 @@
 Particles2D = [NodePath("GpuParticles2D")]
 
 [node name="GpuParticles2D" type="GPUParticles2D" parent="."]
-z_index = -1
+show_behind_parent = true
 material = SubResource("1")
 emitting = false
 process_material = SubResource("ParticleProcessMaterial_gpp81")
diff --git a/DungeonShooting_Godot/prefab/role/Enemy0002.tscn b/DungeonShooting_Godot/prefab/role/Enemy0002.tscn
new file mode 100644
index 0000000..8cce0b7
--- /dev/null
+++ b/DungeonShooting_Godot/prefab/role/Enemy0002.tscn
@@ -0,0 +1,66 @@
+[gd_scene load_steps=7 format=3 uid="uid://iweob17o1hn5"]
+
+[ext_resource type="PackedScene" uid="uid://cyrcv2jdgr8cf" path="res://prefab/role/RoleTemplate.tscn" id="1_rncjb"]
+[ext_resource type="Script" path="res://src/game/activity/role/enemy/Enemy.cs" id="2_wjtfl"]
+[ext_resource type="Shader" path="res://resource/material/Blend.gdshader" id="3_gr4gs"]
+[ext_resource type="SpriteFrames" uid="uid://ctpkpxgcwb583" path="res://resource/spriteFrames/role/Enemy0002.tres" id="4_ehtyi"]
+
+[sub_resource type="ShaderMaterial" id="ShaderMaterial_8vxx6"]
+resource_local_to_scene = true
+shader = ExtResource("3_gr4gs")
+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
+shader_parameter/outline_use_blend = true
+
+[sub_resource type="ShaderMaterial" id="ShaderMaterial_k8mt5"]
+resource_local_to_scene = true
+shader = ExtResource("3_gr4gs")
+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
+shader_parameter/outline_use_blend = true
+
+[node name="Enemy0001" node_paths=PackedStringArray("HurtArea", "HurtCollision", "MountPoint", "BackMountPoint", "InteractiveArea", "InteractiveCollision", "MeleeAttackArea", "MeleeAttackCollision", "ShadowSprite", "AnimatedSprite", "Collision") instance=ExtResource("1_rncjb")]
+collision_layer = 16
+collision_mask = 25
+script = ExtResource("2_wjtfl")
+HurtArea = NodePath("HurtArea")
+HurtCollision = NodePath("HurtArea/HurtCollision")
+MountPoint = NodePath("MountPoint")
+BackMountPoint = NodePath("BackMountPoint")
+InteractiveArea = NodePath("InteractiveArea")
+InteractiveCollision = NodePath("InteractiveArea/InteractiveCollision")
+MeleeAttackArea = NodePath("MountPoint/MeleeAttackArea")
+MeleeAttackCollision = NodePath("MountPoint/MeleeAttackArea/MeleeAttackCollision")
+ShadowSprite = NodePath("ShadowSprite")
+AnimatedSprite = NodePath("AnimatedSprite")
+Collision = NodePath("Collision")
+
+[node name="ShadowSprite" parent="." index="0"]
+material = SubResource("ShaderMaterial_8vxx6")
+
+[node name="AnimatedSprite" parent="." index="2"]
+material = SubResource("ShaderMaterial_k8mt5")
+position = Vector2(0, -10)
+sprite_frames = ExtResource("4_ehtyi")
+animation = &"run"
+frame_progress = 0.685531
+
+[node name="ViewRay" type="RayCast2D" parent="." index="6"]
+position = Vector2(0, -8)
+enabled = false
+
+[node name="NavigationPoint" type="Marker2D" parent="." index="8"]
+position = Vector2(0, -5)
+
+[node name="NavigationAgent2D" type="NavigationAgent2D" parent="NavigationPoint" index="0"]
+path_desired_distance = 3.0
+target_desired_distance = 3.0
+radius = 20.0
diff --git a/DungeonShooting_Godot/resource/config/ActivityBase.json b/DungeonShooting_Godot/resource/config/ActivityBase.json
index 0f6f6c7..c9bb74b 100644
--- a/DungeonShooting_Godot/resource/config/ActivityBase.json
+++ b/DungeonShooting_Godot/resource/config/ActivityBase.json
@@ -24,6 +24,18 @@
     "ShowInMapEditor": true
   },
   {
+    "Id": "enemy0002",
+    "Type": 4,
+    "Name": "\u654C\u4EBA2",
+    "Intro": "\u654C\u4EBA2",
+    "Details": "",
+    "IsStatic": false,
+    "__Material": "",
+    "Prefab": "res://prefab/role/Enemy0002.tscn",
+    "Icon": "res://resource/sprite/role/enemy0002/Enemy0002.png",
+    "ShowInMapEditor": true
+  },
+  {
     "Id": "weapon0001",
     "Type": 5,
     "Name": "\u6B65\u67AA",
diff --git a/DungeonShooting_Godot/resource/map/tileMaps/TestGroup1/battle/Battle5/Preinstall.json b/DungeonShooting_Godot/resource/map/tileMaps/TestGroup1/battle/Battle5/Preinstall.json
index bf4f6af..ddd7807 100644
--- a/DungeonShooting_Godot/resource/map/tileMaps/TestGroup1/battle/Battle5/Preinstall.json
+++ b/DungeonShooting_Godot/resource/map/tileMaps/TestGroup1/battle/Battle5/Preinstall.json
@@ -1 +1 @@
-[{"Name":"test1","Weight":100,"Remark":"","WaveList":[[{"Position":{"X":51,"Y":90},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"enemy0001","Weight":100,"Attr":{"Face":"0","Weapon":"weapon0009","CurrAmmon":"1","ResidueAmmo":"1"},"Altitude":0,"VerticalSpeed":0}]},{"Position":{"X":11,"Y":228},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"enemy0001","Weight":100,"Attr":{"Face":"0","Weapon":"weapon0002","CurrAmmon":"7","ResidueAmmo":"7"},"Altitude":0,"VerticalSpeed":0}]},{"Position":{"X":103,"Y":173},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"enemy0001","Weight":100,"Attr":{"Face":"0","Weapon":"weapon0009","CurrAmmon":"1","ResidueAmmo":"1"},"Altitude":0,"VerticalSpeed":0}]},{"Position":{"X":66,"Y":-4},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"enemy0001","Weight":100,"Attr":{"Face":"0","Weapon":"weapon0007","CurrAmmon":"60","ResidueAmmo":"60"},"Altitude":0,"VerticalSpeed":0}]}],[{"Position":{"X":-1,"Y":119},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"enemy0001","Weight":100,"Attr":{"Face":"0","Weapon":null},"Altitude":0,"VerticalSpeed":0}]},{"Position":{"X":185,"Y":110},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"enemy0001","Weight":100,"Attr":{"Face":"0","Weapon":null},"Altitude":0,"VerticalSpeed":0}]},{"Position":{"X":-44,"Y":-39},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0.5,"MarkList":[{"Id":"enemy0001","Weight":100,"Attr":{"Face":"0","Weapon":"weapon0008","CurrAmmon":"10","ResidueAmmo":"10"},"Altitude":0,"VerticalSpeed":0}]},{"Position":{"X":116,"Y":229},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":1,"MarkList":[{"Id":"enemy0001","Weight":100,"Attr":{"Face":"0","Weapon":"weapon0008","CurrAmmon":"10","ResidueAmmo":"10"},"Altitude":0,"VerticalSpeed":0}]},{"Position":{"X":-73,"Y":226},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"enemy0001","Weight":100,"Attr":{"Face":"0","Weapon":"weapon0009","CurrAmmon":"1","ResidueAmmo":"1"},"Altitude":0,"VerticalSpeed":0}]}],[{"Position":{"X":65,"Y":208},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0.5,"MarkList":[{"Id":"enemy0001","Weight":100,"Attr":{"Face":"0","Weapon":null},"Altitude":0,"VerticalSpeed":0}]},{"Position":{"X":71,"Y":33},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":1,"MarkList":[{"Id":"enemy0001","Weight":100,"Attr":{"Face":"0","Weapon":null},"Altitude":0,"VerticalSpeed":0}]},{"Position":{"X":-65,"Y":102},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":1.5,"MarkList":[{"Id":"enemy0001","Weight":100,"Attr":{"Face":"0","Weapon":"weapon0002","CurrAmmon":"7","ResidueAmmo":"7"},"Altitude":0,"VerticalSpeed":0}]},{"Position":{"X":119,"Y":115},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"enemy0001","Weight":100,"Attr":{"Face":"0","Weapon":"weapon0002","CurrAmmon":"7","ResidueAmmo":"7"},"Altitude":0,"VerticalSpeed":0}]}]]}]
\ No newline at end of file
+[{"Name":"test1","Weight":100,"Remark":"","WaveList":[[{"Position":{"X":51,"Y":90},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"enemy0001","Weight":100,"Attr":{"Face":"0","Weapon":"weapon0009","CurrAmmon":"1","ResidueAmmo":"5"},"Altitude":0,"VerticalSpeed":0}]},{"Position":{"X":11,"Y":228},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"enemy0001","Weight":100,"Attr":{"Face":"0","Weapon":"weapon0002","CurrAmmon":"7","ResidueAmmo":"7"},"Altitude":0,"VerticalSpeed":0}]},{"Position":{"X":103,"Y":173},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"enemy0001","Weight":100,"Attr":{"Face":"0","Weapon":"weapon0009","CurrAmmon":"1","ResidueAmmo":"5"},"Altitude":0,"VerticalSpeed":0}]},{"Position":{"X":66,"Y":-4},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"enemy0001","Weight":100,"Attr":{"Face":"0","Weapon":"weapon0007","CurrAmmon":"60","ResidueAmmo":"60"},"Altitude":0,"VerticalSpeed":0}]}],[{"Position":{"X":-1,"Y":119},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"enemy0001","Weight":100,"Attr":{"Face":"0","Weapon":null},"Altitude":0,"VerticalSpeed":0}]},{"Position":{"X":185,"Y":110},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"enemy0001","Weight":100,"Attr":{"Face":"0","Weapon":null},"Altitude":0,"VerticalSpeed":0}]},{"Position":{"X":-44,"Y":-39},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0.5,"MarkList":[{"Id":"enemy0001","Weight":100,"Attr":{"Face":"0","Weapon":"weapon0008","CurrAmmon":"10","ResidueAmmo":"10"},"Altitude":0,"VerticalSpeed":0}]},{"Position":{"X":116,"Y":229},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":1,"MarkList":[{"Id":"enemy0001","Weight":100,"Attr":{"Face":"0","Weapon":"weapon0008","CurrAmmon":"10","ResidueAmmo":"10"},"Altitude":0,"VerticalSpeed":0}]},{"Position":{"X":-73,"Y":226},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"enemy0001","Weight":100,"Attr":{"Face":"0","Weapon":"weapon0009","CurrAmmon":"1","ResidueAmmo":"5"},"Altitude":0,"VerticalSpeed":0}]}],[{"Position":{"X":65,"Y":208},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0.5,"MarkList":[{"Id":"enemy0001","Weight":100,"Attr":{"Face":"0","Weapon":null},"Altitude":0,"VerticalSpeed":0}]},{"Position":{"X":71,"Y":33},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":1,"MarkList":[{"Id":"enemy0001","Weight":100,"Attr":{"Face":"0","Weapon":null},"Altitude":0,"VerticalSpeed":0}]},{"Position":{"X":-65,"Y":102},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":1.5,"MarkList":[{"Id":"enemy0001","Weight":100,"Attr":{"Face":"0","Weapon":"weapon0002","CurrAmmon":"7","ResidueAmmo":"7"},"Altitude":0,"VerticalSpeed":0}]},{"Position":{"X":119,"Y":115},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"enemy0001","Weight":100,"Attr":{"Face":"0","Weapon":"weapon0002","CurrAmmon":"7","ResidueAmmo":"7"},"Altitude":0,"VerticalSpeed":0}]}]]}]
\ No newline at end of file
diff --git a/DungeonShooting_Godot/resource/map/tileMaps/TestGroup1/inlet/Start2/Preinstall.json b/DungeonShooting_Godot/resource/map/tileMaps/TestGroup1/inlet/Start2/Preinstall.json
index 2af15f7..ed652d3 100644
--- a/DungeonShooting_Godot/resource/map/tileMaps/TestGroup1/inlet/Start2/Preinstall.json
+++ b/DungeonShooting_Godot/resource/map/tileMaps/TestGroup1/inlet/Start2/Preinstall.json
@@ -1 +1 @@
-[{"Name":"test1","Weight":100,"Remark":"","WaveList":[[{"Position":{"X":0,"Y":0},"Size":{"X":0,"Y":0},"SpecialMarkType":1,"DelayTime":0,"MarkList":[]},{"Position":{"X":0,"Y":26},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"weapon0005","Weight":100,"Attr":{"CurrAmmon":"10","ResidueAmmo":"40"},"Altitude":8,"VerticalSpeed":0}]}]]}]
\ No newline at end of file
+[{"Name":"test1","Weight":100,"Remark":"","WaveList":[[{"Position":{"X":0,"Y":0},"Size":{"X":0,"Y":0},"SpecialMarkType":1,"DelayTime":0,"MarkList":[]},{"Position":{"X":16,"Y":26},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"weapon0003","Weight":100,"Attr":{"CurrAmmon":"12","ResidueAmmo":"90"},"Altitude":8,"VerticalSpeed":0}]},{"Position":{"X":-16,"Y":25},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"prop0003","Weight":100,"Attr":null,"Altitude":8,"VerticalSpeed":0}]},{"Position":{"X":-35,"Y":-40},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"enemy0002","Weight":100,"Attr":{"Face":"0","Weapon":null},"Altitude":0,"VerticalSpeed":0}]},{"Position":{"X":37,"Y":-13},"Size":{"X":16,"Y":16},"SpecialMarkType":0,"DelayTime":0,"MarkList":[{"Id":"weapon0001","Weight":100,"Attr":{"CurrAmmon":"30","ResidueAmmo":"210"},"Altitude":8,"VerticalSpeed":0}]}]]}]
\ No newline at end of file
diff --git a/DungeonShooting_Godot/resource/sprite/role/enemy0002/Enemy0002.png b/DungeonShooting_Godot/resource/sprite/role/enemy0002/Enemy0002.png
index 5d05fe2..8d930ae 100644
--- a/DungeonShooting_Godot/resource/sprite/role/enemy0002/Enemy0002.png
+++ b/DungeonShooting_Godot/resource/sprite/role/enemy0002/Enemy0002.png
Binary files differ
diff --git a/DungeonShooting_Godot/resource/sprite/role/enemy0002/Enemy0002_idle.png b/DungeonShooting_Godot/resource/sprite/role/enemy0002/Enemy0002_idle.png
new file mode 100644
index 0000000..cd69636
--- /dev/null
+++ b/DungeonShooting_Godot/resource/sprite/role/enemy0002/Enemy0002_idle.png
Binary files differ
diff --git a/DungeonShooting_Godot/resource/sprite/role/enemy0002/Enemy0002_idle.png.import b/DungeonShooting_Godot/resource/sprite/role/enemy0002/Enemy0002_idle.png.import
new file mode 100644
index 0000000..c143170
--- /dev/null
+++ b/DungeonShooting_Godot/resource/sprite/role/enemy0002/Enemy0002_idle.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://bwafpoxpkx3lu"
+path="res://.godot/imported/Enemy0002_idle.png-f012203897ea29b187025e9df2dee09e.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://resource/sprite/role/enemy0002/Enemy0002_idle.png"
+dest_files=["res://.godot/imported/Enemy0002_idle.png-f012203897ea29b187025e9df2dee09e.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/role/enemy0002/Enemy0002_run.png b/DungeonShooting_Godot/resource/sprite/role/enemy0002/Enemy0002_run.png
new file mode 100644
index 0000000..eec38ac
--- /dev/null
+++ b/DungeonShooting_Godot/resource/sprite/role/enemy0002/Enemy0002_run.png
Binary files differ
diff --git a/DungeonShooting_Godot/resource/sprite/role/enemy0002/Enemy0002_run.png.import b/DungeonShooting_Godot/resource/sprite/role/enemy0002/Enemy0002_run.png.import
new file mode 100644
index 0000000..c1b8fdd
--- /dev/null
+++ b/DungeonShooting_Godot/resource/sprite/role/enemy0002/Enemy0002_run.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://dibftt2rj5omq"
+path="res://.godot/imported/Enemy0002_run.png-6dfcd1cc185b0a4ee4497ba9526c1749.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://resource/sprite/role/enemy0002/Enemy0002_run.png"
+dest_files=["res://.godot/imported/Enemy0002_run.png-6dfcd1cc185b0a4ee4497ba9526c1749.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/role/Enemy0002.tres b/DungeonShooting_Godot/resource/spriteFrames/role/Enemy0002.tres
index c76a23b..227127a 100644
--- a/DungeonShooting_Godot/resource/spriteFrames/role/Enemy0002.tres
+++ b/DungeonShooting_Godot/resource/spriteFrames/role/Enemy0002.tres
@@ -1,48 +1,74 @@
-[gd_resource type="SpriteFrames" load_steps=11 format=3 uid="uid://ctpkpxgcwb583"]
+[gd_resource type="SpriteFrames" load_steps=19 format=3 uid="uid://ctpkpxgcwb583"]
 
 [ext_resource type="Texture2D" uid="uid://ba6ke6xp63lnv" path="res://resource/sprite/role/enemy0002/Enemy0002.png" id="1_bvqwm"]
+[ext_resource type="Texture2D" uid="uid://bwafpoxpkx3lu" path="res://resource/sprite/role/enemy0002/Enemy0002_idle.png" id="2_755ta"]
+[ext_resource type="Texture2D" uid="uid://dibftt2rj5omq" path="res://resource/sprite/role/enemy0002/Enemy0002_run.png" id="3_xwtnk"]
 
-[sub_resource type="AtlasTexture" id="AtlasTexture_5wfgo"]
-atlas = ExtResource("1_bvqwm")
-region = Rect2(48, 0, 48, 48)
+[sub_resource type="AtlasTexture" id="AtlasTexture_pbkbq"]
+atlas = ExtResource("2_755ta")
+region = Rect2(32, 0, 32, 32)
 
-[sub_resource type="AtlasTexture" id="AtlasTexture_xgbmh"]
-atlas = ExtResource("1_bvqwm")
-region = Rect2(0, 0, 48, 48)
+[sub_resource type="AtlasTexture" id="AtlasTexture_g3tja"]
+atlas = ExtResource("2_755ta")
+region = Rect2(64, 0, 32, 32)
 
-[sub_resource type="AtlasTexture" id="AtlasTexture_y1ku4"]
-atlas = ExtResource("1_bvqwm")
-region = Rect2(48, 0, 48, 48)
+[sub_resource type="AtlasTexture" id="AtlasTexture_0dbdg"]
+atlas = ExtResource("2_755ta")
+region = Rect2(96, 0, 32, 32)
 
-[sub_resource type="AtlasTexture" id="AtlasTexture_st6cw"]
-atlas = ExtResource("1_bvqwm")
-region = Rect2(96, 0, 48, 48)
+[sub_resource type="AtlasTexture" id="AtlasTexture_emsy8"]
+atlas = ExtResource("2_755ta")
+region = Rect2(128, 0, 32, 32)
 
-[sub_resource type="AtlasTexture" id="AtlasTexture_1sv27"]
-atlas = ExtResource("1_bvqwm")
-region = Rect2(144, 0, 48, 48)
+[sub_resource type="AtlasTexture" id="AtlasTexture_d2jr8"]
+atlas = ExtResource("2_755ta")
+region = Rect2(160, 0, 32, 32)
 
-[sub_resource type="AtlasTexture" id="AtlasTexture_k7ewl"]
-atlas = ExtResource("1_bvqwm")
-region = Rect2(192, 0, 48, 48)
+[sub_resource type="AtlasTexture" id="AtlasTexture_kaina"]
+atlas = ExtResource("2_755ta")
+region = Rect2(192, 0, 32, 32)
 
-[sub_resource type="AtlasTexture" id="AtlasTexture_7e28c"]
-atlas = ExtResource("1_bvqwm")
-region = Rect2(240, 0, 48, 48)
+[sub_resource type="AtlasTexture" id="AtlasTexture_hhv1n"]
+atlas = ExtResource("2_755ta")
+region = Rect2(224, 0, 32, 32)
 
-[sub_resource type="AtlasTexture" id="AtlasTexture_cdaa6"]
-atlas = ExtResource("1_bvqwm")
-region = Rect2(288, 0, 48, 48)
+[sub_resource type="AtlasTexture" id="AtlasTexture_583v7"]
+atlas = ExtResource("3_xwtnk")
+region = Rect2(0, 0, 32, 32)
 
-[sub_resource type="AtlasTexture" id="AtlasTexture_uccqd"]
-atlas = ExtResource("1_bvqwm")
-region = Rect2(336, 0, 48, 48)
+[sub_resource type="AtlasTexture" id="AtlasTexture_2gvm7"]
+atlas = ExtResource("3_xwtnk")
+region = Rect2(32, 0, 32, 32)
+
+[sub_resource type="AtlasTexture" id="AtlasTexture_614bw"]
+atlas = ExtResource("3_xwtnk")
+region = Rect2(64, 0, 32, 32)
+
+[sub_resource type="AtlasTexture" id="AtlasTexture_okagi"]
+atlas = ExtResource("3_xwtnk")
+region = Rect2(96, 0, 32, 32)
+
+[sub_resource type="AtlasTexture" id="AtlasTexture_bpq0u"]
+atlas = ExtResource("3_xwtnk")
+region = Rect2(128, 0, 32, 32)
+
+[sub_resource type="AtlasTexture" id="AtlasTexture_pmrvk"]
+atlas = ExtResource("3_xwtnk")
+region = Rect2(160, 0, 32, 32)
+
+[sub_resource type="AtlasTexture" id="AtlasTexture_18qid"]
+atlas = ExtResource("3_xwtnk")
+region = Rect2(192, 0, 32, 32)
+
+[sub_resource type="AtlasTexture" id="AtlasTexture_yxvkk"]
+atlas = ExtResource("3_xwtnk")
+region = Rect2(224, 0, 32, 32)
 
 [resource]
 animations = [{
 "frames": [{
 "duration": 1.0,
-"texture": SubResource("AtlasTexture_5wfgo")
+"texture": ExtResource("1_bvqwm")
 }],
 "loop": true,
 "name": &"default",
@@ -50,30 +76,56 @@
 }, {
 "frames": [{
 "duration": 1.0,
-"texture": SubResource("AtlasTexture_xgbmh")
+"texture": SubResource("AtlasTexture_pbkbq")
 }, {
 "duration": 1.0,
-"texture": SubResource("AtlasTexture_y1ku4")
+"texture": SubResource("AtlasTexture_g3tja")
 }, {
 "duration": 1.0,
-"texture": SubResource("AtlasTexture_st6cw")
+"texture": SubResource("AtlasTexture_0dbdg")
 }, {
 "duration": 1.0,
-"texture": SubResource("AtlasTexture_1sv27")
+"texture": SubResource("AtlasTexture_emsy8")
 }, {
 "duration": 1.0,
-"texture": SubResource("AtlasTexture_k7ewl")
+"texture": SubResource("AtlasTexture_d2jr8")
 }, {
 "duration": 1.0,
-"texture": SubResource("AtlasTexture_7e28c")
+"texture": SubResource("AtlasTexture_kaina")
 }, {
 "duration": 1.0,
-"texture": SubResource("AtlasTexture_cdaa6")
-}, {
-"duration": 1.0,
-"texture": SubResource("AtlasTexture_uccqd")
+"texture": SubResource("AtlasTexture_hhv1n")
 }],
 "loop": true,
 "name": &"idle",
 "speed": 7.0
+}, {
+"frames": [{
+"duration": 1.0,
+"texture": SubResource("AtlasTexture_583v7")
+}, {
+"duration": 1.0,
+"texture": SubResource("AtlasTexture_2gvm7")
+}, {
+"duration": 1.0,
+"texture": SubResource("AtlasTexture_614bw")
+}, {
+"duration": 1.0,
+"texture": SubResource("AtlasTexture_okagi")
+}, {
+"duration": 1.0,
+"texture": SubResource("AtlasTexture_bpq0u")
+}, {
+"duration": 1.0,
+"texture": SubResource("AtlasTexture_pmrvk")
+}, {
+"duration": 1.0,
+"texture": SubResource("AtlasTexture_18qid")
+}, {
+"duration": 1.0,
+"texture": SubResource("AtlasTexture_yxvkk")
+}],
+"loop": true,
+"name": &"run",
+"speed": 10.0
 }]
diff --git a/DungeonShooting_Godot/src/framework/activity/ActivityObject_Init.cs b/DungeonShooting_Godot/src/framework/activity/ActivityObject_Init.cs
index 4ba3050..a6c0b2a 100644
--- a/DungeonShooting_Godot/src/framework/activity/ActivityObject_Init.cs
+++ b/DungeonShooting_Godot/src/framework/activity/ActivityObject_Init.cs
@@ -19,6 +19,11 @@
         /// </summary>
         public const string Id_enemy0001 = "enemy0001";
         /// <summary>
+        /// 名称: 敌人2 <br/>
+        /// 简介: 敌人2
+        /// </summary>
+        public const string Id_enemy0002 = "enemy0002";
+        /// <summary>
         /// 名称: 步枪 <br/>
         /// 简介: 
         /// </summary>