diff --git a/DungeonShooting_Godot/excel/excelFile/ActivityObject.xlsx b/DungeonShooting_Godot/excel/excelFile/ActivityObject.xlsx
index ac61ddd..d69d19d 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 0b704d3..c0a8991 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 1a85c8a..a0166bc 100644
--- a/DungeonShooting_Godot/excel/excelFile/Weapon.xlsx
+++ b/DungeonShooting_Godot/excel/excelFile/Weapon.xlsx
Binary files differ
diff --git a/DungeonShooting_Godot/prefab/map/RoomDoor_E.tscn b/DungeonShooting_Godot/prefab/map/RoomDoor_E.tscn
index 70d7f16..2b54e02 100644
--- a/DungeonShooting_Godot/prefab/map/RoomDoor_E.tscn
+++ b/DungeonShooting_Godot/prefab/map/RoomDoor_E.tscn
@@ -4,18 +4,25 @@
 [ext_resource type="Shader" path="res://resource/material/Blend.gdshader" id="2_lwx51"]
 [ext_resource type="SpriteFrames" uid="uid://3ps6h2f54qa5" path="res://resource/spriteFrames/other/RoomDoor_EW.tres" id="3_pjvd8"]
 
-
 [sub_resource type="ShaderMaterial" id="ShaderMaterial_yvwpk"]
 resource_local_to_scene = true
 shader = ExtResource("2_lwx51")
 shader_parameter/blend = Color(0, 0, 0, 0.470588)
 shader_parameter/schedule = 1.0
+shader_parameter/alpha = 1.0
+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_t4ayq"]
 resource_local_to_scene = true
 shader = ExtResource("2_lwx51")
 shader_parameter/blend = Color(1, 1, 1, 1)
 shader_parameter/schedule = 0.0
+shader_parameter/alpha = 1.0
+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_opsb6"]
 resource_local_to_scene = true
diff --git a/DungeonShooting_Godot/prefab/map/RoomDoor_N.tscn b/DungeonShooting_Godot/prefab/map/RoomDoor_N.tscn
index fe84b67..461cf04 100644
--- a/DungeonShooting_Godot/prefab/map/RoomDoor_N.tscn
+++ b/DungeonShooting_Godot/prefab/map/RoomDoor_N.tscn
@@ -4,18 +4,25 @@
 [ext_resource type="Shader" path="res://resource/material/Blend.gdshader" id="2_h5ru6"]
 [ext_resource type="SpriteFrames" uid="uid://xs72aopsgpg6" path="res://resource/spriteFrames/other/RoomDoor_NS.tres" id="3_apluc"]
 
-
 [sub_resource type="ShaderMaterial" id="ShaderMaterial_yvwpk"]
 resource_local_to_scene = true
 shader = ExtResource("2_h5ru6")
 shader_parameter/blend = Color(0, 0, 0, 0.470588)
 shader_parameter/schedule = 1.0
+shader_parameter/alpha = 1.0
+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_t4ayq"]
 resource_local_to_scene = true
 shader = ExtResource("2_h5ru6")
 shader_parameter/blend = Color(1, 1, 1, 1)
 shader_parameter/schedule = 0.0
+shader_parameter/alpha = 1.0
+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_opsb6"]
 resource_local_to_scene = true
diff --git a/DungeonShooting_Godot/prefab/map/RoomDoor_S.tscn b/DungeonShooting_Godot/prefab/map/RoomDoor_S.tscn
index 5d3dc92..b8cd815 100644
--- a/DungeonShooting_Godot/prefab/map/RoomDoor_S.tscn
+++ b/DungeonShooting_Godot/prefab/map/RoomDoor_S.tscn
@@ -4,18 +4,25 @@
 [ext_resource type="Shader" path="res://resource/material/Blend.gdshader" id="2_6vvcd"]
 [ext_resource type="SpriteFrames" uid="uid://xs72aopsgpg6" path="res://resource/spriteFrames/other/RoomDoor_NS.tres" id="3_at5v2"]
 
-
 [sub_resource type="ShaderMaterial" id="ShaderMaterial_yvwpk"]
 resource_local_to_scene = true
 shader = ExtResource("2_6vvcd")
 shader_parameter/blend = Color(0, 0, 0, 0.470588)
 shader_parameter/schedule = 1.0
+shader_parameter/alpha = 1.0
+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_t4ayq"]
 resource_local_to_scene = true
 shader = ExtResource("2_6vvcd")
 shader_parameter/blend = Color(1, 1, 1, 1)
 shader_parameter/schedule = 0.0
+shader_parameter/alpha = 1.0
+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_opsb6"]
 resource_local_to_scene = true
diff --git a/DungeonShooting_Godot/prefab/map/RoomDoor_W.tscn b/DungeonShooting_Godot/prefab/map/RoomDoor_W.tscn
index 0dbf427..855e540 100644
--- a/DungeonShooting_Godot/prefab/map/RoomDoor_W.tscn
+++ b/DungeonShooting_Godot/prefab/map/RoomDoor_W.tscn
@@ -4,18 +4,25 @@
 [ext_resource type="Shader" path="res://resource/material/Blend.gdshader" id="2_wx2w3"]
 [ext_resource type="SpriteFrames" uid="uid://3ps6h2f54qa5" path="res://resource/spriteFrames/other/RoomDoor_EW.tres" id="3_a2hvw"]
 
-
 [sub_resource type="ShaderMaterial" id="ShaderMaterial_yvwpk"]
 resource_local_to_scene = true
 shader = ExtResource("2_wx2w3")
 shader_parameter/blend = Color(0, 0, 0, 0.470588)
 shader_parameter/schedule = 1.0
+shader_parameter/alpha = 1.0
+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_t4ayq"]
 resource_local_to_scene = true
 shader = ExtResource("2_wx2w3")
 shader_parameter/blend = Color(1, 1, 1, 1)
 shader_parameter/schedule = 0.0
+shader_parameter/alpha = 1.0
+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_2ko2r"]
 resource_local_to_scene = true
