diff --git a/DungeonShooting_Godot/prefab/bullet/Bullet0001.tscn b/DungeonShooting_Godot/prefab/bullet/Bullet0001.tscn
index 4081afc..040a995 100644
--- a/DungeonShooting_Godot/prefab/bullet/Bullet0001.tscn
+++ b/DungeonShooting_Godot/prefab/bullet/Bullet0001.tscn
@@ -1,21 +1,20 @@
[gd_scene load_steps=9 format=3 uid="uid://bj4kmvt8jg1cf"]
[ext_resource type="Script" path="res://src/game/activity/bullet/Bullet.cs" id="1_82ma0"]
-[ext_resource type="Shader" path="res://resource/material/Blend.gdshader" id="2_p12d3"]
+[ext_resource type="Shader" path="res://resource/material/Blend.gdshader" id="2_6wvtu"]
[ext_resource type="Texture2D" uid="uid://bu0b11hiuecxy" path="res://resource/sprite/bullet/bullet.png" id="3_hjgpe"]
-
-[sub_resource type="ShaderMaterial" id="ShaderMaterial_5a4f2"]
+[sub_resource type="ShaderMaterial" id="ShaderMaterial_w5w0i"]
resource_local_to_scene = true
-shader = ExtResource("2_p12d3")
+shader = ExtResource("2_6wvtu")
shader_parameter/blend = Color(0, 0, 0, 0.470588)
-shader_parameter/schedule = 1
+shader_parameter/schedule = 1.0
-[sub_resource type="ShaderMaterial" id="ShaderMaterial_o0655"]
+[sub_resource type="ShaderMaterial" id="ShaderMaterial_qhkgc"]
resource_local_to_scene = true
-shader = ExtResource("2_p12d3")
+shader = ExtResource("2_6wvtu")
shader_parameter/blend = Color(1, 1, 1, 1)
-shader_parameter/schedule = 0
+shader_parameter/schedule = 0.0
[sub_resource type="SpriteFrames" id="SpriteFrames_5wvmf"]
animations = [{
@@ -44,11 +43,11 @@
[node name="ShadowSprite" type="Sprite2D" parent="."]
z_index = -1
-material = SubResource("ShaderMaterial_5a4f2")
+material = SubResource("ShaderMaterial_w5w0i")
[node name="AnimatedSprite" type="AnimatedSprite2D" parent="."]
modulate = Color(1.8, 1.8, 1.8, 1)
-material = SubResource("ShaderMaterial_o0655")
+material = SubResource("ShaderMaterial_qhkgc")
sprite_frames = SubResource("SpriteFrames_5wvmf")
[node name="CollisionArea" type="Area2D" parent="."]
diff --git a/DungeonShooting_Godot/prefab/bullet/Bullet0002.tscn b/DungeonShooting_Godot/prefab/bullet/Bullet0002.tscn
index da195d0..e2bbb87 100644
--- a/DungeonShooting_Godot/prefab/bullet/Bullet0002.tscn
+++ b/DungeonShooting_Godot/prefab/bullet/Bullet0002.tscn
@@ -4,17 +4,17 @@
[ext_resource type="Shader" path="res://resource/material/Blend.gdshader" id="2_n44pd"]
[ext_resource type="SpriteFrames" uid="uid://bpeodjqiy3mil" path="res://resource/spriteFrames/Bullet0002.tres" id="3_uvuj8"]
-[sub_resource type="ShaderMaterial" id="ShaderMaterial_5a4f2"]
+[sub_resource type="ShaderMaterial" id="ShaderMaterial_v77gw"]
resource_local_to_scene = true
shader = ExtResource("2_n44pd")
shader_parameter/blend = Color(0, 0, 0, 0.470588)
-shader_parameter/schedule = 1
+shader_parameter/schedule = 1.0
-[sub_resource type="ShaderMaterial" id="ShaderMaterial_o0655"]
+[sub_resource type="ShaderMaterial" id="ShaderMaterial_p0wfd"]
resource_local_to_scene = true
shader = ExtResource("2_n44pd")
shader_parameter/blend = Color(1, 1, 1, 1)
-shader_parameter/schedule = 0
+shader_parameter/schedule = 0.0
[sub_resource type="RectangleShape2D" id="RectangleShape2D_c0onq"]
size = Vector2(44.72, 12)
@@ -32,11 +32,11 @@
[node name="ShadowSprite" type="Sprite2D" parent="."]
z_index = -1
-material = SubResource("ShaderMaterial_5a4f2")
+material = SubResource("ShaderMaterial_v77gw")
[node name="AnimatedSprite" type="AnimatedSprite2D" parent="."]
modulate = Color(1.8, 1.8, 1.8, 1)
-material = SubResource("ShaderMaterial_o0655")
+material = SubResource("ShaderMaterial_p0wfd")
sprite_frames = ExtResource("3_uvuj8")
[node name="CollisionArea" type="Area2D" parent="."]
diff --git a/DungeonShooting_Godot/prefab/effect/activityObject/Effect0001.tscn b/DungeonShooting_Godot/prefab/effect/activityObject/Effect0001.tscn
index bf30d58..e530d24 100644
--- a/DungeonShooting_Godot/prefab/effect/activityObject/Effect0001.tscn
+++ b/DungeonShooting_Godot/prefab/effect/activityObject/Effect0001.tscn
@@ -9,13 +9,13 @@
resource_local_to_scene = true
shader = ExtResource("2_b3d83")
shader_parameter/blend = Color(0, 0, 0, 0.470588)
-shader_parameter/schedule = 1
+shader_parameter/schedule = 1.0
[sub_resource type="ShaderMaterial" id="ShaderMaterial_08fn3"]
resource_local_to_scene = true
shader = ExtResource("2_b3d83")
shader_parameter/blend = Color(1, 1, 1, 1)
-shader_parameter/schedule = 0
+shader_parameter/schedule = 0.0
[sub_resource type="AtlasTexture" id="AtlasTexture_cldwb"]
atlas = ExtResource("3_ntutm")
diff --git a/DungeonShooting_Godot/prefab/map/RoomDoor_E.tscn b/DungeonShooting_Godot/prefab/map/RoomDoor_E.tscn
index 6ade137..1c4997b 100644
--- a/DungeonShooting_Godot/prefab/map/RoomDoor_E.tscn
+++ b/DungeonShooting_Godot/prefab/map/RoomDoor_E.tscn
@@ -8,13 +8,13 @@
resource_local_to_scene = true
shader = ExtResource("2_lwx51")
shader_parameter/blend = Color(0, 0, 0, 0.470588)
-shader_parameter/schedule = 1
+shader_parameter/schedule = 1.0
[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
+shader_parameter/schedule = 0.0
[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 54aa32f..77fcfce 100644
--- a/DungeonShooting_Godot/prefab/map/RoomDoor_N.tscn
+++ b/DungeonShooting_Godot/prefab/map/RoomDoor_N.tscn
@@ -8,13 +8,13 @@
resource_local_to_scene = true
shader = ExtResource("2_h5ru6")
shader_parameter/blend = Color(0, 0, 0, 0.470588)
-shader_parameter/schedule = 1
+shader_parameter/schedule = 1.0
[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
+shader_parameter/schedule = 0.0
[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 e3b5afb..f7a1217 100644
--- a/DungeonShooting_Godot/prefab/map/RoomDoor_S.tscn
+++ b/DungeonShooting_Godot/prefab/map/RoomDoor_S.tscn
@@ -8,13 +8,13 @@
resource_local_to_scene = true
shader = ExtResource("2_6vvcd")
shader_parameter/blend = Color(0, 0, 0, 0.470588)
-shader_parameter/schedule = 1
+shader_parameter/schedule = 1.0
[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
+shader_parameter/schedule = 0.0
[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 e32ebf8..0e5a557 100644
--- a/DungeonShooting_Godot/prefab/map/RoomDoor_W.tscn
+++ b/DungeonShooting_Godot/prefab/map/RoomDoor_W.tscn
@@ -8,13 +8,13 @@
resource_local_to_scene = true
shader = ExtResource("2_wx2w3")
shader_parameter/blend = Color(0, 0, 0, 0.470588)
-shader_parameter/schedule = 1
+shader_parameter/schedule = 1.0
[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
+shader_parameter/schedule = 0.0
[sub_resource type="RectangleShape2D" id="RectangleShape2D_2ko2r"]
resource_local_to_scene = true
diff --git a/DungeonShooting_Godot/prefab/role/Enemy0001.tscn b/DungeonShooting_Godot/prefab/role/Enemy0001.tscn
index b40cbfa..8673633 100644
--- a/DungeonShooting_Godot/prefab/role/Enemy0001.tscn
+++ b/DungeonShooting_Godot/prefab/role/Enemy0001.tscn
@@ -9,13 +9,13 @@
resource_local_to_scene = true
shader = ExtResource("3_x8agd")
shader_parameter/blend = Color(0, 0, 0, 0.470588)
-shader_parameter/schedule = 1
+shader_parameter/schedule = 1.0
[sub_resource type="ShaderMaterial" id="ShaderMaterial_k8mt5"]
resource_local_to_scene = true
shader = ExtResource("3_x8agd")
shader_parameter/blend = Color(1, 1, 1, 1)
-shader_parameter/schedule = 0
+shader_parameter/schedule = 0.0
[node name="Enemy0001" node_paths=PackedStringArray("HurtArea", "MountPoint", "BackMountPoint", "InteractiveArea", "ShadowSprite", "AnimatedSprite", "Collision") instance=ExtResource("1_5po38")]
collision_layer = 16
diff --git a/DungeonShooting_Godot/prefab/role/Role0001.tscn b/DungeonShooting_Godot/prefab/role/Role0001.tscn
index 4190ab6..497896e 100644
--- a/DungeonShooting_Godot/prefab/role/Role0001.tscn
+++ b/DungeonShooting_Godot/prefab/role/Role0001.tscn
@@ -9,13 +9,13 @@
resource_local_to_scene = true
shader = ExtResource("3_rk4gg")
shader_parameter/blend = Color(0, 0, 0, 0.470588)
-shader_parameter/schedule = 1
+shader_parameter/schedule = 1.0
[sub_resource type="ShaderMaterial" id="ShaderMaterial_5ok5s"]
resource_local_to_scene = true
shader = ExtResource("3_rk4gg")
shader_parameter/blend = Color(1, 1, 1, 1)
-shader_parameter/schedule = 0
+shader_parameter/schedule = 0.0
[node name="Role0001" node_paths=PackedStringArray("HurtArea", "MountPoint", "BackMountPoint", "InteractiveArea", "ShadowSprite", "AnimatedSprite", "Collision") instance=ExtResource("1_10c2n")]
collision_layer = 8
diff --git a/DungeonShooting_Godot/prefab/shell/Shell0001.tscn b/DungeonShooting_Godot/prefab/shell/Shell0001.tscn
index 1d7c32b..4e64f26 100644
--- a/DungeonShooting_Godot/prefab/shell/Shell0001.tscn
+++ b/DungeonShooting_Godot/prefab/shell/Shell0001.tscn
@@ -8,13 +8,13 @@
resource_local_to_scene = true
shader = ExtResource("2_tdny6")
shader_parameter/blend = Color(0, 0, 0, 0.470588)
-shader_parameter/schedule = 1
+shader_parameter/schedule = 1.0
[sub_resource type="ShaderMaterial" id="ShaderMaterial_7e6fo"]
resource_local_to_scene = true
shader = ExtResource("2_tdny6")
shader_parameter/blend = Color(1, 1, 1, 1)
-shader_parameter/schedule = 0
+shader_parameter/schedule = 0.0
[node name="Shell0001" type="CharacterBody2D" node_paths=PackedStringArray("ShadowSprite", "AnimatedSprite", "Collision")]
script = ExtResource("1_2g70c")
diff --git a/DungeonShooting_Godot/prefab/weapon/Weapon0001.tscn b/DungeonShooting_Godot/prefab/weapon/Weapon0001.tscn
index ef51173..a78a966 100644
--- a/DungeonShooting_Godot/prefab/weapon/Weapon0001.tscn
+++ b/DungeonShooting_Godot/prefab/weapon/Weapon0001.tscn
@@ -9,13 +9,13 @@
resource_local_to_scene = true
shader = ExtResource("3_x1q03")
shader_parameter/blend = Color(0, 0, 0, 0.470588)
-shader_parameter/schedule = 1
+shader_parameter/schedule = 1.0
[sub_resource type="ShaderMaterial" id="ShaderMaterial_bj7y3"]
resource_local_to_scene = true
shader = ExtResource("3_x1q03")
shader_parameter/blend = Color(1, 1, 1, 1)
-shader_parameter/schedule = 0
+shader_parameter/schedule = 1.0
[node name="Weapon0001" node_paths=PackedStringArray("FirePoint", "ShellPoint", "GripPoint", "AnimationPlayer", "ShadowSprite", "AnimatedSprite", "Collision") instance=ExtResource("1_ykl0r")]
script = ExtResource("2_t56pk")
diff --git a/DungeonShooting_Godot/prefab/weapon/Weapon0002.tscn b/DungeonShooting_Godot/prefab/weapon/Weapon0002.tscn
index e6b0739..6e8bef2 100644
--- a/DungeonShooting_Godot/prefab/weapon/Weapon0002.tscn
+++ b/DungeonShooting_Godot/prefab/weapon/Weapon0002.tscn
@@ -8,13 +8,13 @@
resource_local_to_scene = true
shader = ExtResource("2_8nvny")
shader_parameter/blend = Color(0, 0, 0, 0.470588)
-shader_parameter/schedule = 1
+shader_parameter/schedule = 1.0
[sub_resource type="ShaderMaterial" id="ShaderMaterial_o36tv"]
resource_local_to_scene = true
shader = ExtResource("2_8nvny")
shader_parameter/blend = Color(1, 1, 1, 1)
-shader_parameter/schedule = 0
+shader_parameter/schedule = 1.0
[sub_resource type="RectangleShape2D" id="RectangleShape2D_3p5jk"]
size = Vector2(19.5, 8.75)
diff --git a/DungeonShooting_Godot/prefab/weapon/Weapon0003.tscn b/DungeonShooting_Godot/prefab/weapon/Weapon0003.tscn
index a4548d1..0528bbe 100644
--- a/DungeonShooting_Godot/prefab/weapon/Weapon0003.tscn
+++ b/DungeonShooting_Godot/prefab/weapon/Weapon0003.tscn
@@ -8,13 +8,13 @@
resource_local_to_scene = true
shader = ExtResource("2_4yjnk")
shader_parameter/blend = Color(0, 0, 0, 0.470588)
-shader_parameter/schedule = 1
+shader_parameter/schedule = 1.0
[sub_resource type="ShaderMaterial" id="ShaderMaterial_o36tv"]
resource_local_to_scene = true
shader = ExtResource("2_4yjnk")
shader_parameter/blend = Color(1, 1, 1, 1)
-shader_parameter/schedule = 0
+shader_parameter/schedule = 1.0
[sub_resource type="RectangleShape2D" id="RectangleShape2D_3p5jk"]
size = Vector2(14, 8)
diff --git a/DungeonShooting_Godot/prefab/weapon/Weapon0004.tscn b/DungeonShooting_Godot/prefab/weapon/Weapon0004.tscn
index 40556be..d1739d1 100644
--- a/DungeonShooting_Godot/prefab/weapon/Weapon0004.tscn
+++ b/DungeonShooting_Godot/prefab/weapon/Weapon0004.tscn
@@ -10,13 +10,13 @@
resource_local_to_scene = true
shader = ExtResource("3_63s5g")
shader_parameter/blend = Color(0, 0, 0, 0.470588)
-shader_parameter/schedule = 1
+shader_parameter/schedule = 1.0
[sub_resource type="ShaderMaterial" id="ShaderMaterial_rtliw"]
resource_local_to_scene = true
shader = ExtResource("3_63s5g")
shader_parameter/blend = Color(1, 1, 1, 1)
-shader_parameter/schedule = 0
+shader_parameter/schedule = 1.0
[node name="Weapon0004" node_paths=PackedStringArray("FirePoint", "ShellPoint", "GripPoint", "AnimationPlayer", "ShadowSprite", "AnimatedSprite", "Collision") instance=ExtResource("1_kg172")]
script = ExtResource("2_v1wer")
diff --git a/DungeonShooting_Godot/prefab/weapon/Weapon0005.tscn b/DungeonShooting_Godot/prefab/weapon/Weapon0005.tscn
index 7237343..2ff4621 100644
--- a/DungeonShooting_Godot/prefab/weapon/Weapon0005.tscn
+++ b/DungeonShooting_Godot/prefab/weapon/Weapon0005.tscn
@@ -8,13 +8,13 @@
resource_local_to_scene = true
shader = ExtResource("1_466gw")
shader_parameter/blend = Color(0, 0, 0, 0.470588)
-shader_parameter/schedule = 1
+shader_parameter/schedule = 1.0
[sub_resource type="ShaderMaterial" id="ShaderMaterial_o36tv"]
resource_local_to_scene = true
shader = ExtResource("1_466gw")
shader_parameter/blend = Color(1, 1, 1, 1)
-shader_parameter/schedule = 0
+shader_parameter/schedule = 1.0
[sub_resource type="RectangleShape2D" id="RectangleShape2D_3p5jk"]
size = Vector2(26, 8)
diff --git a/DungeonShooting_Godot/prefab/weapon/Weapon0006.tscn b/DungeonShooting_Godot/prefab/weapon/Weapon0006.tscn
index 1c56793..16a5739 100644
--- a/DungeonShooting_Godot/prefab/weapon/Weapon0006.tscn
+++ b/DungeonShooting_Godot/prefab/weapon/Weapon0006.tscn
@@ -8,13 +8,13 @@
resource_local_to_scene = true
shader = ExtResource("1_rp1bw")
shader_parameter/blend = Color(0, 0, 0, 0.470588)
-shader_parameter/schedule = 1
+shader_parameter/schedule = 1.0
[sub_resource type="ShaderMaterial" id="ShaderMaterial_o36tv"]
resource_local_to_scene = true
shader = ExtResource("1_rp1bw")
shader_parameter/blend = Color(1, 1, 1, 1)
-shader_parameter/schedule = 0
+shader_parameter/schedule = 1.0
[sub_resource type="RectangleShape2D" id="RectangleShape2D_3p5jk"]
size = Vector2(12, 10)
diff --git a/DungeonShooting_Godot/prefab/weapon/WeaponTemplate.tscn b/DungeonShooting_Godot/prefab/weapon/WeaponTemplate.tscn
index 6af9687..88ec9bf 100644
--- a/DungeonShooting_Godot/prefab/weapon/WeaponTemplate.tscn
+++ b/DungeonShooting_Godot/prefab/weapon/WeaponTemplate.tscn
@@ -6,13 +6,13 @@
resource_local_to_scene = true
shader = ExtResource("1_3p8rg")
shader_parameter/blend = Color(0, 0, 0, 0.470588)
-shader_parameter/schedule = 1
+shader_parameter/schedule = 1.0
[sub_resource type="ShaderMaterial" id="ShaderMaterial_o36tv"]
resource_local_to_scene = true
shader = ExtResource("1_3p8rg")
shader_parameter/blend = Color(1, 1, 1, 1)
-shader_parameter/schedule = 0
+shader_parameter/schedule = 1.0
[sub_resource type="RectangleShape2D" id="RectangleShape2D_3p5jk"]
size = Vector2(19.5, 8.75)
diff --git a/DungeonShooting_Godot/resource/sprite/shell/Shell0001.png b/DungeonShooting_Godot/resource/sprite/shell/Shell0001.png
new file mode 100644
index 0000000..7a926c6
--- /dev/null
+++ b/DungeonShooting_Godot/resource/sprite/shell/Shell0001.png
Binary files differ
diff --git a/DungeonShooting_Godot/resource/sprite/shell/Shell0001.png.import b/DungeonShooting_Godot/resource/sprite/shell/Shell0001.png.import
new file mode 100644
index 0000000..249fb0b
--- /dev/null
+++ b/DungeonShooting_Godot/resource/sprite/shell/Shell0001.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://dto03bc2qbhnj"
+path="res://.godot/imported/Shell0001.png-f6d706707815430fcb975fd0121be274.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://resource/sprite/shell/Shell0001.png"
+dest_files=["res://.godot/imported/Shell0001.png-f6d706707815430fcb975fd0121be274.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/shell/shellCase.png b/DungeonShooting_Godot/resource/sprite/shell/shellCase.png
deleted file mode 100644
index 7a926c6..0000000
--- a/DungeonShooting_Godot/resource/sprite/shell/shellCase.png
+++ /dev/null
Binary files differ
diff --git a/DungeonShooting_Godot/resource/sprite/shell/shellCase.png.import b/DungeonShooting_Godot/resource/sprite/shell/shellCase.png.import
deleted file mode 100644
index 93bad38..0000000
--- a/DungeonShooting_Godot/resource/sprite/shell/shellCase.png.import
+++ /dev/null
@@ -1,34 +0,0 @@
-[remap]
-
-importer="texture"
-type="CompressedTexture2D"
-uid="uid://dto03bc2qbhnj"
-path="res://.godot/imported/shellCase.png-4975fbe4d212e558e86355116ac96ab2.ctex"
-metadata={
-"vram_texture": false
-}
-
-[deps]
-
-source_file="res://resource/sprite/shell/shellCase.png"
-dest_files=["res://.godot/imported/shellCase.png-4975fbe4d212e558e86355116ac96ab2.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/Shell0001.tres b/DungeonShooting_Godot/resource/spriteFrames/Shell0001.tres
index 5d2b5b6..6ab6b47 100644
--- a/DungeonShooting_Godot/resource/spriteFrames/Shell0001.tres
+++ b/DungeonShooting_Godot/resource/spriteFrames/Shell0001.tres
@@ -1,6 +1,6 @@
[gd_resource type="SpriteFrames" load_steps=2 format=3 uid="uid://b8gksxl7auquc"]
-[ext_resource type="Texture2D" uid="uid://dto03bc2qbhnj" path="res://resource/sprite/shell/shellCase.png" id="1_4nusd"]
+[ext_resource type="Texture2D" uid="uid://dto03bc2qbhnj" path="res://resource/sprite/shell/Shell0001.png" id="1_4nusd"]
[resource]
animations = [{
diff --git a/DungeonShooting_Godot/resource/theme/mainTheme.tres b/DungeonShooting_Godot/resource/theme/mainTheme.tres
index 4d1ae80..8d39025 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_eib3q"]
+[sub_resource type="Image" id="Image_6yv7w"]
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_eib3q")
+image = SubResource("Image_6yv7w")
[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_1fte4"]
+[sub_resource type="Image" id="Image_t1c5f"]
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_1fte4")
+image = SubResource("Image_t1c5f")
[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_kiqi0"]
+[sub_resource type="Image" id="Image_qo22b"]
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_kiqi0")
+image = SubResource("Image_qo22b")
[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_g4idd"]
+[sub_resource type="Image" id="Image_byitr"]
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_g4idd")
+image = SubResource("Image_byitr")
[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_q0ajw"]
+[sub_resource type="Image" id="Image_hghrc"]
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_q0ajw")
+image = SubResource("Image_hghrc")
[sub_resource type="StyleBoxFlat" id="57"]
content_margin_left = 6.0
diff --git a/DungeonShooting_Godot/scene/test/TestOptimizeSprite.tscn b/DungeonShooting_Godot/scene/test/TestOptimizeSprite.tscn
index cc500fd..38db9b7 100644
--- a/DungeonShooting_Godot/scene/test/TestOptimizeSprite.tscn
+++ b/DungeonShooting_Godot/scene/test/TestOptimizeSprite.tscn
@@ -1,8 +1,15 @@
-[gd_scene load_steps=3 format=3 uid="uid://crwmgbequhxf3"]
+[gd_scene load_steps=10 format=3 uid="uid://crwmgbequhxf3"]
[ext_resource type="Script" path="res://src/test/TestOptimizeSprite.cs" id="1_rwuav"]
[ext_resource type="Texture2D" uid="uid://civvcowt2wklr" path="res://resource/sprite/weapon/weapon0001/Weapon0001.png" id="2_qvs0g"]
+[ext_resource type="Texture2D" uid="uid://b53kofmyan42g" path="res://resource/sprite/weapon/weapon0002/Weapon0002.png" id="3_jejmg"]
+[ext_resource type="Texture2D" uid="uid://clgf63extg800" path="res://resource/sprite/weapon/weapon0003/Weapon0003.png" id="4_twsss"]
+[ext_resource type="Texture2D" uid="uid://504f1r0mi33n" path="res://resource/sprite/weapon/weapon0005/Weapon0005.png" id="5_bdcjp"]
+[ext_resource type="Texture2D" uid="uid://dn0un05nr8xun" path="res://resource/sprite/weapon/weapon0006/Weapon0006.png" id="6_sqcu7"]
+[ext_resource type="Texture2D" uid="uid://bxhbsq0wb2yo1" path="res://resource/sprite/weapon/knife1.png" id="7_w4iwy"]
+[ext_resource type="Texture2D" uid="uid://yn8t7ovmt4gj" path="res://resource/sprite/weapon/gun1.png" id="9_mddgj"]
+[ext_resource type="Texture2D" uid="uid://5geiuvv6hyov" path="res://resource/sprite/weapon/gun2.png" id="10_rxwsh"]
[node name="TestOptimizeSprite" type="Node2D"]
script = ExtResource("1_rwuav")
-Texture2D = ExtResource("2_qvs0g")
+ImageList = Array[Texture2D]([ExtResource("2_qvs0g"), ExtResource("3_jejmg"), ExtResource("4_twsss"), ExtResource("5_bdcjp"), ExtResource("6_sqcu7"), ExtResource("7_w4iwy"), null, ExtResource("9_mddgj"), ExtResource("10_rxwsh")])
diff --git a/DungeonShooting_Godot/scene/test/TestTileLayer.tscn b/DungeonShooting_Godot/scene/test/TestTileLayer.tscn
index c9a97e3..f386634 100644
--- a/DungeonShooting_Godot/scene/test/TestTileLayer.tscn
+++ b/DungeonShooting_Godot/scene/test/TestTileLayer.tscn
@@ -3,7 +3,8 @@
[ext_resource type="Texture2D" uid="uid://dj8nrd5od4fcl" path="res://resource/sprite/map/map1/16x16 dungeon ii wall reconfig v04 spritesheet.png" id="1"]
[ext_resource type="Texture2D" uid="uid://chd2vtesap5cf" path="res://resource/sprite/role/enemy0001/Enemy0001.png" id="2"]
[ext_resource type="Texture2D" uid="uid://5geiuvv6hyov" path="res://resource/sprite/weapon/gun2.png" id="3"]
-[ext_resource type="Texture2D" uid="uid://dto03bc2qbhnj" path="res://resource/sprite/shell/shellCase.png" id="4"]
+[ext_resource type="Texture2D" uid="uid://dto03bc2qbhnj" path="res://resource/sprite/shell/Shell0001.png" id="4"]
+
[sub_resource type="TileSetAtlasSource" id="TileSetAtlasSource_ch2b5"]
diff --git a/DungeonShooting_Godot/src/framework/activity/ActivityObject_EditorTool.cs b/DungeonShooting_Godot/src/framework/activity/ActivityObject_EditorTool.cs
index f20d17c..af7f5d6 100644
--- a/DungeonShooting_Godot/src/framework/activity/ActivityObject_EditorTool.cs
+++ b/DungeonShooting_Godot/src/framework/activity/ActivityObject_EditorTool.cs
@@ -8,33 +8,44 @@
public partial class ActivityObject
{
///
- /// 该函数只会在编辑器中调用, 用于自定义处理被 [ExportFill] 标记后自动创建的节点
+ /// 该函数只会在编辑器中调用, 用于处理被 [ExportFill] 标记属性节点, 当在编辑器中切换页签或者创建 ActivityObject 时会调用该函数
///
/// 属性名称
/// 节点实例
- protected virtual void OnExportFillNode(string propertyName, Node node)
+ /// 是否刚刚创建
+ protected virtual void OnExamineExportFillNode(string propertyName, Node node, bool isJustCreated)
{
switch (propertyName)
{
case "ShadowSprite":
{
var sprite = (Sprite2D)node;
- sprite.ZIndex = -1;
- var material =
- ResourceManager.Load(ResourcePath.resource_material_Blend_tres, false);
- material.SetShaderParameter("blend", new Color(0, 0, 0, 0.47058824F));
- material.SetShaderParameter("schedule", 1);
- sprite.Material = material;
+ if (isJustCreated)
+ {
+ sprite.ZIndex = -1;
+ }
+
+ if (sprite.Material == null)
+ {
+ var material =
+ ResourceManager.Load(ResourcePath.resource_material_Blend_tres, false);
+ material.SetShaderParameter("blend", new Color(0, 0, 0, 0.47058824F));
+ material.SetShaderParameter("schedule", 1);
+ sprite.Material = material;
+ }
}
break;
case "AnimatedSprite":
{
var animatedSprite = (AnimatedSprite2D)node;
- var material =
- ResourceManager.Load(ResourcePath.resource_material_Blend_tres, false);
- material.SetShaderParameter("blend", new Color(1, 1, 1, 1));
- material.SetShaderParameter("schedule", 0);
- animatedSprite.Material = material;
+ if (animatedSprite.Material == null)
+ {
+ var material =
+ ResourceManager.Load(ResourcePath.resource_material_Blend_tres, false);
+ material.SetShaderParameter("blend", new Color(1, 1, 1, 1));
+ material.SetShaderParameter("schedule", 0);
+ animatedSprite.Material = material;
+ }
}
break;
case "Collision":
@@ -136,11 +147,19 @@
AddChild(node);
node.Name = propertyInfo.Name;
node.Owner = owner;
- //自定义处理导出的节点
- OnExportFillNode(propertyInfo.Name, node);
+
+ OnExamineExportFillNode(propertyInfo.Name, node, true);
+ }
+ else
+ {
+ OnExamineExportFillNode(propertyInfo.Name, node, false);
}
propertyInfo.SetValue(this, node);
}
+ else
+ {
+ OnExamineExportFillNode(propertyInfo.Name, (Node)value, false);
+ }
}
}
}
diff --git a/DungeonShooting_Godot/src/framework/map/image/ImageCanvas.cs b/DungeonShooting_Godot/src/framework/map/image/ImageCanvas.cs
index c320f91..1633787 100644
--- a/DungeonShooting_Godot/src/framework/map/image/ImageCanvas.cs
+++ b/DungeonShooting_Godot/src/framework/map/image/ImageCanvas.cs
@@ -99,7 +99,11 @@
{
image.FlipY();
}
-
+
+ if (image.GetFormat() != Image.Format.Rgba8)
+ {
+ image.Convert(Image.Format.Rgba8);
+ }
_canvas.BlendRect(image, new Rect2I(0, 0, image.GetWidth(), image.GetHeight()),
new Vector2I(item.X - item.CenterX, item.Y - item.CenterY));
}
@@ -208,6 +212,7 @@
}
//--------------------------------------------------------------------------------------------------------------
+
private class EnqueueItem
{
public ImageCanvas Canvas;
@@ -220,6 +225,11 @@
public bool FlipY;
}
+ ///
+ /// 同一帧下将队列里的image绘制到指定画布下最大消耗时间, 如果绘制的时间超过了这个值, 则队列中后面的image将会放到下一帧绘制
+ ///
+ public static float MaxHandlerTime { get; set; } = 2f;
+
private static readonly Queue _enqueueItems = new Queue();
private static readonly HashSet _redrawCanvas = new HashSet();
@@ -235,7 +245,7 @@
var c = _enqueueItems.Count;
//执行绘制操作
- //绘制的总时间不能超过2毫秒, 如果超过了, 那就下一帧再画其它的吧
+ //绘制的总时间不能超过MaxHandlerTime, 如果超过了, 那就下一帧再画其它的吧
do
{
var item = _enqueueItems.Dequeue();
@@ -244,7 +254,7 @@
item.Canvas.HandlerDrawImageInCanvas(item);
_redrawCanvas.Add(item.Canvas);
}
- } while (_enqueueItems.Count > 0 && (DateTime.Now - startTime).TotalMilliseconds < 2);
+ } while (_enqueueItems.Count > 0 && (DateTime.Now - startTime).TotalMilliseconds < MaxHandlerTime);
if (_enqueueItems.Count > 0)
{
diff --git a/DungeonShooting_Godot/src/game/manager/ResourcePath.cs b/DungeonShooting_Godot/src/game/manager/ResourcePath.cs
index d62badb..e4e5b35 100644
--- a/DungeonShooting_Godot/src/game/manager/ResourcePath.cs
+++ b/DungeonShooting_Godot/src/game/manager/ResourcePath.cs
@@ -86,6 +86,8 @@
public const string resource_sound_sfx_reloading_Reloading_begin0005_ogg = "res://resource/sound/sfx/reloading/Reloading_begin0005.ogg";
public const string resource_sound_sfx_reloading_Reloading_begin0006_ogg = "res://resource/sound/sfx/reloading/Reloading_begin0006.ogg";
public const string resource_sound_sfx_reloading_Reloading_begin0007_ogg = "res://resource/sound/sfx/reloading/Reloading_begin0007.ogg";
+ public const string resource_sound_sfx_reloading_Reloading_begin0008_ogg = "res://resource/sound/sfx/reloading/Reloading_begin0008.ogg";
+ public const string resource_sound_sfx_reloading_Reloading_begin0009_ogg = "res://resource/sound/sfx/reloading/Reloading_begin0009.ogg";
public const string resource_sound_sfx_reloading_Reloading_finish0001_ogg = "res://resource/sound/sfx/reloading/Reloading_finish0001.ogg";
public const string resource_sound_sfx_reloading_Reloading_finish0002_ogg = "res://resource/sound/sfx/reloading/Reloading_finish0002.ogg";
public const string resource_sound_sfx_shooting_Shooting0001_ogg = "res://resource/sound/sfx/shooting/Shooting0001.ogg";
@@ -94,6 +96,8 @@
public const string resource_sound_sfx_shooting_Shooting0004_ogg = "res://resource/sound/sfx/shooting/Shooting0004.ogg";
public const string resource_sound_sfx_shooting_Shooting0005_ogg = "res://resource/sound/sfx/shooting/Shooting0005.ogg";
public const string resource_sound_sfx_shooting_Shooting0006_ogg = "res://resource/sound/sfx/shooting/Shooting0006.ogg";
+ public const string resource_sound_sfx_shooting_Shooting0007_ogg = "res://resource/sound/sfx/shooting/Shooting0007.ogg";
+ public const string resource_sound_sfx_shooting_Shooting0008_ogg = "res://resource/sound/sfx/shooting/Shooting0008.ogg";
public const string resource_sprite_bullet_arrow_png = "res://resource/sprite/bullet/arrow.png";
public const string resource_sprite_bullet_bullet_png = "res://resource/sprite/bullet/bullet.png";
public const string resource_sprite_bullet_bullet2_png = "res://resource/sprite/bullet/bullet2.png";
@@ -180,6 +184,7 @@
public const string scene_test_TestNavigation2_tscn = "res://scene/test/TestNavigation2.tscn";
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_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/test/TestOptimizeSprite.cs b/DungeonShooting_Godot/src/test/TestOptimizeSprite.cs
index 490f373..4669358 100644
--- a/DungeonShooting_Godot/src/test/TestOptimizeSprite.cs
+++ b/DungeonShooting_Godot/src/test/TestOptimizeSprite.cs
@@ -2,36 +2,25 @@
public partial class TestOptimizeSprite : Node2D
{
- [Export()] public Texture2D Texture2D;
+ [Export()] public Texture2D[] ImageList;
public override void _Ready()
{
+ ImageCanvas.MaxHandlerTime = 16;
var imageCanvas = new ImageCanvas(1920, 1080);
- imageCanvas.Scale = new Vector2(4, 4);
- //imageCanvas.DrawImageInCanvas(Texture2D, 10, 30, 0, 0, 0, false);
- //var time = DateTime.Now;
- //imageCanvas.DrawImageInCanvas(Texture2D, 50, 30, 30, 0, 0, true);
- // GD.Print("useTime: " + (DateTime.Now - time).TotalMilliseconds);
- // var time2 = DateTime.Now;
- // //imageCanvas.DrawImageInCanvas(Texture2D, 100, 100, 0, 0, 0, false);
- // //imageCanvas.DrawImageInCanvas(Texture2D, 100, 100, 90, Texture2D.GetWidth() / 2, Texture2D.GetHeight() / 2, false);
- // imageCanvas.DrawImageInCanvas(Texture2D, 100, 100, 270, 0, 0, false);
- // //imageCanvas.DrawImageInCanvas(Texture2D, 100, 100, 90, 0, 0, false);
- // //imageCanvas.DrawImageInCanvas(Texture2D, 100, 100, 145, (int)(Texture2D.GetWidth() * 0.2f), (int)(Texture2D.GetHeight() * 0.2f), false);
- // //imageCanvas.DrawImageInCanvas(Texture2D, 140, 30, 270, 0, 0, true);
- //
- // GD.Print("useTime: " + (DateTime.Now - time2).TotalMilliseconds);
- for (int i = 0; i < 50; i++)
+ for (int i = 0; i < 10000; i++)
{
- for (int j = 0; j < 50; j++)
- {
- var centerX = Utils.RandomRangeInt(0, Texture2D.GetWidth() - 1);
- var centerY = Utils.RandomRangeInt(0, Texture2D.GetHeight() - 1);
- imageCanvas.DrawImageInCanvas(Texture2D, 30 + (i + 1) * 10, 30 + (j + 1) * 10, Utils.RandomRangeInt(0, 360), centerX, centerY, Utils.RandomBoolean());
- }
+ var texture = Utils.RandomChoose(ImageList);
+ var centerX = Utils.RandomRangeInt(0, texture.GetWidth() - 1);
+ var centerY = Utils.RandomRangeInt(0, texture.GetHeight() - 1);
+ var angle = Utils.RandomRangeInt(0, 360);
+ imageCanvas.DrawImageInCanvas(texture,
+ Utils.RandomRangeInt(0, imageCanvas.Width), Utils.RandomRangeInt(0, imageCanvas.Height),
+ angle, centerX, centerY, Utils.RandomBoolean()
+ );
}
-
+
AddChild(imageCanvas);
}