diff --git a/DungeonShooting_Godot/resource/theme/mainTheme.tres b/DungeonShooting_Godot/resource/theme/mainTheme.tres index a3f2a1e..2b30ad8 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_55nhs"] +[sub_resource type="Image" id="Image_rkg8f"] 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_55nhs") +image = SubResource("Image_rkg8f") [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_8hfn8"] +[sub_resource type="Image" id="Image_p7mig"] 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_8hfn8") +image = SubResource("Image_p7mig") [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_73ey7"] +[sub_resource type="Image" id="Image_whaq4"] 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_73ey7") +image = SubResource("Image_whaq4") [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_t6clc"] +[sub_resource type="Image" id="Image_acsc7"] 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_t6clc") +image = SubResource("Image_acsc7") [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_7qvk8"] +[sub_resource type="Image" id="Image_te5yy"] 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_7qvk8") +image = SubResource("Image_te5yy") [sub_resource type="StyleBoxFlat" id="57"] content_margin_left = 6.0 diff --git a/DungeonShooting_Godot/scene/Main.tscn b/DungeonShooting_Godot/scene/Main.tscn index 0b7e589..fd55225 100644 --- a/DungeonShooting_Godot/scene/Main.tscn +++ b/DungeonShooting_Godot/scene/Main.tscn @@ -39,6 +39,8 @@ anchor_bottom = 1.0 offset_right = -1438.0 offset_bottom = -808.0 +grow_horizontal = 2 +grow_vertical = 2 scale = Vector2(4, 4) stretch = true diff --git a/DungeonShooting_Godot/src/framework/activity/ActivityFallData.cs b/DungeonShooting_Godot/src/framework/activity/ActivityFallData.cs new file mode 100644 index 0000000..0d6c002 --- /dev/null +++ b/DungeonShooting_Godot/src/framework/activity/ActivityFallData.cs @@ -0,0 +1,19 @@ +using Godot; + +public class ActivityFallData +{ + //----------- 用于记录原始信息 -------------- + public bool UseOrigin = true; + public Shape2D OriginShape; + public Vector2 OriginPosition; + public float OriginRotation; + public Vector2 OriginScale; + public int OriginZIndex; + public Vector2 OriginSpritePosition; + public bool OriginCollisionEnable; + public Vector2 OriginCollisionPosition; + public float OriginCollisionRotation; + public Vector2 OriginCollisionScale; + public uint OriginCollisionMask; + public uint OriginCollisionLayer; +} \ No newline at end of file diff --git a/DungeonShooting_Godot/src/framework/activity/ActivityObject.cs b/DungeonShooting_Godot/src/framework/activity/ActivityObject.cs index caee3da..b8a65e0 100644 --- a/DungeonShooting_Godot/src/framework/activity/ActivityObject.cs +++ b/DungeonShooting_Godot/src/framework/activity/ActivityObject.cs @@ -45,7 +45,7 @@ /// /// 是否正在投抛过程中 /// - public bool IsThrowing => _fallData != null && !_fallData.IsFallOver; + public bool IsThrowing => _fallData != null && !_isFallOver; /// /// 阴影偏移 @@ -83,7 +83,7 @@ } /// - /// 当前物体的海拔高度, 如果大于0, 则会做自由落体运动 + /// 当前物体的海拔高度, 如果大于0, 则会做自由落体运动, 也就是执行投抛代码 /// public float Altitude { get; set; } @@ -93,10 +93,42 @@ public float VerticalSpeed { get; set; } /// - /// 物体旋转速度, 角度制 + /// 物体投抛时旋转速度, 角度制 /// - public float RotationDegreesSpeed { get; set; } + public float ThrowRotationDegreesSpeed { get; set; } + + /// + /// 落地之后是否回弹 + /// + public bool Bounce { get; set; } = true; + + /// + /// 物体下坠回弹的强度 + /// + public float BounceStrength { get; set; } = 0.5f; + + /// + /// 物体下坠回弹后的运动速度衰减量 + /// + public float BounceSpeed { get; set; } = 0.75f; + /// + /// 投抛状态下物体碰撞器大小, 如果为 (-1, -1), 则默认使用 AnimatedSprite 的默认动画第一帧的大小 + /// + public Vector2 ThrowCollisionSize { get; set; } = new Vector2(-1, -1); + + //是否是第一次下坠 + private bool _firstFall = true; + + //下坠是否已经结束 + private bool _isFallOver = true; + + //下坠状态碰撞器形状 + private RectangleShape2D _throwRectangleShape; + + //投抛移动速率 + private ExternalForce _throwForce; + //组件集合 private List> _components = new List>(); //是否初始化阴影 @@ -114,7 +146,7 @@ private ShaderMaterial _blendShaderMaterial; //存储投抛该物体时所产生的数据 - private ActivityThrowData _fallData; + private ActivityFallData _fallData; //所在层级 private RoomLayerEnum _currLayer; @@ -452,36 +484,52 @@ /// /// 将该节点投抛出去 /// - /// 碰撞器大小 - /// 起始坐标 (全局) - /// 起始高度 - /// 投抛角度 (0-360) - /// 移动速度 - /// 下坠速度 + /// 初始高度 /// 旋转速度 - /// 落地时是否回弹 - /// 落地回弹力度, 1为不消耗能量, 值越小回弹力度越小 - /// 落地回弹后的速度, 1为不消速度, 值越小回弹速度消耗越大 - public void Throw(Vector2 size, Vector2 start, float startHeight, float direction, float xSpeed, - float ySpeed, float rotate, bool bounce = false, float bounceStrength = 0.5f, float bounceSpeed = 0.8f) + /// 移动速率 + /// 纵轴速度 + public void Throw(float altitude, float verticalSpeed, Vector2 velocity, float rotate) { - GlobalPosition = start; - VerticalSpeed = ySpeed; - RotationDegreesSpeed = rotate; - Altitude = startHeight; - // _fallData.Bounce = bounce; - // _fallData.BounceStrength = bounceStrength; - // _fallData.BounceSpeed = bounceSpeed; - // - // _fallData.RectangleShape.Size = _fallData.Size * 0.5f; + var parent = GetParent(); + if (parent == null || parent != GameApplication.Instance.RoomManager.YSortLayer) + { + GameApplication.Instance.RoomManager.YSortLayer.AddChild(this); + } + + Altitude = altitude; + VerticalSpeed = verticalSpeed; + ThrowRotationDegreesSpeed = rotate; + if (_throwForce != null) + { + MoveController.RemoveForce(_throwForce); + } + + _throwForce = new ExternalForce("throw"); + _throwForce.Velocity = velocity; + MoveController.AddConstantForce(_throwForce); } /// + /// 将该节点投抛出去 + /// + /// 初始位置 + /// 初始高度 + /// 旋转速度 + /// 移动速率 + /// 纵轴速度 + public void Throw(Vector2 position, float altitude, float verticalSpeed, Vector2 velocity, float rotate) + { + GlobalPosition = position; + Throw(altitude, verticalSpeed, velocity, rotate); + } + + + /// /// 强制停止投抛运动 /// public void StopThrow() { - _fallData.IsFallOver = true; + _isFallOver = true; RestoreCollision(); } @@ -574,29 +622,32 @@ { if (_fallData == null) { - _fallData = new ActivityThrowData(); + _fallData = new ActivityFallData(); } - if (_fallData.IsFallOver) // 没有处于下坠状态, 则进入下坠状态 + if (_isFallOver) // 没有处于下坠状态, 则进入下坠状态 { SetFallCollision(); - _fallData.IsFallOver = false; - _fallData.FirstFall = true; - _fallData.Size = new Vector2(10, 10); - _fallData.Bounce = true; - _fallData.BounceStrength = 0.5f; - _fallData.BounceSpeed = 0.8f; + _isFallOver = false; + _firstFall = true; _hasResilienceVerticalSpeed = false; _resilienceVerticalSpeed = 0; - _fallData.RectangleShape.Size = _fallData.Size * 0.5f; + if (ThrowCollisionSize.X == -1f && ThrowCollisionSize.Y == -1) + { + _throwRectangleShape.Size = GetDefaultTexture().GetSize(); + } + else + { + _throwRectangleShape.Size = ThrowCollisionSize; + } Throw(); } else { - GlobalRotationDegrees = GlobalRotationDegrees + RotationDegreesSpeed * newDelta; + GlobalRotationDegrees = GlobalRotationDegrees + ThrowRotationDegreesSpeed * newDelta; CalcThrowAnimatedPosition(); var ysp = VerticalSpeed; @@ -623,107 +674,51 @@ //落地判断 if (Altitude <= 0) { - _fallData.IsFallOver = true; + _isFallOver = true; Altitude = 0; //第一次接触地面 - if (_fallData.FirstFall) + if (_firstFall) { - _fallData.FirstFall = false; + _firstFall = false; OnFirstFallToGround(); } + MoveController.ScaleAllForce(BounceSpeed); //如果落地高度不够低, 再抛一次 - if (_fallData.Bounce && (!_hasResilienceVerticalSpeed || _resilienceVerticalSpeed > 1)) + if (Bounce && (!_hasResilienceVerticalSpeed || _resilienceVerticalSpeed > 1)) { - Velocity = Velocity * _fallData.BounceSpeed; if (!_hasResilienceVerticalSpeed) { _hasResilienceVerticalSpeed = true; - _resilienceVerticalSpeed = -VerticalSpeed * _fallData.BounceStrength; + _resilienceVerticalSpeed = -VerticalSpeed * BounceStrength; } else { - _resilienceVerticalSpeed = _resilienceVerticalSpeed * _fallData.BounceStrength; + _resilienceVerticalSpeed = _resilienceVerticalSpeed * BounceStrength; } VerticalSpeed = _resilienceVerticalSpeed; - RotationDegreesSpeed = RotationDegreesSpeed * _fallData.BounceStrength; - _fallData.IsFallOver = false; + ThrowRotationDegreesSpeed = ThrowRotationDegreesSpeed * BounceStrength; + _isFallOver = false; OnFallToGround(); } else //结束 { VerticalSpeed = 0; + + if (_throwForce != null) + { + MoveController.RemoveForce(_throwForce); + _throwForce = null; + } + OnFallToGround(); ThrowOver(); } } } } - - /* - //投抛计算 - if (_fallData != null && !_fallData.IsFallOver) - { - GlobalRotationDegrees = GlobalRotationDegrees + _fallData.RotateSpeed * newDelta; - CalcThrowAnimatedPosition(); - - var ysp = _fallData.YSpeed; - - Altitude += _fallData.YSpeed * newDelta; - _fallData.YSpeed -= GameConfig.G * newDelta; - - //当高度大于16时, 显示在所有物体上 - if (Altitude >= 16) - { - AnimatedSprite.ZIndex = 20; - } - else - { - AnimatedSprite.ZIndex = 0; - } - - //达到最高点 - if (ysp * _fallData.YSpeed < 0) - { - OnThrowMaxHeight(Altitude); - } - - //落地判断 - if (Altitude <= 0) - { - _fallData.IsFallOver = true; - - //第一次接触地面 - if (_fallData.FirstFallOver) - { - _fallData.FirstFallOver = false; - OnFirstFallToGround(); - } - - //如果落地高度不够低, 再抛一次 - if (_fallData.StartYSpeed > 1 && _fallData.Bounce) - { - _fallData.StartPosition = Position; - Altitude = 0; - _fallData.XSpeed = _fallData.StartXSpeed = _fallData.StartXSpeed * _fallData.BounceSpeed; - _fallData.YSpeed = _fallData.StartYSpeed = _fallData.StartYSpeed * _fallData.BounceStrength; - _fallData.RotateSpeed = _fallData.RotateSpeed * _fallData.BounceStrength; - _fallData.ThrowForce.Velocity *= _fallData.BounceSpeed; - _fallData.FirstFallOver = false; - _fallData.IsFallOver = false; - - OnFallToGround(); - } - else //结束 - { - OnFallToGround(); - ThrowOver(); - } - } - } - */ //阴影 if (ShadowSprite.Visible) @@ -923,7 +918,7 @@ ShadowSprite.Rotation = 0; //阴影位置计算 var pos = AnimatedSprite.GlobalPosition; - if (_fallData != null && !_fallData.IsFallOver) + if (_fallData != null && !_isFallOver) { ShadowSprite.GlobalPosition = new Vector2(pos.X + ShadowOffset.X, pos.Y + ShadowOffset.Y + Altitude); } @@ -1027,12 +1022,12 @@ _fallData.OriginCollisionMask = CollisionMask; _fallData.OriginCollisionLayer = CollisionLayer; - if (_fallData.RectangleShape == null) + if (_throwRectangleShape == null) { - _fallData.RectangleShape = new RectangleShape2D(); + _throwRectangleShape = new RectangleShape2D(); } - Collision.Shape = _fallData.RectangleShape; + Collision.Shape = _throwRectangleShape; Collision.Position = Vector2.Zero; Collision.Rotation = 0; Collision.Scale = Vector2.One; diff --git a/DungeonShooting_Godot/src/framework/activity/ActivityThrowData.cs b/DungeonShooting_Godot/src/framework/activity/ActivityThrowData.cs deleted file mode 100644 index 3eeacf4..0000000 --- a/DungeonShooting_Godot/src/framework/activity/ActivityThrowData.cs +++ /dev/null @@ -1,54 +0,0 @@ -using Godot; - -public class ActivityThrowData -{ - /// - /// 是否是第一次下坠 - /// - public bool FirstFall = true; - - /// - /// 下坠是否已经结束 - /// - public bool IsFallOver = true; - - /// - /// 物体大小 - /// - public Vector2 Size = Vector2.One; - - /// - /// 碰撞器形状 - /// - public RectangleShape2D RectangleShape; - - /// - /// 落地之后是否弹跳 - /// - public bool Bounce; - - /// - /// 回弹的强度 - /// - public float BounceStrength = 0.5f; - - /// - /// 回弹后的速度 - /// - public float BounceSpeed = 0.8f; - - //----------- 用于记录原始信息 -------------- - public bool UseOrigin = true; - public Shape2D OriginShape; - public Vector2 OriginPosition; - public float OriginRotation; - public Vector2 OriginScale; - public int OriginZIndex; - public Vector2 OriginSpritePosition; - public bool OriginCollisionEnable; - public Vector2 OriginCollisionPosition; - public float OriginCollisionRotation; - public Vector2 OriginCollisionScale; - public uint OriginCollisionMask; - public uint OriginCollisionLayer; -} \ No newline at end of file diff --git a/DungeonShooting_Godot/src/framework/activity/ExternalForce.cs b/DungeonShooting_Godot/src/framework/activity/ExternalForce.cs index cfd4ce9..e6b1d2f 100644 --- a/DungeonShooting_Godot/src/framework/activity/ExternalForce.cs +++ b/DungeonShooting_Godot/src/framework/activity/ExternalForce.cs @@ -22,7 +22,7 @@ public float Resistance { get; set; } = 5; /// - /// 当速度到达 0 后是否自动销毁 + /// 当速度到达 0 后是否自动销毁, 默认 true /// public bool AutoDestroy { get; set; } = true; diff --git a/DungeonShooting_Godot/src/framework/activity/components/MoveController.cs b/DungeonShooting_Godot/src/framework/activity/components/MoveController.cs index d7b3b59..3d84323 100644 --- a/DungeonShooting_Godot/src/framework/activity/components/MoveController.cs +++ b/DungeonShooting_Godot/src/framework/activity/components/MoveController.cs @@ -32,6 +32,32 @@ private Vector2 _basisVelocity = Vector2.Zero; /// + /// 缩放所有力对象, 包括基础速率 + /// + public void ScaleAllForce(float scale) + { + foreach (var externalForce in _forceList) + { + externalForce.Velocity *= scale; + } + + BasisVelocity *= scale; + } + + /// + /// 设置所有力对象, 包括基础速率 + /// + public void SetAllForce(Vector2 value) + { + foreach (var externalForce in _forceList) + { + externalForce.Velocity = value; + } + + BasisVelocity = value; + } + + /// /// 获取所有外力对象 /// public ExternalForce[] GetAllForce() @@ -53,11 +79,12 @@ } /// - /// 根据名称添加一个外力, 并返回创建的外力的对象, 如果存在这个名称的外力, 移除之前的外力 + /// 根据名称添加一个外力, 并返回创建的外力的对象, 如果存在这个名称的外力, 移除之前的外力, 当速率变为 0 时不会自动销毁 /// public ExternalForce AddConstantForce(string name) { var f = new ExternalForce(name); + f.AutoDestroy = false; AddConstantForce(f); return f; } @@ -146,18 +173,27 @@ //先调用更新 var externalForces = _forceList.ToArray(); - foreach (var fore in externalForces) + for (var i = 0; i < externalForces.Length; i++) { - if (fore.Enable) - fore.PhysicsProcess(delta); + var force = externalForces[i]; + if (force.Enable) + { + force.PhysicsProcess(delta); + //自动销毁 + if (force.AutoDestroy && force.Velocity == Vector2.Zero) + { + _forceList.Remove(force); + externalForces[i] = null; + } + } } //外力总和 var finallyEf = new Vector2(); - foreach (var fore in externalForces) + foreach (var force in externalForces) { - if (fore.Enable) - finallyEf += fore.Velocity; + if (force != null && force.Enable) + finallyEf += force.Velocity; } //最终速率 @@ -180,28 +216,27 @@ } //调整外力速率 - if (externalForces.Length > 0) + for (var i = 0; i < _forceList.Count; i++) { - for (var i = 0; i < _forceList.Count; i++) + var force = _forceList[i]; + if (force.Enable) { - var force = _forceList[i]; - if (force.Enable) + var velocity = force.Velocity; + force.Velocity = new Vector2( + newVelocity.X == 0f && velocity.X * finallyVelocity.X > 0 ? 0 : velocity.X, + newVelocity.Y == 0f && velocity.Y * finallyVelocity.Y > 0 ? 0 : velocity.Y + ); + + //力速度衰减 + if (force.Resistance != 0) { - var velocity = force.Velocity; - force.Velocity = new Vector2( - newVelocity.X == 0f && velocity.X * finallyVelocity.X > 0 ? 0 : velocity.X, - newVelocity.Y == 0f && velocity.Y * finallyVelocity.Y > 0 ? 0 : velocity.Y - ); + force.Velocity = force.Velocity.MoveToward(Vector2.Zero, force.Resistance * delta); + } - if (force.Resistance != 0) - { - force.Velocity = force.Velocity.MoveToward(Vector2.Zero, force.Resistance * delta); - } - - if (force.AutoDestroy && force.Velocity == Vector2.Zero) - { - _forceList.RemoveAt(i--); - } + //自动销毁 + if (force.AutoDestroy && force.Velocity == Vector2.Zero) + { + _forceList.RemoveAt(i--); } } } diff --git a/DungeonShooting_Godot/src/game/item/weapon/Weapon.cs b/DungeonShooting_Godot/src/game/item/weapon/Weapon.cs index c15e166..8d24a04 100644 --- a/DungeonShooting_Godot/src/game/item/weapon/Weapon.cs +++ b/DungeonShooting_Godot/src/game/item/weapon/Weapon.cs @@ -192,6 +192,8 @@ CurrAmmo = Attribute.AmmoCapacity; //剩余弹药量 ResidueAmmo = Mathf.Min(Attribute.StandbyAmmoCapacity + CurrAmmo, Attribute.MaxAmmoCapacity) - CurrAmmo; + + ThrowCollisionSize = new Vector2(20, 15); } /// @@ -928,9 +930,7 @@ //播放互动效果 if (flag) { - Throw(new Vector2(30, 15), GlobalPosition, 0, 0, - Utils.RandomRangeInt(-20, 20), Utils.RandomRangeInt(20, 50), - Utils.RandomRangeInt(-180, 180)); + Throw(GlobalPosition, 0, Utils.RandomRangeInt(20, 50), Vector2.Zero, Utils.RandomRangeInt(-180, 180)); } } else //没有武器 @@ -986,10 +986,10 @@ var startHeight = 6; var direction = angle + Utils.RandomRangeInt(-20, 20); - var xf = 20; + var velocity = new Vector2(20, 0).Rotated(direction * Mathf.Pi / 180); var yf = Utils.RandomRangeInt(50, 70); var rotate = Utils.RandomRangeInt(-90, 90); - Throw(new Vector2(30, 15), startPosition, startHeight, direction, xf, yf, rotate, true); + Throw(startPosition, startHeight, yf, velocity, rotate); } protected override void OnThrowOver() diff --git a/DungeonShooting_Godot/src/game/item/weapon/gun/Gun.cs b/DungeonShooting_Godot/src/game/item/weapon/gun/Gun.cs index 8711f36..5a2c9f0 100644 --- a/DungeonShooting_Godot/src/game/item/weapon/gun/Gun.cs +++ b/DungeonShooting_Godot/src/game/item/weapon/gun/Gun.cs @@ -99,14 +99,14 @@ protected override void OnFire() { //创建一个弹壳 + var startPos = Master.GlobalPosition; var startHeight = 6; var direction = GlobalRotationDegrees + Utils.RandomRangeInt(-30, 30) + 180; - var xf = Utils.RandomRangeInt(20, 60); - var yf = Utils.RandomRangeInt(60, 120); + var verticalSpeed = Utils.RandomRangeInt(60, 120); + var velocity = new Vector2(Utils.RandomRangeInt(20, 60), 0).Rotated(direction * Mathf.Pi / 180); var rotate = Utils.RandomRangeInt(-720, 720); - var shell = ActivityObject.Create(ActivityIdPrefix.Shell + "0001"); - shell.PutDown(RoomLayerEnum.YSortLayer); - shell.Throw(new Vector2(10, 5), Master.GlobalPosition, startHeight, direction, xf, yf, rotate, true); + var shell = Create(ActivityIdPrefix.Shell + "0001"); + shell.Throw(startPos, startHeight, verticalSpeed, velocity, rotate); if (Master == GameApplication.Instance.RoomManager.Player) { diff --git a/DungeonShooting_Godot/src/game/item/weapon/gun/Shotgun.cs b/DungeonShooting_Godot/src/game/item/weapon/gun/Shotgun.cs index 74183ad..1f8d8dd 100644 --- a/DungeonShooting_Godot/src/game/item/weapon/gun/Shotgun.cs +++ b/DungeonShooting_Godot/src/game/item/weapon/gun/Shotgun.cs @@ -63,14 +63,14 @@ protected override void OnFire() { //创建一个弹壳 - var startPos = GlobalPosition + new Vector2(0, 5); + var startPos = Master.GlobalPosition; var startHeight = 6; var direction = GlobalRotationDegrees + Utils.RandomRangeInt(-30, 30) + 180; - var xf = Utils.RandomRangeInt(20, 60); - var yf = Utils.RandomRangeInt(60, 120); + var verticalSpeed = Utils.RandomRangeInt(60, 120); + var velocity = new Vector2(Utils.RandomRangeInt(20, 60), 0).Rotated(direction * Mathf.Pi / 180); var rotate = Utils.RandomRangeInt(-720, 720); - var shell = ActivityObject.Create(ActivityIdPrefix.Shell + "0001");; - shell.Throw(new Vector2(5, 10), startPos, startHeight, direction, xf, yf, rotate, true); + var shell = Create(ActivityIdPrefix.Shell + "0001"); + shell.Throw(startPos, startHeight, verticalSpeed, velocity, rotate); if (Master == GameApplication.Instance.RoomManager.Player) { diff --git a/DungeonShooting_Godot/src/game/item/weapon/shell/ShellCase.cs b/DungeonShooting_Godot/src/game/item/weapon/shell/ShellCase.cs index 58cd68e..aafcb2d 100644 --- a/DungeonShooting_Godot/src/game/item/weapon/shell/ShellCase.cs +++ b/DungeonShooting_Godot/src/game/item/weapon/shell/ShellCase.cs @@ -16,11 +16,13 @@ { AnimationPlayer = GetNode("AnimationPlayer"); ShadowOffset = new Vector2(0, 1); + ThrowCollisionSize = new Vector2(5, 5); } protected override void OnThrowOver() { //AwaitDestroy(); + MoveController.SetAllForce(Vector2.Zero); AnimationPlayer.Play("flicker"); } diff --git a/DungeonShooting_Godot/src/game/room/RoomManager.cs b/DungeonShooting_Godot/src/game/room/RoomManager.cs index fa2f296..fa9b674 100644 --- a/DungeonShooting_Godot/src/game/room/RoomManager.cs +++ b/DungeonShooting_Godot/src/game/room/RoomManager.cs @@ -65,22 +65,21 @@ _dungeonGenerator = new DungeonGenerator(); _dungeonGenerator.Generate(); + //填充地牢 + _autoTileConfig = new AutoTileConfig(); + _dungeonTile = new DungeonTile(TileRoot); + _dungeonTile.AutoFillRoomTile(_autoTileConfig, _dungeonGenerator.StartRoom); - // //填充地牢 - // _autoTileConfig = new AutoTileConfig(); - // _dungeonTile = new DungeonTile(TileRoot); - // _dungeonTile.AutoFillRoomTile(_autoTileConfig, _dungeonGenerator.StartRoom); - // - // //生成寻路网格, 这一步操作只生成过道的导航 - // _dungeonTile.GenerateNavigationPolygon(DungeonTile.AisleFloorMapLayer); - // //挂载过道导航区域 - // _dungeonTile.MountNavigationPolygon(this); - // //过道导航区域数据 - // _roomStaticNavigationList.AddRange(_dungeonTile.GetPolygonData()); - // //门导航区域数据 - // _roomStaticNavigationList.AddRange(_dungeonTile.GetConnectDoorPolygonData()); - // //初始化所有房间 - // _dungeonGenerator.EachRoom(InitRoom); + //生成寻路网格, 这一步操作只生成过道的导航 + _dungeonTile.GenerateNavigationPolygon(DungeonTile.AisleFloorMapLayer); + //挂载过道导航区域 + _dungeonTile.MountNavigationPolygon(this); + //过道导航区域数据 + _roomStaticNavigationList.AddRange(_dungeonTile.GetPolygonData()); + //门导航区域数据 + _roomStaticNavigationList.AddRange(_dungeonTile.GetConnectDoorPolygonData()); + //初始化所有房间 + _dungeonGenerator.EachRoom(InitRoom); GD.Print("生成地牢用时: " + (DateTime.Now.Ticks - nowTicks) / 10000 + "毫秒"); @@ -97,7 +96,7 @@ var weapon = ActivityObject.Create(ActivityIdPrefix.Weapon + "0001"); weapon.PutDown(RoomLayerEnum.NormalLayer); - weapon.VerticalSpeed = 100; + weapon.Altitude = 32; // for (int i = 0; i < 10; i++) // {