diff --git a/DungeonShooting_Godot/prefab/prop/PropTemplate.tscn b/DungeonShooting_Godot/prefab/prop/PropTemplate.tscn
new file mode 100644
index 0000000..a0fecf6
--- /dev/null
+++ b/DungeonShooting_Godot/prefab/prop/PropTemplate.tscn
@@ -0,0 +1,39 @@
+[gd_scene load_steps=5 format=3 uid="uid://utgoqn1dt4c3"]
+
+[ext_resource type="Shader" path="res://resource/material/Blend.gdshader" id="2_77bh2"]
+
+[sub_resource type="ShaderMaterial" id="ShaderMaterial_mrkt4"]
+resource_local_to_scene = true
+shader = ExtResource("2_77bh2")
+shader_parameter/blend = Color(0, 0, 0, 0.470588)
+shader_parameter/schedule = 1.0
+shader_parameter/alpha = 1.0
+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_b6ii6"]
+resource_local_to_scene = true
+shader = ExtResource("2_77bh2")
+shader_parameter/blend = Color(1, 1, 1, 1)
+shader_parameter/schedule = 0.0
+shader_parameter/alpha = 1.0
+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_cpqup"]
+size = Vector2(12, 10)
+
+[node name="PropTemplate" type="CharacterBody2D"]
+collision_layer = 4
+
+[node name="ShadowSprite" type="Sprite2D" parent="."]
+z_index = -1
+material = SubResource("ShaderMaterial_mrkt4")
+
+[node name="AnimatedSprite" type="AnimatedSprite2D" parent="."]
+material = SubResource("ShaderMaterial_b6ii6")
+
+[node name="Collision" type="CollisionShape2D" parent="."]
+shape = SubResource("RectangleShape2D_cpqup")
diff --git a/DungeonShooting_Godot/prefab/prop/active/ActiveProp5000.tscn b/DungeonShooting_Godot/prefab/prop/active/ActiveProp5000.tscn
new file mode 100644
index 0000000..d874d73
--- /dev/null
+++ b/DungeonShooting_Godot/prefab/prop/active/ActiveProp5000.tscn
@@ -0,0 +1,46 @@
+[gd_scene load_steps=7 format=3 uid="uid://crwflnrd6so2i"]
+
+[ext_resource type="Shader" path="res://resource/material/Blend.gdshader" id="1_f18nu"]
+[ext_resource type="Script" path="res://src/game/activity/prop/active/ActiveProp5000.cs" id="1_nkhdg"]
+[ext_resource type="SpriteFrames" uid="uid://cvosq47nbdnus" path="res://resource/spriteFrames/prop/active/ActiveProp5000.tres" id="3_4xrrj"]
+
+[sub_resource type="ShaderMaterial" id="ShaderMaterial_mrkt4"]
+resource_local_to_scene = true
+shader = ExtResource("1_f18nu")
+shader_parameter/blend = Color(0, 0, 0, 0.470588)
+shader_parameter/schedule = 1.0
+shader_parameter/alpha = 1.0
+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_b6ii6"]
+resource_local_to_scene = true
+shader = ExtResource("1_f18nu")
+shader_parameter/blend = Color(1, 1, 1, 1)
+shader_parameter/schedule = 0.0
+shader_parameter/alpha = 1.0
+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_cpqup"]
+size = Vector2(12, 10)
+
+[node name="ActiveProp5000" type="CharacterBody2D" node_paths=PackedStringArray("ShadowSprite", "AnimatedSprite", "Collision")]
+collision_layer = 4
+script = ExtResource("1_nkhdg")
+ShadowSprite = NodePath("ShadowSprite")
+AnimatedSprite = NodePath("AnimatedSprite")
+Collision = NodePath("Collision")
+
+[node name="ShadowSprite" type="Sprite2D" parent="."]
+z_index = -1
+material = SubResource("ShaderMaterial_mrkt4")
+
+[node name="AnimatedSprite" type="AnimatedSprite2D" parent="."]
+material = SubResource("ShaderMaterial_b6ii6")
+sprite_frames = ExtResource("3_4xrrj")
+
+[node name="Collision" type="CollisionShape2D" parent="."]
+shape = SubResource("RectangleShape2D_cpqup")
diff --git a/DungeonShooting_Godot/prefab/prop/buff/Buff0001.tscn b/DungeonShooting_Godot/prefab/prop/buff/Buff0001.tscn
deleted file mode 100644
index f282911..0000000
--- a/DungeonShooting_Godot/prefab/prop/buff/Buff0001.tscn
+++ /dev/null
@@ -1,46 +0,0 @@
-[gd_scene load_steps=7 format=3 uid="uid://cb4k0wmt3rhjc"]
-
-[ext_resource type="Script" path="res://src/game/activity/prop/buff/Buff0001.cs" id="1_sfoyx"]
-[ext_resource type="Shader" path="res://resource/material/Blend.gdshader" id="2_5y838"]
-[ext_resource type="SpriteFrames" uid="uid://wtvfyprel72y" path="res://resource/spriteFrames/prop/buff/Buff0001.tres" id="3_ae54v"]
-
-[sub_resource type="ShaderMaterial" id="ShaderMaterial_mrkt4"]
-resource_local_to_scene = true
-shader = ExtResource("2_5y838")
-shader_parameter/blend = Color(0, 0, 0, 0.470588)
-shader_parameter/schedule = 1.0
-shader_parameter/alpha = 1.0
-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_b6ii6"]
-resource_local_to_scene = true
-shader = ExtResource("2_5y838")
-shader_parameter/blend = Color(1, 1, 1, 1)
-shader_parameter/schedule = 0.0
-shader_parameter/alpha = 1.0
-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_cpqup"]
-size = Vector2(12, 10)
-
-[node name="Buff0001" type="CharacterBody2D" node_paths=PackedStringArray("ShadowSprite", "AnimatedSprite", "Collision")]
-collision_layer = 4
-script = ExtResource("1_sfoyx")
-ShadowSprite = NodePath("ShadowSprite")
-AnimatedSprite = NodePath("AnimatedSprite")
-Collision = NodePath("Collision")
-
-[node name="ShadowSprite" type="Sprite2D" parent="."]
-z_index = -1
-material = SubResource("ShaderMaterial_mrkt4")
-
-[node name="AnimatedSprite" type="AnimatedSprite2D" parent="."]
-material = SubResource("ShaderMaterial_b6ii6")
-sprite_frames = ExtResource("3_ae54v")
-
-[node name="Collision" type="CollisionShape2D" parent="."]
-shape = SubResource("RectangleShape2D_cpqup")
diff --git a/DungeonShooting_Godot/prefab/prop/buff/Buff0002.tscn b/DungeonShooting_Godot/prefab/prop/buff/Buff0002.tscn
deleted file mode 100644
index 842d134..0000000
--- a/DungeonShooting_Godot/prefab/prop/buff/Buff0002.tscn
+++ /dev/null
@@ -1,46 +0,0 @@
-[gd_scene load_steps=7 format=3 uid="uid://cnh7h0ti23dwm"]
-
-[ext_resource type="Script" path="res://src/game/activity/prop/buff/Buff0002.cs" id="1_5m6aa"]
-[ext_resource type="Shader" path="res://resource/material/Blend.gdshader" id="2_ca7fx"]
-[ext_resource type="SpriteFrames" uid="uid://7t57gsyff470" path="res://resource/spriteFrames/prop/buff/Buff0002.tres" id="3_meeoj"]
-
-[sub_resource type="ShaderMaterial" id="ShaderMaterial_mrkt4"]
-resource_local_to_scene = true
-shader = ExtResource("2_ca7fx")
-shader_parameter/blend = Color(0, 0, 0, 0.470588)
-shader_parameter/schedule = 1.0
-shader_parameter/alpha = 1.0
-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_b6ii6"]
-resource_local_to_scene = true
-shader = ExtResource("2_ca7fx")
-shader_parameter/blend = Color(1, 1, 1, 1)
-shader_parameter/schedule = 0.0
-shader_parameter/alpha = 1.0
-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_cpqup"]
-size = Vector2(12, 10)
-
-[node name="Buff0002" type="CharacterBody2D" node_paths=PackedStringArray("ShadowSprite", "AnimatedSprite", "Collision")]
-collision_layer = 4
-script = ExtResource("1_5m6aa")
-ShadowSprite = NodePath("ShadowSprite")
-AnimatedSprite = NodePath("AnimatedSprite")
-Collision = NodePath("Collision")
-
-[node name="ShadowSprite" type="Sprite2D" parent="."]
-z_index = -1
-material = SubResource("ShaderMaterial_mrkt4")
-
-[node name="AnimatedSprite" type="AnimatedSprite2D" parent="."]
-material = SubResource("ShaderMaterial_b6ii6")
-sprite_frames = ExtResource("3_meeoj")
-
-[node name="Collision" type="CollisionShape2D" parent="."]
-shape = SubResource("RectangleShape2D_cpqup")
diff --git a/DungeonShooting_Godot/prefab/prop/buff/Buff0003.tscn b/DungeonShooting_Godot/prefab/prop/buff/Buff0003.tscn
deleted file mode 100644
index faceca9..0000000
--- a/DungeonShooting_Godot/prefab/prop/buff/Buff0003.tscn
+++ /dev/null
@@ -1,46 +0,0 @@
-[gd_scene load_steps=7 format=3 uid="uid://im64ft74hmmg"]
-
-[ext_resource type="Script" path="res://src/game/activity/prop/buff/Buff0003.cs" id="1_put1t"]
-[ext_resource type="Shader" path="res://resource/material/Blend.gdshader" id="2_r3cwy"]
-[ext_resource type="SpriteFrames" uid="uid://nqoieett75t3" path="res://resource/spriteFrames/prop/buff/Buff0003.tres" id="3_cdr8i"]
-
-[sub_resource type="ShaderMaterial" id="ShaderMaterial_mrkt4"]
-resource_local_to_scene = true
-shader = ExtResource("2_r3cwy")
-shader_parameter/blend = Color(0, 0, 0, 0.470588)
-shader_parameter/schedule = 1.0
-shader_parameter/alpha = 1.0
-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_b6ii6"]
-resource_local_to_scene = true
-shader = ExtResource("2_r3cwy")
-shader_parameter/blend = Color(1, 1, 1, 1)
-shader_parameter/schedule = 0.0
-shader_parameter/alpha = 1.0
-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_cpqup"]
-size = Vector2(12, 10)
-
-[node name="Buff0003" type="CharacterBody2D" node_paths=PackedStringArray("ShadowSprite", "AnimatedSprite", "Collision")]
-collision_layer = 4
-script = ExtResource("1_put1t")
-ShadowSprite = NodePath("ShadowSprite")
-AnimatedSprite = NodePath("AnimatedSprite")
-Collision = NodePath("Collision")
-
-[node name="ShadowSprite" type="Sprite2D" parent="."]
-z_index = -1
-material = SubResource("ShaderMaterial_mrkt4")
-
-[node name="AnimatedSprite" type="AnimatedSprite2D" parent="."]
-material = SubResource("ShaderMaterial_b6ii6")
-sprite_frames = ExtResource("3_cdr8i")
-
-[node name="Collision" type="CollisionShape2D" parent="."]
-shape = SubResource("RectangleShape2D_cpqup")
diff --git a/DungeonShooting_Godot/prefab/prop/buff/Buff0004.tscn b/DungeonShooting_Godot/prefab/prop/buff/Buff0004.tscn
deleted file mode 100644
index d9555fb..0000000
--- a/DungeonShooting_Godot/prefab/prop/buff/Buff0004.tscn
+++ /dev/null
@@ -1,40 +0,0 @@
-[gd_scene load_steps=7 format=3 uid="uid://dw3fey3hybie4"]
-
-[ext_resource type="Script" path="res://src/game/activity/prop/buff/Buff0004.cs" id="1_77wev"]
-[ext_resource type="Shader" path="res://resource/material/Blend.gdshader" id="2_j5d6t"]
-[ext_resource type="SpriteFrames" uid="uid://bj0k3pipwp46x" path="res://resource/spriteFrames/prop/buff/Buff0004.tres" id="3_amsdk"]
-
-[sub_resource type="ShaderMaterial" id="ShaderMaterial_mrkt4"]
-resource_local_to_scene = true
-shader = ExtResource("2_j5d6t")
-shader_parameter/blend = Color(0, 0, 0, 0.470588)
-shader_parameter/schedule = 1.0
-shader_parameter/alpha = 1.0
-
-[sub_resource type="ShaderMaterial" id="ShaderMaterial_b6ii6"]
-resource_local_to_scene = true
-shader = ExtResource("2_j5d6t")
-shader_parameter/blend = Color(1, 1, 1, 1)
-shader_parameter/schedule = 0.0
-shader_parameter/alpha = 1.0
-
-[sub_resource type="RectangleShape2D" id="RectangleShape2D_cpqup"]
-size = Vector2(12, 10)
-
-[node name="Buff0004" type="CharacterBody2D" node_paths=PackedStringArray("ShadowSprite", "AnimatedSprite", "Collision")]
-collision_layer = 4
-script = ExtResource("1_77wev")
-ShadowSprite = NodePath("ShadowSprite")
-AnimatedSprite = NodePath("AnimatedSprite")
-Collision = NodePath("Collision")
-
-[node name="ShadowSprite" type="Sprite2D" parent="."]
-z_index = -1
-material = SubResource("ShaderMaterial_mrkt4")
-
-[node name="AnimatedSprite" type="AnimatedSprite2D" parent="."]
-material = SubResource("ShaderMaterial_b6ii6")
-sprite_frames = ExtResource("3_amsdk")
-
-[node name="Collision" type="CollisionShape2D" parent="."]
-shape = SubResource("RectangleShape2D_cpqup")
diff --git a/DungeonShooting_Godot/prefab/prop/buff/Buff0005.tscn b/DungeonShooting_Godot/prefab/prop/buff/Buff0005.tscn
deleted file mode 100644
index 6d2f135..0000000
--- a/DungeonShooting_Godot/prefab/prop/buff/Buff0005.tscn
+++ /dev/null
@@ -1,40 +0,0 @@
-[gd_scene load_steps=7 format=3 uid="uid://b4u8ichb44htn"]
-
-[ext_resource type="Script" path="res://src/game/activity/prop/buff/Buff0005.cs" id="1_kxndg"]
-[ext_resource type="Shader" path="res://resource/material/Blend.gdshader" id="2_85pkn"]
-[ext_resource type="SpriteFrames" uid="uid://bvqp46degt1rg" path="res://resource/spriteFrames/prop/buff/Buff0005.tres" id="3_1p404"]
-
-[sub_resource type="ShaderMaterial" id="ShaderMaterial_mrkt4"]
-resource_local_to_scene = true
-shader = ExtResource("2_85pkn")
-shader_parameter/blend = Color(0, 0, 0, 0.470588)
-shader_parameter/schedule = 1.0
-shader_parameter/alpha = 1.0
-
-[sub_resource type="ShaderMaterial" id="ShaderMaterial_b6ii6"]
-resource_local_to_scene = true
-shader = ExtResource("2_85pkn")
-shader_parameter/blend = Color(1, 1, 1, 1)
-shader_parameter/schedule = 0.0
-shader_parameter/alpha = 1.0
-
-[sub_resource type="RectangleShape2D" id="RectangleShape2D_cpqup"]
-size = Vector2(12, 10)
-
-[node name="Buff0005" type="CharacterBody2D" node_paths=PackedStringArray("ShadowSprite", "AnimatedSprite", "Collision")]
-collision_layer = 4
-script = ExtResource("1_kxndg")
-ShadowSprite = NodePath("ShadowSprite")
-AnimatedSprite = NodePath("AnimatedSprite")
-Collision = NodePath("Collision")
-
-[node name="ShadowSprite" type="Sprite2D" parent="."]
-z_index = -1
-material = SubResource("ShaderMaterial_mrkt4")
-
-[node name="AnimatedSprite" type="AnimatedSprite2D" parent="."]
-material = SubResource("ShaderMaterial_b6ii6")
-sprite_frames = ExtResource("3_1p404")
-
-[node name="Collision" type="CollisionShape2D" parent="."]
-shape = SubResource("RectangleShape2D_cpqup")
diff --git a/DungeonShooting_Godot/prefab/prop/buff/Buff0006.tscn b/DungeonShooting_Godot/prefab/prop/buff/Buff0006.tscn
deleted file mode 100644
index 9f51b00..0000000
--- a/DungeonShooting_Godot/prefab/prop/buff/Buff0006.tscn
+++ /dev/null
@@ -1,40 +0,0 @@
-[gd_scene load_steps=7 format=3 uid="uid://co5v2gncs0i6g"]
-
-[ext_resource type="Script" path="res://src/game/activity/prop/buff/Buff0006.cs" id="1_lf3k7"]
-[ext_resource type="SpriteFrames" uid="uid://bxn65oovekw6k" path="res://resource/spriteFrames/prop/buff/Buff0006.tres" id="2_clye6"]
-[ext_resource type="Shader" path="res://resource/material/Blend.gdshader" id="2_pir38"]
-
-[sub_resource type="ShaderMaterial" id="ShaderMaterial_mrkt4"]
-resource_local_to_scene = true
-shader = ExtResource("2_pir38")
-shader_parameter/blend = Color(0, 0, 0, 0.470588)
-shader_parameter/schedule = 1.0
-shader_parameter/alpha = 1.0
-
-[sub_resource type="ShaderMaterial" id="ShaderMaterial_b6ii6"]
-resource_local_to_scene = true
-shader = ExtResource("2_pir38")
-shader_parameter/blend = Color(1, 1, 1, 1)
-shader_parameter/schedule = 0.0
-shader_parameter/alpha = 1.0
-
-[sub_resource type="RectangleShape2D" id="RectangleShape2D_cpqup"]
-size = Vector2(12, 10)
-
-[node name="Buff0006" type="CharacterBody2D" node_paths=PackedStringArray("ShadowSprite", "AnimatedSprite", "Collision")]
-collision_layer = 4
-script = ExtResource("1_lf3k7")
-ShadowSprite = NodePath("ShadowSprite")
-AnimatedSprite = NodePath("AnimatedSprite")
-Collision = NodePath("Collision")
-
-[node name="ShadowSprite" type="Sprite2D" parent="."]
-z_index = -1
-material = SubResource("ShaderMaterial_mrkt4")
-
-[node name="AnimatedSprite" type="AnimatedSprite2D" parent="."]
-material = SubResource("ShaderMaterial_b6ii6")
-sprite_frames = ExtResource("2_clye6")
-
-[node name="Collision" type="CollisionShape2D" parent="."]
-shape = SubResource("RectangleShape2D_cpqup")
diff --git a/DungeonShooting_Godot/prefab/prop/buff/Buff0007.tscn b/DungeonShooting_Godot/prefab/prop/buff/Buff0007.tscn
deleted file mode 100644
index 62a560a..0000000
--- a/DungeonShooting_Godot/prefab/prop/buff/Buff0007.tscn
+++ /dev/null
@@ -1,40 +0,0 @@
-[gd_scene load_steps=7 format=3 uid="uid://bv85r8mqja8fy"]
-
-[ext_resource type="Script" path="res://src/game/activity/prop/buff/Buff0007.cs" id="1_4ga2a"]
-[ext_resource type="Shader" path="res://resource/material/Blend.gdshader" id="2_dfarf"]
-[ext_resource type="SpriteFrames" uid="uid://et840sb4d1g3" path="res://resource/spriteFrames/prop/buff/Buff0007.tres" id="3_y3ako"]
-
-[sub_resource type="ShaderMaterial" id="ShaderMaterial_mrkt4"]
-resource_local_to_scene = true
-shader = ExtResource("2_dfarf")
-shader_parameter/blend = Color(0, 0, 0, 0.470588)
-shader_parameter/schedule = 1.0
-shader_parameter/alpha = 1.0
-
-[sub_resource type="ShaderMaterial" id="ShaderMaterial_b6ii6"]
-resource_local_to_scene = true
-shader = ExtResource("2_dfarf")
-shader_parameter/blend = Color(1, 1, 1, 1)
-shader_parameter/schedule = 0.0
-shader_parameter/alpha = 1.0
-
-[sub_resource type="RectangleShape2D" id="RectangleShape2D_cpqup"]
-size = Vector2(12, 10)
-
-[node name="Buff0007" type="CharacterBody2D" node_paths=PackedStringArray("ShadowSprite", "AnimatedSprite", "Collision")]
-collision_layer = 4
-script = ExtResource("1_4ga2a")
-ShadowSprite = NodePath("ShadowSprite")
-AnimatedSprite = NodePath("AnimatedSprite")
-Collision = NodePath("Collision")
-
-[node name="ShadowSprite" type="Sprite2D" parent="."]
-z_index = -1
-material = SubResource("ShaderMaterial_mrkt4")
-
-[node name="AnimatedSprite" type="AnimatedSprite2D" parent="."]
-material = SubResource("ShaderMaterial_b6ii6")
-sprite_frames = ExtResource("3_y3ako")
-
-[node name="Collision" type="CollisionShape2D" parent="."]
-shape = SubResource("RectangleShape2D_cpqup")
diff --git a/DungeonShooting_Godot/prefab/prop/buff/Buff0008.tscn b/DungeonShooting_Godot/prefab/prop/buff/Buff0008.tscn
deleted file mode 100644
index f27da49..0000000
--- a/DungeonShooting_Godot/prefab/prop/buff/Buff0008.tscn
+++ /dev/null
@@ -1,40 +0,0 @@
-[gd_scene load_steps=7 format=3 uid="uid://3cwfaycb436j"]
-
-[ext_resource type="Script" path="res://src/game/activity/prop/buff/Buff0008.cs" id="1_apsyo"]
-[ext_resource type="Shader" path="res://resource/material/Blend.gdshader" id="2_g22ai"]
-[ext_resource type="SpriteFrames" uid="uid://bs41p1hpkpucb" path="res://resource/spriteFrames/prop/buff/Buff0008.tres" id="3_bko6m"]
-
-[sub_resource type="ShaderMaterial" id="ShaderMaterial_mrkt4"]
-resource_local_to_scene = true
-shader = ExtResource("2_g22ai")
-shader_parameter/blend = Color(0, 0, 0, 0.470588)
-shader_parameter/schedule = 1.0
-shader_parameter/alpha = 1.0
-
-[sub_resource type="ShaderMaterial" id="ShaderMaterial_b6ii6"]
-resource_local_to_scene = true
-shader = ExtResource("2_g22ai")
-shader_parameter/blend = Color(1, 1, 1, 1)
-shader_parameter/schedule = 0.0
-shader_parameter/alpha = 1.0
-
-[sub_resource type="RectangleShape2D" id="RectangleShape2D_cpqup"]
-size = Vector2(12, 10)
-
-[node name="Buff0008" type="CharacterBody2D" node_paths=PackedStringArray("ShadowSprite", "AnimatedSprite", "Collision")]
-collision_layer = 4
-script = ExtResource("1_apsyo")
-ShadowSprite = NodePath("ShadowSprite")
-AnimatedSprite = NodePath("AnimatedSprite")
-Collision = NodePath("Collision")
-
-[node name="ShadowSprite" type="Sprite2D" parent="."]
-z_index = -1
-material = SubResource("ShaderMaterial_mrkt4")
-
-[node name="AnimatedSprite" type="AnimatedSprite2D" parent="."]
-material = SubResource("ShaderMaterial_b6ii6")
-sprite_frames = ExtResource("3_bko6m")
-
-[node name="Collision" type="CollisionShape2D" parent="."]
-shape = SubResource("RectangleShape2D_cpqup")
diff --git a/DungeonShooting_Godot/prefab/prop/buff/Buff0009.tscn b/DungeonShooting_Godot/prefab/prop/buff/Buff0009.tscn
deleted file mode 100644
index 1696e25..0000000
--- a/DungeonShooting_Godot/prefab/prop/buff/Buff0009.tscn
+++ /dev/null
@@ -1,40 +0,0 @@
-[gd_scene load_steps=7 format=3 uid="uid://cuqwvioe545bl"]
-
-[ext_resource type="Script" path="res://src/game/activity/prop/buff/Buff0009.cs" id="1_fu5ca"]
-[ext_resource type="Shader" path="res://resource/material/Blend.gdshader" id="2_680mi"]
-[ext_resource type="SpriteFrames" uid="uid://sqcibio78nwc" path="res://resource/spriteFrames/prop/buff/Buff0009.tres" id="3_mtbwe"]
-
-[sub_resource type="ShaderMaterial" id="ShaderMaterial_mrkt4"]
-resource_local_to_scene = true
-shader = ExtResource("2_680mi")
-shader_parameter/blend = Color(0, 0, 0, 0.470588)
-shader_parameter/schedule = 1.0
-shader_parameter/alpha = 1.0
-
-[sub_resource type="ShaderMaterial" id="ShaderMaterial_b6ii6"]
-resource_local_to_scene = true
-shader = ExtResource("2_680mi")
-shader_parameter/blend = Color(1, 1, 1, 1)
-shader_parameter/schedule = 0.0
-shader_parameter/alpha = 1.0
-
-[sub_resource type="RectangleShape2D" id="RectangleShape2D_cpqup"]
-size = Vector2(12, 10)
-
-[node name="Buff0009" type="CharacterBody2D" node_paths=PackedStringArray("ShadowSprite", "AnimatedSprite", "Collision")]
-collision_layer = 4
-script = ExtResource("1_fu5ca")
-ShadowSprite = NodePath("ShadowSprite")
-AnimatedSprite = NodePath("AnimatedSprite")
-Collision = NodePath("Collision")
-
-[node name="ShadowSprite" type="Sprite2D" parent="."]
-z_index = -1
-material = SubResource("ShaderMaterial_mrkt4")
-
-[node name="AnimatedSprite" type="AnimatedSprite2D" parent="."]
-material = SubResource("ShaderMaterial_b6ii6")
-sprite_frames = ExtResource("3_mtbwe")
-
-[node name="Collision" type="CollisionShape2D" parent="."]
-shape = SubResource("RectangleShape2D_cpqup")
diff --git a/DungeonShooting_Godot/prefab/prop/buff/Buff0010.tscn b/DungeonShooting_Godot/prefab/prop/buff/Buff0010.tscn
deleted file mode 100644
index 263972e..0000000
--- a/DungeonShooting_Godot/prefab/prop/buff/Buff0010.tscn
+++ /dev/null
@@ -1,46 +0,0 @@
-[gd_scene load_steps=7 format=3 uid="uid://ddv5nfndgp2lr"]
-
-[ext_resource type="Script" path="res://src/game/activity/prop/buff/Buff0010.cs" id="1_fti4v"]
-[ext_resource type="Shader" path="res://resource/material/Blend.gdshader" id="2_bmg36"]
-[ext_resource type="SpriteFrames" uid="uid://dxqtm7xgn2wms" path="res://resource/spriteFrames/prop/buff/Buff0010.tres" id="3_oi74m"]
-
-[sub_resource type="ShaderMaterial" id="ShaderMaterial_mrkt4"]
-resource_local_to_scene = true
-shader = ExtResource("2_bmg36")
-shader_parameter/blend = Color(0, 0, 0, 0.470588)
-shader_parameter/schedule = 1.0
-shader_parameter/alpha = 1.0
-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_b6ii6"]
-resource_local_to_scene = true
-shader = ExtResource("2_bmg36")
-shader_parameter/blend = Color(1, 1, 1, 1)
-shader_parameter/schedule = 0.0
-shader_parameter/alpha = 1.0
-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_cpqup"]
-size = Vector2(12, 10)
-
-[node name="Buff0010" type="CharacterBody2D" node_paths=PackedStringArray("ShadowSprite", "AnimatedSprite", "Collision")]
-collision_layer = 4
-script = ExtResource("1_fti4v")
-ShadowSprite = NodePath("ShadowSprite")
-AnimatedSprite = NodePath("AnimatedSprite")
-Collision = NodePath("Collision")
-
-[node name="ShadowSprite" type="Sprite2D" parent="."]
-z_index = -1
-material = SubResource("ShaderMaterial_mrkt4")
-
-[node name="AnimatedSprite" type="AnimatedSprite2D" parent="."]
-material = SubResource("ShaderMaterial_b6ii6")
-sprite_frames = ExtResource("3_oi74m")
-
-[node name="Collision" type="CollisionShape2D" parent="."]
-shape = SubResource("RectangleShape2D_cpqup")
diff --git a/DungeonShooting_Godot/prefab/prop/buff/BuffProp0001.tscn b/DungeonShooting_Godot/prefab/prop/buff/BuffProp0001.tscn
new file mode 100644
index 0000000..ebbb22c
--- /dev/null
+++ b/DungeonShooting_Godot/prefab/prop/buff/BuffProp0001.tscn
@@ -0,0 +1,46 @@
+[gd_scene load_steps=7 format=3 uid="uid://tdc6flkvlfbd"]
+
+[ext_resource type="Script" path="res://src/game/activity/prop/buff/BuffPropProp0001.cs" id="1_exxhd"]
+[ext_resource type="Shader" path="res://resource/material/Blend.gdshader" id="2_x6ey2"]
+[ext_resource type="SpriteFrames" uid="uid://wtvfyprel72y" path="res://resource/spriteFrames/prop/buff/BuffProp0001.tres" id="3_hfyao"]
+
+[sub_resource type="ShaderMaterial" id="ShaderMaterial_mrkt4"]
+resource_local_to_scene = true
+shader = ExtResource("2_x6ey2")
+shader_parameter/blend = Color(0, 0, 0, 0.470588)
+shader_parameter/schedule = 1.0
+shader_parameter/alpha = 1.0
+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_b6ii6"]
+resource_local_to_scene = true
+shader = ExtResource("2_x6ey2")
+shader_parameter/blend = Color(1, 1, 1, 1)
+shader_parameter/schedule = 0.0
+shader_parameter/alpha = 1.0
+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_cpqup"]
+size = Vector2(12, 10)
+
+[node name="BuffProp0001" type="CharacterBody2D" node_paths=PackedStringArray("ShadowSprite", "AnimatedSprite", "Collision")]
+collision_layer = 4
+script = ExtResource("1_exxhd")
+ShadowSprite = NodePath("ShadowSprite")
+AnimatedSprite = NodePath("AnimatedSprite")
+Collision = NodePath("Collision")
+
+[node name="ShadowSprite" type="Sprite2D" parent="."]
+z_index = -1
+material = SubResource("ShaderMaterial_mrkt4")
+
+[node name="AnimatedSprite" type="AnimatedSprite2D" parent="."]
+material = SubResource("ShaderMaterial_b6ii6")
+sprite_frames = ExtResource("3_hfyao")
+
+[node name="Collision" type="CollisionShape2D" parent="."]
+shape = SubResource("RectangleShape2D_cpqup")
diff --git a/DungeonShooting_Godot/prefab/prop/buff/BuffProp0002.tscn b/DungeonShooting_Godot/prefab/prop/buff/BuffProp0002.tscn
new file mode 100644
index 0000000..7ef2c07
--- /dev/null
+++ b/DungeonShooting_Godot/prefab/prop/buff/BuffProp0002.tscn
@@ -0,0 +1,46 @@
+[gd_scene load_steps=7 format=3 uid="uid://da131v16ct8c4"]
+
+[ext_resource type="Shader" path="res://resource/material/Blend.gdshader" id="1_2qy1s"]
+[ext_resource type="Script" path="res://src/game/activity/prop/buff/BuffPropProp0002.cs" id="1_5ouvd"]
+[ext_resource type="SpriteFrames" uid="uid://7t57gsyff470" path="res://resource/spriteFrames/prop/buff/BuffProp0002.tres" id="3_v4alm"]
+
+[sub_resource type="ShaderMaterial" id="ShaderMaterial_mrkt4"]
+resource_local_to_scene = true
+shader = ExtResource("1_2qy1s")
+shader_parameter/blend = Color(0, 0, 0, 0.470588)
+shader_parameter/schedule = 1.0
+shader_parameter/alpha = 1.0
+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_b6ii6"]
+resource_local_to_scene = true
+shader = ExtResource("1_2qy1s")
+shader_parameter/blend = Color(1, 1, 1, 1)
+shader_parameter/schedule = 0.0
+shader_parameter/alpha = 1.0
+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_cpqup"]
+size = Vector2(12, 10)
+
+[node name="BuffProp0002" type="CharacterBody2D" node_paths=PackedStringArray("ShadowSprite", "AnimatedSprite", "Collision")]
+collision_layer = 4
+script = ExtResource("1_5ouvd")
+ShadowSprite = NodePath("ShadowSprite")
+AnimatedSprite = NodePath("AnimatedSprite")
+Collision = NodePath("Collision")
+
+[node name="ShadowSprite" type="Sprite2D" parent="."]
+z_index = -1
+material = SubResource("ShaderMaterial_mrkt4")
+
+[node name="AnimatedSprite" type="AnimatedSprite2D" parent="."]
+material = SubResource("ShaderMaterial_b6ii6")
+sprite_frames = ExtResource("3_v4alm")
+
+[node name="Collision" type="CollisionShape2D" parent="."]
+shape = SubResource("RectangleShape2D_cpqup")
diff --git a/DungeonShooting_Godot/prefab/prop/buff/BuffProp0003.tscn b/DungeonShooting_Godot/prefab/prop/buff/BuffProp0003.tscn
new file mode 100644
index 0000000..46f564b
--- /dev/null
+++ b/DungeonShooting_Godot/prefab/prop/buff/BuffProp0003.tscn
@@ -0,0 +1,46 @@
+[gd_scene load_steps=7 format=3 uid="uid://ds21gbw4wyvn6"]
+
+[ext_resource type="Script" path="res://src/game/activity/prop/buff/BuffPropProp0003.cs" id="1_h8d6p"]
+[ext_resource type="Shader" path="res://resource/material/Blend.gdshader" id="1_udh4b"]
+[ext_resource type="SpriteFrames" uid="uid://nqoieett75t3" path="res://resource/spriteFrames/prop/buff/BuffProp0003.tres" id="3_h72sh"]
+
+[sub_resource type="ShaderMaterial" id="ShaderMaterial_mrkt4"]
+resource_local_to_scene = true
+shader = ExtResource("1_udh4b")
+shader_parameter/blend = Color(0, 0, 0, 0.470588)
+shader_parameter/schedule = 1.0
+shader_parameter/alpha = 1.0
+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_b6ii6"]
+resource_local_to_scene = true
+shader = ExtResource("1_udh4b")
+shader_parameter/blend = Color(1, 1, 1, 1)
+shader_parameter/schedule = 0.0
+shader_parameter/alpha = 1.0
+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_cpqup"]
+size = Vector2(12, 10)
+
+[node name="BuffProp0003" type="CharacterBody2D" node_paths=PackedStringArray("ShadowSprite", "AnimatedSprite", "Collision")]
+collision_layer = 4
+script = ExtResource("1_h8d6p")
+ShadowSprite = NodePath("ShadowSprite")
+AnimatedSprite = NodePath("AnimatedSprite")
+Collision = NodePath("Collision")
+
+[node name="ShadowSprite" type="Sprite2D" parent="."]
+z_index = -1
+material = SubResource("ShaderMaterial_mrkt4")
+
+[node name="AnimatedSprite" type="AnimatedSprite2D" parent="."]
+material = SubResource("ShaderMaterial_b6ii6")
+sprite_frames = ExtResource("3_h72sh")
+
+[node name="Collision" type="CollisionShape2D" parent="."]
+shape = SubResource("RectangleShape2D_cpqup")
diff --git a/DungeonShooting_Godot/prefab/prop/buff/BuffProp0004.tscn b/DungeonShooting_Godot/prefab/prop/buff/BuffProp0004.tscn
new file mode 100644
index 0000000..58d9d29
--- /dev/null
+++ b/DungeonShooting_Godot/prefab/prop/buff/BuffProp0004.tscn
@@ -0,0 +1,46 @@
+[gd_scene load_steps=7 format=3 uid="uid://cq8edil51uccc"]
+
+[ext_resource type="Script" path="res://src/game/activity/prop/buff/BuffPropProp0004.cs" id="1_7bt71"]
+[ext_resource type="Shader" path="res://resource/material/Blend.gdshader" id="1_j7hva"]
+[ext_resource type="SpriteFrames" uid="uid://bj0k3pipwp46x" path="res://resource/spriteFrames/prop/buff/BuffProp0004.tres" id="3_pdaqp"]
+
+[sub_resource type="ShaderMaterial" id="ShaderMaterial_mrkt4"]
+resource_local_to_scene = true
+shader = ExtResource("1_j7hva")
+shader_parameter/blend = Color(0, 0, 0, 0.470588)
+shader_parameter/schedule = 1.0
+shader_parameter/alpha = 1.0
+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_b6ii6"]
+resource_local_to_scene = true
+shader = ExtResource("1_j7hva")
+shader_parameter/blend = Color(1, 1, 1, 1)
+shader_parameter/schedule = 0.0
+shader_parameter/alpha = 1.0
+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_cpqup"]
+size = Vector2(12, 10)
+
+[node name="BuffProp0004" type="CharacterBody2D" node_paths=PackedStringArray("ShadowSprite", "AnimatedSprite", "Collision")]
+collision_layer = 4
+script = ExtResource("1_7bt71")
+ShadowSprite = NodePath("ShadowSprite")
+AnimatedSprite = NodePath("AnimatedSprite")
+Collision = NodePath("Collision")
+
+[node name="ShadowSprite" type="Sprite2D" parent="."]
+z_index = -1
+material = SubResource("ShaderMaterial_mrkt4")
+
+[node name="AnimatedSprite" type="AnimatedSprite2D" parent="."]
+material = SubResource("ShaderMaterial_b6ii6")
+sprite_frames = ExtResource("3_pdaqp")
+
+[node name="Collision" type="CollisionShape2D" parent="."]
+shape = SubResource("RectangleShape2D_cpqup")
diff --git a/DungeonShooting_Godot/prefab/prop/buff/BuffProp0005.tscn b/DungeonShooting_Godot/prefab/prop/buff/BuffProp0005.tscn
new file mode 100644
index 0000000..741717b
--- /dev/null
+++ b/DungeonShooting_Godot/prefab/prop/buff/BuffProp0005.tscn
@@ -0,0 +1,46 @@
+[gd_scene load_steps=7 format=3 uid="uid://3xtqrx17y14p"]
+
+[ext_resource type="Script" path="res://src/game/activity/prop/buff/BuffPropProp0005.cs" id="1_6dlc2"]
+[ext_resource type="Shader" path="res://resource/material/Blend.gdshader" id="1_qa4yg"]
+[ext_resource type="SpriteFrames" uid="uid://bvqp46degt1rg" path="res://resource/spriteFrames/prop/buff/BuffProp0005.tres" id="3_1mcnn"]
+
+[sub_resource type="ShaderMaterial" id="ShaderMaterial_mrkt4"]
+resource_local_to_scene = true
+shader = ExtResource("1_qa4yg")
+shader_parameter/blend = Color(0, 0, 0, 0.470588)
+shader_parameter/schedule = 1.0
+shader_parameter/alpha = 1.0
+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_b6ii6"]
+resource_local_to_scene = true
+shader = ExtResource("1_qa4yg")
+shader_parameter/blend = Color(1, 1, 1, 1)
+shader_parameter/schedule = 0.0
+shader_parameter/alpha = 1.0
+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_cpqup"]
+size = Vector2(12, 10)
+
+[node name="BuffProp0005" type="CharacterBody2D" node_paths=PackedStringArray("ShadowSprite", "AnimatedSprite", "Collision")]
+collision_layer = 4
+script = ExtResource("1_6dlc2")
+ShadowSprite = NodePath("ShadowSprite")
+AnimatedSprite = NodePath("AnimatedSprite")
+Collision = NodePath("Collision")
+
+[node name="ShadowSprite" type="Sprite2D" parent="."]
+z_index = -1
+material = SubResource("ShaderMaterial_mrkt4")
+
+[node name="AnimatedSprite" type="AnimatedSprite2D" parent="."]
+material = SubResource("ShaderMaterial_b6ii6")
+sprite_frames = ExtResource("3_1mcnn")
+
+[node name="Collision" type="CollisionShape2D" parent="."]
+shape = SubResource("RectangleShape2D_cpqup")
diff --git a/DungeonShooting_Godot/prefab/prop/buff/BuffProp0006.tscn b/DungeonShooting_Godot/prefab/prop/buff/BuffProp0006.tscn
new file mode 100644
index 0000000..41ecf02
--- /dev/null
+++ b/DungeonShooting_Godot/prefab/prop/buff/BuffProp0006.tscn
@@ -0,0 +1,46 @@
+[gd_scene load_steps=7 format=3 uid="uid://bfc03e4aftg21"]
+
+[ext_resource type="Script" path="res://src/game/activity/prop/buff/BuffPropProp0006.cs" id="1_2cooj"]
+[ext_resource type="Shader" path="res://resource/material/Blend.gdshader" id="1_c1mo1"]
+[ext_resource type="SpriteFrames" uid="uid://bxn65oovekw6k" path="res://resource/spriteFrames/prop/buff/BuffProp0006.tres" id="3_nd6lq"]
+
+[sub_resource type="ShaderMaterial" id="ShaderMaterial_mrkt4"]
+resource_local_to_scene = true
+shader = ExtResource("1_c1mo1")
+shader_parameter/blend = Color(0, 0, 0, 0.470588)
+shader_parameter/schedule = 1.0
+shader_parameter/alpha = 1.0
+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_b6ii6"]
+resource_local_to_scene = true
+shader = ExtResource("1_c1mo1")
+shader_parameter/blend = Color(1, 1, 1, 1)
+shader_parameter/schedule = 0.0
+shader_parameter/alpha = 1.0
+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_cpqup"]
+size = Vector2(12, 10)
+
+[node name="BuffProp0006" type="CharacterBody2D" node_paths=PackedStringArray("ShadowSprite", "AnimatedSprite", "Collision")]
+collision_layer = 4
+script = ExtResource("1_2cooj")
+ShadowSprite = NodePath("ShadowSprite")
+AnimatedSprite = NodePath("AnimatedSprite")
+Collision = NodePath("Collision")
+
+[node name="ShadowSprite" type="Sprite2D" parent="."]
+z_index = -1
+material = SubResource("ShaderMaterial_mrkt4")
+
+[node name="AnimatedSprite" type="AnimatedSprite2D" parent="."]
+material = SubResource("ShaderMaterial_b6ii6")
+sprite_frames = ExtResource("3_nd6lq")
+
+[node name="Collision" type="CollisionShape2D" parent="."]
+shape = SubResource("RectangleShape2D_cpqup")
diff --git a/DungeonShooting_Godot/prefab/prop/buff/BuffProp0007.tscn b/DungeonShooting_Godot/prefab/prop/buff/BuffProp0007.tscn
new file mode 100644
index 0000000..6598520
--- /dev/null
+++ b/DungeonShooting_Godot/prefab/prop/buff/BuffProp0007.tscn
@@ -0,0 +1,46 @@
+[gd_scene load_steps=7 format=3 uid="uid://cwfuv68ijkmfg"]
+
+[ext_resource type="Script" path="res://src/game/activity/prop/buff/BuffPropProp0007.cs" id="1_71c3m"]
+[ext_resource type="Shader" path="res://resource/material/Blend.gdshader" id="1_ofs5v"]
+[ext_resource type="SpriteFrames" uid="uid://et840sb4d1g3" path="res://resource/spriteFrames/prop/buff/BuffProp0007.tres" id="3_xxla0"]
+
+[sub_resource type="ShaderMaterial" id="ShaderMaterial_mrkt4"]
+resource_local_to_scene = true
+shader = ExtResource("1_ofs5v")
+shader_parameter/blend = Color(0, 0, 0, 0.470588)
+shader_parameter/schedule = 1.0
+shader_parameter/alpha = 1.0
+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_b6ii6"]
+resource_local_to_scene = true
+shader = ExtResource("1_ofs5v")
+shader_parameter/blend = Color(1, 1, 1, 1)
+shader_parameter/schedule = 0.0
+shader_parameter/alpha = 1.0
+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_cpqup"]
+size = Vector2(12, 10)
+
+[node name="BuffProp0007" type="CharacterBody2D" node_paths=PackedStringArray("ShadowSprite", "AnimatedSprite", "Collision")]
+collision_layer = 4
+script = ExtResource("1_71c3m")
+ShadowSprite = NodePath("ShadowSprite")
+AnimatedSprite = NodePath("AnimatedSprite")
+Collision = NodePath("Collision")
+
+[node name="ShadowSprite" type="Sprite2D" parent="."]
+z_index = -1
+material = SubResource("ShaderMaterial_mrkt4")
+
+[node name="AnimatedSprite" type="AnimatedSprite2D" parent="."]
+material = SubResource("ShaderMaterial_b6ii6")
+sprite_frames = ExtResource("3_xxla0")
+
+[node name="Collision" type="CollisionShape2D" parent="."]
+shape = SubResource("RectangleShape2D_cpqup")
diff --git a/DungeonShooting_Godot/prefab/prop/buff/BuffProp0008.tscn b/DungeonShooting_Godot/prefab/prop/buff/BuffProp0008.tscn
new file mode 100644
index 0000000..a29d7cd
--- /dev/null
+++ b/DungeonShooting_Godot/prefab/prop/buff/BuffProp0008.tscn
@@ -0,0 +1,46 @@
+[gd_scene load_steps=7 format=3 uid="uid://cn1tmegrfgr8h"]
+
+[ext_resource type="Script" path="res://src/game/activity/prop/buff/BuffPropProp0008.cs" id="1_b5ys1"]
+[ext_resource type="Shader" path="res://resource/material/Blend.gdshader" id="1_tdrqb"]
+[ext_resource type="SpriteFrames" uid="uid://bs41p1hpkpucb" path="res://resource/spriteFrames/prop/buff/BuffProp0008.tres" id="3_5noil"]
+
+[sub_resource type="ShaderMaterial" id="ShaderMaterial_mrkt4"]
+resource_local_to_scene = true
+shader = ExtResource("1_tdrqb")
+shader_parameter/blend = Color(0, 0, 0, 0.470588)
+shader_parameter/schedule = 1.0
+shader_parameter/alpha = 1.0
+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_b6ii6"]
+resource_local_to_scene = true
+shader = ExtResource("1_tdrqb")
+shader_parameter/blend = Color(1, 1, 1, 1)
+shader_parameter/schedule = 0.0
+shader_parameter/alpha = 1.0
+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_cpqup"]
+size = Vector2(12, 10)
+
+[node name="BuffProp0008" type="CharacterBody2D" node_paths=PackedStringArray("ShadowSprite", "AnimatedSprite", "Collision")]
+collision_layer = 4
+script = ExtResource("1_b5ys1")
+ShadowSprite = NodePath("ShadowSprite")
+AnimatedSprite = NodePath("AnimatedSprite")
+Collision = NodePath("Collision")
+
+[node name="ShadowSprite" type="Sprite2D" parent="."]
+z_index = -1
+material = SubResource("ShaderMaterial_mrkt4")
+
+[node name="AnimatedSprite" type="AnimatedSprite2D" parent="."]
+material = SubResource("ShaderMaterial_b6ii6")
+sprite_frames = ExtResource("3_5noil")
+
+[node name="Collision" type="CollisionShape2D" parent="."]
+shape = SubResource("RectangleShape2D_cpqup")
diff --git a/DungeonShooting_Godot/prefab/prop/buff/BuffProp0009.tscn b/DungeonShooting_Godot/prefab/prop/buff/BuffProp0009.tscn
new file mode 100644
index 0000000..7955262
--- /dev/null
+++ b/DungeonShooting_Godot/prefab/prop/buff/BuffProp0009.tscn
@@ -0,0 +1,46 @@
+[gd_scene load_steps=7 format=3 uid="uid://gh0dxgvshwpm"]
+
+[ext_resource type="Script" path="res://src/game/activity/prop/buff/BuffPropProp0009.cs" id="1_e1yrg"]
+[ext_resource type="Shader" path="res://resource/material/Blend.gdshader" id="1_eq0bc"]
+[ext_resource type="SpriteFrames" uid="uid://sqcibio78nwc" path="res://resource/spriteFrames/prop/buff/BuffProp0009.tres" id="3_qrjbu"]
+
+[sub_resource type="ShaderMaterial" id="ShaderMaterial_mrkt4"]
+resource_local_to_scene = true
+shader = ExtResource("1_eq0bc")
+shader_parameter/blend = Color(0, 0, 0, 0.470588)
+shader_parameter/schedule = 1.0
+shader_parameter/alpha = 1.0
+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_b6ii6"]
+resource_local_to_scene = true
+shader = ExtResource("1_eq0bc")
+shader_parameter/blend = Color(1, 1, 1, 1)
+shader_parameter/schedule = 0.0
+shader_parameter/alpha = 1.0
+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_cpqup"]
+size = Vector2(12, 10)
+
+[node name="BuffProp0009" type="CharacterBody2D" node_paths=PackedStringArray("ShadowSprite", "AnimatedSprite", "Collision")]
+collision_layer = 4
+script = ExtResource("1_e1yrg")
+ShadowSprite = NodePath("ShadowSprite")
+AnimatedSprite = NodePath("AnimatedSprite")
+Collision = NodePath("Collision")
+
+[node name="ShadowSprite" type="Sprite2D" parent="."]
+z_index = -1
+material = SubResource("ShaderMaterial_mrkt4")
+
+[node name="AnimatedSprite" type="AnimatedSprite2D" parent="."]
+material = SubResource("ShaderMaterial_b6ii6")
+sprite_frames = ExtResource("3_qrjbu")
+
+[node name="Collision" type="CollisionShape2D" parent="."]
+shape = SubResource("RectangleShape2D_cpqup")
diff --git a/DungeonShooting_Godot/prefab/prop/buff/BuffProp0010.tscn b/DungeonShooting_Godot/prefab/prop/buff/BuffProp0010.tscn
new file mode 100644
index 0000000..49eb575
--- /dev/null
+++ b/DungeonShooting_Godot/prefab/prop/buff/BuffProp0010.tscn
@@ -0,0 +1,46 @@
+[gd_scene load_steps=7 format=3 uid="uid://do5mmmapnyxg4"]
+
+[ext_resource type="Shader" path="res://resource/material/Blend.gdshader" id="1_5yy3i"]
+[ext_resource type="Script" path="res://src/game/activity/prop/buff/BuffPropProp0010.cs" id="1_q6g7l"]
+[ext_resource type="SpriteFrames" uid="uid://dxqtm7xgn2wms" path="res://resource/spriteFrames/prop/buff/BuffProp0010.tres" id="3_i5q7j"]
+
+[sub_resource type="ShaderMaterial" id="ShaderMaterial_mrkt4"]
+resource_local_to_scene = true
+shader = ExtResource("1_5yy3i")
+shader_parameter/blend = Color(0, 0, 0, 0.470588)
+shader_parameter/schedule = 1.0
+shader_parameter/alpha = 1.0
+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_b6ii6"]
+resource_local_to_scene = true
+shader = ExtResource("1_5yy3i")
+shader_parameter/blend = Color(1, 1, 1, 1)
+shader_parameter/schedule = 0.0
+shader_parameter/alpha = 1.0
+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_cpqup"]
+size = Vector2(12, 10)
+
+[node name="BuffProp0010" type="CharacterBody2D" node_paths=PackedStringArray("ShadowSprite", "AnimatedSprite", "Collision")]
+collision_layer = 4
+script = ExtResource("1_q6g7l")
+ShadowSprite = NodePath("ShadowSprite")
+AnimatedSprite = NodePath("AnimatedSprite")
+Collision = NodePath("Collision")
+
+[node name="ShadowSprite" type="Sprite2D" parent="."]
+z_index = -1
+material = SubResource("ShaderMaterial_mrkt4")
+
+[node name="AnimatedSprite" type="AnimatedSprite2D" parent="."]
+material = SubResource("ShaderMaterial_b6ii6")
+sprite_frames = ExtResource("3_i5q7j")
+
+[node name="Collision" type="CollisionShape2D" parent="."]
+shape = SubResource("RectangleShape2D_cpqup")
diff --git a/DungeonShooting_Godot/prefab/shell/Shell0002.tscn b/DungeonShooting_Godot/prefab/shell/Shell0002.tscn
index efb7695..1f8893e 100644
--- a/DungeonShooting_Godot/prefab/shell/Shell0002.tscn
+++ b/DungeonShooting_Godot/prefab/shell/Shell0002.tscn
@@ -20,7 +20,7 @@
 shader_parameter/blend = Color(1, 1, 1, 1)
 shader_parameter/schedule = 0.0
 shader_parameter/alpha = 1.0
-shader_parameter/show_outline = true
+shader_parameter/show_outline = false
 shader_parameter/outline_color = Color(0, 0, 0, 1)
 shader_parameter/outline_rainbow = false
 
diff --git a/DungeonShooting_Godot/prefab/shell/Shell0003.tscn b/DungeonShooting_Godot/prefab/shell/Shell0003.tscn
index 80c42ed..4d85f05 100644
--- a/DungeonShooting_Godot/prefab/shell/Shell0003.tscn
+++ b/DungeonShooting_Godot/prefab/shell/Shell0003.tscn
@@ -10,7 +10,7 @@
 shader_parameter/blend = Color(0, 0, 0, 0.470588)
 shader_parameter/schedule = 1.0
 shader_parameter/alpha = 1.0
-shader_parameter/show_outline = true
+shader_parameter/show_outline = false
 shader_parameter/outline_color = Color(0, 0, 0, 1)
 shader_parameter/outline_rainbow = false
 
diff --git a/DungeonShooting_Godot/prefab/ui/BottomTips.tscn b/DungeonShooting_Godot/prefab/ui/BottomTips.tscn
index 7d3f20b..ddd6d50 100644
--- a/DungeonShooting_Godot/prefab/ui/BottomTips.tscn
+++ b/DungeonShooting_Godot/prefab/ui/BottomTips.tscn
@@ -1,7 +1,7 @@
 [gd_scene load_steps=5 format=3 uid="uid://dxmjm1pgctyid"]
 
 [ext_resource type="Script" path="res://src/game/ui/bottomTips/BottomTipsPanel.cs" id="1_c63vs"]
-[ext_resource type="Texture2D" uid="uid://bls55gj8h3mgv" path="res://resource/sprite/prop/buff/Buff0001.png" id="2_gaykt"]
+[ext_resource type="Texture2D" uid="uid://bls55gj8h3mgv" path="res://resource/sprite/prop/buff/BuffProp0001.png" id="2_gaykt"]
 [ext_resource type="Material" uid="uid://cces3bhds7jyi" path="res://resource/material/Blend.tres" id="2_syy07"]
 
 [sub_resource type="LabelSettings" id="LabelSettings_xtn1u"]
diff --git a/DungeonShooting_Godot/prefab/ui/RoomUI.tscn b/DungeonShooting_Godot/prefab/ui/RoomUI.tscn
index 369ef94..7449887 100644
--- a/DungeonShooting_Godot/prefab/ui/RoomUI.tscn
+++ b/DungeonShooting_Godot/prefab/ui/RoomUI.tscn
@@ -1,14 +1,16 @@
-[gd_scene load_steps=12 format=3 uid="uid://bvpmtfupny8iu"]
+[gd_scene load_steps=14 format=3 uid="uid://bvpmtfupny8iu"]
 
 [ext_resource type="Script" path="res://src/game/ui/roomUI/RoomUIPanel.cs" id="1_tfcrp"]
 [ext_resource type="Texture2D" uid="uid://b67i86mtqrn32" path="res://resource/sprite/ui/icon/icon_bullet.png" id="2_a2ohq"]
 [ext_resource type="Texture2D" uid="uid://dxstii6f4l8m0" path="res://resource/sprite/ui/keyboard/e.png" id="3_h7n2a"]
-[ext_resource type="Texture2D" uid="uid://cukrx5yyqw86o" path="res://resource/sprite/ui/reloadBar.png" id="4_nt6mj"]
-[ext_resource type="Texture2D" uid="uid://cx3i1nkcc4307" path="res://resource/sprite/ui/reloadBarBlock.png" id="5_wob8d"]
+[ext_resource type="Texture2D" uid="uid://cukrx5yyqw86o" path="res://resource/sprite/ui/roomUI/ReloadBar.png" id="4_hy44s"]
+[ext_resource type="Texture2D" uid="uid://cx3i1nkcc4307" path="res://resource/sprite/ui/roomUI/ReloadBarBlock.png" id="5_w3lq2"]
+[ext_resource type="Texture2D" uid="uid://blywnftxn1cfd" path="res://resource/sprite/ui/roomUI/Life_full.png" id="6_ggviq"]
+[ext_resource type="Texture2D" uid="uid://k621mhhkg65f" path="res://resource/sprite/ui/roomUI/MapBar.png" id="7_p6pvs"]
 [ext_resource type="Material" uid="uid://cces3bhds7jyi" path="res://resource/material/Blend.tres" id="8_vboii"]
-[ext_resource type="Texture2D" uid="uid://civvcowt2wklr" path="res://resource/sprite/weapon/weapon0001/Weapon0001.png" id="9_txd6n"]
-[ext_resource type="Texture2D" uid="uid://blywnftxn1cfd" path="res://resource/sprite/ui/Life_full.png" id="11_y2dqd"]
-[ext_resource type="Texture2D" uid="uid://k621mhhkg65f" path="res://resource/sprite/ui/mapBar.png" id="11_yaqsk"]
+[ext_resource type="Texture2D" uid="uid://cu0wlvrbntvyd" path="res://resource/sprite/prop/active/ActiveProp5000.png" id="10_5d4np"]
+[ext_resource type="Texture2D" uid="uid://0swkya4hn82c" path="res://resource/sprite/ui/roomUI/Panel.png" id="10_q3fs8"]
+[ext_resource type="Texture2D" uid="uid://504f1r0mi33n" path="res://resource/sprite/weapon/weapon0005/Weapon0005.png" id="11_lsai4"]
 
 [sub_resource type="Gradient" id="1"]
 colors = PackedColorArray(0.4, 0.498039, 1, 1, 0.4, 0.498039, 1, 0.313726)
@@ -27,6 +29,8 @@
 grow_vertical = 2
 mouse_filter = 2
 script = ExtResource("1_tfcrp")
+metadata/_edit_vertical_guides_ = [1901.0]
+metadata/_edit_horizontal_guides_ = [954.0, 1062.0]
 
 [node name="InteractiveTipBar" type="Control" parent="."]
 anchors_preset = 0
@@ -106,11 +110,11 @@
 offset_bottom = -21.0
 grow_horizontal = 2
 grow_vertical = 0
-texture = ExtResource("4_nt6mj")
+texture = ExtResource("4_hy44s")
 
 [node name="Block" type="Sprite2D" parent="ReloadBar/Slot"]
 position = Vector2(1, 0)
-texture = ExtResource("5_wob8d")
+texture = ExtResource("5_w3lq2")
 centered = false
 
 [node name="Control" type="Control" parent="."]
@@ -137,7 +141,7 @@
 layout_mode = 2
 offset_right = 12.0
 offset_bottom = 10.0
-texture = ExtResource("11_y2dqd")
+texture = ExtResource("6_ggviq")
 
 [node name="MapBar" type="TextureRect" parent="Control"]
 layout_mode = 1
@@ -149,39 +153,113 @@
 offset_bottom = 44.0
 grow_horizontal = 0
 scale = Vector2(4, 4)
-texture = ExtResource("11_yaqsk")
+texture = ExtResource("7_p6pvs")
 
-[node name="GunBar" type="Control" parent="Control"]
-anchors_preset = 0
+[node name="ActivePropBar" type="Control" parent="Control"]
+layout_mode = 1
+anchors_preset = 2
 anchor_top = 1.0
 anchor_bottom = 1.0
-offset_top = -264.0
-offset_right = 264.0
-offset_bottom = 0.00146484
-
-[node name="GunSprite" type="TextureRect" parent="Control/GunBar"]
-material = ExtResource("8_vboii")
-layout_mode = 0
-anchor_left = 0.5
-anchor_top = 0.5
-anchor_right = 0.5
-anchor_bottom = 0.5
-offset_left = -132.0
-offset_top = -132.0
-offset_right = -66.0
-offset_bottom = -66.0
+offset_top = -106.0
+offset_right = 45.0
+offset_bottom = -79.0
+grow_vertical = 0
 scale = Vector2(4, 4)
-texture = ExtResource("9_txd6n")
+
+[node name="ActivePropPanel" type="NinePatchRect" parent="Control/ActivePropBar"]
+layout_mode = 1
+anchors_preset = 15
+anchor_right = 1.0
+anchor_bottom = 1.0
+grow_horizontal = 2
+grow_vertical = 2
+texture = ExtResource("10_q3fs8")
+region_rect = Rect2(0, 0, 8, 8)
+patch_margin_left = 2
+patch_margin_top = 2
+patch_margin_right = 2
+patch_margin_bottom = 2
+
+[node name="ActivePropSprite" type="TextureRect" parent="Control/ActivePropBar/ActivePropPanel"]
+material = ExtResource("8_vboii")
+layout_mode = 1
+anchors_preset = 15
+anchor_right = 1.0
+anchor_bottom = 1.0
+grow_horizontal = 2
+grow_vertical = 2
+texture = ExtResource("10_5d4np")
 stretch_mode = 3
 
-[node name="BulletText" type="Label" parent="Control/GunBar"]
-layout_mode = 0
-anchor_left = 0.5
-anchor_right = 0.5
-offset_left = -89.0
-offset_top = 39.0
-offset_right = 89.0
-offset_bottom = 74.0
+[node name="ActivePropCount" type="Label" parent="Control/ActivePropBar/ActivePropPanel"]
+layout_mode = 1
+anchors_preset = 3
+anchor_left = 1.0
+anchor_top = 1.0
+anchor_right = 1.0
+anchor_bottom = 1.0
+offset_left = -43.0
+offset_top = -10.75
+offset_right = 121.0
+offset_bottom = 32.25
+grow_horizontal = 0
+grow_vertical = 0
+scale = Vector2(0.25, 0.25)
+text = "10
+"
+horizontal_alignment = 2
+vertical_alignment = 1
+
+[node name="WeaponBar" type="Control" parent="Control"]
+layout_mode = 1
+anchors_preset = 3
+anchor_left = 1.0
+anchor_top = 1.0
+anchor_right = 1.0
+anchor_bottom = 1.0
+offset_left = -261.0
+offset_top = -150.0
+offset_right = -196.0
+offset_bottom = -112.0
+grow_horizontal = 0
+grow_vertical = 0
+scale = Vector2(4, 4)
+
+[node name="WeaponPanel" type="NinePatchRect" parent="Control/WeaponBar"]
+layout_mode = 1
+anchors_preset = 9
+anchor_bottom = 1.0
+offset_top = 11.0
+offset_right = 53.0
+grow_vertical = 2
+texture = ExtResource("10_q3fs8")
+region_rect = Rect2(0, 0, 8, 8)
+patch_margin_left = 2
+patch_margin_top = 2
+patch_margin_right = 2
+patch_margin_bottom = 2
+
+[node name="WeaponSprite" type="TextureRect" parent="Control/WeaponBar/WeaponPanel"]
+material = ExtResource("8_vboii")
+layout_mode = 1
+anchors_preset = 15
+anchor_right = 1.0
+anchor_bottom = 1.0
+grow_horizontal = 2
+grow_vertical = 2
+texture = ExtResource("11_lsai4")
+stretch_mode = 3
+
+[node name="AmmoCount" type="Label" parent="Control/WeaponBar"]
+layout_mode = 1
+anchors_preset = 1
+anchor_left = 1.0
+anchor_right = 1.0
+offset_left = -56.5
+offset_right = 121.5
+offset_bottom = 43.0
+grow_horizontal = 0
+scale = Vector2(0.25, 0.25)
 text = "30/90"
-horizontal_alignment = 1
+horizontal_alignment = 2
 vertical_alignment = 1
diff --git a/DungeonShooting_Godot/resource/config/ActivityObject.json b/DungeonShooting_Godot/resource/config/ActivityObject.json
index a7587d5..9f8f938 100644
--- a/DungeonShooting_Godot/resource/config/ActivityObject.json
+++ b/DungeonShooting_Godot/resource/config/ActivityObject.json
@@ -102,70 +102,77 @@
     "Type": 9,
     "Name": "\u978B\u5B50",
     "Remark": "\u63D0\u9AD8\u79FB\u52A8\u901F\u5EA6",
-    "Prefab": "res://prefab/prop/buff/Buff0001.tscn"
+    "Prefab": "res://prefab/prop/buff/BuffProp0001.tscn"
   },
   {
     "Id": "prop0002",
     "Type": 9,
     "Name": "\u5FC3\u4E4B\u5BB9\u5668",
     "Remark": "\u63D0\u9AD8\u8840\u91CF\u4E0A\u9650",
-    "Prefab": "res://prefab/prop/buff/Buff0002.tscn"
+    "Prefab": "res://prefab/prop/buff/BuffProp0002.tscn"
   },
   {
     "Id": "prop0003",
     "Type": 9,
     "Name": "\u62A4\u76FE",
     "Remark": "\u53EF\u4EE5\u62B5\u6321\u5B50\u5F39\uFF0C\u968F\u65F6\u95F4\u63A8\u79FB\u81EA\u52A8\u6062\u590D",
-    "Prefab": "res://prefab/prop/buff/Buff0003.tscn"
+    "Prefab": "res://prefab/prop/buff/BuffProp0003.tscn"
   },
   {
     "Id": "prop0004",
     "Type": 9,
     "Name": "\u62A4\u76FE\u8BA1\u65F6\u5668",
     "Remark": "\u63D0\u9AD8\u62A4\u76FE\u6062\u590D\u901F\u5EA6",
-    "Prefab": "res://prefab/prop/buff/Buff0004.tscn"
+    "Prefab": "res://prefab/prop/buff/BuffProp0004.tscn"
   },
   {
     "Id": "prop0005",
     "Type": 9,
     "Name": "\u6740\u4F24\u5F39",
     "Remark": "\u63D0\u9AD8\u5B50\u5F39\u4F24\u5BB3",
-    "Prefab": "res://prefab/prop/buff/Buff0005.tscn"
+    "Prefab": "res://prefab/prop/buff/BuffProp0005.tscn"
   },
   {
     "Id": "prop0006",
     "Type": 9,
     "Name": "\u7EA2\u5B9D\u77F3\u6212\u6307",
     "Remark": "\u53D7\u4F24\u540E\u5EF6\u957F\u65E0\u654C\u65F6\u95F4",
-    "Prefab": "res://prefab/prop/buff/Buff0006.tscn"
+    "Prefab": "res://prefab/prop/buff/BuffProp0006.tscn"
   },
   {
     "Id": "prop0007",
     "Type": 9,
     "Name": "\u5907\u7528\u62A4\u76FE",
     "Remark": "\u53D7\u4F24\u65F6\u6709\u4E00\u5B9A\u6982\u7387\u62B5\u6D88\u4F24\u5BB3",
-    "Prefab": "res://prefab/prop/buff/Buff0007.tscn"
+    "Prefab": "res://prefab/prop/buff/BuffProp0007.tscn"
   },
   {
     "Id": "prop0008",
     "Type": 9,
     "Name": "\u773C\u955C",
     "Remark": "\u63D0\u9AD8\u6B66\u5668\u7CBE\u51C6\u5EA6",
-    "Prefab": "res://prefab/prop/buff/Buff0008.tscn"
+    "Prefab": "res://prefab/prop/buff/BuffProp0008.tscn"
   },
   {
     "Id": "prop0009",
     "Type": 9,
     "Name": "\u9AD8\u901F\u5B50\u5F39",
     "Remark": "\u63D0\u9AD8\u5B50\u5F39\u901F\u5EA6\u548C\u5C04\u7A0B",
-    "Prefab": "res://prefab/prop/buff/Buff0009.tscn"
+    "Prefab": "res://prefab/prop/buff/BuffProp0009.tscn"
   },
   {
     "Id": "prop0010",
     "Type": 9,
     "Name": "\u5206\u88C2\u5B50\u5F39",
     "Remark": "\u5B50\u5F39\u6570\u91CF\u7FFB\u500D, \u4F46\u662F\u7CBE\u51C6\u5EA6\u548C\u4F24\u5BB3\u964D\u4F4E",
-    "Prefab": "res://prefab/prop/buff/Buff0010.tscn"
+    "Prefab": "res://prefab/prop/buff/BuffProp0010.tscn"
+  },
+  {
+    "Id": "prop5000",
+    "Type": 9,
+    "Name": "\u533B\u836F\u7BB1",
+    "Remark": "\u4F7F\u7528\u540E\u56DE\u590D\u4E00\u9897\u7EA2\u5FC3",
+    "Prefab": "res://prefab/prop/active/ActiveProp5000.tscn"
   },
   {
     "Id": "other_door_e",
diff --git a/DungeonShooting_Godot/resource/map/tileMaps/testGroup/inlet/Room1.tscn b/DungeonShooting_Godot/resource/map/tileMaps/testGroup/inlet/Room1.tscn
index 02b1565..5a05f49 100644
--- a/DungeonShooting_Godot/resource/map/tileMaps/testGroup/inlet/Room1.tscn
+++ b/DungeonShooting_Godot/resource/map/tileMaps/testGroup/inlet/Room1.tscn
@@ -92,3 +92,10 @@
 Type = 9
 ItemExpression = "0010"
 WaveNumber = 2
+
+[node name="ActivityMark18" type="Node2D" parent="."]
+position = Vector2(103, 65)
+script = ExtResource("3_m4jrh")
+Type = 9
+ItemExpression = "5000"
+WaveNumber = 3
diff --git a/DungeonShooting_Godot/resource/map/tiledata/testGroup/inlet/Room1.json b/DungeonShooting_Godot/resource/map/tiledata/testGroup/inlet/Room1.json
index 6c3fba1..b769e12 100644
--- a/DungeonShooting_Godot/resource/map/tiledata/testGroup/inlet/Room1.json
+++ b/DungeonShooting_Godot/resource/map/tiledata/testGroup/inlet/Room1.json
@@ -1,38 +1,38 @@
 {
-  "Position": {
-    "X": -1,
-    "Y": -1
-  },
-  "Size": {
-    "X": 12,
-    "Y": 8
-  },
-  "DoorAreaInfos": [],
-  "NavigationList": [
-    {
-      "Type": 0,
-      "Points": [
-        {
-          "X": 8,
-          "Y": 8
-        },
-        {
-          "X": 152,
-          "Y": 8
-        },
-        {
-          "X": 152,
-          "Y": 96
-        },
-        {
-          "X": 8,
-          "Y": 96
-        }
-      ]
-    }
-  ],
-  "GroupName": "testGroup",
-  "RoomType": 1,
-  "FileName": "Room1",
-  "Weight": 100
+	"Position": {
+		"X": -1,
+		"Y": -1
+	},
+	"Size": {
+		"X": 12,
+		"Y": 8
+	},
+	"DoorAreaInfos": [],
+	"NavigationList": [
+		{
+			"Type": 0,
+			"Points": [
+				{
+					"X": 8,
+					"Y": 8
+				},
+				{
+					"X": 152,
+					"Y": 8
+				},
+				{
+					"X": 152,
+					"Y": 96
+				},
+				{
+					"X": 8,
+					"Y": 96
+				}
+			]
+		}
+	],
+	"GroupName": "testGroup",
+	"RoomType": 1,
+	"FileName": "Room1",
+	"Weight": 100
 }
\ No newline at end of file
diff --git a/DungeonShooting_Godot/resource/material/Blend.tres b/DungeonShooting_Godot/resource/material/Blend.tres
index 0fecc96..739931d 100644
--- a/DungeonShooting_Godot/resource/material/Blend.tres
+++ b/DungeonShooting_Godot/resource/material/Blend.tres
@@ -9,5 +9,5 @@
 shader_parameter/schedule = 0.0
 shader_parameter/alpha = 1.0
 shader_parameter/show_outline = true
-shader_parameter/outline_color = Color(0, 0, 0, 1)
+shader_parameter/outline_color = Color(0.941176, 0.941176, 0.941176, 1)
 shader_parameter/outline_rainbow = false
diff --git a/DungeonShooting_Godot/resource/sprite/prop/active/ActiveProp5000.png b/DungeonShooting_Godot/resource/sprite/prop/active/ActiveProp5000.png
new file mode 100644
index 0000000..bfb6875
--- /dev/null
+++ b/DungeonShooting_Godot/resource/sprite/prop/active/ActiveProp5000.png
Binary files differ
diff --git a/DungeonShooting_Godot/resource/sprite/prop/active/ActiveProp5000.png.import b/DungeonShooting_Godot/resource/sprite/prop/active/ActiveProp5000.png.import
new file mode 100644
index 0000000..74bdae7
--- /dev/null
+++ b/DungeonShooting_Godot/resource/sprite/prop/active/ActiveProp5000.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://cu0wlvrbntvyd"
+path="res://.godot/imported/ActiveProp5000.png-e2abbcdb5578cf5fd59559dd52deefe9.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://resource/sprite/prop/active/ActiveProp5000.png"
+dest_files=["res://.godot/imported/ActiveProp5000.png-e2abbcdb5578cf5fd59559dd52deefe9.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/DungeonShooting_Godot/resource/sprite/prop/buff/Buff0001.png b/DungeonShooting_Godot/resource/sprite/prop/buff/Buff0001.png
deleted file mode 100644
index dc255ed..0000000
--- a/DungeonShooting_Godot/resource/sprite/prop/buff/Buff0001.png
+++ /dev/null
Binary files differ
diff --git a/DungeonShooting_Godot/resource/sprite/prop/buff/Buff0001.png.import b/DungeonShooting_Godot/resource/sprite/prop/buff/Buff0001.png.import
deleted file mode 100644
index 93bddc7..0000000
--- a/DungeonShooting_Godot/resource/sprite/prop/buff/Buff0001.png.import
+++ /dev/null
@@ -1,34 +0,0 @@
-[remap]
-
-importer="texture"
-type="CompressedTexture2D"
-uid="uid://bls55gj8h3mgv"
-path="res://.godot/imported/Buff0001.png-2d51f6e8c41b1c1eaee342d36314d326.ctex"
-metadata={
-"vram_texture": false
-}
-
-[deps]
-
-source_file="res://resource/sprite/prop/buff/Buff0001.png"
-dest_files=["res://.godot/imported/Buff0001.png-2d51f6e8c41b1c1eaee342d36314d326.ctex"]
-
-[params]
-
-compress/mode=0
-compress/high_quality=false
-compress/lossy_quality=0.7
-compress/hdr_compression=1
-compress/normal_map=0
-compress/channel_pack=0
-mipmaps/generate=false
-mipmaps/limit=-1
-roughness/mode=0
-roughness/src_normal=""
-process/fix_alpha_border=true
-process/premult_alpha=false
-process/normal_map_invert_y=false
-process/hdr_as_srgb=false
-process/hdr_clamp_exposure=false
-process/size_limit=0
-detect_3d/compress_to=1
diff --git a/DungeonShooting_Godot/resource/sprite/prop/buff/Buff0002.png b/DungeonShooting_Godot/resource/sprite/prop/buff/Buff0002.png
deleted file mode 100644
index 68bc0ab..0000000
--- a/DungeonShooting_Godot/resource/sprite/prop/buff/Buff0002.png
+++ /dev/null
Binary files differ
diff --git a/DungeonShooting_Godot/resource/sprite/prop/buff/Buff0002.png.import b/DungeonShooting_Godot/resource/sprite/prop/buff/Buff0002.png.import
deleted file mode 100644
index 52de2ce..0000000
--- a/DungeonShooting_Godot/resource/sprite/prop/buff/Buff0002.png.import
+++ /dev/null
@@ -1,34 +0,0 @@
-[remap]
-
-importer="texture"
-type="CompressedTexture2D"
-uid="uid://cv2joc07ymofw"
-path="res://.godot/imported/Buff0002.png-d91464bb53e0e88b01f5baa35217c454.ctex"
-metadata={
-"vram_texture": false
-}
-
-[deps]
-
-source_file="res://resource/sprite/prop/buff/Buff0002.png"
-dest_files=["res://.godot/imported/Buff0002.png-d91464bb53e0e88b01f5baa35217c454.ctex"]
-
-[params]
-
-compress/mode=0
-compress/high_quality=false
-compress/lossy_quality=0.7
-compress/hdr_compression=1
-compress/normal_map=0
-compress/channel_pack=0
-mipmaps/generate=false
-mipmaps/limit=-1
-roughness/mode=0
-roughness/src_normal=""
-process/fix_alpha_border=true
-process/premult_alpha=false
-process/normal_map_invert_y=false
-process/hdr_as_srgb=false
-process/hdr_clamp_exposure=false
-process/size_limit=0
-detect_3d/compress_to=1
diff --git a/DungeonShooting_Godot/resource/sprite/prop/buff/Buff0003.png b/DungeonShooting_Godot/resource/sprite/prop/buff/Buff0003.png
deleted file mode 100644
index 2419e4e..0000000
--- a/DungeonShooting_Godot/resource/sprite/prop/buff/Buff0003.png
+++ /dev/null
Binary files differ
diff --git a/DungeonShooting_Godot/resource/sprite/prop/buff/Buff0003.png.import b/DungeonShooting_Godot/resource/sprite/prop/buff/Buff0003.png.import
deleted file mode 100644
index 7f73e44..0000000
--- a/DungeonShooting_Godot/resource/sprite/prop/buff/Buff0003.png.import
+++ /dev/null
@@ -1,34 +0,0 @@
-[remap]
-
-importer="texture"
-type="CompressedTexture2D"
-uid="uid://osr0v1c6l8ly"
-path="res://.godot/imported/Buff0003.png-584cb6fcf8fce750a2603c98c852dabb.ctex"
-metadata={
-"vram_texture": false
-}
-
-[deps]
-
-source_file="res://resource/sprite/prop/buff/Buff0003.png"
-dest_files=["res://.godot/imported/Buff0003.png-584cb6fcf8fce750a2603c98c852dabb.ctex"]
-
-[params]
-
-compress/mode=0
-compress/high_quality=false
-compress/lossy_quality=0.7
-compress/hdr_compression=1
-compress/normal_map=0
-compress/channel_pack=0
-mipmaps/generate=false
-mipmaps/limit=-1
-roughness/mode=0
-roughness/src_normal=""
-process/fix_alpha_border=true
-process/premult_alpha=false
-process/normal_map_invert_y=false
-process/hdr_as_srgb=false
-process/hdr_clamp_exposure=false
-process/size_limit=0
-detect_3d/compress_to=1
diff --git a/DungeonShooting_Godot/resource/sprite/prop/buff/Buff0004.png b/DungeonShooting_Godot/resource/sprite/prop/buff/Buff0004.png
deleted file mode 100644
index 711cf75..0000000
--- a/DungeonShooting_Godot/resource/sprite/prop/buff/Buff0004.png
+++ /dev/null
Binary files differ
diff --git a/DungeonShooting_Godot/resource/sprite/prop/buff/Buff0004.png.import b/DungeonShooting_Godot/resource/sprite/prop/buff/Buff0004.png.import
deleted file mode 100644
index 72ea312..0000000
--- a/DungeonShooting_Godot/resource/sprite/prop/buff/Buff0004.png.import
+++ /dev/null
@@ -1,34 +0,0 @@
-[remap]
-
-importer="texture"
-type="CompressedTexture2D"
-uid="uid://c0c25nihdcgt1"
-path="res://.godot/imported/Buff0004.png-29449655cacc702b1b5df1587e70bcd4.ctex"
-metadata={
-"vram_texture": false
-}
-
-[deps]
-
-source_file="res://resource/sprite/prop/buff/Buff0004.png"
-dest_files=["res://.godot/imported/Buff0004.png-29449655cacc702b1b5df1587e70bcd4.ctex"]
-
-[params]
-
-compress/mode=0
-compress/high_quality=false
-compress/lossy_quality=0.7
-compress/hdr_compression=1
-compress/normal_map=0
-compress/channel_pack=0
-mipmaps/generate=false
-mipmaps/limit=-1
-roughness/mode=0
-roughness/src_normal=""
-process/fix_alpha_border=true
-process/premult_alpha=false
-process/normal_map_invert_y=false
-process/hdr_as_srgb=false
-process/hdr_clamp_exposure=false
-process/size_limit=0
-detect_3d/compress_to=1
diff --git a/DungeonShooting_Godot/resource/sprite/prop/buff/Buff0005.png b/DungeonShooting_Godot/resource/sprite/prop/buff/Buff0005.png
deleted file mode 100644
index d7a51f5..0000000
--- a/DungeonShooting_Godot/resource/sprite/prop/buff/Buff0005.png
+++ /dev/null
Binary files differ
diff --git a/DungeonShooting_Godot/resource/sprite/prop/buff/Buff0005.png.import b/DungeonShooting_Godot/resource/sprite/prop/buff/Buff0005.png.import
deleted file mode 100644
index 085be93..0000000
--- a/DungeonShooting_Godot/resource/sprite/prop/buff/Buff0005.png.import
+++ /dev/null
@@ -1,34 +0,0 @@
-[remap]
-
-importer="texture"
-type="CompressedTexture2D"
-uid="uid://dse0mbg06ngya"
-path="res://.godot/imported/Buff0005.png-f0e3c022ce4baafb91a48332b46fb6dc.ctex"
-metadata={
-"vram_texture": false
-}
-
-[deps]
-
-source_file="res://resource/sprite/prop/buff/Buff0005.png"
-dest_files=["res://.godot/imported/Buff0005.png-f0e3c022ce4baafb91a48332b46fb6dc.ctex"]
-
-[params]
-
-compress/mode=0
-compress/high_quality=false
-compress/lossy_quality=0.7
-compress/hdr_compression=1
-compress/normal_map=0
-compress/channel_pack=0
-mipmaps/generate=false
-mipmaps/limit=-1
-roughness/mode=0
-roughness/src_normal=""
-process/fix_alpha_border=true
-process/premult_alpha=false
-process/normal_map_invert_y=false
-process/hdr_as_srgb=false
-process/hdr_clamp_exposure=false
-process/size_limit=0
-detect_3d/compress_to=1
diff --git a/DungeonShooting_Godot/resource/sprite/prop/buff/Buff0006.png b/DungeonShooting_Godot/resource/sprite/prop/buff/Buff0006.png
deleted file mode 100644
index a9a776c..0000000
--- a/DungeonShooting_Godot/resource/sprite/prop/buff/Buff0006.png
+++ /dev/null
Binary files differ
diff --git a/DungeonShooting_Godot/resource/sprite/prop/buff/Buff0006.png.import b/DungeonShooting_Godot/resource/sprite/prop/buff/Buff0006.png.import
deleted file mode 100644
index 4bdda12..0000000
--- a/DungeonShooting_Godot/resource/sprite/prop/buff/Buff0006.png.import
+++ /dev/null
@@ -1,34 +0,0 @@
-[remap]
-
-importer="texture"
-type="CompressedTexture2D"
-uid="uid://do8blk3xm5uy1"
-path="res://.godot/imported/Buff0006.png-ad8ef1b00368b9ade7dad2594a085571.ctex"
-metadata={
-"vram_texture": false
-}
-
-[deps]
-
-source_file="res://resource/sprite/prop/buff/Buff0006.png"
-dest_files=["res://.godot/imported/Buff0006.png-ad8ef1b00368b9ade7dad2594a085571.ctex"]
-
-[params]
-
-compress/mode=0
-compress/high_quality=false
-compress/lossy_quality=0.7
-compress/hdr_compression=1
-compress/normal_map=0
-compress/channel_pack=0
-mipmaps/generate=false
-mipmaps/limit=-1
-roughness/mode=0
-roughness/src_normal=""
-process/fix_alpha_border=true
-process/premult_alpha=false
-process/normal_map_invert_y=false
-process/hdr_as_srgb=false
-process/hdr_clamp_exposure=false
-process/size_limit=0
-detect_3d/compress_to=1
diff --git a/DungeonShooting_Godot/resource/sprite/prop/buff/Buff0007.png b/DungeonShooting_Godot/resource/sprite/prop/buff/Buff0007.png
deleted file mode 100644
index c04d314..0000000
--- a/DungeonShooting_Godot/resource/sprite/prop/buff/Buff0007.png
+++ /dev/null
Binary files differ
diff --git a/DungeonShooting_Godot/resource/sprite/prop/buff/Buff0007.png.import b/DungeonShooting_Godot/resource/sprite/prop/buff/Buff0007.png.import
deleted file mode 100644
index 7230b9e..0000000
--- a/DungeonShooting_Godot/resource/sprite/prop/buff/Buff0007.png.import
+++ /dev/null
@@ -1,34 +0,0 @@
-[remap]
-
-importer="texture"
-type="CompressedTexture2D"
-uid="uid://fql5q452jqo0"
-path="res://.godot/imported/Buff0007.png-37ef8d668ae6ca956b70dc6c26afcbc0.ctex"
-metadata={
-"vram_texture": false
-}
-
-[deps]
-
-source_file="res://resource/sprite/prop/buff/Buff0007.png"
-dest_files=["res://.godot/imported/Buff0007.png-37ef8d668ae6ca956b70dc6c26afcbc0.ctex"]
-
-[params]
-
-compress/mode=0
-compress/high_quality=false
-compress/lossy_quality=0.7
-compress/hdr_compression=1
-compress/normal_map=0
-compress/channel_pack=0
-mipmaps/generate=false
-mipmaps/limit=-1
-roughness/mode=0
-roughness/src_normal=""
-process/fix_alpha_border=true
-process/premult_alpha=false
-process/normal_map_invert_y=false
-process/hdr_as_srgb=false
-process/hdr_clamp_exposure=false
-process/size_limit=0
-detect_3d/compress_to=1
diff --git a/DungeonShooting_Godot/resource/sprite/prop/buff/Buff0008.png b/DungeonShooting_Godot/resource/sprite/prop/buff/Buff0008.png
deleted file mode 100644
index 1297c3d..0000000
--- a/DungeonShooting_Godot/resource/sprite/prop/buff/Buff0008.png
+++ /dev/null
Binary files differ
diff --git a/DungeonShooting_Godot/resource/sprite/prop/buff/Buff0008.png.import b/DungeonShooting_Godot/resource/sprite/prop/buff/Buff0008.png.import
deleted file mode 100644
index 25fcbee..0000000
--- a/DungeonShooting_Godot/resource/sprite/prop/buff/Buff0008.png.import
+++ /dev/null
@@ -1,34 +0,0 @@
-[remap]
-
-importer="texture"
-type="CompressedTexture2D"
-uid="uid://cn8f56vjb02u2"
-path="res://.godot/imported/Buff0008.png-ecd91d54a17d95369afbfc71a13b1169.ctex"
-metadata={
-"vram_texture": false
-}
-
-[deps]
-
-source_file="res://resource/sprite/prop/buff/Buff0008.png"
-dest_files=["res://.godot/imported/Buff0008.png-ecd91d54a17d95369afbfc71a13b1169.ctex"]
-
-[params]
-
-compress/mode=0
-compress/high_quality=false
-compress/lossy_quality=0.7
-compress/hdr_compression=1
-compress/normal_map=0
-compress/channel_pack=0
-mipmaps/generate=false
-mipmaps/limit=-1
-roughness/mode=0
-roughness/src_normal=""
-process/fix_alpha_border=true
-process/premult_alpha=false
-process/normal_map_invert_y=false
-process/hdr_as_srgb=false
-process/hdr_clamp_exposure=false
-process/size_limit=0
-detect_3d/compress_to=1
diff --git a/DungeonShooting_Godot/resource/sprite/prop/buff/Buff0009.png b/DungeonShooting_Godot/resource/sprite/prop/buff/Buff0009.png
deleted file mode 100644
index 45100bc..0000000
--- a/DungeonShooting_Godot/resource/sprite/prop/buff/Buff0009.png
+++ /dev/null
Binary files differ
diff --git a/DungeonShooting_Godot/resource/sprite/prop/buff/Buff0009.png.import b/DungeonShooting_Godot/resource/sprite/prop/buff/Buff0009.png.import
deleted file mode 100644
index e234265..0000000
--- a/DungeonShooting_Godot/resource/sprite/prop/buff/Buff0009.png.import
+++ /dev/null
@@ -1,34 +0,0 @@
-[remap]
-
-importer="texture"
-type="CompressedTexture2D"
-uid="uid://csak48bvrnws"
-path="res://.godot/imported/Buff0009.png-979bb78617d9bc313dff43a0eaf20cfe.ctex"
-metadata={
-"vram_texture": false
-}
-
-[deps]
-
-source_file="res://resource/sprite/prop/buff/Buff0009.png"
-dest_files=["res://.godot/imported/Buff0009.png-979bb78617d9bc313dff43a0eaf20cfe.ctex"]
-
-[params]
-
-compress/mode=0
-compress/high_quality=false
-compress/lossy_quality=0.7
-compress/hdr_compression=1
-compress/normal_map=0
-compress/channel_pack=0
-mipmaps/generate=false
-mipmaps/limit=-1
-roughness/mode=0
-roughness/src_normal=""
-process/fix_alpha_border=true
-process/premult_alpha=false
-process/normal_map_invert_y=false
-process/hdr_as_srgb=false
-process/hdr_clamp_exposure=false
-process/size_limit=0
-detect_3d/compress_to=1
diff --git a/DungeonShooting_Godot/resource/sprite/prop/buff/Buff0010.png b/DungeonShooting_Godot/resource/sprite/prop/buff/Buff0010.png
deleted file mode 100644
index 671213c..0000000
--- a/DungeonShooting_Godot/resource/sprite/prop/buff/Buff0010.png
+++ /dev/null
Binary files differ
diff --git a/DungeonShooting_Godot/resource/sprite/prop/buff/Buff0010.png.import b/DungeonShooting_Godot/resource/sprite/prop/buff/Buff0010.png.import
deleted file mode 100644
index f37f1fa..0000000
--- a/DungeonShooting_Godot/resource/sprite/prop/buff/Buff0010.png.import
+++ /dev/null
@@ -1,34 +0,0 @@
-[remap]
-
-importer="texture"
-type="CompressedTexture2D"
-uid="uid://dlsfun6svqfmm"
-path="res://.godot/imported/Buff0010.png-a06964d9e3d5d952bb98001bfcb26102.ctex"
-metadata={
-"vram_texture": false
-}
-
-[deps]
-
-source_file="res://resource/sprite/prop/buff/Buff0010.png"
-dest_files=["res://.godot/imported/Buff0010.png-a06964d9e3d5d952bb98001bfcb26102.ctex"]
-
-[params]
-
-compress/mode=0
-compress/high_quality=false
-compress/lossy_quality=0.7
-compress/hdr_compression=1
-compress/normal_map=0
-compress/channel_pack=0
-mipmaps/generate=false
-mipmaps/limit=-1
-roughness/mode=0
-roughness/src_normal=""
-process/fix_alpha_border=true
-process/premult_alpha=false
-process/normal_map_invert_y=false
-process/hdr_as_srgb=false
-process/hdr_clamp_exposure=false
-process/size_limit=0
-detect_3d/compress_to=1
diff --git a/DungeonShooting_Godot/resource/sprite/prop/buff/BuffProp0001.png b/DungeonShooting_Godot/resource/sprite/prop/buff/BuffProp0001.png
new file mode 100644
index 0000000..dc255ed
--- /dev/null
+++ b/DungeonShooting_Godot/resource/sprite/prop/buff/BuffProp0001.png
Binary files differ
diff --git a/DungeonShooting_Godot/resource/sprite/prop/buff/BuffProp0001.png.import b/DungeonShooting_Godot/resource/sprite/prop/buff/BuffProp0001.png.import
new file mode 100644
index 0000000..a453f07
--- /dev/null
+++ b/DungeonShooting_Godot/resource/sprite/prop/buff/BuffProp0001.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://bls55gj8h3mgv"
+path="res://.godot/imported/BuffProp0001.png-81eb491b3b8bbadb89e61e955c222464.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://resource/sprite/prop/buff/BuffProp0001.png"
+dest_files=["res://.godot/imported/BuffProp0001.png-81eb491b3b8bbadb89e61e955c222464.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/DungeonShooting_Godot/resource/sprite/prop/buff/BuffProp0002.png b/DungeonShooting_Godot/resource/sprite/prop/buff/BuffProp0002.png
new file mode 100644
index 0000000..68bc0ab
--- /dev/null
+++ b/DungeonShooting_Godot/resource/sprite/prop/buff/BuffProp0002.png
Binary files differ
diff --git a/DungeonShooting_Godot/resource/sprite/prop/buff/BuffProp0002.png.import b/DungeonShooting_Godot/resource/sprite/prop/buff/BuffProp0002.png.import
new file mode 100644
index 0000000..9c95e92
--- /dev/null
+++ b/DungeonShooting_Godot/resource/sprite/prop/buff/BuffProp0002.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://cv2joc07ymofw"
+path="res://.godot/imported/BuffProp0002.png-fe58ccf0e22fb36f34eec0195b5b1b01.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://resource/sprite/prop/buff/BuffProp0002.png"
+dest_files=["res://.godot/imported/BuffProp0002.png-fe58ccf0e22fb36f34eec0195b5b1b01.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/DungeonShooting_Godot/resource/sprite/prop/buff/BuffProp0003.png b/DungeonShooting_Godot/resource/sprite/prop/buff/BuffProp0003.png
new file mode 100644
index 0000000..2419e4e
--- /dev/null
+++ b/DungeonShooting_Godot/resource/sprite/prop/buff/BuffProp0003.png
Binary files differ
diff --git a/DungeonShooting_Godot/resource/sprite/prop/buff/BuffProp0003.png.import b/DungeonShooting_Godot/resource/sprite/prop/buff/BuffProp0003.png.import
new file mode 100644
index 0000000..7a92950
--- /dev/null
+++ b/DungeonShooting_Godot/resource/sprite/prop/buff/BuffProp0003.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://osr0v1c6l8ly"
+path="res://.godot/imported/BuffProp0003.png-95ed5541e845ccbfe90bbdaf0c3f66d4.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://resource/sprite/prop/buff/BuffProp0003.png"
+dest_files=["res://.godot/imported/BuffProp0003.png-95ed5541e845ccbfe90bbdaf0c3f66d4.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/DungeonShooting_Godot/resource/sprite/prop/buff/BuffProp0004.png b/DungeonShooting_Godot/resource/sprite/prop/buff/BuffProp0004.png
new file mode 100644
index 0000000..711cf75
--- /dev/null
+++ b/DungeonShooting_Godot/resource/sprite/prop/buff/BuffProp0004.png
Binary files differ
diff --git a/DungeonShooting_Godot/resource/sprite/prop/buff/BuffProp0004.png.import b/DungeonShooting_Godot/resource/sprite/prop/buff/BuffProp0004.png.import
new file mode 100644
index 0000000..13283bd
--- /dev/null
+++ b/DungeonShooting_Godot/resource/sprite/prop/buff/BuffProp0004.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://c0c25nihdcgt1"
+path="res://.godot/imported/BuffProp0004.png-d57e0fc0a82500517a793dc83ec7125c.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://resource/sprite/prop/buff/BuffProp0004.png"
+dest_files=["res://.godot/imported/BuffProp0004.png-d57e0fc0a82500517a793dc83ec7125c.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/DungeonShooting_Godot/resource/sprite/prop/buff/BuffProp0005.png b/DungeonShooting_Godot/resource/sprite/prop/buff/BuffProp0005.png
new file mode 100644
index 0000000..d7a51f5
--- /dev/null
+++ b/DungeonShooting_Godot/resource/sprite/prop/buff/BuffProp0005.png
Binary files differ
diff --git a/DungeonShooting_Godot/resource/sprite/prop/buff/BuffProp0005.png.import b/DungeonShooting_Godot/resource/sprite/prop/buff/BuffProp0005.png.import
new file mode 100644
index 0000000..f81ea22
--- /dev/null
+++ b/DungeonShooting_Godot/resource/sprite/prop/buff/BuffProp0005.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://dse0mbg06ngya"
+path="res://.godot/imported/BuffProp0005.png-69a9c8203500e1d8c47606677facddb8.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://resource/sprite/prop/buff/BuffProp0005.png"
+dest_files=["res://.godot/imported/BuffProp0005.png-69a9c8203500e1d8c47606677facddb8.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/DungeonShooting_Godot/resource/sprite/prop/buff/BuffProp0006.png b/DungeonShooting_Godot/resource/sprite/prop/buff/BuffProp0006.png
new file mode 100644
index 0000000..a9a776c
--- /dev/null
+++ b/DungeonShooting_Godot/resource/sprite/prop/buff/BuffProp0006.png
Binary files differ
diff --git a/DungeonShooting_Godot/resource/sprite/prop/buff/BuffProp0006.png.import b/DungeonShooting_Godot/resource/sprite/prop/buff/BuffProp0006.png.import
new file mode 100644
index 0000000..376bd8c
--- /dev/null
+++ b/DungeonShooting_Godot/resource/sprite/prop/buff/BuffProp0006.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://do8blk3xm5uy1"
+path="res://.godot/imported/BuffProp0006.png-24e64abbac5dff6a09f137d4c0a8b2cf.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://resource/sprite/prop/buff/BuffProp0006.png"
+dest_files=["res://.godot/imported/BuffProp0006.png-24e64abbac5dff6a09f137d4c0a8b2cf.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/DungeonShooting_Godot/resource/sprite/prop/buff/BuffProp0007.png b/DungeonShooting_Godot/resource/sprite/prop/buff/BuffProp0007.png
new file mode 100644
index 0000000..c04d314
--- /dev/null
+++ b/DungeonShooting_Godot/resource/sprite/prop/buff/BuffProp0007.png
Binary files differ
diff --git a/DungeonShooting_Godot/resource/sprite/prop/buff/BuffProp0007.png.import b/DungeonShooting_Godot/resource/sprite/prop/buff/BuffProp0007.png.import
new file mode 100644
index 0000000..9d088e5
--- /dev/null
+++ b/DungeonShooting_Godot/resource/sprite/prop/buff/BuffProp0007.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://fql5q452jqo0"
+path="res://.godot/imported/BuffProp0007.png-95b1351ae51a03f9d472dd16699ea3de.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://resource/sprite/prop/buff/BuffProp0007.png"
+dest_files=["res://.godot/imported/BuffProp0007.png-95b1351ae51a03f9d472dd16699ea3de.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/DungeonShooting_Godot/resource/sprite/prop/buff/BuffProp0008.png b/DungeonShooting_Godot/resource/sprite/prop/buff/BuffProp0008.png
new file mode 100644
index 0000000..1297c3d
--- /dev/null
+++ b/DungeonShooting_Godot/resource/sprite/prop/buff/BuffProp0008.png
Binary files differ
diff --git a/DungeonShooting_Godot/resource/sprite/prop/buff/BuffProp0008.png.import b/DungeonShooting_Godot/resource/sprite/prop/buff/BuffProp0008.png.import
new file mode 100644
index 0000000..562d24b
--- /dev/null
+++ b/DungeonShooting_Godot/resource/sprite/prop/buff/BuffProp0008.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://cn8f56vjb02u2"
+path="res://.godot/imported/BuffProp0008.png-f6d06e8359d978cd8688a133f9522dec.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://resource/sprite/prop/buff/BuffProp0008.png"
+dest_files=["res://.godot/imported/BuffProp0008.png-f6d06e8359d978cd8688a133f9522dec.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/DungeonShooting_Godot/resource/sprite/prop/buff/BuffProp0009.png b/DungeonShooting_Godot/resource/sprite/prop/buff/BuffProp0009.png
new file mode 100644
index 0000000..45100bc
--- /dev/null
+++ b/DungeonShooting_Godot/resource/sprite/prop/buff/BuffProp0009.png
Binary files differ
diff --git a/DungeonShooting_Godot/resource/sprite/prop/buff/BuffProp0009.png.import b/DungeonShooting_Godot/resource/sprite/prop/buff/BuffProp0009.png.import
new file mode 100644
index 0000000..72f5ef4
--- /dev/null
+++ b/DungeonShooting_Godot/resource/sprite/prop/buff/BuffProp0009.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://csak48bvrnws"
+path="res://.godot/imported/BuffProp0009.png-33bdd714a0dbab32f6d911dff9d4a2bc.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://resource/sprite/prop/buff/BuffProp0009.png"
+dest_files=["res://.godot/imported/BuffProp0009.png-33bdd714a0dbab32f6d911dff9d4a2bc.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/DungeonShooting_Godot/resource/sprite/prop/buff/BuffProp0010.png b/DungeonShooting_Godot/resource/sprite/prop/buff/BuffProp0010.png
new file mode 100644
index 0000000..671213c
--- /dev/null
+++ b/DungeonShooting_Godot/resource/sprite/prop/buff/BuffProp0010.png
Binary files differ
diff --git a/DungeonShooting_Godot/resource/sprite/prop/buff/BuffProp0010.png.import b/DungeonShooting_Godot/resource/sprite/prop/buff/BuffProp0010.png.import
new file mode 100644
index 0000000..9614aa8
--- /dev/null
+++ b/DungeonShooting_Godot/resource/sprite/prop/buff/BuffProp0010.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://dlsfun6svqfmm"
+path="res://.godot/imported/BuffProp0010.png-365a10a739f21bd10ab0d114f5958c89.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://resource/sprite/prop/buff/BuffProp0010.png"
+dest_files=["res://.godot/imported/BuffProp0010.png-365a10a739f21bd10ab0d114f5958c89.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/DungeonShooting_Godot/resource/sprite/ui/Life_empty.png b/DungeonShooting_Godot/resource/sprite/ui/Life_empty.png
deleted file mode 100644
index 855185f..0000000
--- a/DungeonShooting_Godot/resource/sprite/ui/Life_empty.png
+++ /dev/null
Binary files differ
diff --git a/DungeonShooting_Godot/resource/sprite/ui/Life_empty.png.import b/DungeonShooting_Godot/resource/sprite/ui/Life_empty.png.import
deleted file mode 100644
index fbd6452..0000000
--- a/DungeonShooting_Godot/resource/sprite/ui/Life_empty.png.import
+++ /dev/null
@@ -1,34 +0,0 @@
-[remap]
-
-importer="texture"
-type="CompressedTexture2D"
-uid="uid://dv3qskyc0dcmy"
-path="res://.godot/imported/Life_empty.png-0adf786e78d4b12d461b0eb1e1990e81.ctex"
-metadata={
-"vram_texture": false
-}
-
-[deps]
-
-source_file="res://resource/sprite/ui/Life_empty.png"
-dest_files=["res://.godot/imported/Life_empty.png-0adf786e78d4b12d461b0eb1e1990e81.ctex"]
-
-[params]
-
-compress/mode=0
-compress/high_quality=false
-compress/lossy_quality=0.7
-compress/hdr_compression=1
-compress/normal_map=0
-compress/channel_pack=0
-mipmaps/generate=false
-mipmaps/limit=-1
-roughness/mode=0
-roughness/src_normal=""
-process/fix_alpha_border=true
-process/premult_alpha=false
-process/normal_map_invert_y=false
-process/hdr_as_srgb=false
-process/hdr_clamp_exposure=false
-process/size_limit=0
-detect_3d/compress_to=1
diff --git a/DungeonShooting_Godot/resource/sprite/ui/Life_full.png b/DungeonShooting_Godot/resource/sprite/ui/Life_full.png
deleted file mode 100644
index 983b566..0000000
--- a/DungeonShooting_Godot/resource/sprite/ui/Life_full.png
+++ /dev/null
Binary files differ
diff --git a/DungeonShooting_Godot/resource/sprite/ui/Life_full.png.import b/DungeonShooting_Godot/resource/sprite/ui/Life_full.png.import
deleted file mode 100644
index faffa5c..0000000
--- a/DungeonShooting_Godot/resource/sprite/ui/Life_full.png.import
+++ /dev/null
@@ -1,34 +0,0 @@
-[remap]
-
-importer="texture"
-type="CompressedTexture2D"
-uid="uid://blywnftxn1cfd"
-path="res://.godot/imported/Life_full.png-fb9a520bfad66b139d42ac2f023ffc04.ctex"
-metadata={
-"vram_texture": false
-}
-
-[deps]
-
-source_file="res://resource/sprite/ui/Life_full.png"
-dest_files=["res://.godot/imported/Life_full.png-fb9a520bfad66b139d42ac2f023ffc04.ctex"]
-
-[params]
-
-compress/mode=0
-compress/high_quality=false
-compress/lossy_quality=0.7
-compress/hdr_compression=1
-compress/normal_map=0
-compress/channel_pack=0
-mipmaps/generate=false
-mipmaps/limit=-1
-roughness/mode=0
-roughness/src_normal=""
-process/fix_alpha_border=true
-process/premult_alpha=false
-process/normal_map_invert_y=false
-process/hdr_as_srgb=false
-process/hdr_clamp_exposure=false
-process/size_limit=0
-detect_3d/compress_to=1
diff --git a/DungeonShooting_Godot/resource/sprite/ui/Life_half.png b/DungeonShooting_Godot/resource/sprite/ui/Life_half.png
deleted file mode 100644
index 581f4a2..0000000
--- a/DungeonShooting_Godot/resource/sprite/ui/Life_half.png
+++ /dev/null
Binary files differ
diff --git a/DungeonShooting_Godot/resource/sprite/ui/Life_half.png.import b/DungeonShooting_Godot/resource/sprite/ui/Life_half.png.import
deleted file mode 100644
index e672f04..0000000
--- a/DungeonShooting_Godot/resource/sprite/ui/Life_half.png.import
+++ /dev/null
@@ -1,34 +0,0 @@
-[remap]
-
-importer="texture"
-type="CompressedTexture2D"
-uid="uid://cnnl07abi51ph"
-path="res://.godot/imported/Life_half.png-db960c6dc9d158324f8b8c8db8be7d36.ctex"
-metadata={
-"vram_texture": false
-}
-
-[deps]
-
-source_file="res://resource/sprite/ui/Life_half.png"
-dest_files=["res://.godot/imported/Life_half.png-db960c6dc9d158324f8b8c8db8be7d36.ctex"]
-
-[params]
-
-compress/mode=0
-compress/high_quality=false
-compress/lossy_quality=0.7
-compress/hdr_compression=1
-compress/normal_map=0
-compress/channel_pack=0
-mipmaps/generate=false
-mipmaps/limit=-1
-roughness/mode=0
-roughness/src_normal=""
-process/fix_alpha_border=true
-process/premult_alpha=false
-process/normal_map_invert_y=false
-process/hdr_as_srgb=false
-process/hdr_clamp_exposure=false
-process/size_limit=0
-detect_3d/compress_to=1
diff --git a/DungeonShooting_Godot/resource/sprite/ui/RoomUi.png b/DungeonShooting_Godot/resource/sprite/ui/RoomUi.png
deleted file mode 100644
index bd3445e..0000000
--- a/DungeonShooting_Godot/resource/sprite/ui/RoomUi.png
+++ /dev/null
Binary files differ
diff --git a/DungeonShooting_Godot/resource/sprite/ui/RoomUi.png.import b/DungeonShooting_Godot/resource/sprite/ui/RoomUi.png.import
deleted file mode 100644
index a6e3722..0000000
--- a/DungeonShooting_Godot/resource/sprite/ui/RoomUi.png.import
+++ /dev/null
@@ -1,34 +0,0 @@
-[remap]
-
-importer="texture"
-type="CompressedTexture2D"
-uid="uid://8n8itmbee0oj"
-path="res://.godot/imported/RoomUi.png-829b5ca7025f524836ffc10e6b98946a.ctex"
-metadata={
-"vram_texture": false
-}
-
-[deps]
-
-source_file="res://resource/sprite/ui/RoomUi.png"
-dest_files=["res://.godot/imported/RoomUi.png-829b5ca7025f524836ffc10e6b98946a.ctex"]
-
-[params]
-
-compress/mode=0
-compress/high_quality=false
-compress/lossy_quality=0.7
-compress/hdr_compression=1
-compress/normal_map=0
-compress/channel_pack=0
-mipmaps/generate=false
-mipmaps/limit=-1
-roughness/mode=0
-roughness/src_normal=""
-process/fix_alpha_border=true
-process/premult_alpha=false
-process/normal_map_invert_y=false
-process/hdr_as_srgb=false
-process/hdr_clamp_exposure=false
-process/size_limit=0
-detect_3d/compress_to=1
diff --git a/DungeonShooting_Godot/resource/sprite/ui/Shield_empty.png b/DungeonShooting_Godot/resource/sprite/ui/Shield_empty.png
deleted file mode 100644
index f9c435e..0000000
--- a/DungeonShooting_Godot/resource/sprite/ui/Shield_empty.png
+++ /dev/null
Binary files differ
diff --git a/DungeonShooting_Godot/resource/sprite/ui/Shield_empty.png.import b/DungeonShooting_Godot/resource/sprite/ui/Shield_empty.png.import
deleted file mode 100644
index f8a3413..0000000
--- a/DungeonShooting_Godot/resource/sprite/ui/Shield_empty.png.import
+++ /dev/null
@@ -1,34 +0,0 @@
-[remap]
-
-importer="texture"
-type="CompressedTexture2D"
-uid="uid://jtg0wkxir2w4"
-path="res://.godot/imported/Shield_empty.png-9ad07f3ce895c2829d28d6052a42461b.ctex"
-metadata={
-"vram_texture": false
-}
-
-[deps]
-
-source_file="res://resource/sprite/ui/Shield_empty.png"
-dest_files=["res://.godot/imported/Shield_empty.png-9ad07f3ce895c2829d28d6052a42461b.ctex"]
-
-[params]
-
-compress/mode=0
-compress/high_quality=false
-compress/lossy_quality=0.7
-compress/hdr_compression=1
-compress/normal_map=0
-compress/channel_pack=0
-mipmaps/generate=false
-mipmaps/limit=-1
-roughness/mode=0
-roughness/src_normal=""
-process/fix_alpha_border=true
-process/premult_alpha=false
-process/normal_map_invert_y=false
-process/hdr_as_srgb=false
-process/hdr_clamp_exposure=false
-process/size_limit=0
-detect_3d/compress_to=1
diff --git a/DungeonShooting_Godot/resource/sprite/ui/Shield_full.png b/DungeonShooting_Godot/resource/sprite/ui/Shield_full.png
deleted file mode 100644
index ed0095b..0000000
--- a/DungeonShooting_Godot/resource/sprite/ui/Shield_full.png
+++ /dev/null
Binary files differ
diff --git a/DungeonShooting_Godot/resource/sprite/ui/Shield_full.png.import b/DungeonShooting_Godot/resource/sprite/ui/Shield_full.png.import
deleted file mode 100644
index 8c57956..0000000
--- a/DungeonShooting_Godot/resource/sprite/ui/Shield_full.png.import
+++ /dev/null
@@ -1,34 +0,0 @@
-[remap]
-
-importer="texture"
-type="CompressedTexture2D"
-uid="uid://bhr8n3ytchbqi"
-path="res://.godot/imported/Shield_full.png-5036f32a904683d2e732c6d6d0e7c23d.ctex"
-metadata={
-"vram_texture": false
-}
-
-[deps]
-
-source_file="res://resource/sprite/ui/Shield_full.png"
-dest_files=["res://.godot/imported/Shield_full.png-5036f32a904683d2e732c6d6d0e7c23d.ctex"]
-
-[params]
-
-compress/mode=0
-compress/high_quality=false
-compress/lossy_quality=0.7
-compress/hdr_compression=1
-compress/normal_map=0
-compress/channel_pack=0
-mipmaps/generate=false
-mipmaps/limit=-1
-roughness/mode=0
-roughness/src_normal=""
-process/fix_alpha_border=true
-process/premult_alpha=false
-process/normal_map_invert_y=false
-process/hdr_as_srgb=false
-process/hdr_clamp_exposure=false
-process/size_limit=0
-detect_3d/compress_to=1
diff --git a/DungeonShooting_Godot/resource/sprite/ui/healthBar.png b/DungeonShooting_Godot/resource/sprite/ui/healthBar.png
deleted file mode 100644
index 7df8bfc..0000000
--- a/DungeonShooting_Godot/resource/sprite/ui/healthBar.png
+++ /dev/null
Binary files differ
diff --git a/DungeonShooting_Godot/resource/sprite/ui/healthBar.png.import b/DungeonShooting_Godot/resource/sprite/ui/healthBar.png.import
deleted file mode 100644
index 5d50463..0000000
--- a/DungeonShooting_Godot/resource/sprite/ui/healthBar.png.import
+++ /dev/null
@@ -1,34 +0,0 @@
-[remap]
-
-importer="texture"
-type="CompressedTexture2D"
-uid="uid://u5ul7fu8wv1a"
-path="res://.godot/imported/healthBar.png-fd918cfe1c1dc3ff7cde08d44c5e3daf.ctex"
-metadata={
-"vram_texture": false
-}
-
-[deps]
-
-source_file="res://resource/sprite/ui/healthBar.png"
-dest_files=["res://.godot/imported/healthBar.png-fd918cfe1c1dc3ff7cde08d44c5e3daf.ctex"]
-
-[params]
-
-compress/mode=0
-compress/high_quality=false
-compress/lossy_quality=0.7
-compress/hdr_compression=1
-compress/normal_map=0
-compress/channel_pack=0
-mipmaps/generate=false
-mipmaps/limit=-1
-roughness/mode=0
-roughness/src_normal=""
-process/fix_alpha_border=true
-process/premult_alpha=false
-process/normal_map_invert_y=false
-process/hdr_as_srgb=false
-process/hdr_clamp_exposure=false
-process/size_limit=0
-detect_3d/compress_to=1
diff --git a/DungeonShooting_Godot/resource/sprite/ui/hpBar.png b/DungeonShooting_Godot/resource/sprite/ui/hpBar.png
deleted file mode 100644
index c28030d..0000000
--- a/DungeonShooting_Godot/resource/sprite/ui/hpBar.png
+++ /dev/null
Binary files differ
diff --git a/DungeonShooting_Godot/resource/sprite/ui/hpBar.png.import b/DungeonShooting_Godot/resource/sprite/ui/hpBar.png.import
deleted file mode 100644
index b227b4f..0000000
--- a/DungeonShooting_Godot/resource/sprite/ui/hpBar.png.import
+++ /dev/null
@@ -1,34 +0,0 @@
-[remap]
-
-importer="texture"
-type="CompressedTexture2D"
-uid="uid://bxd75tme0v3pb"
-path="res://.godot/imported/hpBar.png-089166f44681996b6b959c41fed1de83.ctex"
-metadata={
-"vram_texture": false
-}
-
-[deps]
-
-source_file="res://resource/sprite/ui/hpBar.png"
-dest_files=["res://.godot/imported/hpBar.png-089166f44681996b6b959c41fed1de83.ctex"]
-
-[params]
-
-compress/mode=0
-compress/high_quality=false
-compress/lossy_quality=0.7
-compress/hdr_compression=1
-compress/normal_map=0
-compress/channel_pack=0
-mipmaps/generate=false
-mipmaps/limit=-1
-roughness/mode=0
-roughness/src_normal=""
-process/fix_alpha_border=true
-process/premult_alpha=false
-process/normal_map_invert_y=false
-process/hdr_as_srgb=false
-process/hdr_clamp_exposure=false
-process/size_limit=0
-detect_3d/compress_to=1
diff --git a/DungeonShooting_Godot/resource/sprite/ui/hpSlot.png b/DungeonShooting_Godot/resource/sprite/ui/hpSlot.png
deleted file mode 100644
index 6f93842..0000000
--- a/DungeonShooting_Godot/resource/sprite/ui/hpSlot.png
+++ /dev/null
Binary files differ
diff --git a/DungeonShooting_Godot/resource/sprite/ui/hpSlot.png.import b/DungeonShooting_Godot/resource/sprite/ui/hpSlot.png.import
deleted file mode 100644
index bf2c11a..0000000
--- a/DungeonShooting_Godot/resource/sprite/ui/hpSlot.png.import
+++ /dev/null
@@ -1,34 +0,0 @@
-[remap]
-
-importer="texture"
-type="CompressedTexture2D"
-uid="uid://djcdjrs07ighv"
-path="res://.godot/imported/hpSlot.png-03029dcac2b929c5a4bb98c52cbb512e.ctex"
-metadata={
-"vram_texture": false
-}
-
-[deps]
-
-source_file="res://resource/sprite/ui/hpSlot.png"
-dest_files=["res://.godot/imported/hpSlot.png-03029dcac2b929c5a4bb98c52cbb512e.ctex"]
-
-[params]
-
-compress/mode=0
-compress/high_quality=false
-compress/lossy_quality=0.7
-compress/hdr_compression=1
-compress/normal_map=0
-compress/channel_pack=0
-mipmaps/generate=false
-mipmaps/limit=-1
-roughness/mode=0
-roughness/src_normal=""
-process/fix_alpha_border=true
-process/premult_alpha=false
-process/normal_map_invert_y=false
-process/hdr_as_srgb=false
-process/hdr_clamp_exposure=false
-process/size_limit=0
-detect_3d/compress_to=1
diff --git a/DungeonShooting_Godot/resource/sprite/ui/mapBar.png b/DungeonShooting_Godot/resource/sprite/ui/mapBar.png
deleted file mode 100644
index be17bb5..0000000
--- a/DungeonShooting_Godot/resource/sprite/ui/mapBar.png
+++ /dev/null
Binary files differ
diff --git a/DungeonShooting_Godot/resource/sprite/ui/mapBar.png.import b/DungeonShooting_Godot/resource/sprite/ui/mapBar.png.import
deleted file mode 100644
index cb56ed3..0000000
--- a/DungeonShooting_Godot/resource/sprite/ui/mapBar.png.import
+++ /dev/null
@@ -1,34 +0,0 @@
-[remap]
-
-importer="texture"
-type="CompressedTexture2D"
-uid="uid://k621mhhkg65f"
-path="res://.godot/imported/mapBar.png-d67f8bf7f1bb067a8fe1b6967d294e5c.ctex"
-metadata={
-"vram_texture": false
-}
-
-[deps]
-
-source_file="res://resource/sprite/ui/mapBar.png"
-dest_files=["res://.godot/imported/mapBar.png-d67f8bf7f1bb067a8fe1b6967d294e5c.ctex"]
-
-[params]
-
-compress/mode=0
-compress/high_quality=false
-compress/lossy_quality=0.7
-compress/hdr_compression=1
-compress/normal_map=0
-compress/channel_pack=0
-mipmaps/generate=false
-mipmaps/limit=-1
-roughness/mode=0
-roughness/src_normal=""
-process/fix_alpha_border=true
-process/premult_alpha=false
-process/normal_map_invert_y=false
-process/hdr_as_srgb=false
-process/hdr_clamp_exposure=false
-process/size_limit=0
-detect_3d/compress_to=1
diff --git a/DungeonShooting_Godot/resource/sprite/ui/reloadBar.png b/DungeonShooting_Godot/resource/sprite/ui/reloadBar.png
deleted file mode 100644
index 0803903..0000000
--- a/DungeonShooting_Godot/resource/sprite/ui/reloadBar.png
+++ /dev/null
Binary files differ
diff --git a/DungeonShooting_Godot/resource/sprite/ui/reloadBar.png.import b/DungeonShooting_Godot/resource/sprite/ui/reloadBar.png.import
deleted file mode 100644
index 317230f..0000000
--- a/DungeonShooting_Godot/resource/sprite/ui/reloadBar.png.import
+++ /dev/null
@@ -1,34 +0,0 @@
-[remap]
-
-importer="texture"
-type="CompressedTexture2D"
-uid="uid://cukrx5yyqw86o"
-path="res://.godot/imported/reloadBar.png-4961e5f51bd5957a6e458f14c34d605f.ctex"
-metadata={
-"vram_texture": false
-}
-
-[deps]
-
-source_file="res://resource/sprite/ui/reloadBar.png"
-dest_files=["res://.godot/imported/reloadBar.png-4961e5f51bd5957a6e458f14c34d605f.ctex"]
-
-[params]
-
-compress/mode=0
-compress/high_quality=false
-compress/lossy_quality=0.7
-compress/hdr_compression=1
-compress/normal_map=0
-compress/channel_pack=0
-mipmaps/generate=false
-mipmaps/limit=-1
-roughness/mode=0
-roughness/src_normal=""
-process/fix_alpha_border=true
-process/premult_alpha=false
-process/normal_map_invert_y=false
-process/hdr_as_srgb=false
-process/hdr_clamp_exposure=false
-process/size_limit=0
-detect_3d/compress_to=1
diff --git a/DungeonShooting_Godot/resource/sprite/ui/reloadBarBlock.png b/DungeonShooting_Godot/resource/sprite/ui/reloadBarBlock.png
deleted file mode 100644
index a142dea..0000000
--- a/DungeonShooting_Godot/resource/sprite/ui/reloadBarBlock.png
+++ /dev/null
Binary files differ
diff --git a/DungeonShooting_Godot/resource/sprite/ui/reloadBarBlock.png.import b/DungeonShooting_Godot/resource/sprite/ui/reloadBarBlock.png.import
deleted file mode 100644
index d5e87bb..0000000
--- a/DungeonShooting_Godot/resource/sprite/ui/reloadBarBlock.png.import
+++ /dev/null
@@ -1,34 +0,0 @@
-[remap]
-
-importer="texture"
-type="CompressedTexture2D"
-uid="uid://cx3i1nkcc4307"
-path="res://.godot/imported/reloadBarBlock.png-c10c376109299573ac366ca2224169dd.ctex"
-metadata={
-"vram_texture": false
-}
-
-[deps]
-
-source_file="res://resource/sprite/ui/reloadBarBlock.png"
-dest_files=["res://.godot/imported/reloadBarBlock.png-c10c376109299573ac366ca2224169dd.ctex"]
-
-[params]
-
-compress/mode=0
-compress/high_quality=false
-compress/lossy_quality=0.7
-compress/hdr_compression=1
-compress/normal_map=0
-compress/channel_pack=0
-mipmaps/generate=false
-mipmaps/limit=-1
-roughness/mode=0
-roughness/src_normal=""
-process/fix_alpha_border=true
-process/premult_alpha=false
-process/normal_map_invert_y=false
-process/hdr_as_srgb=false
-process/hdr_clamp_exposure=false
-process/size_limit=0
-detect_3d/compress_to=1
diff --git a/DungeonShooting_Godot/resource/sprite/ui/roomUI/Life_empty.png b/DungeonShooting_Godot/resource/sprite/ui/roomUI/Life_empty.png
new file mode 100644
index 0000000..855185f
--- /dev/null
+++ b/DungeonShooting_Godot/resource/sprite/ui/roomUI/Life_empty.png
Binary files differ
diff --git a/DungeonShooting_Godot/resource/sprite/ui/roomUI/Life_empty.png.import b/DungeonShooting_Godot/resource/sprite/ui/roomUI/Life_empty.png.import
new file mode 100644
index 0000000..17d4dbd
--- /dev/null
+++ b/DungeonShooting_Godot/resource/sprite/ui/roomUI/Life_empty.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://dv3qskyc0dcmy"
+path="res://.godot/imported/Life_empty.png-70b3819b5f97ee464f3662671f30c9ca.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://resource/sprite/ui/roomUI/Life_empty.png"
+dest_files=["res://.godot/imported/Life_empty.png-70b3819b5f97ee464f3662671f30c9ca.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/DungeonShooting_Godot/resource/sprite/ui/roomUI/Life_full.png b/DungeonShooting_Godot/resource/sprite/ui/roomUI/Life_full.png
new file mode 100644
index 0000000..983b566
--- /dev/null
+++ b/DungeonShooting_Godot/resource/sprite/ui/roomUI/Life_full.png
Binary files differ
diff --git a/DungeonShooting_Godot/resource/sprite/ui/roomUI/Life_full.png.import b/DungeonShooting_Godot/resource/sprite/ui/roomUI/Life_full.png.import
new file mode 100644
index 0000000..ad92da2
--- /dev/null
+++ b/DungeonShooting_Godot/resource/sprite/ui/roomUI/Life_full.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://blywnftxn1cfd"
+path="res://.godot/imported/Life_full.png-229f74d0d11185f153d4a79ece4fe5dd.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://resource/sprite/ui/roomUI/Life_full.png"
+dest_files=["res://.godot/imported/Life_full.png-229f74d0d11185f153d4a79ece4fe5dd.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/DungeonShooting_Godot/resource/sprite/ui/roomUI/Life_half.png b/DungeonShooting_Godot/resource/sprite/ui/roomUI/Life_half.png
new file mode 100644
index 0000000..581f4a2
--- /dev/null
+++ b/DungeonShooting_Godot/resource/sprite/ui/roomUI/Life_half.png
Binary files differ
diff --git a/DungeonShooting_Godot/resource/sprite/ui/roomUI/Life_half.png.import b/DungeonShooting_Godot/resource/sprite/ui/roomUI/Life_half.png.import
new file mode 100644
index 0000000..05401b4
--- /dev/null
+++ b/DungeonShooting_Godot/resource/sprite/ui/roomUI/Life_half.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://cnnl07abi51ph"
+path="res://.godot/imported/Life_half.png-c0db4f0210786ed564fa0c818120b553.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://resource/sprite/ui/roomUI/Life_half.png"
+dest_files=["res://.godot/imported/Life_half.png-c0db4f0210786ed564fa0c818120b553.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/DungeonShooting_Godot/resource/sprite/ui/roomUI/MapBar.png b/DungeonShooting_Godot/resource/sprite/ui/roomUI/MapBar.png
new file mode 100644
index 0000000..be17bb5
--- /dev/null
+++ b/DungeonShooting_Godot/resource/sprite/ui/roomUI/MapBar.png
Binary files differ
diff --git a/DungeonShooting_Godot/resource/sprite/ui/roomUI/MapBar.png.import b/DungeonShooting_Godot/resource/sprite/ui/roomUI/MapBar.png.import
new file mode 100644
index 0000000..38c02ed
--- /dev/null
+++ b/DungeonShooting_Godot/resource/sprite/ui/roomUI/MapBar.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://k621mhhkg65f"
+path="res://.godot/imported/MapBar.png-b929285ef9227704736eaf783aa026b9.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://resource/sprite/ui/roomUI/MapBar.png"
+dest_files=["res://.godot/imported/MapBar.png-b929285ef9227704736eaf783aa026b9.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/DungeonShooting_Godot/resource/sprite/ui/roomUI/Panel.png b/DungeonShooting_Godot/resource/sprite/ui/roomUI/Panel.png
new file mode 100644
index 0000000..790a8ff
--- /dev/null
+++ b/DungeonShooting_Godot/resource/sprite/ui/roomUI/Panel.png
Binary files differ
diff --git a/DungeonShooting_Godot/resource/sprite/ui/roomUI/Panel.png.import b/DungeonShooting_Godot/resource/sprite/ui/roomUI/Panel.png.import
new file mode 100644
index 0000000..7451967
--- /dev/null
+++ b/DungeonShooting_Godot/resource/sprite/ui/roomUI/Panel.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://0swkya4hn82c"
+path="res://.godot/imported/Panel.png-6971b533d80a7f2da8f9dc29735e5297.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://resource/sprite/ui/roomUI/Panel.png"
+dest_files=["res://.godot/imported/Panel.png-6971b533d80a7f2da8f9dc29735e5297.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/DungeonShooting_Godot/resource/sprite/ui/roomUI/ReloadBar.png b/DungeonShooting_Godot/resource/sprite/ui/roomUI/ReloadBar.png
new file mode 100644
index 0000000..0803903
--- /dev/null
+++ b/DungeonShooting_Godot/resource/sprite/ui/roomUI/ReloadBar.png
Binary files differ
diff --git a/DungeonShooting_Godot/resource/sprite/ui/roomUI/ReloadBar.png.import b/DungeonShooting_Godot/resource/sprite/ui/roomUI/ReloadBar.png.import
new file mode 100644
index 0000000..1cce9af
--- /dev/null
+++ b/DungeonShooting_Godot/resource/sprite/ui/roomUI/ReloadBar.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://cukrx5yyqw86o"
+path="res://.godot/imported/ReloadBar.png-86f37f65aed8c32ab4aa781271d93098.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://resource/sprite/ui/roomUI/ReloadBar.png"
+dest_files=["res://.godot/imported/ReloadBar.png-86f37f65aed8c32ab4aa781271d93098.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/DungeonShooting_Godot/resource/sprite/ui/roomUI/ReloadBarBlock.png b/DungeonShooting_Godot/resource/sprite/ui/roomUI/ReloadBarBlock.png
new file mode 100644
index 0000000..a142dea
--- /dev/null
+++ b/DungeonShooting_Godot/resource/sprite/ui/roomUI/ReloadBarBlock.png
Binary files differ
diff --git a/DungeonShooting_Godot/resource/sprite/ui/roomUI/ReloadBarBlock.png.import b/DungeonShooting_Godot/resource/sprite/ui/roomUI/ReloadBarBlock.png.import
new file mode 100644
index 0000000..b69a084
--- /dev/null
+++ b/DungeonShooting_Godot/resource/sprite/ui/roomUI/ReloadBarBlock.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://cx3i1nkcc4307"
+path="res://.godot/imported/ReloadBarBlock.png-cf9b83cc7f1afa162fa47cdb4a4fd072.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://resource/sprite/ui/roomUI/ReloadBarBlock.png"
+dest_files=["res://.godot/imported/ReloadBarBlock.png-cf9b83cc7f1afa162fa47cdb4a4fd072.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/DungeonShooting_Godot/resource/sprite/ui/roomUI/Shield_empty.png b/DungeonShooting_Godot/resource/sprite/ui/roomUI/Shield_empty.png
new file mode 100644
index 0000000..f9c435e
--- /dev/null
+++ b/DungeonShooting_Godot/resource/sprite/ui/roomUI/Shield_empty.png
Binary files differ
diff --git a/DungeonShooting_Godot/resource/sprite/ui/roomUI/Shield_empty.png.import b/DungeonShooting_Godot/resource/sprite/ui/roomUI/Shield_empty.png.import
new file mode 100644
index 0000000..ebbc9f0
--- /dev/null
+++ b/DungeonShooting_Godot/resource/sprite/ui/roomUI/Shield_empty.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://jtg0wkxir2w4"
+path="res://.godot/imported/Shield_empty.png-b1c2a5c3db8cd391be25c6780b68908a.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://resource/sprite/ui/roomUI/Shield_empty.png"
+dest_files=["res://.godot/imported/Shield_empty.png-b1c2a5c3db8cd391be25c6780b68908a.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/DungeonShooting_Godot/resource/sprite/ui/roomUI/Shield_full.png b/DungeonShooting_Godot/resource/sprite/ui/roomUI/Shield_full.png
new file mode 100644
index 0000000..ed0095b
--- /dev/null
+++ b/DungeonShooting_Godot/resource/sprite/ui/roomUI/Shield_full.png
Binary files differ
diff --git a/DungeonShooting_Godot/resource/sprite/ui/roomUI/Shield_full.png.import b/DungeonShooting_Godot/resource/sprite/ui/roomUI/Shield_full.png.import
new file mode 100644
index 0000000..e260563
--- /dev/null
+++ b/DungeonShooting_Godot/resource/sprite/ui/roomUI/Shield_full.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://bhr8n3ytchbqi"
+path="res://.godot/imported/Shield_full.png-27737fe3019e9fbbcbe39832d7d1d1d8.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://resource/sprite/ui/roomUI/Shield_full.png"
+dest_files=["res://.godot/imported/Shield_full.png-27737fe3019e9fbbcbe39832d7d1d1d8.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/DungeonShooting_Godot/resource/sprite/ui/shieldBar.png b/DungeonShooting_Godot/resource/sprite/ui/shieldBar.png
deleted file mode 100644
index 650d354..0000000
--- a/DungeonShooting_Godot/resource/sprite/ui/shieldBar.png
+++ /dev/null
Binary files differ
diff --git a/DungeonShooting_Godot/resource/sprite/ui/shieldBar.png.import b/DungeonShooting_Godot/resource/sprite/ui/shieldBar.png.import
deleted file mode 100644
index dacd0b3..0000000
--- a/DungeonShooting_Godot/resource/sprite/ui/shieldBar.png.import
+++ /dev/null
@@ -1,34 +0,0 @@
-[remap]
-
-importer="texture"
-type="CompressedTexture2D"
-uid="uid://h25j6uka74tv"
-path="res://.godot/imported/shieldBar.png-093bd9bf980cb2c0cee0b033de727a12.ctex"
-metadata={
-"vram_texture": false
-}
-
-[deps]
-
-source_file="res://resource/sprite/ui/shieldBar.png"
-dest_files=["res://.godot/imported/shieldBar.png-093bd9bf980cb2c0cee0b033de727a12.ctex"]
-
-[params]
-
-compress/mode=0
-compress/high_quality=false
-compress/lossy_quality=0.7
-compress/hdr_compression=1
-compress/normal_map=0
-compress/channel_pack=0
-mipmaps/generate=false
-mipmaps/limit=-1
-roughness/mode=0
-roughness/src_normal=""
-process/fix_alpha_border=true
-process/premult_alpha=false
-process/normal_map_invert_y=false
-process/hdr_as_srgb=false
-process/hdr_clamp_exposure=false
-process/size_limit=0
-detect_3d/compress_to=1
diff --git a/DungeonShooting_Godot/resource/sprite/ui/shieldSlot.png b/DungeonShooting_Godot/resource/sprite/ui/shieldSlot.png
deleted file mode 100644
index 8486c17..0000000
--- a/DungeonShooting_Godot/resource/sprite/ui/shieldSlot.png
+++ /dev/null
Binary files differ
diff --git a/DungeonShooting_Godot/resource/sprite/ui/shieldSlot.png.import b/DungeonShooting_Godot/resource/sprite/ui/shieldSlot.png.import
deleted file mode 100644
index e0504d7..0000000
--- a/DungeonShooting_Godot/resource/sprite/ui/shieldSlot.png.import
+++ /dev/null
@@ -1,34 +0,0 @@
-[remap]
-
-importer="texture"
-type="CompressedTexture2D"
-uid="uid://dnpguajopuyd7"
-path="res://.godot/imported/shieldSlot.png-b05866327c1a09631a522d084d9ba831.ctex"
-metadata={
-"vram_texture": false
-}
-
-[deps]
-
-source_file="res://resource/sprite/ui/shieldSlot.png"
-dest_files=["res://.godot/imported/shieldSlot.png-b05866327c1a09631a522d084d9ba831.ctex"]
-
-[params]
-
-compress/mode=0
-compress/high_quality=false
-compress/lossy_quality=0.7
-compress/hdr_compression=1
-compress/normal_map=0
-compress/channel_pack=0
-mipmaps/generate=false
-mipmaps/limit=-1
-roughness/mode=0
-roughness/src_normal=""
-process/fix_alpha_border=true
-process/premult_alpha=false
-process/normal_map_invert_y=false
-process/hdr_as_srgb=false
-process/hdr_clamp_exposure=false
-process/size_limit=0
-detect_3d/compress_to=1
diff --git a/DungeonShooting_Godot/resource/sprite/ui/template-ui.png b/DungeonShooting_Godot/resource/sprite/ui/template-ui.png
deleted file mode 100644
index 69f40fb..0000000
--- a/DungeonShooting_Godot/resource/sprite/ui/template-ui.png
+++ /dev/null
Binary files differ
diff --git a/DungeonShooting_Godot/resource/sprite/ui/template-ui.png.import b/DungeonShooting_Godot/resource/sprite/ui/template-ui.png.import
deleted file mode 100644
index d15586a..0000000
--- a/DungeonShooting_Godot/resource/sprite/ui/template-ui.png.import
+++ /dev/null
@@ -1,34 +0,0 @@
-[remap]
-
-importer="texture"
-type="CompressedTexture2D"
-uid="uid://xsh0rx6qpted"
-path="res://.godot/imported/template-ui.png-53af29ee4ca2b778b4ce3b198469ccad.ctex"
-metadata={
-"vram_texture": false
-}
-
-[deps]
-
-source_file="res://resource/sprite/ui/template-ui.png"
-dest_files=["res://.godot/imported/template-ui.png-53af29ee4ca2b778b4ce3b198469ccad.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/prop/active/ActiveProp5000.tres b/DungeonShooting_Godot/resource/spriteFrames/prop/active/ActiveProp5000.tres
new file mode 100644
index 0000000..a1ecdb8
--- /dev/null
+++ b/DungeonShooting_Godot/resource/spriteFrames/prop/active/ActiveProp5000.tres
@@ -0,0 +1,14 @@
+[gd_resource type="SpriteFrames" load_steps=2 format=3 uid="uid://cvosq47nbdnus"]
+
+[ext_resource type="Texture2D" uid="uid://cu0wlvrbntvyd" path="res://resource/sprite/prop/active/ActiveProp5000.png" id="1_mkqgb"]
+
+[resource]
+animations = [{
+"frames": [{
+"duration": 1.0,
+"texture": ExtResource("1_mkqgb")
+}],
+"loop": true,
+"name": &"default",
+"speed": 5.0
+}]
diff --git a/DungeonShooting_Godot/resource/spriteFrames/prop/buff/Buff0001.tres b/DungeonShooting_Godot/resource/spriteFrames/prop/buff/Buff0001.tres
deleted file mode 100644
index 6a0ec5f..0000000
--- a/DungeonShooting_Godot/resource/spriteFrames/prop/buff/Buff0001.tres
+++ /dev/null
@@ -1,14 +0,0 @@
-[gd_resource type="SpriteFrames" load_steps=2 format=3 uid="uid://wtvfyprel72y"]
-
-[ext_resource type="Texture2D" uid="uid://bls55gj8h3mgv" path="res://resource/sprite/prop/buff/Buff0001.png" id="1_scm06"]
-
-[resource]
-animations = [{
-"frames": [{
-"duration": 1.0,
-"texture": ExtResource("1_scm06")
-}],
-"loop": true,
-"name": &"default",
-"speed": 5.0
-}]
diff --git a/DungeonShooting_Godot/resource/spriteFrames/prop/buff/Buff0002.tres b/DungeonShooting_Godot/resource/spriteFrames/prop/buff/Buff0002.tres
deleted file mode 100644
index 10e71f0..0000000
--- a/DungeonShooting_Godot/resource/spriteFrames/prop/buff/Buff0002.tres
+++ /dev/null
@@ -1,14 +0,0 @@
-[gd_resource type="SpriteFrames" load_steps=2 format=3 uid="uid://7t57gsyff470"]
-
-[ext_resource type="Texture2D" uid="uid://cv2joc07ymofw" path="res://resource/sprite/prop/buff/Buff0002.png" id="1_8nnhb"]
-
-[resource]
-animations = [{
-"frames": [{
-"duration": 1.0,
-"texture": ExtResource("1_8nnhb")
-}],
-"loop": true,
-"name": &"default",
-"speed": 5.0
-}]
diff --git a/DungeonShooting_Godot/resource/spriteFrames/prop/buff/Buff0003.tres b/DungeonShooting_Godot/resource/spriteFrames/prop/buff/Buff0003.tres
deleted file mode 100644
index ee3770b..0000000
--- a/DungeonShooting_Godot/resource/spriteFrames/prop/buff/Buff0003.tres
+++ /dev/null
@@ -1,14 +0,0 @@
-[gd_resource type="SpriteFrames" load_steps=2 format=3 uid="uid://nqoieett75t3"]
-
-[ext_resource type="Texture2D" uid="uid://osr0v1c6l8ly" path="res://resource/sprite/prop/buff/Buff0003.png" id="1_p16yr"]
-
-[resource]
-animations = [{
-"frames": [{
-"duration": 1.0,
-"texture": ExtResource("1_p16yr")
-}],
-"loop": true,
-"name": &"default",
-"speed": 5.0
-}]
diff --git a/DungeonShooting_Godot/resource/spriteFrames/prop/buff/Buff0004.tres b/DungeonShooting_Godot/resource/spriteFrames/prop/buff/Buff0004.tres
deleted file mode 100644
index 05d16c9..0000000
--- a/DungeonShooting_Godot/resource/spriteFrames/prop/buff/Buff0004.tres
+++ /dev/null
@@ -1,14 +0,0 @@
-[gd_resource type="SpriteFrames" load_steps=2 format=3 uid="uid://bj0k3pipwp46x"]
-
-[ext_resource type="Texture2D" uid="uid://c0c25nihdcgt1" path="res://resource/sprite/prop/buff/Buff0004.png" id="1_a2o8b"]
-
-[resource]
-animations = [{
-"frames": [{
-"duration": 1.0,
-"texture": ExtResource("1_a2o8b")
-}],
-"loop": true,
-"name": &"default",
-"speed": 5.0
-}]
diff --git a/DungeonShooting_Godot/resource/spriteFrames/prop/buff/Buff0005.tres b/DungeonShooting_Godot/resource/spriteFrames/prop/buff/Buff0005.tres
deleted file mode 100644
index 541aa71..0000000
--- a/DungeonShooting_Godot/resource/spriteFrames/prop/buff/Buff0005.tres
+++ /dev/null
@@ -1,14 +0,0 @@
-[gd_resource type="SpriteFrames" load_steps=2 format=3 uid="uid://bvqp46degt1rg"]
-
-[ext_resource type="Texture2D" uid="uid://dse0mbg06ngya" path="res://resource/sprite/prop/buff/Buff0005.png" id="1_en8jo"]
-
-[resource]
-animations = [{
-"frames": [{
-"duration": 1.0,
-"texture": ExtResource("1_en8jo")
-}],
-"loop": true,
-"name": &"default",
-"speed": 5.0
-}]
diff --git a/DungeonShooting_Godot/resource/spriteFrames/prop/buff/Buff0006.tres b/DungeonShooting_Godot/resource/spriteFrames/prop/buff/Buff0006.tres
deleted file mode 100644
index 5939146..0000000
--- a/DungeonShooting_Godot/resource/spriteFrames/prop/buff/Buff0006.tres
+++ /dev/null
@@ -1,14 +0,0 @@
-[gd_resource type="SpriteFrames" load_steps=2 format=3 uid="uid://bxn65oovekw6k"]
-
-[ext_resource type="Texture2D" uid="uid://do8blk3xm5uy1" path="res://resource/sprite/prop/buff/Buff0006.png" id="1_ugsdc"]
-
-[resource]
-animations = [{
-"frames": [{
-"duration": 1.0,
-"texture": ExtResource("1_ugsdc")
-}],
-"loop": true,
-"name": &"default",
-"speed": 5.0
-}]
diff --git a/DungeonShooting_Godot/resource/spriteFrames/prop/buff/Buff0007.tres b/DungeonShooting_Godot/resource/spriteFrames/prop/buff/Buff0007.tres
deleted file mode 100644
index 49ef0b6..0000000
--- a/DungeonShooting_Godot/resource/spriteFrames/prop/buff/Buff0007.tres
+++ /dev/null
@@ -1,14 +0,0 @@
-[gd_resource type="SpriteFrames" load_steps=2 format=3 uid="uid://et840sb4d1g3"]
-
-[ext_resource type="Texture2D" uid="uid://fql5q452jqo0" path="res://resource/sprite/prop/buff/Buff0007.png" id="1_p5fwh"]
-
-[resource]
-animations = [{
-"frames": [{
-"duration": 1.0,
-"texture": ExtResource("1_p5fwh")
-}],
-"loop": true,
-"name": &"default",
-"speed": 5.0
-}]
diff --git a/DungeonShooting_Godot/resource/spriteFrames/prop/buff/Buff0008.tres b/DungeonShooting_Godot/resource/spriteFrames/prop/buff/Buff0008.tres
deleted file mode 100644
index d41f23c..0000000
--- a/DungeonShooting_Godot/resource/spriteFrames/prop/buff/Buff0008.tres
+++ /dev/null
@@ -1,14 +0,0 @@
-[gd_resource type="SpriteFrames" load_steps=2 format=3 uid="uid://bs41p1hpkpucb"]
-
-[ext_resource type="Texture2D" uid="uid://cn8f56vjb02u2" path="res://resource/sprite/prop/buff/Buff0008.png" id="1_7efyb"]
-
-[resource]
-animations = [{
-"frames": [{
-"duration": 1.0,
-"texture": ExtResource("1_7efyb")
-}],
-"loop": true,
-"name": &"default",
-"speed": 5.0
-}]
diff --git a/DungeonShooting_Godot/resource/spriteFrames/prop/buff/Buff0009.tres b/DungeonShooting_Godot/resource/spriteFrames/prop/buff/Buff0009.tres
deleted file mode 100644
index be6489f..0000000
--- a/DungeonShooting_Godot/resource/spriteFrames/prop/buff/Buff0009.tres
+++ /dev/null
@@ -1,14 +0,0 @@
-[gd_resource type="SpriteFrames" load_steps=2 format=3 uid="uid://sqcibio78nwc"]
-
-[ext_resource type="Texture2D" uid="uid://csak48bvrnws" path="res://resource/sprite/prop/buff/Buff0009.png" id="1_78egk"]
-
-[resource]
-animations = [{
-"frames": [{
-"duration": 1.0,
-"texture": ExtResource("1_78egk")
-}],
-"loop": true,
-"name": &"default",
-"speed": 5.0
-}]
diff --git a/DungeonShooting_Godot/resource/spriteFrames/prop/buff/Buff0010.tres b/DungeonShooting_Godot/resource/spriteFrames/prop/buff/Buff0010.tres
deleted file mode 100644
index c5a3629..0000000
--- a/DungeonShooting_Godot/resource/spriteFrames/prop/buff/Buff0010.tres
+++ /dev/null
@@ -1,14 +0,0 @@
-[gd_resource type="SpriteFrames" load_steps=2 format=3 uid="uid://dxqtm7xgn2wms"]
-
-[ext_resource type="Texture2D" uid="uid://dlsfun6svqfmm" path="res://resource/sprite/prop/buff/Buff0010.png" id="1_w8rnu"]
-
-[resource]
-animations = [{
-"frames": [{
-"duration": 1.0,
-"texture": ExtResource("1_w8rnu")
-}],
-"loop": true,
-"name": &"default",
-"speed": 5.0
-}]
diff --git a/DungeonShooting_Godot/resource/spriteFrames/prop/buff/BuffProp0001.tres b/DungeonShooting_Godot/resource/spriteFrames/prop/buff/BuffProp0001.tres
new file mode 100644
index 0000000..2aa87fd
--- /dev/null
+++ b/DungeonShooting_Godot/resource/spriteFrames/prop/buff/BuffProp0001.tres
@@ -0,0 +1,14 @@
+[gd_resource type="SpriteFrames" load_steps=2 format=3 uid="uid://wtvfyprel72y"]
+
+[ext_resource type="Texture2D" uid="uid://bls55gj8h3mgv" path="res://resource/sprite/prop/buff/BuffProp0001.png" id="1_scm06"]
+
+[resource]
+animations = [{
+"frames": [{
+"duration": 1.0,
+"texture": ExtResource("1_scm06")
+}],
+"loop": true,
+"name": &"default",
+"speed": 5.0
+}]
diff --git a/DungeonShooting_Godot/resource/spriteFrames/prop/buff/BuffProp0002.tres b/DungeonShooting_Godot/resource/spriteFrames/prop/buff/BuffProp0002.tres
new file mode 100644
index 0000000..330307d
--- /dev/null
+++ b/DungeonShooting_Godot/resource/spriteFrames/prop/buff/BuffProp0002.tres
@@ -0,0 +1,14 @@
+[gd_resource type="SpriteFrames" load_steps=2 format=3 uid="uid://7t57gsyff470"]
+
+[ext_resource type="Texture2D" uid="uid://cv2joc07ymofw" path="res://resource/sprite/prop/buff/BuffProp0002.png" id="1_8nnhb"]
+
+[resource]
+animations = [{
+"frames": [{
+"duration": 1.0,
+"texture": ExtResource("1_8nnhb")
+}],
+"loop": true,
+"name": &"default",
+"speed": 5.0
+}]
diff --git a/DungeonShooting_Godot/resource/spriteFrames/prop/buff/BuffProp0003.tres b/DungeonShooting_Godot/resource/spriteFrames/prop/buff/BuffProp0003.tres
new file mode 100644
index 0000000..ae7484c
--- /dev/null
+++ b/DungeonShooting_Godot/resource/spriteFrames/prop/buff/BuffProp0003.tres
@@ -0,0 +1,14 @@
+[gd_resource type="SpriteFrames" load_steps=2 format=3 uid="uid://nqoieett75t3"]
+
+[ext_resource type="Texture2D" uid="uid://osr0v1c6l8ly" path="res://resource/sprite/prop/buff/BuffProp0003.png" id="1_p16yr"]
+
+[resource]
+animations = [{
+"frames": [{
+"duration": 1.0,
+"texture": ExtResource("1_p16yr")
+}],
+"loop": true,
+"name": &"default",
+"speed": 5.0
+}]
diff --git a/DungeonShooting_Godot/resource/spriteFrames/prop/buff/BuffProp0004.tres b/DungeonShooting_Godot/resource/spriteFrames/prop/buff/BuffProp0004.tres
new file mode 100644
index 0000000..d1948b0
--- /dev/null
+++ b/DungeonShooting_Godot/resource/spriteFrames/prop/buff/BuffProp0004.tres
@@ -0,0 +1,14 @@
+[gd_resource type="SpriteFrames" load_steps=2 format=3 uid="uid://bj0k3pipwp46x"]
+
+[ext_resource type="Texture2D" uid="uid://c0c25nihdcgt1" path="res://resource/sprite/prop/buff/BuffProp0004.png" id="1_a2o8b"]
+
+[resource]
+animations = [{
+"frames": [{
+"duration": 1.0,
+"texture": ExtResource("1_a2o8b")
+}],
+"loop": true,
+"name": &"default",
+"speed": 5.0
+}]
diff --git a/DungeonShooting_Godot/resource/spriteFrames/prop/buff/BuffProp0005.tres b/DungeonShooting_Godot/resource/spriteFrames/prop/buff/BuffProp0005.tres
new file mode 100644
index 0000000..89844f2
--- /dev/null
+++ b/DungeonShooting_Godot/resource/spriteFrames/prop/buff/BuffProp0005.tres
@@ -0,0 +1,14 @@
+[gd_resource type="SpriteFrames" load_steps=2 format=3 uid="uid://bvqp46degt1rg"]
+
+[ext_resource type="Texture2D" uid="uid://dse0mbg06ngya" path="res://resource/sprite/prop/buff/BuffProp0005.png" id="1_en8jo"]
+
+[resource]
+animations = [{
+"frames": [{
+"duration": 1.0,
+"texture": ExtResource("1_en8jo")
+}],
+"loop": true,
+"name": &"default",
+"speed": 5.0
+}]
diff --git a/DungeonShooting_Godot/resource/spriteFrames/prop/buff/BuffProp0006.tres b/DungeonShooting_Godot/resource/spriteFrames/prop/buff/BuffProp0006.tres
new file mode 100644
index 0000000..ec1f5a5
--- /dev/null
+++ b/DungeonShooting_Godot/resource/spriteFrames/prop/buff/BuffProp0006.tres
@@ -0,0 +1,14 @@
+[gd_resource type="SpriteFrames" load_steps=2 format=3 uid="uid://bxn65oovekw6k"]
+
+[ext_resource type="Texture2D" uid="uid://do8blk3xm5uy1" path="res://resource/sprite/prop/buff/BuffProp0006.png" id="1_ugsdc"]
+
+[resource]
+animations = [{
+"frames": [{
+"duration": 1.0,
+"texture": ExtResource("1_ugsdc")
+}],
+"loop": true,
+"name": &"default",
+"speed": 5.0
+}]
diff --git a/DungeonShooting_Godot/resource/spriteFrames/prop/buff/BuffProp0007.tres b/DungeonShooting_Godot/resource/spriteFrames/prop/buff/BuffProp0007.tres
new file mode 100644
index 0000000..cea9375
--- /dev/null
+++ b/DungeonShooting_Godot/resource/spriteFrames/prop/buff/BuffProp0007.tres
@@ -0,0 +1,14 @@
+[gd_resource type="SpriteFrames" load_steps=2 format=3 uid="uid://et840sb4d1g3"]
+
+[ext_resource type="Texture2D" uid="uid://fql5q452jqo0" path="res://resource/sprite/prop/buff/BuffProp0007.png" id="1_p5fwh"]
+
+[resource]
+animations = [{
+"frames": [{
+"duration": 1.0,
+"texture": ExtResource("1_p5fwh")
+}],
+"loop": true,
+"name": &"default",
+"speed": 5.0
+}]
diff --git a/DungeonShooting_Godot/resource/spriteFrames/prop/buff/BuffProp0008.tres b/DungeonShooting_Godot/resource/spriteFrames/prop/buff/BuffProp0008.tres
new file mode 100644
index 0000000..3022e83
--- /dev/null
+++ b/DungeonShooting_Godot/resource/spriteFrames/prop/buff/BuffProp0008.tres
@@ -0,0 +1,14 @@
+[gd_resource type="SpriteFrames" load_steps=2 format=3 uid="uid://bs41p1hpkpucb"]
+
+[ext_resource type="Texture2D" uid="uid://cn8f56vjb02u2" path="res://resource/sprite/prop/buff/BuffProp0008.png" id="1_7efyb"]
+
+[resource]
+animations = [{
+"frames": [{
+"duration": 1.0,
+"texture": ExtResource("1_7efyb")
+}],
+"loop": true,
+"name": &"default",
+"speed": 5.0
+}]
diff --git a/DungeonShooting_Godot/resource/spriteFrames/prop/buff/BuffProp0009.tres b/DungeonShooting_Godot/resource/spriteFrames/prop/buff/BuffProp0009.tres
new file mode 100644
index 0000000..53977ec
--- /dev/null
+++ b/DungeonShooting_Godot/resource/spriteFrames/prop/buff/BuffProp0009.tres
@@ -0,0 +1,14 @@
+[gd_resource type="SpriteFrames" load_steps=2 format=3 uid="uid://sqcibio78nwc"]
+
+[ext_resource type="Texture2D" uid="uid://csak48bvrnws" path="res://resource/sprite/prop/buff/BuffProp0009.png" id="1_78egk"]
+
+[resource]
+animations = [{
+"frames": [{
+"duration": 1.0,
+"texture": ExtResource("1_78egk")
+}],
+"loop": true,
+"name": &"default",
+"speed": 5.0
+}]
diff --git a/DungeonShooting_Godot/resource/spriteFrames/prop/buff/BuffProp0010.tres b/DungeonShooting_Godot/resource/spriteFrames/prop/buff/BuffProp0010.tres
new file mode 100644
index 0000000..b15cc45
--- /dev/null
+++ b/DungeonShooting_Godot/resource/spriteFrames/prop/buff/BuffProp0010.tres
@@ -0,0 +1,14 @@
+[gd_resource type="SpriteFrames" load_steps=2 format=3 uid="uid://dxqtm7xgn2wms"]
+
+[ext_resource type="Texture2D" uid="uid://dlsfun6svqfmm" path="res://resource/sprite/prop/buff/BuffProp0010.png" id="1_w8rnu"]
+
+[resource]
+animations = [{
+"frames": [{
+"duration": 1.0,
+"texture": ExtResource("1_w8rnu")
+}],
+"loop": true,
+"name": &"default",
+"speed": 5.0
+}]
diff --git a/DungeonShooting_Godot/resource/theme/mainTheme.tres b/DungeonShooting_Godot/resource/theme/mainTheme.tres
index 1a52d57..ec8b719 100644
--- a/DungeonShooting_Godot/resource/theme/mainTheme.tres
+++ b/DungeonShooting_Godot/resource/theme/mainTheme.tres
@@ -352,7 +352,7 @@
 
 [sub_resource type="ImageTexture" id="58"]
 
-[sub_resource type="Image" id="Image_epr6k"]
+[sub_resource type="Image" id="Image_tiopb"]
 data = {
 "data": PackedByteArray(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 0, 255, 255, 255, 1, 255, 255, 255, 39, 255, 255, 255, 67, 255, 255, 255, 67, 255, 255, 255, 39, 255, 255, 255, 1, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 0, 255, 255, 255, 39, 255, 255, 255, 75, 255, 255, 255, 75, 255, 255, 255, 75, 255, 255, 255, 75, 255, 255, 255, 39, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 0, 255, 255, 255, 66, 255, 255, 255, 75, 255, 255, 255, 75, 255, 255, 255, 75, 255, 255, 255, 75, 255, 255, 255, 66, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 0, 255, 255, 255, 66, 255, 255, 255, 75, 255, 255, 255, 75, 255, 255, 255, 75, 255, 255, 255, 75, 255, 255, 255, 66, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 0, 255, 255, 255, 39, 255, 255, 255, 75, 255, 255, 255, 75, 255, 255, 255, 75, 255, 255, 255, 75, 255, 255, 255, 39, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 0, 255, 255, 255, 1, 255, 255, 255, 39, 255, 255, 255, 67, 255, 255, 255, 67, 255, 255, 255, 39, 255, 255, 255, 1, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0),
 "format": "RGBA8",
@@ -362,7 +362,7 @@
 }
 
 [sub_resource type="ImageTexture" id="60"]
-image = SubResource("Image_epr6k")
+image = SubResource("Image_tiopb")
 
 [sub_resource type="StyleBoxTexture" id="61"]
 content_margin_left = 2.0
@@ -372,7 +372,7 @@
 texture = SubResource("60")
 region_rect = Rect2(0, 0, 12, 12)
 
-[sub_resource type="Image" id="Image_0vsw4"]
+[sub_resource type="Image" id="Image_3mc6w"]
 data = {
 "data": PackedByteArray(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 191, 191, 191, 0, 247, 247, 247, 0, 248, 248, 248, 0, 248, 248, 248, 0, 247, 247, 247, 0, 191, 191, 191, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 191, 191, 191, 0, 191, 191, 191, 4, 247, 247, 247, 98, 248, 248, 248, 167, 248, 248, 248, 167, 247, 247, 247, 98, 191, 191, 191, 4, 191, 191, 191, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 247, 247, 247, 0, 247, 247, 247, 97, 248, 248, 248, 186, 248, 248, 248, 186, 248, 248, 248, 186, 248, 248, 248, 186, 247, 247, 247, 97, 247, 247, 247, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 248, 248, 248, 0, 248, 248, 248, 164, 248, 248, 248, 186, 248, 248, 248, 186, 248, 248, 248, 186, 248, 248, 248, 186, 248, 248, 248, 164, 248, 248, 248, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 248, 248, 248, 0, 248, 248, 248, 164, 248, 248, 248, 186, 248, 248, 248, 186, 248, 248, 248, 186, 248, 248, 248, 186, 248, 248, 248, 164, 248, 248, 248, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 247, 247, 247, 0, 247, 247, 247, 97, 248, 248, 248, 186, 248, 248, 248, 186, 248, 248, 248, 186, 248, 248, 248, 186, 247, 247, 247, 97, 247, 247, 247, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 191, 191, 191, 0, 191, 191, 191, 4, 247, 247, 247, 98, 248, 248, 248, 167, 248, 248, 248, 167, 247, 247, 247, 98, 191, 191, 191, 4, 191, 191, 191, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 191, 191, 191, 0, 247, 247, 247, 0, 248, 248, 248, 0, 248, 248, 248, 0, 247, 247, 247, 0, 191, 191, 191, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0),
 "format": "RGBA8",
@@ -382,7 +382,7 @@
 }
 
 [sub_resource type="ImageTexture" id="63"]
-image = SubResource("Image_0vsw4")
+image = SubResource("Image_3mc6w")
 
 [sub_resource type="StyleBoxTexture" id="64"]
 content_margin_left = 2.0
@@ -392,7 +392,7 @@
 texture = SubResource("63")
 region_rect = Rect2(0, 0, 12, 12)
 
-[sub_resource type="Image" id="Image_ee4b5"]
+[sub_resource type="Image" id="Image_4kug6"]
 data = {
 "data": PackedByteArray(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 127, 127, 127, 0, 173, 173, 173, 0, 173, 173, 173, 0, 173, 173, 173, 0, 173, 173, 173, 0, 127, 127, 127, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 127, 127, 127, 0, 127, 127, 127, 4, 173, 173, 173, 97, 173, 173, 173, 166, 173, 173, 173, 166, 173, 173, 173, 97, 127, 127, 127, 4, 127, 127, 127, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 172, 172, 172, 0, 172, 172, 172, 96, 173, 173, 173, 185, 173, 173, 173, 185, 173, 173, 173, 185, 173, 173, 173, 185, 172, 172, 172, 96, 172, 172, 172, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 173, 173, 173, 0, 173, 173, 173, 163, 173, 173, 173, 185, 173, 173, 173, 185, 173, 173, 173, 185, 173, 173, 173, 185, 173, 173, 173, 163, 173, 173, 173, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 173, 173, 173, 0, 173, 173, 173, 163, 173, 173, 173, 185, 173, 173, 173, 185, 173, 173, 173, 185, 173, 173, 173, 185, 173, 173, 173, 163, 173, 173, 173, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 172, 172, 172, 0, 172, 172, 172, 96, 173, 173, 173, 185, 173, 173, 173, 185, 173, 173, 173, 185, 173, 173, 173, 185, 172, 172, 172, 96, 172, 172, 172, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 127, 127, 127, 0, 127, 127, 127, 4, 173, 173, 173, 97, 173, 173, 173, 166, 173, 173, 173, 166, 173, 173, 173, 97, 127, 127, 127, 4, 127, 127, 127, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 127, 127, 127, 0, 173, 173, 173, 0, 173, 173, 173, 0, 173, 173, 173, 0, 173, 173, 173, 0, 127, 127, 127, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0),
 "format": "RGBA8",
@@ -402,7 +402,7 @@
 }
 
 [sub_resource type="ImageTexture" id="66"]
-image = SubResource("Image_ee4b5")
+image = SubResource("Image_4kug6")
 
 [sub_resource type="StyleBoxTexture" id="67"]
 content_margin_left = 2.0
@@ -412,7 +412,7 @@
 texture = SubResource("66")
 region_rect = Rect2(0, 0, 12, 12)
 
-[sub_resource type="Image" id="Image_achge"]
+[sub_resource type="Image" id="Image_yud6e"]
 data = {
 "data": PackedByteArray(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 0, 255, 255, 255, 4, 255, 255, 255, 16, 255, 255, 255, 16, 255, 255, 255, 4, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 0, 255, 255, 255, 16, 255, 255, 255, 21, 255, 255, 255, 21, 255, 255, 255, 16, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 0, 255, 255, 255, 16, 255, 255, 255, 21, 255, 255, 255, 21, 255, 255, 255, 16, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 0, 255, 255, 255, 4, 255, 255, 255, 16, 255, 255, 255, 16, 255, 255, 255, 4, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0),
 "format": "RGBA8",
@@ -422,7 +422,7 @@
 }
 
 [sub_resource type="ImageTexture" id="69"]
-image = SubResource("Image_achge")
+image = SubResource("Image_yud6e")
 
 [sub_resource type="StyleBoxTexture" id="70"]
 content_margin_left = 0.0
@@ -446,7 +446,7 @@
 content_margin_right = 4.0
 content_margin_bottom = 4.0
 
-[sub_resource type="Image" id="Image_65x2t"]
+[sub_resource type="Image" id="Image_luetf"]
 data = {
 "data": PackedByteArray(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 0, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 0, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 0, 255, 255, 255, 76, 255, 255, 255, 17, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 0, 255, 255, 255, 17, 255, 255, 255, 76, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 0, 255, 255, 255, 76, 255, 255, 255, 228, 255, 255, 255, 188, 255, 255, 255, 17, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 0, 255, 255, 255, 17, 255, 255, 255, 188, 255, 255, 255, 228, 255, 255, 255, 76, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 0, 255, 255, 255, 18, 255, 255, 255, 188, 255, 255, 255, 229, 255, 255, 255, 187, 255, 255, 255, 17, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 17, 255, 255, 255, 187, 255, 255, 255, 229, 255, 255, 255, 188, 255, 255, 255, 18, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 0, 255, 255, 255, 19, 255, 255, 255, 188, 255, 255, 255, 229, 255, 255, 255, 185, 255, 255, 255, 17, 255, 255, 255, 17, 255, 255, 255, 186, 255, 255, 255, 229, 255, 255, 255, 188, 255, 255, 255, 19, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 0, 255, 255, 255, 19, 255, 255, 255, 190, 255, 255, 255, 229, 255, 255, 255, 185, 255, 255, 255, 185, 255, 255, 255, 229, 255, 255, 255, 189, 255, 255, 255, 19, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 0, 255, 255, 255, 19, 255, 255, 255, 191, 255, 255, 255, 229, 255, 255, 255, 229, 255, 255, 255, 190, 255, 255, 255, 19, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 0, 255, 255, 255, 17, 255, 255, 255, 188, 255, 255, 255, 229, 255, 255, 255, 229, 255, 255, 255, 188, 255, 255, 255, 17, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 0, 255, 255, 255, 17, 255, 255, 255, 188, 255, 255, 255, 229, 255, 255, 255, 188, 255, 255, 255, 188, 255, 255, 255, 229, 255, 255, 255, 187, 255, 255, 255, 17, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 0, 255, 255, 255, 17, 255, 255, 255, 187, 255, 255, 255, 229, 255, 255, 255, 188, 255, 255, 255, 18, 255, 255, 255, 19, 255, 255, 255, 188, 255, 255, 255, 229, 255, 255, 255, 186, 255, 255, 255, 17, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 0, 255, 255, 255, 17, 255, 255, 255, 185, 255, 255, 255, 229, 255, 255, 255, 189, 255, 255, 255, 19, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 19, 255, 255, 255, 189, 255, 255, 255, 229, 255, 255, 255, 185, 255, 255, 255, 17, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 0, 255, 255, 255, 76, 255, 255, 255, 229, 255, 255, 255, 190, 255, 255, 255, 19, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 0, 255, 255, 255, 19, 255, 255, 255, 190, 255, 255, 255, 229, 255, 255, 255, 76, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 0, 255, 255, 255, 77, 255, 255, 255, 19, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 0, 255, 255, 255, 19, 255, 255, 255, 77, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 0, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 0, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0),
 "format": "RGBA8",
@@ -456,7 +456,7 @@
 }
 
 [sub_resource type="ImageTexture" id="56"]
-image = SubResource("Image_65x2t")
+image = SubResource("Image_luetf")
 
 [sub_resource type="StyleBoxFlat" id="57"]
 content_margin_left = 6.0
diff --git a/DungeonShooting_Godot/scene/test/TestOutline.tscn b/DungeonShooting_Godot/scene/test/TestOutline.tscn
index 78dbd31..bced176 100644
--- a/DungeonShooting_Godot/scene/test/TestOutline.tscn
+++ b/DungeonShooting_Godot/scene/test/TestOutline.tscn
@@ -1,7 +1,7 @@
 [gd_scene load_steps=4 format=3 uid="uid://bbwws7qlqlc0m"]
 
 [ext_resource type="Shader" path="res://resource/material/Blend.gdshader" id="1_r82n1"]
-[ext_resource type="Texture2D" uid="uid://bls55gj8h3mgv" path="res://resource/sprite/prop/buff/Buff0001.png" id="2_yce7u"]
+[ext_resource type="Texture2D" uid="uid://bls55gj8h3mgv" path="res://resource/sprite/prop/buff/BuffProp0001.png" id="2_yce7u"]
 
 [sub_resource type="ShaderMaterial" id="ShaderMaterial_lhoej"]
 shader = ExtResource("1_r82n1")
diff --git a/DungeonShooting_Godot/src/framework/activity/ActivityObject_Init.cs b/DungeonShooting_Godot/src/framework/activity/ActivityObject_Init.cs
index 22e31f1..3171ff4 100644
--- a/DungeonShooting_Godot/src/framework/activity/ActivityObject_Init.cs
+++ b/DungeonShooting_Godot/src/framework/activity/ActivityObject_Init.cs
@@ -131,6 +131,11 @@
         /// </summary>
         public const string Id_prop0010 = "prop0010";
         /// <summary>
+        /// 名称: 医药箱 <br/>
+        /// 备注: 使用后回复一颗红心
+        /// </summary>
+        public const string Id_prop5000 = "prop5000";
+        /// <summary>
         /// 名称:  <br/>
         /// 备注: 地牢房间的门(东侧)
         /// </summary>
@@ -167,16 +172,17 @@
         _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/activityObject/Effect0001.tscn", ExcelConfig.ActivityObject_Map["effect0001"]));
-        _activityRegisterMap.Add("prop0001", new RegisterActivityData("res://prefab/prop/buff/Buff0001.tscn", ExcelConfig.ActivityObject_Map["prop0001"]));
-        _activityRegisterMap.Add("prop0002", new RegisterActivityData("res://prefab/prop/buff/Buff0002.tscn", ExcelConfig.ActivityObject_Map["prop0002"]));
-        _activityRegisterMap.Add("prop0003", new RegisterActivityData("res://prefab/prop/buff/Buff0003.tscn", ExcelConfig.ActivityObject_Map["prop0003"]));
-        _activityRegisterMap.Add("prop0004", new RegisterActivityData("res://prefab/prop/buff/Buff0004.tscn", ExcelConfig.ActivityObject_Map["prop0004"]));
-        _activityRegisterMap.Add("prop0005", new RegisterActivityData("res://prefab/prop/buff/Buff0005.tscn", ExcelConfig.ActivityObject_Map["prop0005"]));
-        _activityRegisterMap.Add("prop0006", new RegisterActivityData("res://prefab/prop/buff/Buff0006.tscn", ExcelConfig.ActivityObject_Map["prop0006"]));
-        _activityRegisterMap.Add("prop0007", new RegisterActivityData("res://prefab/prop/buff/Buff0007.tscn", ExcelConfig.ActivityObject_Map["prop0007"]));
-        _activityRegisterMap.Add("prop0008", new RegisterActivityData("res://prefab/prop/buff/Buff0008.tscn", ExcelConfig.ActivityObject_Map["prop0008"]));
-        _activityRegisterMap.Add("prop0009", new RegisterActivityData("res://prefab/prop/buff/Buff0009.tscn", ExcelConfig.ActivityObject_Map["prop0009"]));
-        _activityRegisterMap.Add("prop0010", new RegisterActivityData("res://prefab/prop/buff/Buff0010.tscn", ExcelConfig.ActivityObject_Map["prop0010"]));
+        _activityRegisterMap.Add("prop0001", new RegisterActivityData("res://prefab/prop/buff/BuffProp0001.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("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"]));
diff --git a/DungeonShooting_Godot/src/framework/map/mark/ActivityMark.cs b/DungeonShooting_Godot/src/framework/map/mark/ActivityMark.cs
index 9c91cdd..fa36fca 100644
--- a/DungeonShooting_Godot/src/framework/map/mark/ActivityMark.cs
+++ b/DungeonShooting_Godot/src/framework/map/mark/ActivityMark.cs
@@ -9,7 +9,7 @@
 /// <summary>
 /// 物体生成标记
 /// </summary>
-[Tool]
+[Tool, GlobalClass]
 public partial class ActivityMark : Node2D
 {
     /// <summary>
diff --git a/DungeonShooting_Godot/src/framework/map/mark/EnemyMark.cs b/DungeonShooting_Godot/src/framework/map/mark/EnemyMark.cs
index 475657a..33f0ddf 100644
--- a/DungeonShooting_Godot/src/framework/map/mark/EnemyMark.cs
+++ b/DungeonShooting_Godot/src/framework/map/mark/EnemyMark.cs
@@ -4,7 +4,7 @@
 /// <summary>
 /// 针对敌人生成位置的标记
 /// </summary>
-[Tool]
+[Tool, GlobalClass]
 public partial class EnemyMark : ActivityMark
 {
     /// <summary>
diff --git a/DungeonShooting_Godot/src/game/activity/bullet/Bullet.cs b/DungeonShooting_Godot/src/game/activity/bullet/Bullet.cs
index 16bf6b7..f170b7c 100644
--- a/DungeonShooting_Godot/src/game/activity/bullet/Bullet.cs
+++ b/DungeonShooting_Godot/src/game/activity/bullet/Bullet.cs
@@ -3,7 +3,7 @@
 /// <summary>
 /// 子弹类
 /// </summary>
-[Tool, GlobalClass]
+[Tool]
 public partial class Bullet : ActivityObject
 {
     /// <summary>
diff --git a/DungeonShooting_Godot/src/game/activity/prop/Prop.cs b/DungeonShooting_Godot/src/game/activity/prop/Prop.cs
index deff9c5..47846da 100644
--- a/DungeonShooting_Godot/src/game/activity/prop/Prop.cs
+++ b/DungeonShooting_Godot/src/game/activity/prop/Prop.cs
@@ -27,7 +27,6 @@
     /// </summary>
     public virtual void PackProcess(float delta)
     {
-        
     }
 
     public override void Interactive(ActivityObject master)
diff --git a/DungeonShooting_Godot/src/game/activity/prop/active/Active.cs b/DungeonShooting_Godot/src/game/activity/prop/active/Active.cs
deleted file mode 100644
index 6747581..0000000
--- a/DungeonShooting_Godot/src/game/activity/prop/active/Active.cs
+++ /dev/null
@@ -1,27 +0,0 @@
-
-/// <summary>
-/// 主动使用道具
-/// </summary>
-public abstract partial class Active : Prop
-{
-    /// <summary>
-    /// 是否可以使用
-    /// </summary>
-    public bool CanUse { get; set; }
-    
-    /// <summary>
-    /// 当道具被使用时调用
-    /// </summary>
-    protected abstract void OnUse();
-
-    /// <summary>
-    /// 触发使用道具
-    /// </summary>
-    public void Use()
-    {
-        if (CanUse)
-        {
-            OnUse();
-        }
-    }
-}
\ No newline at end of file
diff --git a/DungeonShooting_Godot/src/game/activity/prop/active/ActiveProp.cs b/DungeonShooting_Godot/src/game/activity/prop/active/ActiveProp.cs
new file mode 100644
index 0000000..2e255d3
--- /dev/null
+++ b/DungeonShooting_Godot/src/game/activity/prop/active/ActiveProp.cs
@@ -0,0 +1,27 @@
+
+/// <summary>
+/// 主动使用道具
+/// </summary>
+public abstract partial class ActiveProp : Prop
+{
+    /// <summary>
+    /// 是否可以使用
+    /// </summary>
+    public bool CanUse { get; set; }
+    
+    /// <summary>
+    /// 当道具被使用时调用
+    /// </summary>
+    protected abstract void OnUse();
+
+    /// <summary>
+    /// 触发使用道具
+    /// </summary>
+    public void Use()
+    {
+        if (CanUse)
+        {
+            OnUse();
+        }
+    }
+}
\ No newline at end of file
diff --git a/DungeonShooting_Godot/src/game/activity/prop/active/ActiveProp5000.cs b/DungeonShooting_Godot/src/game/activity/prop/active/ActiveProp5000.cs
new file mode 100644
index 0000000..53dd30d
--- /dev/null
+++ b/DungeonShooting_Godot/src/game/activity/prop/active/ActiveProp5000.cs
@@ -0,0 +1,21 @@
+
+using Godot;
+
+[Tool]
+public partial class ActiveProp5000 : ActiveProp
+{
+    protected override void OnPickUp(Role master)
+    {
+        
+    }
+
+    protected override void OnRemove(Role master)
+    {
+        
+    }
+
+    protected override void OnUse()
+    {
+        GD.Print("使用道具...");
+    }
+}
\ No newline at end of file
diff --git a/DungeonShooting_Godot/src/game/activity/prop/buff/Buff.cs b/DungeonShooting_Godot/src/game/activity/prop/buff/Buff.cs
deleted file mode 100644
index d862b85..0000000
--- a/DungeonShooting_Godot/src/game/activity/prop/buff/Buff.cs
+++ /dev/null
@@ -1,8 +0,0 @@
-
-/// <summary>
-/// 被动增益道具
-/// </summary>
-public abstract partial class Buff : Prop
-{
-
-}
\ No newline at end of file
diff --git a/DungeonShooting_Godot/src/game/activity/prop/buff/Buff0001.cs b/DungeonShooting_Godot/src/game/activity/prop/buff/Buff0001.cs
deleted file mode 100644
index 4133458..0000000
--- a/DungeonShooting_Godot/src/game/activity/prop/buff/Buff0001.cs
+++ /dev/null
@@ -1,23 +0,0 @@
-
-using Godot;
-
-/// <summary>
-/// 移速 buff, 移速 + 3
-/// </summary>
-[GlobalClass, Tool]
-public partial class Buff0001 : Buff
-{
-    protected override void OnPickUp(Role master)
-    {
-        master.RoleState.MoveSpeed += 30;
-        master.RoleState.Acceleration += 400;
-        master.RoleState.Friction += 300;
-    }
-
-    protected override void OnRemove(Role master)
-    {
-        master.RoleState.MoveSpeed -= 30;
-        master.RoleState.Acceleration -= 400;
-        master.RoleState.Friction -= 300;
-    }
-}
\ No newline at end of file
diff --git a/DungeonShooting_Godot/src/game/activity/prop/buff/Buff0002.cs b/DungeonShooting_Godot/src/game/activity/prop/buff/Buff0002.cs
deleted file mode 100644
index 43d7347..0000000
--- a/DungeonShooting_Godot/src/game/activity/prop/buff/Buff0002.cs
+++ /dev/null
@@ -1,20 +0,0 @@
-
-using Godot;
-
-/// <summary>
-/// 血量上限buff, 心之容器 + 1
-/// </summary>
-[GlobalClass, Tool]
-public partial class Buff0002 : Buff
-{
-    protected override void OnPickUp(Role master)
-    {
-        master.MaxHp += 2;
-        master.Hp += 2;
-    }
-
-    protected override void OnRemove(Role master)
-    {
-        master.MaxHp -= 2;
-    }
-}
\ No newline at end of file
diff --git a/DungeonShooting_Godot/src/game/activity/prop/buff/Buff0003.cs b/DungeonShooting_Godot/src/game/activity/prop/buff/Buff0003.cs
deleted file mode 100644
index 679bdbc..0000000
--- a/DungeonShooting_Godot/src/game/activity/prop/buff/Buff0003.cs
+++ /dev/null
@@ -1,20 +0,0 @@
-
-using Godot;
-
-/// <summary>
-/// 护盾上限buff, 护盾 + 1
-/// </summary>
-[GlobalClass, Tool]
-public partial class Buff0003 : Buff
-{
-    protected override void OnPickUp(Role master)
-    {
-        master.MaxShield += 1;
-        master.Shield += 1;
-    }
-
-    protected override void OnRemove(Role master)
-    {
-        master.MaxShield -= 1;
-    }
-}
\ No newline at end of file
diff --git a/DungeonShooting_Godot/src/game/activity/prop/buff/Buff0004.cs b/DungeonShooting_Godot/src/game/activity/prop/buff/Buff0004.cs
deleted file mode 100644
index bcb05be..0000000
--- a/DungeonShooting_Godot/src/game/activity/prop/buff/Buff0004.cs
+++ /dev/null
@@ -1,19 +0,0 @@
-
-using Godot;
-
-/// <summary>
-/// 护盾恢复时间buff, 恢复时间 - 1.5s
-/// </summary>
-[GlobalClass, Tool]
-public partial class Buff0004 : Buff
-{
-    protected override void OnPickUp(Role master)
-    {
-        master.RoleState.ShieldRecoveryTime -= 1.5f;
-    }
-
-    protected override void OnRemove(Role master)
-    {
-        master.RoleState.ShieldRecoveryTime += 1.5f;
-    }
-}
\ No newline at end of file
diff --git a/DungeonShooting_Godot/src/game/activity/prop/buff/Buff0005.cs b/DungeonShooting_Godot/src/game/activity/prop/buff/Buff0005.cs
deleted file mode 100644
index e97fbaf..0000000
--- a/DungeonShooting_Godot/src/game/activity/prop/buff/Buff0005.cs
+++ /dev/null
@@ -1,24 +0,0 @@
-
-using Godot;
-
-/// <summary>
-/// 提升伤害buff, 子弹伤害提升20%
-/// </summary>
-[GlobalClass, Tool]
-public partial class Buff0005 : Buff
-{
-    protected override void OnPickUp(Role master)
-    {
-        master.RoleState.CalcDamageEvent += CalcDamage;
-    }
-
-    protected override void OnRemove(Role master)
-    {
-        master.RoleState.CalcDamageEvent -= CalcDamage;
-    }
-
-    private void CalcDamage(int originDamage, RefValue<int> refValue)
-    {
-        refValue.Value += Mathf.CeilToInt(originDamage * 0.2f);
-    }
-}
\ No newline at end of file
diff --git a/DungeonShooting_Godot/src/game/activity/prop/buff/Buff0006.cs b/DungeonShooting_Godot/src/game/activity/prop/buff/Buff0006.cs
deleted file mode 100644
index 396abd0..0000000
--- a/DungeonShooting_Godot/src/game/activity/prop/buff/Buff0006.cs
+++ /dev/null
@@ -1,19 +0,0 @@
-
-using Godot;
-
-/// <summary>
-/// 延长无敌时间buff, 受伤后无敌时间 + 2s
-/// </summary>
-[GlobalClass, Tool]
-public partial class Buff0006 : Buff
-{
-    protected override void OnPickUp(Role master)
-    {
-        master.RoleState.WoundedInvincibleTime += 2f;
-    }
-
-    protected override void OnRemove(Role master)
-    {
-        master.RoleState.WoundedInvincibleTime -= 2f;
-    }
-}
\ No newline at end of file
diff --git a/DungeonShooting_Godot/src/game/activity/prop/buff/Buff0007.cs b/DungeonShooting_Godot/src/game/activity/prop/buff/Buff0007.cs
deleted file mode 100644
index b6c1be7..0000000
--- a/DungeonShooting_Godot/src/game/activity/prop/buff/Buff0007.cs
+++ /dev/null
@@ -1,27 +0,0 @@
-
-using Godot;
-
-/// <summary>
-/// 受伤时有15%概率抵消伤害
-/// </summary>
-[GlobalClass, Tool]
-public partial class Buff0007 : Buff
-{
-    protected override void OnPickUp(Role master)
-    {
-        master.RoleState.CalcHurtDamageEvent += CalcHurtDamageEvent;
-    }
-
-    protected override void OnRemove(Role master)
-    {
-        master.RoleState.CalcHurtDamageEvent -= CalcHurtDamageEvent;
-    }
-
-    private void CalcHurtDamageEvent(int originDamage, RefValue<int> refValue)
-    {
-        if (refValue.Value > 0 && Utils.RandomBoolean(0.15f))
-        {
-            refValue.Value = 0;
-        }
-    }
-}
\ No newline at end of file
diff --git a/DungeonShooting_Godot/src/game/activity/prop/buff/Buff0008.cs b/DungeonShooting_Godot/src/game/activity/prop/buff/Buff0008.cs
deleted file mode 100644
index 800a2cc..0000000
--- a/DungeonShooting_Godot/src/game/activity/prop/buff/Buff0008.cs
+++ /dev/null
@@ -1,31 +0,0 @@
-
-using Godot;
-
-/// <summary>
-/// 眼镜, 提高武器50%精准度
-/// </summary>
-[GlobalClass, Tool]
-public partial class Buff0008 : Buff
-{
-    protected override void OnPickUp(Role master)
-    {
-        master.RoleState.CalcStartScatteringEvent += CalcStartScatteringEvent;
-        master.RoleState.CalcFinalScatteringEvent += CalcFinalScatteringEvent;
-    }
-
-    protected override void OnRemove(Role master)
-    {
-        master.RoleState.CalcStartScatteringEvent -= CalcStartScatteringEvent;
-        master.RoleState.CalcFinalScatteringEvent -= CalcFinalScatteringEvent;
-    }
-
-    private void CalcStartScatteringEvent(Weapon weapon, float originValue, RefValue<float> refValue)
-    {
-        refValue.Value *= 0.5f;
-    }
-    
-    private void CalcFinalScatteringEvent(Weapon weapon, float originValue, RefValue<float> refValue)
-    {
-        refValue.Value *= 0.5f;
-    }
-}
\ No newline at end of file
diff --git a/DungeonShooting_Godot/src/game/activity/prop/buff/Buff0009.cs b/DungeonShooting_Godot/src/game/activity/prop/buff/Buff0009.cs
deleted file mode 100644
index aad07a2..0000000
--- a/DungeonShooting_Godot/src/game/activity/prop/buff/Buff0009.cs
+++ /dev/null
@@ -1,31 +0,0 @@
-
-using Godot;
-
-/// <summary>
-/// 高速子弹	子弹速度和射程提升25%
-/// </summary>
-[GlobalClass, Tool]
-public partial class Buff0009 : Buff
-{
-    protected override void OnPickUp(Role master)
-    {
-        master.RoleState.CalcBulletSpeedEvent += CalcBulletSpeedEvent;
-        master.RoleState.CalcBulletDistanceEvent += CalcBulletDistanceEvent;
-    }
-    
-    protected override void OnRemove(Role master)
-    {
-        master.RoleState.CalcBulletSpeedEvent -= CalcBulletSpeedEvent;
-        master.RoleState.CalcBulletDistanceEvent -= CalcBulletDistanceEvent;
-    }
-    
-    private void CalcBulletSpeedEvent(Weapon weapon, float originSpeed, RefValue<float> speed)
-    {
-        speed.Value += originSpeed * 0.25f;
-    }
-    
-    private void CalcBulletDistanceEvent(Weapon weapon, float originDistance, RefValue<float> distance)
-    {
-        distance.Value += originDistance * 0.25f;
-    }
-}
\ No newline at end of file
diff --git a/DungeonShooting_Godot/src/game/activity/prop/buff/Buff0010.cs b/DungeonShooting_Godot/src/game/activity/prop/buff/Buff0010.cs
deleted file mode 100644
index 14195a6..0000000
--- a/DungeonShooting_Godot/src/game/activity/prop/buff/Buff0010.cs
+++ /dev/null
@@ -1,43 +0,0 @@
-
-using Godot;
-
-/// <summary>
-/// 分裂子弹	子弹数量翻倍, 但是精准度和伤害降低
-/// </summary>
-[GlobalClass, Tool]
-public partial class Buff0010 : Buff
-{
-    protected override void OnPickUp(Role master)
-    {
-        master.RoleState.CalcBulletCountEvent += CalcBulletCountEvent;
-        master.RoleState.CalcBulletDeviationAngleEvent += CalcBulletDeviationAngleEvent;
-        master.RoleState.CalcDamageEvent += CalcDamageEvent;
-    }
-
-    protected override void OnRemove(Role master)
-    {
-        master.RoleState.CalcBulletCountEvent -= CalcBulletCountEvent;
-        master.RoleState.CalcBulletDeviationAngleEvent -= CalcBulletDeviationAngleEvent;
-        master.RoleState.CalcDamageEvent -= CalcDamageEvent;
-    }
-    
-    private void CalcBulletCountEvent(Weapon weapon, int originCount, RefValue<int> refValue)
-    {
-        refValue.Value += originCount;
-    }
-
-    private void CalcBulletDeviationAngleEvent(Weapon weapon, float originAngle, RefValue<float> refValue)
-    {
-        refValue.Value += Utils.RandomRangeFloat(-10, 10);
-    }
-    
-    private void CalcDamageEvent(int originDamage, RefValue<int> refValue)
-    {
-        if (refValue.Value <= 0)
-        {
-            return;
-        }
-
-        refValue.Value = Mathf.Max(1, refValue.Value - Mathf.FloorToInt(originDamage * 0.4f));
-    }
-}
\ No newline at end of file
diff --git a/DungeonShooting_Godot/src/game/activity/prop/buff/BuffProp.cs b/DungeonShooting_Godot/src/game/activity/prop/buff/BuffProp.cs
new file mode 100644
index 0000000..5b52ef8
--- /dev/null
+++ b/DungeonShooting_Godot/src/game/activity/prop/buff/BuffProp.cs
@@ -0,0 +1,8 @@
+
+/// <summary>
+/// 被动增益道具
+/// </summary>
+public abstract partial class BuffProp : Prop
+{
+
+}
\ No newline at end of file
diff --git a/DungeonShooting_Godot/src/game/activity/prop/buff/BuffPropProp0001.cs b/DungeonShooting_Godot/src/game/activity/prop/buff/BuffPropProp0001.cs
new file mode 100644
index 0000000..28c67cb
--- /dev/null
+++ b/DungeonShooting_Godot/src/game/activity/prop/buff/BuffPropProp0001.cs
@@ -0,0 +1,23 @@
+
+using Godot;
+
+/// <summary>
+/// 移速 buff, 移速 + 3
+/// </summary>
+[Tool]
+public partial class BuffPropProp0001 : BuffProp
+{
+    protected override void OnPickUp(Role master)
+    {
+        master.RoleState.MoveSpeed += 30;
+        master.RoleState.Acceleration += 400;
+        master.RoleState.Friction += 300;
+    }
+
+    protected override void OnRemove(Role master)
+    {
+        master.RoleState.MoveSpeed -= 30;
+        master.RoleState.Acceleration -= 400;
+        master.RoleState.Friction -= 300;
+    }
+}
\ No newline at end of file
diff --git a/DungeonShooting_Godot/src/game/activity/prop/buff/BuffPropProp0002.cs b/DungeonShooting_Godot/src/game/activity/prop/buff/BuffPropProp0002.cs
new file mode 100644
index 0000000..792dbf6
--- /dev/null
+++ b/DungeonShooting_Godot/src/game/activity/prop/buff/BuffPropProp0002.cs
@@ -0,0 +1,20 @@
+
+using Godot;
+
+/// <summary>
+/// 血量上限buff, 心之容器 + 1
+/// </summary>
+[Tool]
+public partial class BuffPropProp0002 : BuffProp
+{
+    protected override void OnPickUp(Role master)
+    {
+        master.MaxHp += 2;
+        master.Hp += 2;
+    }
+
+    protected override void OnRemove(Role master)
+    {
+        master.MaxHp -= 2;
+    }
+}
\ No newline at end of file
diff --git a/DungeonShooting_Godot/src/game/activity/prop/buff/BuffPropProp0003.cs b/DungeonShooting_Godot/src/game/activity/prop/buff/BuffPropProp0003.cs
new file mode 100644
index 0000000..9cb0241
--- /dev/null
+++ b/DungeonShooting_Godot/src/game/activity/prop/buff/BuffPropProp0003.cs
@@ -0,0 +1,20 @@
+
+using Godot;
+
+/// <summary>
+/// 护盾上限buff, 护盾 + 1
+/// </summary>
+[Tool]
+public partial class BuffPropProp0003 : BuffProp
+{
+    protected override void OnPickUp(Role master)
+    {
+        master.MaxShield += 1;
+        master.Shield += 1;
+    }
+
+    protected override void OnRemove(Role master)
+    {
+        master.MaxShield -= 1;
+    }
+}
\ No newline at end of file
diff --git a/DungeonShooting_Godot/src/game/activity/prop/buff/BuffPropProp0004.cs b/DungeonShooting_Godot/src/game/activity/prop/buff/BuffPropProp0004.cs
new file mode 100644
index 0000000..d686fc4
--- /dev/null
+++ b/DungeonShooting_Godot/src/game/activity/prop/buff/BuffPropProp0004.cs
@@ -0,0 +1,19 @@
+
+using Godot;
+
+/// <summary>
+/// 护盾恢复时间buff, 恢复时间 - 1.5s
+/// </summary>
+[Tool]
+public partial class BuffPropProp0004 : BuffProp
+{
+    protected override void OnPickUp(Role master)
+    {
+        master.RoleState.ShieldRecoveryTime -= 1.5f;
+    }
+
+    protected override void OnRemove(Role master)
+    {
+        master.RoleState.ShieldRecoveryTime += 1.5f;
+    }
+}
\ No newline at end of file
diff --git a/DungeonShooting_Godot/src/game/activity/prop/buff/BuffPropProp0005.cs b/DungeonShooting_Godot/src/game/activity/prop/buff/BuffPropProp0005.cs
new file mode 100644
index 0000000..6b8f493
--- /dev/null
+++ b/DungeonShooting_Godot/src/game/activity/prop/buff/BuffPropProp0005.cs
@@ -0,0 +1,24 @@
+
+using Godot;
+
+/// <summary>
+/// 提升伤害buff, 子弹伤害提升20%
+/// </summary>
+[Tool]
+public partial class BuffPropProp0005 : BuffProp
+{
+    protected override void OnPickUp(Role master)
+    {
+        master.RoleState.CalcDamageEvent += CalcDamage;
+    }
+
+    protected override void OnRemove(Role master)
+    {
+        master.RoleState.CalcDamageEvent -= CalcDamage;
+    }
+
+    private void CalcDamage(int originDamage, RefValue<int> refValue)
+    {
+        refValue.Value += Mathf.CeilToInt(originDamage * 0.2f);
+    }
+}
\ No newline at end of file
diff --git a/DungeonShooting_Godot/src/game/activity/prop/buff/BuffPropProp0006.cs b/DungeonShooting_Godot/src/game/activity/prop/buff/BuffPropProp0006.cs
new file mode 100644
index 0000000..55694f3
--- /dev/null
+++ b/DungeonShooting_Godot/src/game/activity/prop/buff/BuffPropProp0006.cs
@@ -0,0 +1,19 @@
+
+using Godot;
+
+/// <summary>
+/// 延长无敌时间buff, 受伤后无敌时间 + 2s
+/// </summary>
+[Tool]
+public partial class BuffPropProp0006 : BuffProp
+{
+    protected override void OnPickUp(Role master)
+    {
+        master.RoleState.WoundedInvincibleTime += 2f;
+    }
+
+    protected override void OnRemove(Role master)
+    {
+        master.RoleState.WoundedInvincibleTime -= 2f;
+    }
+}
\ No newline at end of file
diff --git a/DungeonShooting_Godot/src/game/activity/prop/buff/BuffPropProp0007.cs b/DungeonShooting_Godot/src/game/activity/prop/buff/BuffPropProp0007.cs
new file mode 100644
index 0000000..b844401
--- /dev/null
+++ b/DungeonShooting_Godot/src/game/activity/prop/buff/BuffPropProp0007.cs
@@ -0,0 +1,27 @@
+
+using Godot;
+
+/// <summary>
+/// 受伤时有15%概率抵消伤害
+/// </summary>
+[Tool]
+public partial class BuffPropProp0007 : BuffProp
+{
+    protected override void OnPickUp(Role master)
+    {
+        master.RoleState.CalcHurtDamageEvent += CalcHurtDamageEvent;
+    }
+
+    protected override void OnRemove(Role master)
+    {
+        master.RoleState.CalcHurtDamageEvent -= CalcHurtDamageEvent;
+    }
+
+    private void CalcHurtDamageEvent(int originDamage, RefValue<int> refValue)
+    {
+        if (refValue.Value > 0 && Utils.RandomBoolean(0.15f))
+        {
+            refValue.Value = 0;
+        }
+    }
+}
\ No newline at end of file
diff --git a/DungeonShooting_Godot/src/game/activity/prop/buff/BuffPropProp0008.cs b/DungeonShooting_Godot/src/game/activity/prop/buff/BuffPropProp0008.cs
new file mode 100644
index 0000000..4557483
--- /dev/null
+++ b/DungeonShooting_Godot/src/game/activity/prop/buff/BuffPropProp0008.cs
@@ -0,0 +1,31 @@
+
+using Godot;
+
+/// <summary>
+/// 眼镜, 提高武器50%精准度
+/// </summary>
+[Tool]
+public partial class BuffPropProp0008 : BuffProp
+{
+    protected override void OnPickUp(Role master)
+    {
+        master.RoleState.CalcStartScatteringEvent += CalcStartScatteringEvent;
+        master.RoleState.CalcFinalScatteringEvent += CalcFinalScatteringEvent;
+    }
+
+    protected override void OnRemove(Role master)
+    {
+        master.RoleState.CalcStartScatteringEvent -= CalcStartScatteringEvent;
+        master.RoleState.CalcFinalScatteringEvent -= CalcFinalScatteringEvent;
+    }
+
+    private void CalcStartScatteringEvent(Weapon weapon, float originValue, RefValue<float> refValue)
+    {
+        refValue.Value *= 0.5f;
+    }
+    
+    private void CalcFinalScatteringEvent(Weapon weapon, float originValue, RefValue<float> refValue)
+    {
+        refValue.Value *= 0.5f;
+    }
+}
\ No newline at end of file
diff --git a/DungeonShooting_Godot/src/game/activity/prop/buff/BuffPropProp0009.cs b/DungeonShooting_Godot/src/game/activity/prop/buff/BuffPropProp0009.cs
new file mode 100644
index 0000000..099eb96
--- /dev/null
+++ b/DungeonShooting_Godot/src/game/activity/prop/buff/BuffPropProp0009.cs
@@ -0,0 +1,31 @@
+
+using Godot;
+
+/// <summary>
+/// 高速子弹	子弹速度和射程提升25%
+/// </summary>
+[Tool]
+public partial class BuffPropProp0009 : BuffProp
+{
+    protected override void OnPickUp(Role master)
+    {
+        master.RoleState.CalcBulletSpeedEvent += CalcBulletSpeedEvent;
+        master.RoleState.CalcBulletDistanceEvent += CalcBulletDistanceEvent;
+    }
+    
+    protected override void OnRemove(Role master)
+    {
+        master.RoleState.CalcBulletSpeedEvent -= CalcBulletSpeedEvent;
+        master.RoleState.CalcBulletDistanceEvent -= CalcBulletDistanceEvent;
+    }
+    
+    private void CalcBulletSpeedEvent(Weapon weapon, float originSpeed, RefValue<float> speed)
+    {
+        speed.Value += originSpeed * 0.25f;
+    }
+    
+    private void CalcBulletDistanceEvent(Weapon weapon, float originDistance, RefValue<float> distance)
+    {
+        distance.Value += originDistance * 0.25f;
+    }
+}
\ No newline at end of file
diff --git a/DungeonShooting_Godot/src/game/activity/prop/buff/BuffPropProp0010.cs b/DungeonShooting_Godot/src/game/activity/prop/buff/BuffPropProp0010.cs
new file mode 100644
index 0000000..068f27d
--- /dev/null
+++ b/DungeonShooting_Godot/src/game/activity/prop/buff/BuffPropProp0010.cs
@@ -0,0 +1,43 @@
+
+using Godot;
+
+/// <summary>
+/// 分裂子弹	子弹数量翻倍, 但是精准度和伤害降低
+/// </summary>
+[Tool]
+public partial class BuffPropProp0010 : BuffProp
+{
+    protected override void OnPickUp(Role master)
+    {
+        master.RoleState.CalcBulletCountEvent += CalcBulletCountEvent;
+        master.RoleState.CalcBulletDeviationAngleEvent += CalcBulletDeviationAngleEvent;
+        master.RoleState.CalcDamageEvent += CalcDamageEvent;
+    }
+
+    protected override void OnRemove(Role master)
+    {
+        master.RoleState.CalcBulletCountEvent -= CalcBulletCountEvent;
+        master.RoleState.CalcBulletDeviationAngleEvent -= CalcBulletDeviationAngleEvent;
+        master.RoleState.CalcDamageEvent -= CalcDamageEvent;
+    }
+    
+    private void CalcBulletCountEvent(Weapon weapon, int originCount, RefValue<int> refValue)
+    {
+        refValue.Value += originCount;
+    }
+
+    private void CalcBulletDeviationAngleEvent(Weapon weapon, float originAngle, RefValue<float> refValue)
+    {
+        refValue.Value += Utils.RandomRangeFloat(-10, 10);
+    }
+    
+    private void CalcDamageEvent(int originDamage, RefValue<int> refValue)
+    {
+        if (refValue.Value <= 0)
+        {
+            return;
+        }
+
+        refValue.Value = Mathf.Max(1, refValue.Value - Mathf.FloorToInt(originDamage * 0.4f));
+    }
+}
\ No newline at end of file
diff --git a/DungeonShooting_Godot/src/game/activity/role/Player.cs b/DungeonShooting_Godot/src/game/activity/role/Player.cs
index 9367d76..729abb7 100644
--- a/DungeonShooting_Godot/src/game/activity/role/Player.cs
+++ b/DungeonShooting_Godot/src/game/activity/role/Player.cs
@@ -4,7 +4,7 @@
 /// <summary>
 /// 玩家角色基类, 所有角色都必须继承该类
 /// </summary>
-[Tool, GlobalClass]
+[Tool]
 public partial class Player : Role
 {
     /// <summary>
@@ -224,6 +224,16 @@
         //GameApplication.Instance.World.ProcessMode = ProcessModeEnum.WhenPaused;
     }
 
+    protected override void OnPushProp(Prop prop)
+    {
+        EventManager.EmitEvent(EventEnum.OnPlayerPickUpProp, prop);
+    }
+
+    protected override void OnRemoveProp(Prop prop)
+    {
+        EventManager.EmitEvent(EventEnum.OnPlayerRemoveProp, prop);
+    }
+
     //处理角色移动的输入
     private void HandleMoveInput(float delta)
     {
diff --git a/DungeonShooting_Godot/src/game/activity/role/Role.cs b/DungeonShooting_Godot/src/game/activity/role/Role.cs
index fd711db..5afe001 100644
--- a/DungeonShooting_Godot/src/game/activity/role/Role.cs
+++ b/DungeonShooting_Godot/src/game/activity/role/Role.cs
@@ -290,6 +290,20 @@
     {
     }
 
+    /// <summary>
+    /// 当往背包中添加道具时调用
+    /// </summary>
+    protected virtual void OnPushProp(Prop prop)
+    {
+    }
+
+    /// <summary>
+    /// 当从背包中移除道具时调用
+    /// </summary>
+    protected virtual void OnRemoveProp(Prop prop)
+    {
+    }
+
     public override void OnInit()
     {
         Holster = new Holster(this);
@@ -781,7 +795,7 @@
             return;
         }
         PropsPack.Add(prop);
-        EventManager.EmitEvent(EventEnum.OnPlayerPickUpProp, prop);
+        OnPushProp(prop);
     }
 
     /// <summary>
@@ -791,7 +805,7 @@
     {
         if (PropsPack.Remove(prop))
         {
-            EventManager.EmitEvent(EventEnum.OnPlayerRemoveProp, prop);
+            OnRemoveProp(prop);
             return true;
         }
         GD.PrintErr("当前道具不在角色包裹中!");
diff --git a/DungeonShooting_Godot/src/game/activity/role/enemy/Enemy.cs b/DungeonShooting_Godot/src/game/activity/role/enemy/Enemy.cs
index d2200c6..5895531 100644
--- a/DungeonShooting_Godot/src/game/activity/role/enemy/Enemy.cs
+++ b/DungeonShooting_Godot/src/game/activity/role/enemy/Enemy.cs
@@ -16,7 +16,7 @@
 /// <summary>
 /// 基础敌人
 /// </summary>
-[Tool, GlobalClass]
+[Tool]
 public partial class Enemy : Role
 {
     /// <summary>
diff --git a/DungeonShooting_Godot/src/game/activity/shell/Shell.cs b/DungeonShooting_Godot/src/game/activity/shell/Shell.cs
index 7496390..f5f9af3 100644
--- a/DungeonShooting_Godot/src/game/activity/shell/Shell.cs
+++ b/DungeonShooting_Godot/src/game/activity/shell/Shell.cs
@@ -4,7 +4,7 @@
 /// <summary>
 /// 弹壳类
 /// </summary>
-[Tool, GlobalClass]
+[Tool]
 public partial class Shell : ActivityObject
 {
     public override void OnInit()
diff --git a/DungeonShooting_Godot/src/game/activity/weapon/gun/Gun.cs b/DungeonShooting_Godot/src/game/activity/weapon/gun/Gun.cs
index 3cf6b0d..fe01cd4 100644
--- a/DungeonShooting_Godot/src/game/activity/weapon/gun/Gun.cs
+++ b/DungeonShooting_Godot/src/game/activity/weapon/gun/Gun.cs
@@ -3,7 +3,7 @@
 /// <summary>
 /// 普通的枪
 /// </summary>
-[Tool, GlobalClass]
+[Tool]
 public partial class Gun : Weapon
 {
     protected override void OnFire()
diff --git a/DungeonShooting_Godot/src/game/activity/weapon/knife/Knife.cs b/DungeonShooting_Godot/src/game/activity/weapon/knife/Knife.cs
index 41ada9c..6fbaf80 100644
--- a/DungeonShooting_Godot/src/game/activity/weapon/knife/Knife.cs
+++ b/DungeonShooting_Godot/src/game/activity/weapon/knife/Knife.cs
@@ -1,7 +1,7 @@
 
 using Godot;
 
-[Tool, GlobalClass]
+[Tool]
 public partial class Knife : Weapon
 {
     
diff --git a/DungeonShooting_Godot/src/game/camera/GameCamera.cs b/DungeonShooting_Godot/src/game/camera/GameCamera.cs
index 3786268..960c39a 100644
--- a/DungeonShooting_Godot/src/game/camera/GameCamera.cs
+++ b/DungeonShooting_Godot/src/game/camera/GameCamera.cs
@@ -77,17 +77,17 @@
             var mousePosition = InputManager.CursorPosition;
             var targetPosition = _followTarget.GlobalPosition;
             Vector2 targetPos;
-            if (targetPosition.DistanceSquaredTo(mousePosition) >= (60 / 0.3f) * (60 / 0.3f))
+            if (targetPosition.DistanceSquaredTo(mousePosition) >= 39999.992F) // >= (60 / 0.3f) * (60 / 0.3f)
             {
                 targetPos = targetPosition.MoveToward(mousePosition, 60);
             }
             else
             {
-                targetPos = targetPosition.Lerp(mousePosition, 0.3f);
+                targetPos = targetPosition.Lerp(mousePosition, 0.3f); //这里的0.3就是上面的 (60 / 0.3f) * (60 / 0.3f) 中的 0.3
             }
-            _camPos = (_camPos.Lerp(targetPos, Mathf.Min(6 * newDelta, 1))).Round();
-            GlobalPosition = _camPos;
-            
+            _camPos = _camPos.Lerp(targetPos, 20 * newDelta);
+            GlobalPosition = _camPos.Round();
+
             Offset = _shakeOffset.Round();
         
             //_temp = _camPos - targetPosition;
diff --git a/DungeonShooting_Godot/src/game/effects/EnemyDebris.cs b/DungeonShooting_Godot/src/game/effects/EnemyDebris.cs
index 196687f..075e8d5 100644
--- a/DungeonShooting_Godot/src/game/effects/EnemyDebris.cs
+++ b/DungeonShooting_Godot/src/game/effects/EnemyDebris.cs
@@ -2,7 +2,7 @@
 using System.Collections;
 using Godot;
 
-[Tool, GlobalClass]
+[Tool]
 public partial class EnemyDebris : ActivityObject
 {
 
diff --git a/DungeonShooting_Godot/src/game/manager/ResourcePath.cs b/DungeonShooting_Godot/src/game/manager/ResourcePath.cs
index e5bbc63..4a06581 100644
--- a/DungeonShooting_Godot/src/game/manager/ResourcePath.cs
+++ b/DungeonShooting_Godot/src/game/manager/ResourcePath.cs
@@ -24,16 +24,17 @@
     public const string prefab_map_RoomDoor_N_tscn = "res://prefab/map/RoomDoor_N.tscn";
     public const string prefab_map_RoomDoor_S_tscn = "res://prefab/map/RoomDoor_S.tscn";
     public const string prefab_map_RoomDoor_W_tscn = "res://prefab/map/RoomDoor_W.tscn";
-    public const string prefab_prop_buff_Buff0001_tscn = "res://prefab/prop/buff/Buff0001.tscn";
-    public const string prefab_prop_buff_Buff0002_tscn = "res://prefab/prop/buff/Buff0002.tscn";
-    public const string prefab_prop_buff_Buff0003_tscn = "res://prefab/prop/buff/Buff0003.tscn";
-    public const string prefab_prop_buff_Buff0004_tscn = "res://prefab/prop/buff/Buff0004.tscn";
-    public const string prefab_prop_buff_Buff0005_tscn = "res://prefab/prop/buff/Buff0005.tscn";
-    public const string prefab_prop_buff_Buff0006_tscn = "res://prefab/prop/buff/Buff0006.tscn";
-    public const string prefab_prop_buff_Buff0007_tscn = "res://prefab/prop/buff/Buff0007.tscn";
-    public const string prefab_prop_buff_Buff0008_tscn = "res://prefab/prop/buff/Buff0008.tscn";
-    public const string prefab_prop_buff_Buff0009_tscn = "res://prefab/prop/buff/Buff0009.tscn";
-    public const string prefab_prop_buff_Buff0010_tscn = "res://prefab/prop/buff/Buff0010.tscn";
+    public const string prefab_prop_buff_BuffProp0001_tscn = "res://prefab/prop/buff/BuffProp0001.tscn";
+    public const string prefab_prop_buff_BuffProp0002_tscn = "res://prefab/prop/buff/BuffProp0002.tscn";
+    public const string prefab_prop_buff_BuffProp0003_tscn = "res://prefab/prop/buff/BuffProp0003.tscn";
+    public const string prefab_prop_buff_BuffProp0004_tscn = "res://prefab/prop/buff/BuffProp0004.tscn";
+    public const string prefab_prop_buff_BuffProp0005_tscn = "res://prefab/prop/buff/BuffProp0005.tscn";
+    public const string prefab_prop_buff_BuffProp0006_tscn = "res://prefab/prop/buff/BuffProp0006.tscn";
+    public const string prefab_prop_buff_BuffProp0007_tscn = "res://prefab/prop/buff/BuffProp0007.tscn";
+    public const string prefab_prop_buff_BuffProp0008_tscn = "res://prefab/prop/buff/BuffProp0008.tscn";
+    public const string prefab_prop_buff_BuffProp0009_tscn = "res://prefab/prop/buff/BuffProp0009.tscn";
+    public const string prefab_prop_buff_BuffProp0010_tscn = "res://prefab/prop/buff/BuffProp0010.tscn";
+    public const string prefab_prop_buff_Weapon0005_png = "res://prefab/prop/buff/Weapon0005.png";
     public const string prefab_role_Enemy0001_tscn = "res://prefab/role/Enemy0001.tscn";
     public const string prefab_role_Role0001_tscn = "res://prefab/role/Role0001.tscn";
     public const string prefab_role_RoleTemplate_tscn = "res://prefab/role/RoleTemplate.tscn";
@@ -126,16 +127,17 @@
     public const string resource_sprite_map_map1_16x16dungeoniiwallreconfigv04spritesheet_png = "res://resource/sprite/map/map1/16x16 dungeon ii wall reconfig v04 spritesheet.png";
     public const string resource_sprite_map_map1_door1_down_png = "res://resource/sprite/map/map1/door1_down.png";
     public const string resource_sprite_map_map1_website_txt = "res://resource/sprite/map/map1/website.txt";
-    public const string resource_sprite_prop_buff_Buff0001_png = "res://resource/sprite/prop/buff/Buff0001.png";
-    public const string resource_sprite_prop_buff_Buff0002_png = "res://resource/sprite/prop/buff/Buff0002.png";
-    public const string resource_sprite_prop_buff_Buff0003_png = "res://resource/sprite/prop/buff/Buff0003.png";
-    public const string resource_sprite_prop_buff_Buff0004_png = "res://resource/sprite/prop/buff/Buff0004.png";
-    public const string resource_sprite_prop_buff_Buff0005_png = "res://resource/sprite/prop/buff/Buff0005.png";
-    public const string resource_sprite_prop_buff_Buff0006_png = "res://resource/sprite/prop/buff/Buff0006.png";
-    public const string resource_sprite_prop_buff_Buff0007_png = "res://resource/sprite/prop/buff/Buff0007.png";
-    public const string resource_sprite_prop_buff_Buff0008_png = "res://resource/sprite/prop/buff/Buff0008.png";
-    public const string resource_sprite_prop_buff_Buff0009_png = "res://resource/sprite/prop/buff/Buff0009.png";
-    public const string resource_sprite_prop_buff_Buff0010_png = "res://resource/sprite/prop/buff/Buff0010.png";
+    public const string resource_sprite_prop_active_ActiveProp5000_png = "res://resource/sprite/prop/active/ActiveProp5000.png";
+    public const string resource_sprite_prop_buff_BuffProp0001_png = "res://resource/sprite/prop/buff/BuffProp0001.png";
+    public const string resource_sprite_prop_buff_BuffProp0002_png = "res://resource/sprite/prop/buff/BuffProp0002.png";
+    public const string resource_sprite_prop_buff_BuffProp0003_png = "res://resource/sprite/prop/buff/BuffProp0003.png";
+    public const string resource_sprite_prop_buff_BuffProp0004_png = "res://resource/sprite/prop/buff/BuffProp0004.png";
+    public const string resource_sprite_prop_buff_BuffProp0005_png = "res://resource/sprite/prop/buff/BuffProp0005.png";
+    public const string resource_sprite_prop_buff_BuffProp0006_png = "res://resource/sprite/prop/buff/BuffProp0006.png";
+    public const string resource_sprite_prop_buff_BuffProp0007_png = "res://resource/sprite/prop/buff/BuffProp0007.png";
+    public const string resource_sprite_prop_buff_BuffProp0008_png = "res://resource/sprite/prop/buff/BuffProp0008.png";
+    public const string resource_sprite_prop_buff_BuffProp0009_png = "res://resource/sprite/prop/buff/BuffProp0009.png";
+    public const string resource_sprite_prop_buff_BuffProp0010_png = "res://resource/sprite/prop/buff/BuffProp0010.png";
     public const string resource_sprite_role_role10_png = "res://resource/sprite/role/role10.png";
     public const string resource_sprite_role_role2_png = "res://resource/sprite/role/role2.png";
     public const string resource_sprite_role_role3_png = "res://resource/sprite/role/role3.png";
@@ -154,25 +156,19 @@
     public const string resource_sprite_ui_cursors_png = "res://resource/sprite/ui/cursors.png";
     public const string resource_sprite_ui_font_bg_png = "res://resource/sprite/ui/font_bg.png";
     public const string resource_sprite_ui_GUI_png = "res://resource/sprite/ui/GUI.png";
-    public const string resource_sprite_ui_healthBar_png = "res://resource/sprite/ui/healthBar.png";
-    public const string resource_sprite_ui_hpBar_png = "res://resource/sprite/ui/hpBar.png";
-    public const string resource_sprite_ui_hpSlot_png = "res://resource/sprite/ui/hpSlot.png";
-    public const string resource_sprite_ui_Life_empty_png = "res://resource/sprite/ui/Life_empty.png";
-    public const string resource_sprite_ui_Life_full_png = "res://resource/sprite/ui/Life_full.png";
-    public const string resource_sprite_ui_Life_half_png = "res://resource/sprite/ui/Life_half.png";
-    public const string resource_sprite_ui_mapBar_png = "res://resource/sprite/ui/mapBar.png";
-    public const string resource_sprite_ui_reloadBar_png = "res://resource/sprite/ui/reloadBar.png";
-    public const string resource_sprite_ui_reloadBarBlock_png = "res://resource/sprite/ui/reloadBarBlock.png";
-    public const string resource_sprite_ui_RoomUi_png = "res://resource/sprite/ui/RoomUi.png";
-    public const string resource_sprite_ui_shieldBar_png = "res://resource/sprite/ui/shieldBar.png";
-    public const string resource_sprite_ui_shieldSlot_png = "res://resource/sprite/ui/shieldSlot.png";
-    public const string resource_sprite_ui_Shield_empty_png = "res://resource/sprite/ui/Shield_empty.png";
-    public const string resource_sprite_ui_Shield_full_png = "res://resource/sprite/ui/Shield_full.png";
-    public const string resource_sprite_ui_templateui_png = "res://resource/sprite/ui/template-ui.png";
     public const string resource_sprite_ui_icon_icon_bullet_png = "res://resource/sprite/ui/icon/icon_bullet.png";
     public const string resource_sprite_ui_icon_icon_pickup_png = "res://resource/sprite/ui/icon/icon_pickup.png";
     public const string resource_sprite_ui_icon_icon_replace_png = "res://resource/sprite/ui/icon/icon_replace.png";
     public const string resource_sprite_ui_keyboard_e_png = "res://resource/sprite/ui/keyboard/e.png";
+    public const string resource_sprite_ui_roomUI_Life_empty_png = "res://resource/sprite/ui/roomUI/Life_empty.png";
+    public const string resource_sprite_ui_roomUI_Life_full_png = "res://resource/sprite/ui/roomUI/Life_full.png";
+    public const string resource_sprite_ui_roomUI_Life_half_png = "res://resource/sprite/ui/roomUI/Life_half.png";
+    public const string resource_sprite_ui_roomUI_MapBar_png = "res://resource/sprite/ui/roomUI/MapBar.png";
+    public const string resource_sprite_ui_roomUI_Panel_png = "res://resource/sprite/ui/roomUI/Panel.png";
+    public const string resource_sprite_ui_roomUI_ReloadBar_png = "res://resource/sprite/ui/roomUI/ReloadBar.png";
+    public const string resource_sprite_ui_roomUI_ReloadBarBlock_png = "res://resource/sprite/ui/roomUI/ReloadBarBlock.png";
+    public const string resource_sprite_ui_roomUI_Shield_empty_png = "res://resource/sprite/ui/roomUI/Shield_empty.png";
+    public const string resource_sprite_ui_roomUI_Shield_full_png = "res://resource/sprite/ui/roomUI/Shield_full.png";
     public const string resource_sprite_weapon_bow_png = "res://resource/sprite/weapon/bow.png";
     public const string resource_sprite_weapon_gun1_png = "res://resource/sprite/weapon/gun1.png";
     public const string resource_sprite_weapon_gun2_png = "res://resource/sprite/weapon/gun2.png";
@@ -194,16 +190,16 @@
     public const string resource_spriteFrames_effect_KnifeHit1_tres = "res://resource/spriteFrames/effect/KnifeHit1.tres";
     public const string resource_spriteFrames_other_RoomDoor_EW_tres = "res://resource/spriteFrames/other/RoomDoor_EW.tres";
     public const string resource_spriteFrames_other_RoomDoor_NS_tres = "res://resource/spriteFrames/other/RoomDoor_NS.tres";
-    public const string resource_spriteFrames_prop_buff_Buff0001_tres = "res://resource/spriteFrames/prop/buff/Buff0001.tres";
-    public const string resource_spriteFrames_prop_buff_Buff0002_tres = "res://resource/spriteFrames/prop/buff/Buff0002.tres";
-    public const string resource_spriteFrames_prop_buff_Buff0003_tres = "res://resource/spriteFrames/prop/buff/Buff0003.tres";
-    public const string resource_spriteFrames_prop_buff_Buff0004_tres = "res://resource/spriteFrames/prop/buff/Buff0004.tres";
-    public const string resource_spriteFrames_prop_buff_Buff0005_tres = "res://resource/spriteFrames/prop/buff/Buff0005.tres";
-    public const string resource_spriteFrames_prop_buff_Buff0006_tres = "res://resource/spriteFrames/prop/buff/Buff0006.tres";
-    public const string resource_spriteFrames_prop_buff_Buff0007_tres = "res://resource/spriteFrames/prop/buff/Buff0007.tres";
-    public const string resource_spriteFrames_prop_buff_Buff0008_tres = "res://resource/spriteFrames/prop/buff/Buff0008.tres";
-    public const string resource_spriteFrames_prop_buff_Buff0009_tres = "res://resource/spriteFrames/prop/buff/Buff0009.tres";
-    public const string resource_spriteFrames_prop_buff_Buff0010_tres = "res://resource/spriteFrames/prop/buff/Buff0010.tres";
+    public const string resource_spriteFrames_prop_buff_BuffProp0001_tres = "res://resource/spriteFrames/prop/buff/BuffProp0001.tres";
+    public const string resource_spriteFrames_prop_buff_BuffProp0002_tres = "res://resource/spriteFrames/prop/buff/BuffProp0002.tres";
+    public const string resource_spriteFrames_prop_buff_BuffProp0003_tres = "res://resource/spriteFrames/prop/buff/BuffProp0003.tres";
+    public const string resource_spriteFrames_prop_buff_BuffProp0004_tres = "res://resource/spriteFrames/prop/buff/BuffProp0004.tres";
+    public const string resource_spriteFrames_prop_buff_BuffProp0005_tres = "res://resource/spriteFrames/prop/buff/BuffProp0005.tres";
+    public const string resource_spriteFrames_prop_buff_BuffProp0006_tres = "res://resource/spriteFrames/prop/buff/BuffProp0006.tres";
+    public const string resource_spriteFrames_prop_buff_BuffProp0007_tres = "res://resource/spriteFrames/prop/buff/BuffProp0007.tres";
+    public const string resource_spriteFrames_prop_buff_BuffProp0008_tres = "res://resource/spriteFrames/prop/buff/BuffProp0008.tres";
+    public const string resource_spriteFrames_prop_buff_BuffProp0009_tres = "res://resource/spriteFrames/prop/buff/BuffProp0009.tres";
+    public const string resource_spriteFrames_prop_buff_BuffProp0010_tres = "res://resource/spriteFrames/prop/buff/BuffProp0010.tres";
     public const string resource_spriteFrames_role_Role0001_tres = "res://resource/spriteFrames/role/Role0001.tres";
     public const string resource_spriteFrames_role_Role1001_tres = "res://resource/spriteFrames/role/Role1001.tres";
     public const string resource_spriteFrames_shell_Shell0001_tres = "res://resource/spriteFrames/shell/Shell0001.tres";
@@ -227,6 +223,7 @@
     public const string scene_test_TestNavigationPolygon_tscn = "res://scene/test/TestNavigationPolygon.tscn";
     public const string scene_test_TestNewTileMap_tscn = "res://scene/test/TestNewTileMap.tscn";
     public const string scene_test_TestOptimizeSprite_tscn = "res://scene/test/TestOptimizeSprite.tscn";
+    public const string scene_test_TestOutline_tscn = "res://scene/test/TestOutline.tscn";
     public const string scene_test_TestReadExcel_tscn = "res://scene/test/TestReadExcel.tscn";
     public const string scene_test_TestTileLayer_tscn = "res://scene/test/TestTileLayer.tscn";
 }
\ No newline at end of file
diff --git a/DungeonShooting_Godot/src/game/room/RoomDoor.cs b/DungeonShooting_Godot/src/game/room/RoomDoor.cs
index 86f06b9..da15cae 100644
--- a/DungeonShooting_Godot/src/game/room/RoomDoor.cs
+++ b/DungeonShooting_Godot/src/game/room/RoomDoor.cs
@@ -4,7 +4,7 @@
 /// <summary>
 /// 房间的门, 门有两种状态, 打开和关闭
 /// </summary>
-[Tool, GlobalClass]
+[Tool]
 public partial class RoomDoor : ActivityObject
 {
     /// <summary>
diff --git a/DungeonShooting_Godot/src/game/ui/roomUI/ActivePropBar.cs b/DungeonShooting_Godot/src/game/ui/roomUI/ActivePropBar.cs
new file mode 100644
index 0000000..8b12b53
--- /dev/null
+++ b/DungeonShooting_Godot/src/game/ui/roomUI/ActivePropBar.cs
@@ -0,0 +1,36 @@
+using Godot;
+
+namespace UI.RoomUI;
+
+public class ActivePropBar
+{
+    private RoomUI.UiNode_ActivePropBar _activePropBar;
+
+    public ActivePropBar(RoomUI.UiNode_ActivePropBar activePropBar)
+    {
+        _activePropBar = activePropBar;
+        SetActivePropTexture(null);
+    }
+    
+    public void OnShow()
+    {
+        
+    }
+
+    public void OnHide()
+    {
+        
+    }
+
+    public void SetActivePropTexture(Texture2D texture)
+    {
+        if (texture != null)
+        {
+            _activePropBar.Instance.Visible = true;
+        }
+        else
+        {
+            _activePropBar.Instance.Visible = false;
+        }
+    }
+}
\ No newline at end of file
diff --git a/DungeonShooting_Godot/src/game/ui/roomUI/GunBar.cs b/DungeonShooting_Godot/src/game/ui/roomUI/GunBar.cs
deleted file mode 100644
index 7484999..0000000
--- a/DungeonShooting_Godot/src/game/ui/roomUI/GunBar.cs
+++ /dev/null
@@ -1,72 +0,0 @@
-using Godot;
-
-namespace UI.RoomUI;
-
-public class GunBar
-{
-    private RoomUI.UiNode_GunBar _gunBar;
-
-    private int _prevAmmo = -1;
-    private int _prevResidue = -1;
-    
-    public GunBar(RoomUI.UiNode_GunBar gunBar)
-    {
-        _gunBar = gunBar;
-    }
-
-    public void OnShow()
-    {
-    }
-
-    public void OnHide()
-    {
-    }
-
-    public void Process(float delta)
-    {
-        var weapon = Player.Current?.Holster.ActiveWeapon;
-        if (weapon != null)
-        {
-            SetWeaponTexture(weapon.GetCurrentTexture());
-            SetWeaponAmmunition(weapon.CurrAmmo, weapon.ResidueAmmo);
-        }
-        else
-        {
-            SetWeaponTexture(null);
-        }
-    }
-
-    /// <summary>
-    /// 设置显示在 ui 上武器的纹理
-    /// </summary>
-    /// <param name="gun">纹理</param>
-    public void SetWeaponTexture(Texture2D gun)
-    {
-        if (gun != null)
-        {
-            _gunBar.L_GunSprite.Instance.Texture = gun;
-            _gunBar.L_GunSprite.Instance.Visible = true;
-            _gunBar.L_BulletText.Instance.Visible = true;
-        }
-        else
-        {
-            _gunBar.L_GunSprite.Instance.Visible = false;
-            _gunBar.L_BulletText.Instance.Visible = false;
-        }
-    }
-    
-    /// <summary>
-    /// 设置弹药数据
-    /// </summary>
-    /// <param name="curr">当前弹夹弹药量</param>
-    /// <param name="total">剩余弹药总数</param>
-    public void SetWeaponAmmunition(int curr, int total)
-    {
-        if (curr != _prevAmmo || total != _prevResidue)
-        {
-            _gunBar.L_BulletText.Instance.Text = curr + " / " + total;
-            _prevAmmo = curr;
-            _prevResidue = total;
-        }
-    }
-}
\ No newline at end of file
diff --git a/DungeonShooting_Godot/src/game/ui/roomUI/LifeCell.cs b/DungeonShooting_Godot/src/game/ui/roomUI/LifeCell.cs
index c08cd65..821c5f8 100644
--- a/DungeonShooting_Godot/src/game/ui/roomUI/LifeCell.cs
+++ b/DungeonShooting_Godot/src/game/ui/roomUI/LifeCell.cs
@@ -17,19 +17,19 @@
         switch (data)
         {
             case LifeIconEnum.FullHeart:
-                CellNode.Instance.Texture = ResourceManager.Load<Texture2D>(ResourcePath.resource_sprite_ui_Life_full_png);
+                CellNode.Instance.Texture = ResourceManager.Load<Texture2D>(ResourcePath.resource_sprite_ui_roomUI_Life_full_png);
                 break;
             case LifeIconEnum.HalfHeart:
-                CellNode.Instance.Texture = ResourceManager.Load<Texture2D>(ResourcePath.resource_sprite_ui_Life_half_png);
+                CellNode.Instance.Texture = ResourceManager.Load<Texture2D>(ResourcePath.resource_sprite_ui_roomUI_Life_half_png);
                 break;
             case LifeIconEnum.EmptyHeart:
-                CellNode.Instance.Texture = ResourceManager.Load<Texture2D>(ResourcePath.resource_sprite_ui_Life_empty_png);
+                CellNode.Instance.Texture = ResourceManager.Load<Texture2D>(ResourcePath.resource_sprite_ui_roomUI_Life_empty_png);
                 break;
             case LifeIconEnum.FullShield:
-                CellNode.Instance.Texture = ResourceManager.Load<Texture2D>(ResourcePath.resource_sprite_ui_Shield_full_png);
+                CellNode.Instance.Texture = ResourceManager.Load<Texture2D>(ResourcePath.resource_sprite_ui_roomUI_Shield_full_png);
                 break;
             case LifeIconEnum.EmptyShield:
-                CellNode.Instance.Texture = ResourceManager.Load<Texture2D>(ResourcePath.resource_sprite_ui_Shield_empty_png);
+                CellNode.Instance.Texture = ResourceManager.Load<Texture2D>(ResourcePath.resource_sprite_ui_roomUI_Shield_empty_png);
                 break;
         }
     }
diff --git a/DungeonShooting_Godot/src/game/ui/roomUI/RoomUI.cs b/DungeonShooting_Godot/src/game/ui/roomUI/RoomUI.cs
index f7e4f7e..7afeaf4 100644
--- a/DungeonShooting_Godot/src/game/ui/roomUI/RoomUI.cs
+++ b/DungeonShooting_Godot/src/game/ui/roomUI/RoomUI.cs
@@ -240,56 +240,153 @@
     }
 
     /// <summary>
-    /// 类型: <see cref="Godot.TextureRect"/>, 路径: RoomUI.Control.GunBar.GunSprite
+    /// 类型: <see cref="Godot.TextureRect"/>, 路径: RoomUI.Control.ActivePropBar.ActivePropPanel.ActivePropSprite
     /// </summary>
-    public class UiNode_GunSprite : IUiNode<Godot.TextureRect, UiNode_GunSprite>
+    public class UiNode_ActivePropSprite : IUiNode<Godot.TextureRect, UiNode_ActivePropSprite>
     {
-        public UiNode_GunSprite(Godot.TextureRect node) : base(node) {  }
-        public override UiNode_GunSprite Clone() => new ((Godot.TextureRect)Instance.Duplicate());
+        public UiNode_ActivePropSprite(Godot.TextureRect node) : base(node) {  }
+        public override UiNode_ActivePropSprite Clone() => new ((Godot.TextureRect)Instance.Duplicate());
     }
 
     /// <summary>
-    /// 类型: <see cref="Godot.Label"/>, 路径: RoomUI.Control.GunBar.BulletText
+    /// 类型: <see cref="Godot.Label"/>, 路径: RoomUI.Control.ActivePropBar.ActivePropPanel.ActivePropCount
     /// </summary>
-    public class UiNode_BulletText : IUiNode<Godot.Label, UiNode_BulletText>
+    public class UiNode_ActivePropCount : IUiNode<Godot.Label, UiNode_ActivePropCount>
     {
-        public UiNode_BulletText(Godot.Label node) : base(node) {  }
-        public override UiNode_BulletText Clone() => new ((Godot.Label)Instance.Duplicate());
+        public UiNode_ActivePropCount(Godot.Label node) : base(node) {  }
+        public override UiNode_ActivePropCount Clone() => new ((Godot.Label)Instance.Duplicate());
     }
 
     /// <summary>
-    /// 类型: <see cref="Godot.Control"/>, 路径: RoomUI.Control.GunBar
+    /// 类型: <see cref="Godot.NinePatchRect"/>, 路径: RoomUI.Control.ActivePropBar.ActivePropPanel
     /// </summary>
-    public class UiNode_GunBar : IUiNode<Godot.Control, UiNode_GunBar>
+    public class UiNode_ActivePropPanel : IUiNode<Godot.NinePatchRect, UiNode_ActivePropPanel>
     {
         /// <summary>
-        /// 使用 Instance 属性获取当前节点实例对象, 节点类型: <see cref="Godot.TextureRect"/>, 节点路径: RoomUI.Control.GunSprite
+        /// 使用 Instance 属性获取当前节点实例对象, 节点类型: <see cref="Godot.TextureRect"/>, 节点路径: RoomUI.Control.ActivePropBar.ActivePropSprite
         /// </summary>
-        public UiNode_GunSprite L_GunSprite
+        public UiNode_ActivePropSprite L_ActivePropSprite
         {
             get
             {
-                if (_L_GunSprite == null) _L_GunSprite = new UiNode_GunSprite(Instance.GetNodeOrNull<Godot.TextureRect>("GunSprite"));
-                return _L_GunSprite;
+                if (_L_ActivePropSprite == null) _L_ActivePropSprite = new UiNode_ActivePropSprite(Instance.GetNodeOrNull<Godot.TextureRect>("ActivePropSprite"));
+                return _L_ActivePropSprite;
             }
         }
-        private UiNode_GunSprite _L_GunSprite;
+        private UiNode_ActivePropSprite _L_ActivePropSprite;
 
         /// <summary>
-        /// 使用 Instance 属性获取当前节点实例对象, 节点类型: <see cref="Godot.Label"/>, 节点路径: RoomUI.Control.BulletText
+        /// 使用 Instance 属性获取当前节点实例对象, 节点类型: <see cref="Godot.Label"/>, 节点路径: RoomUI.Control.ActivePropBar.ActivePropCount
         /// </summary>
-        public UiNode_BulletText L_BulletText
+        public UiNode_ActivePropCount L_ActivePropCount
         {
             get
             {
-                if (_L_BulletText == null) _L_BulletText = new UiNode_BulletText(Instance.GetNodeOrNull<Godot.Label>("BulletText"));
-                return _L_BulletText;
+                if (_L_ActivePropCount == null) _L_ActivePropCount = new UiNode_ActivePropCount(Instance.GetNodeOrNull<Godot.Label>("ActivePropCount"));
+                return _L_ActivePropCount;
             }
         }
-        private UiNode_BulletText _L_BulletText;
+        private UiNode_ActivePropCount _L_ActivePropCount;
 
-        public UiNode_GunBar(Godot.Control node) : base(node) {  }
-        public override UiNode_GunBar Clone() => new ((Godot.Control)Instance.Duplicate());
+        public UiNode_ActivePropPanel(Godot.NinePatchRect node) : base(node) {  }
+        public override UiNode_ActivePropPanel Clone() => new ((Godot.NinePatchRect)Instance.Duplicate());
+    }
+
+    /// <summary>
+    /// 类型: <see cref="Godot.Control"/>, 路径: RoomUI.Control.ActivePropBar
+    /// </summary>
+    public class UiNode_ActivePropBar : IUiNode<Godot.Control, UiNode_ActivePropBar>
+    {
+        /// <summary>
+        /// 使用 Instance 属性获取当前节点实例对象, 节点类型: <see cref="Godot.NinePatchRect"/>, 节点路径: RoomUI.Control.ActivePropPanel
+        /// </summary>
+        public UiNode_ActivePropPanel L_ActivePropPanel
+        {
+            get
+            {
+                if (_L_ActivePropPanel == null) _L_ActivePropPanel = new UiNode_ActivePropPanel(Instance.GetNodeOrNull<Godot.NinePatchRect>("ActivePropPanel"));
+                return _L_ActivePropPanel;
+            }
+        }
+        private UiNode_ActivePropPanel _L_ActivePropPanel;
+
+        public UiNode_ActivePropBar(Godot.Control node) : base(node) {  }
+        public override UiNode_ActivePropBar Clone() => new ((Godot.Control)Instance.Duplicate());
+    }
+
+    /// <summary>
+    /// 类型: <see cref="Godot.TextureRect"/>, 路径: RoomUI.Control.WeaponBar.WeaponPanel.WeaponSprite
+    /// </summary>
+    public class UiNode_WeaponSprite : IUiNode<Godot.TextureRect, UiNode_WeaponSprite>
+    {
+        public UiNode_WeaponSprite(Godot.TextureRect node) : base(node) {  }
+        public override UiNode_WeaponSprite Clone() => new ((Godot.TextureRect)Instance.Duplicate());
+    }
+
+    /// <summary>
+    /// 类型: <see cref="Godot.NinePatchRect"/>, 路径: RoomUI.Control.WeaponBar.WeaponPanel
+    /// </summary>
+    public class UiNode_WeaponPanel : IUiNode<Godot.NinePatchRect, UiNode_WeaponPanel>
+    {
+        /// <summary>
+        /// 使用 Instance 属性获取当前节点实例对象, 节点类型: <see cref="Godot.TextureRect"/>, 节点路径: RoomUI.Control.WeaponBar.WeaponSprite
+        /// </summary>
+        public UiNode_WeaponSprite L_WeaponSprite
+        {
+            get
+            {
+                if (_L_WeaponSprite == null) _L_WeaponSprite = new UiNode_WeaponSprite(Instance.GetNodeOrNull<Godot.TextureRect>("WeaponSprite"));
+                return _L_WeaponSprite;
+            }
+        }
+        private UiNode_WeaponSprite _L_WeaponSprite;
+
+        public UiNode_WeaponPanel(Godot.NinePatchRect node) : base(node) {  }
+        public override UiNode_WeaponPanel Clone() => new ((Godot.NinePatchRect)Instance.Duplicate());
+    }
+
+    /// <summary>
+    /// 类型: <see cref="Godot.Label"/>, 路径: RoomUI.Control.WeaponBar.AmmoCount
+    /// </summary>
+    public class UiNode_AmmoCount : IUiNode<Godot.Label, UiNode_AmmoCount>
+    {
+        public UiNode_AmmoCount(Godot.Label node) : base(node) {  }
+        public override UiNode_AmmoCount Clone() => new ((Godot.Label)Instance.Duplicate());
+    }
+
+    /// <summary>
+    /// 类型: <see cref="Godot.Control"/>, 路径: RoomUI.Control.WeaponBar
+    /// </summary>
+    public class UiNode_WeaponBar : IUiNode<Godot.Control, UiNode_WeaponBar>
+    {
+        /// <summary>
+        /// 使用 Instance 属性获取当前节点实例对象, 节点类型: <see cref="Godot.NinePatchRect"/>, 节点路径: RoomUI.Control.WeaponPanel
+        /// </summary>
+        public UiNode_WeaponPanel L_WeaponPanel
+        {
+            get
+            {
+                if (_L_WeaponPanel == null) _L_WeaponPanel = new UiNode_WeaponPanel(Instance.GetNodeOrNull<Godot.NinePatchRect>("WeaponPanel"));
+                return _L_WeaponPanel;
+            }
+        }
+        private UiNode_WeaponPanel _L_WeaponPanel;
+
+        /// <summary>
+        /// 使用 Instance 属性获取当前节点实例对象, 节点类型: <see cref="Godot.Label"/>, 节点路径: RoomUI.Control.AmmoCount
+        /// </summary>
+        public UiNode_AmmoCount L_AmmoCount
+        {
+            get
+            {
+                if (_L_AmmoCount == null) _L_AmmoCount = new UiNode_AmmoCount(Instance.GetNodeOrNull<Godot.Label>("AmmoCount"));
+                return _L_AmmoCount;
+            }
+        }
+        private UiNode_AmmoCount _L_AmmoCount;
+
+        public UiNode_WeaponBar(Godot.Control node) : base(node) {  }
+        public override UiNode_WeaponBar Clone() => new ((Godot.Control)Instance.Duplicate());
     }
 
     /// <summary>
@@ -324,17 +421,30 @@
         private UiNode_MapBar _L_MapBar;
 
         /// <summary>
-        /// 使用 Instance 属性获取当前节点实例对象, 节点类型: <see cref="Godot.Control"/>, 节点路径: RoomUI.GunBar
+        /// 使用 Instance 属性获取当前节点实例对象, 节点类型: <see cref="Godot.Control"/>, 节点路径: RoomUI.ActivePropBar
         /// </summary>
-        public UiNode_GunBar L_GunBar
+        public UiNode_ActivePropBar L_ActivePropBar
         {
             get
             {
-                if (_L_GunBar == null) _L_GunBar = new UiNode_GunBar(Instance.GetNodeOrNull<Godot.Control>("GunBar"));
-                return _L_GunBar;
+                if (_L_ActivePropBar == null) _L_ActivePropBar = new UiNode_ActivePropBar(Instance.GetNodeOrNull<Godot.Control>("ActivePropBar"));
+                return _L_ActivePropBar;
             }
         }
-        private UiNode_GunBar _L_GunBar;
+        private UiNode_ActivePropBar _L_ActivePropBar;
+
+        /// <summary>
+        /// 使用 Instance 属性获取当前节点实例对象, 节点类型: <see cref="Godot.Control"/>, 节点路径: RoomUI.WeaponBar
+        /// </summary>
+        public UiNode_WeaponBar L_WeaponBar
+        {
+            get
+            {
+                if (_L_WeaponBar == null) _L_WeaponBar = new UiNode_WeaponBar(Instance.GetNodeOrNull<Godot.Control>("WeaponBar"));
+                return _L_WeaponBar;
+            }
+        }
+        private UiNode_WeaponBar _L_WeaponBar;
 
         public UiNode_Control(Godot.Control node) : base(node) {  }
         public override UiNode_Control Clone() => new ((Godot.Control)Instance.Duplicate());
diff --git a/DungeonShooting_Godot/src/game/ui/roomUI/RoomUIPanel.cs b/DungeonShooting_Godot/src/game/ui/roomUI/RoomUIPanel.cs
index 26ea940..b52376c 100644
--- a/DungeonShooting_Godot/src/game/ui/roomUI/RoomUIPanel.cs
+++ b/DungeonShooting_Godot/src/game/ui/roomUI/RoomUIPanel.cs
@@ -1,5 +1,4 @@
 
-using Godot;
 using UI.BottomTips;
 
 namespace UI.RoomUI;
@@ -11,15 +10,18 @@
 {
     private ReloadBar _reloadBar;
     private InteractiveTipBar _interactiveTipBar;
-    private GunBar _gunBar;
+    private WeaponBar _weaponBar;
+    private ActivePropBar _activePropBar;
     private LifeBar _lifeBar;
+    
     private EventFactory _factory;
 
     public override void OnCreateUi()
     {
         _reloadBar = new ReloadBar(L_ReloadBar);
         _interactiveTipBar = new InteractiveTipBar(L_InteractiveTipBar);
-        _gunBar = new GunBar(L_Control.L_GunBar);
+        _weaponBar = new WeaponBar(L_Control.L_WeaponBar);
+        _activePropBar = new ActivePropBar(L_Control.L_ActivePropBar);
         _lifeBar = new LifeBar(L_Control.L_LifeBar);
     }
 
@@ -27,7 +29,8 @@
     {
         _reloadBar.OnShow();
         _interactiveTipBar.OnShow();
-        _gunBar.OnShow();
+        _weaponBar.OnShow();
+        _activePropBar.OnShow();
         _lifeBar.OnShow();
 
         _factory = EventManager.CreateEventFactory();
@@ -38,7 +41,8 @@
     {
         _reloadBar.OnHide();
         _interactiveTipBar.OnHide();
-        _gunBar.OnHide();
+        _weaponBar.OnHide();
+        _activePropBar.OnHide();
         _lifeBar.OnHide();
         
         _factory.RemoveAllEventListener();
@@ -52,7 +56,7 @@
 
     public override void Process(float delta)
     {
-        _gunBar.Process(delta);
+        _weaponBar.Process(delta);
         _lifeBar.Process(delta);
     }
 
diff --git a/DungeonShooting_Godot/src/game/ui/roomUI/WeaponBar.cs b/DungeonShooting_Godot/src/game/ui/roomUI/WeaponBar.cs
new file mode 100644
index 0000000..e017b85
--- /dev/null
+++ b/DungeonShooting_Godot/src/game/ui/roomUI/WeaponBar.cs
@@ -0,0 +1,71 @@
+using Godot;
+
+namespace UI.RoomUI;
+
+public class WeaponBar
+{
+    private RoomUI.UiNode_WeaponBar _weaponBar;
+
+    private int _prevAmmo = -1;
+    private int _prevResidue = -1;
+    
+    public WeaponBar(RoomUI.UiNode_WeaponBar weaponBar)
+    {
+        _weaponBar = weaponBar;
+        SetWeaponTexture(null);
+    }
+
+    public void OnShow()
+    {
+    }
+
+    public void OnHide()
+    {
+    }
+
+    public void Process(float delta)
+    {
+        var weapon = Player.Current?.Holster.ActiveWeapon;
+        if (weapon != null)
+        {
+            SetWeaponTexture(weapon.GetCurrentTexture());
+            SetWeaponAmmunition(weapon.CurrAmmo, weapon.ResidueAmmo);
+        }
+        else
+        {
+            SetWeaponTexture(null);
+        }
+    }
+
+    /// <summary>
+    /// 设置显示在 ui 上武器的纹理
+    /// </summary>
+    /// <param name="texture">纹理</param>
+    public void SetWeaponTexture(Texture2D texture)
+    {
+        if (texture != null)
+        {
+            _weaponBar.L_WeaponPanel.L_WeaponSprite.Instance.Texture = texture;
+            _weaponBar.Instance.Visible = true;
+        }
+        else
+        {
+            _weaponBar.Instance.Visible = false;
+        }
+    }
+    
+    /// <summary>
+    /// 设置弹药数据
+    /// </summary>
+    /// <param name="curr">当前弹夹弹药量</param>
+    /// <param name="total">剩余弹药总数</param>
+    public void SetWeaponAmmunition(int curr, int total)
+    {
+        if (curr != _prevAmmo || total != _prevResidue)
+        {
+            _weaponBar.L_AmmoCount.Instance.Text = curr + "/" + total;
+            _prevAmmo = curr;
+            _prevResidue = total;
+        }
+    }
+}
\ No newline at end of file