diff --git a/DungeonShooting_Godot/DungeonShooting.csproj b/DungeonShooting_Godot/DungeonShooting.csproj index dd1e7a3..cea5645 100644 --- a/DungeonShooting_Godot/DungeonShooting.csproj +++ b/DungeonShooting_Godot/DungeonShooting.csproj @@ -1,4 +1,4 @@ - + net6.0 true diff --git a/DungeonShooting_Godot/DungeonShooting.csproj.old.1 b/DungeonShooting_Godot/DungeonShooting.csproj.old.1 new file mode 100644 index 0000000..dd1e7a3 --- /dev/null +++ b/DungeonShooting_Godot/DungeonShooting.csproj.old.1 @@ -0,0 +1,6 @@ + + + net6.0 + true + + \ No newline at end of file diff --git a/DungeonShooting_Godot/addons/dungeonShooting_plugin/ActivityObjectTemplate.cs b/DungeonShooting_Godot/addons/dungeonShooting_plugin/ActivityObjectTemplate.cs index 16fcbb8..28640fa 100644 --- a/DungeonShooting_Godot/addons/dungeonShooting_plugin/ActivityObjectTemplate.cs +++ b/DungeonShooting_Godot/addons/dungeonShooting_plugin/ActivityObjectTemplate.cs @@ -86,12 +86,12 @@ sprite.Material = material; } - var animatedSprite = GetNodeOrNull("AnimatedSprite2D"); + var animatedSprite = GetNodeOrNull("AnimatedSprite"); //创建 Sprite2D if (animatedSprite == null) { animatedSprite = new AnimatedSprite2D(); - animatedSprite.Name = "AnimatedSprite2D"; + animatedSprite.Name = "AnimatedSprite"; var material = ResourceManager.Load(ResourcePath.resource_materlal_Blend_tres, false); material.SetShaderParameter("blend", new Color(1, 1, 1, 1)); diff --git a/DungeonShooting_Godot/prefab/role/Player.tscn b/DungeonShooting_Godot/prefab/role/Player.tscn index 03482bc..0e24752 100644 --- a/DungeonShooting_Godot/prefab/role/Player.tscn +++ b/DungeonShooting_Godot/prefab/role/Player.tscn @@ -10,7 +10,7 @@ shader_parameter/blend = Color(0, 0, 0, 0.470588) shader_parameter/schedule = 1 -[sub_resource type="ShaderMaterial" id="ShaderMaterial_e5y30"] +[sub_resource type="ShaderMaterial" id="ShaderMaterial_0gb8j"] resource_local_to_scene = true shader = ExtResource("2_nvo1u") shader_parameter/blend = Color(1, 1, 1, 1) @@ -64,7 +64,7 @@ atlas = ExtResource("3_55mk2") region = Rect2(48, 48, 16, 24) -[sub_resource type="SpriteFrames" id="SpriteFrames_snvk2"] +[sub_resource type="SpriteFrames" id="SpriteFrames_3poqo"] animations = [{ "frames": [{ "duration": 1.0, @@ -128,9 +128,9 @@ [node name="ShadowSprite" parent="." index="0"] material = SubResource("ShaderMaterial_vejn8") -[node name="AnimatedSprite2D" parent="." index="2"] -material = SubResource("ShaderMaterial_e5y30") -sprite_frames = SubResource("SpriteFrames_snvk2") +[node name="AnimatedSprite" parent="." index="2"] +material = SubResource("ShaderMaterial_0gb8j") +sprite_frames = SubResource("SpriteFrames_3poqo") animation = &"idle" [node name="Collision" parent="." index="3"] diff --git a/DungeonShooting_Godot/prefab/role/Role.tscn b/DungeonShooting_Godot/prefab/role/Role.tscn index 3e7c9f4..4ea08da 100644 --- a/DungeonShooting_Godot/prefab/role/Role.tscn +++ b/DungeonShooting_Godot/prefab/role/Role.tscn @@ -33,7 +33,7 @@ [node name="BackMountPoint" type="Marker2D" parent="."] position = Vector2(0, -10) -[node name="AnimatedSprite2D" type="AnimatedSprite2D" parent="."] +[node name="AnimatedSprite" type="AnimatedSprite2D" parent="."] material = SubResource("ShaderMaterial_yif6x") position = Vector2(0, -12) diff --git a/DungeonShooting_Godot/prefab/weapon/Knife.tscn b/DungeonShooting_Godot/prefab/weapon/Knife.tscn deleted file mode 100644 index ab6eed6..0000000 --- a/DungeonShooting_Godot/prefab/weapon/Knife.tscn +++ /dev/null @@ -1,83 +0,0 @@ -[gd_scene load_steps=10 format=2] - -[ext_resource path="res://prefab/weapon/Weapon.tscn" type="PackedScene" id=1] -[ext_resource path="res://resource/sprite/gun/knife1.png" type="Texture2D" id=2] -[ext_resource path="res://resource/materlal/Blend.gdshader" type="Shader" id=3] -[ext_resource path="res://prefab/FanCollisionShape.tscn" type="PackedScene" id=4] - -[sub_resource type="ShaderMaterial" id=2] -resource_local_to_scene = true -shader = ExtResource( 3 ) -shader_param/blend = Color( 1, 1, 1, 1 ) -shader_param/schedule = 1.0 - -[sub_resource type="ShaderMaterial" id=3] -resource_local_to_scene = true -shader = ExtResource( 3 ) -shader_param/blend = Color( 1, 1, 1, 1 ) -shader_param/schedule = 0.0 - -[sub_resource type="SpriteFrames" id=4] -animations = [ { -"sprite_frames": [ ExtResource( 2 ) ], -"loop": true, -"name": "default", -"speed": 5.0 -} ] - -[sub_resource type="Animation" id=5] -length = 0.001 -tracks/0/type = "value" -tracks/0/path = NodePath("AnimatedSprite2D:material:shader_param/schedule") -tracks/0/interp = 1 -tracks/0/loop_wrap = true -tracks/0/imported = false -tracks/0/enabled = true -tracks/0/keys = { -"times": PackedFloat32Array( 0 ), -"transitions": PackedFloat32Array( 1 ), -"update": 0, -"values": [ 0.0 ] -} - -[sub_resource type="Animation" id=6] -resource_name = "hit" -length = 0.15 -step = 0.05 -tracks/0/type = "value" -tracks/0/path = NodePath("AnimatedSprite2D:material:shader_param/schedule") -tracks/0/interp = 1 -tracks/0/loop_wrap = true -tracks/0/imported = false -tracks/0/enabled = true -tracks/0/keys = { -"times": PackedFloat32Array( 0, 0.05, 0.15 ), -"transitions": PackedFloat32Array( 1, 1, 1 ), -"update": 0, -"values": [ 1.0, 1.0, 0.0 ] -} - -[node name="Knife" instance=ExtResource( 1 )] - -[node name="ShadowSprite" parent="." index="0"] -material = SubResource( 2 ) - -[node name="AnimatedSprite2D" parent="." index="1"] -material = SubResource( 3 ) -position = Vector2( 0, 0 ) -sprite_frames = SubResource( 4 ) - -[node name="HitArea" type="Area2D" parent="." index="4"] -collision_layer = 0 -collision_mask = 0 -monitoring = false -monitorable = false - -[node name="FanCollisionShape" parent="HitArea" index="0" instance=ExtResource( 4 )] -rotation = -1.5708 -scale = Vector2( 3, 3 ) - -[node name="AnimationPlayer" type="AnimationPlayer" parent="HitArea" index="1"] -root_node = NodePath("../..") -anims/RESET = SubResource( 5 ) -anims/hit = SubResource( 6 ) diff --git a/DungeonShooting_Godot/prefab/weapon/Weapon.tscn b/DungeonShooting_Godot/prefab/weapon/Weapon.tscn index 263c324..57b8b49 100644 --- a/DungeonShooting_Godot/prefab/weapon/Weapon.tscn +++ b/DungeonShooting_Godot/prefab/weapon/Weapon.tscn @@ -1,97 +1,93 @@ -[gd_scene load_steps=8 format=2] +[gd_scene load_steps=9 format=3 uid="uid://cguea7a1vauvm"] -[ext_resource path="res://resource/materlal/Blend.gdshader" type="Shader" id=1] -[ext_resource path="res://addons/dungeonShooting_plugin/ActivityObjectTemplate.cs" type="Script" id=3] +[ext_resource type="Shader" path="res://resource/materlal/Blend.gdshader" id="1"] +[ext_resource type="Script" path="res://addons/dungeonShooting_plugin/ActivityObjectTemplate.cs" id="3"] -[sub_resource type="ShaderMaterial" id=7] +[sub_resource type="ShaderMaterial" id="ShaderMaterial_cbiyh"] resource_local_to_scene = true -shader = ExtResource( 1 ) -shader_param/blend = Color( 0, 0, 0, 0.470588 ) -shader_param/schedule = 1 +shader = ExtResource("1") +shader_parameter/blend = Color(0, 0, 0, 0.470588) +shader_parameter/schedule = 1 -[sub_resource type="ShaderMaterial" id=8] +[sub_resource type="ShaderMaterial" id="ShaderMaterial_o36tv"] resource_local_to_scene = true -shader = ExtResource( 1 ) -shader_param/blend = Color( 1, 1, 1, 1 ) -shader_param/schedule = 0.0 +shader = ExtResource("1") +shader_parameter/blend = Color(1, 1, 1, 1) +shader_parameter/schedule = 0 -[sub_resource type="RectangleShape2D" id=1] -extents = Vector2( 7.8, 3.5 ) +[sub_resource type="RectangleShape2D" id="RectangleShape2D_3p5jk"] +size = Vector2(15.6, 7) -[sub_resource type="Animation" id=9] -length = 0.001 -tracks/0/type = "value" -tracks/0/path = NodePath("AnimatedSprite2D:material:shader_param/schedule") -tracks/0/interp = 1 -tracks/0/loop_wrap = true -tracks/0/imported = false -tracks/0/enabled = true -tracks/0/keys = { -"times": PackedFloat32Array( 0 ), -"transitions": PackedFloat32Array( 1 ), -"update": 0, -"values": [ 0.0 ] -} -tracks/1/type = "value" -tracks/1/path = NodePath("AnimatedSprite2D:material:shader_param/blend") -tracks/1/interp = 1 -tracks/1/loop_wrap = true -tracks/1/imported = false -tracks/1/enabled = true -tracks/1/keys = { -"times": PackedFloat32Array( 0 ), -"transitions": PackedFloat32Array( 1 ), -"update": 0, -"values": [ Color( 1, 1, 1, 1 ) ] -} - -[sub_resource type="Animation" id=11] +[sub_resource type="Animation" id="Animation_3piau"] resource_name = "floodlight" length = 3.0 -loop = true +loop_mode = 1 tracks/0/type = "value" -tracks/0/path = NodePath("AnimatedSprite2D:material:shader_param/schedule") -tracks/0/interp = 1 -tracks/0/loop_wrap = true tracks/0/imported = false tracks/0/enabled = true +tracks/0/path = NodePath("AnimatedSprite:material:shader_parameter/schedule") +tracks/0/interp = 1 +tracks/0/loop_wrap = true tracks/0/keys = { -"times": PackedFloat32Array( 0, 2.3, 2.6, 2.7, 3 ), -"transitions": PackedFloat32Array( 1, 1, 1, 1, 1 ), +"times": PackedFloat32Array(0, 2.3, 2.6, 2.7, 3), +"transitions": PackedFloat32Array(1, 1, 1, 1, 1), "update": 0, -"values": [ 0.0, 0.0, 0.5, 0.5, 0.0 ] +"values": [0, 0, 0.5, 0.5, 0] +} + +[sub_resource type="Animation" id="Animation_x136i"] +length = 0.001 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath("AnimatedSprite:material:shader_parameter/schedule") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 0, +"values": [0] +} + +[sub_resource type="AnimationLibrary" id="AnimationLibrary_trkjd"] +_data = { +"RESET": SubResource("Animation_x136i"), +"floodlight": SubResource("Animation_3piau") } [node name="Weapon" type="Node"] -script = ExtResource( 3 ) +script = ExtResource("3") [node name="ShadowSprite" type="Sprite2D" parent="."] -material = SubResource( 7 ) +z_index = -5 +material = SubResource("ShaderMaterial_cbiyh") -[node name="AnimatedSprite2D" type="AnimatedSprite2D" parent="."] -material = SubResource( 8 ) -position = Vector2( 0.4, -2.6 ) -scale = Vector2( 0.8, 0.8 ) +[node name="AnimatedSprite" type="AnimatedSprite2D" parent="."] +material = SubResource("ShaderMaterial_o36tv") +position = Vector2(0.4, -2.6) +scale = Vector2(0.8, 0.8) [node name="WeaponBody" type="Area2D" parent="."] collision_layer = 4 collision_mask = 0 [node name="OriginPoint" type="Marker2D" parent="WeaponBody"] -position = Vector2( -3.60001, -1.1 ) +position = Vector2(-3.6, -1.1) [node name="ShellPoint" type="Marker2D" parent="WeaponBody"] -position = Vector2( -2.60001, -2.60001 ) +position = Vector2(-2.6, -2.6) [node name="FirePoint" type="Marker2D" parent="WeaponBody"] -position = Vector2( 7.39999, -1.1 ) +position = Vector2(7.4, -1.1) [node name="Collision" type="CollisionShape2D" parent="WeaponBody"] -position = Vector2( 0.59999, 0.199997 ) -shape = SubResource( 1 ) +position = Vector2(0.6, 0.2) +shape = SubResource("RectangleShape2D_3p5jk") [node name="Collision" type="CollisionShape2D" parent="."] [node name="AnimationPlayer" type="AnimationPlayer" parent="."] -anims/RESET = SubResource( 9 ) -anims/floodlight = SubResource( 11 ) +libraries = { +"": SubResource("AnimationLibrary_trkjd") +} diff --git a/DungeonShooting_Godot/prefab/weapon/bullet/Bullet.tscn b/DungeonShooting_Godot/prefab/weapon/bullet/Bullet.tscn index af578ae..96cd5a6 100644 --- a/DungeonShooting_Godot/prefab/weapon/bullet/Bullet.tscn +++ b/DungeonShooting_Godot/prefab/weapon/bullet/Bullet.tscn @@ -1,55 +1,54 @@ -[gd_scene load_steps=8 format=2] +[gd_scene load_steps=8 format=3 uid="uid://dlj2qtrqxph0a"] -[ext_resource path="res://addons/dungeonShooting_plugin/ActivityObjectTemplate.cs" type="Script" id=1] -[ext_resource path="res://resource/materlal/Blend.gdshader" type="Shader" id=2] -[ext_resource path="res://resource/sprite/bullet/bullet.png" type="Texture2D" id=3] +[ext_resource type="Script" path="res://addons/dungeonShooting_plugin/ActivityObjectTemplate.cs" id="1"] +[ext_resource type="Shader" path="res://resource/materlal/Blend.gdshader" id="2"] +[ext_resource type="Texture2D" uid="uid://bu0b11hiuecxy" path="res://resource/sprite/bullet/bullet.png" id="3"] -[sub_resource type="ShaderMaterial" id=3] +[sub_resource type="ShaderMaterial" id="ShaderMaterial_5a4f2"] resource_local_to_scene = true -shader = ExtResource( 2 ) -shader_param/blend = Color( 0, 0, 0, 0.470588 ) -shader_param/schedule = 1 +shader = ExtResource("2") +shader_parameter/blend = Color(0, 0, 0, 0.470588) +shader_parameter/schedule = 1 -[sub_resource type="ShaderMaterial" id=4] +[sub_resource type="ShaderMaterial" id="ShaderMaterial_o0655"] resource_local_to_scene = true -shader = ExtResource( 2 ) -shader_param/blend = Color( 1, 1, 1, 1 ) -shader_param/schedule = 0.0 +shader = ExtResource("2") +shader_parameter/blend = Color(1, 1, 1, 1) +shader_parameter/schedule = 0 -[sub_resource type="SpriteFrames" id=1] -animations = [ { -"sprite_frames": [ ExtResource( 3 ) ], +[sub_resource type="SpriteFrames" id="SpriteFrames_5wvmf"] +animations = [{ +"frames": [{ +"duration": 1.0, +"texture": ExtResource("3") +}], "loop": true, -"name": "default", -"speed": 30.0 -} ] +"name": &"default", +"speed": 5.0 +}] -[sub_resource type="RectangleShape2D" id=2] -extents = Vector2( 6, 2 ) +[sub_resource type="RectangleShape2D" id="RectangleShape2D_c0onq"] +size = Vector2(44.72, 12) [node name="Bullet" type="Node"] -script = ExtResource( 1 ) +script = ExtResource("1") collision_mask = 1 [node name="ShadowSprite" type="Sprite2D" parent="."] -material = SubResource( 3 ) +z_index = -5 +material = SubResource("ShaderMaterial_5a4f2") -[node name="AnimatedSprite2D" type="AnimatedSprite2D" parent="."] -modulate = Color( 1.8, 1.8, 1.8, 1 ) -material = SubResource( 4 ) -position = Vector2( 2.38419e-07, 0 ) -sprite_frames = SubResource( 1 ) - -[node name="Collision" type="CollisionShape2D" parent="."] -position = Vector2( 2, 0 ) -shape = SubResource( 2 ) +[node name="AnimatedSprite" type="AnimatedSprite2D" parent="."] +material = SubResource("ShaderMaterial_o0655") +sprite_frames = SubResource("SpriteFrames_5wvmf") [node name="CollisionArea" type="Area2D" parent="."] -collision_layer = 0 -collision_mask = 0 [node name="CollisionShape2D" type="CollisionShape2D" parent="CollisionArea"] -position = Vector2( 2, 0 ) -shape = SubResource( 2 ) +position = Vector2(2.93353, 0) +scale = Vector2(0.226586, 0.333333) +shape = SubResource("RectangleShape2D_c0onq") + +[node name="Collision" type="CollisionShape2D" parent="."] [node name="AnimationPlayer" type="AnimationPlayer" parent="."] diff --git a/DungeonShooting_Godot/prefab/weapon/shell/ShellCase.tscn b/DungeonShooting_Godot/prefab/weapon/shell/ShellCase.tscn index 4d00859..2775eff 100644 --- a/DungeonShooting_Godot/prefab/weapon/shell/ShellCase.tscn +++ b/DungeonShooting_Godot/prefab/weapon/shell/ShellCase.tscn @@ -1,86 +1,54 @@ -[gd_scene load_steps=9 format=2] +[gd_scene load_steps=9 format=3 uid="uid://dp6n6l6wq1hvs"] -[ext_resource path="res://resource/sprite/shell/shellCase.png" type="Texture2D" id=1] -[ext_resource path="res://resource/materlal/Blend.gdshader" type="Shader" id=2] -[ext_resource path="res://addons/dungeonShooting_plugin/ActivityObjectTemplate.cs" type="Script" id=3] +[ext_resource type="Texture2D" uid="uid://dto03bc2qbhnj" path="res://resource/sprite/shell/shellCase.png" id="1"] +[ext_resource type="Shader" path="res://resource/materlal/Blend.gdshader" id="2"] +[ext_resource type="Script" path="res://addons/dungeonShooting_plugin/ActivityObjectTemplate.cs" id="3"] -[sub_resource type="ShaderMaterial" id=2] +[sub_resource type="ShaderMaterial" id="ShaderMaterial_px12l"] resource_local_to_scene = true -shader = ExtResource( 2 ) -shader_param/blend = Color( 0, 0, 0, 0.470588 ) -shader_param/schedule = 1.0 +shader = ExtResource("2") +shader_parameter/blend = Color(0, 0, 0, 0.470588) +shader_parameter/schedule = 1 -[sub_resource type="ShaderMaterial" id=3] +[sub_resource type="ShaderMaterial" id="ShaderMaterial_7e6fo"] resource_local_to_scene = true -shader = ExtResource( 2 ) -shader_param/blend = Color( 1, 1, 1, 1 ) -shader_param/schedule = 0.0 +shader = ExtResource("2") +shader_parameter/blend = Color(1, 1, 1, 1) +shader_parameter/schedule = 0 -[sub_resource type="SpriteFrames" id=1] -animations = [ { -"sprite_frames": [ ExtResource( 1 ) ], +[sub_resource type="SpriteFrames" id="SpriteFrames_4huvy"] +animations = [{ +"frames": [{ +"duration": 1.0, +"texture": ExtResource("1") +}], "loop": true, -"name": "default", +"name": &"default", "speed": 5.0 -} ] +}] -[sub_resource type="Animation" id=4] +[sub_resource type="Animation" id="Animation_kjsto"] resource_name = "Flicker" -length = 1.1 -tracks/0/type = "method" -tracks/0/path = NodePath(".") -tracks/0/interp = 1 -tracks/0/loop_wrap = true -tracks/0/imported = false -tracks/0/enabled = true -tracks/0/keys = { -"times": PackedFloat32Array( 1.1 ), -"transitions": PackedFloat32Array( 1 ), -"values": [ { -"args": [ ], -"method": "queue_free" -} ] -} -tracks/1/type = "value" -tracks/1/path = NodePath(".:visible") -tracks/1/interp = 1 -tracks/1/loop_wrap = true -tracks/1/imported = false -tracks/1/enabled = true -tracks/1/keys = { -"times": PackedFloat32Array( 0.5, 0.6, 0.7, 0.8, 0.9, 1 ), -"transitions": PackedFloat32Array( 1, 1, 1, 1, 1, 1 ), -"update": 1, -"values": [ false, true, false, true, false, true ] -} -[sub_resource type="Animation" id=5] -length = 0.001 -tracks/0/type = "value" -tracks/0/path = NodePath(".:Visible") -tracks/0/interp = 1 -tracks/0/loop_wrap = true -tracks/0/imported = false -tracks/0/enabled = true -tracks/0/keys = { -"times": PackedFloat32Array( 0 ), -"transitions": PackedFloat32Array( 1 ), -"update": 0, -"values": [ true ] +[sub_resource type="AnimationLibrary" id="AnimationLibrary_cpq4j"] +_data = { +"Flicker": SubResource("Animation_kjsto") } [node name="ShellCase" type="Node"] -script = ExtResource( 3 ) +script = ExtResource("3") [node name="ShadowSprite" type="Sprite2D" parent="."] -material = SubResource( 2 ) +z_index = -5 +material = SubResource("ShaderMaterial_px12l") -[node name="AnimatedSprite2D" type="AnimatedSprite2D" parent="."] -material = SubResource( 3 ) -sprite_frames = SubResource( 1 ) +[node name="AnimatedSprite" type="AnimatedSprite2D" parent="."] +material = SubResource("ShaderMaterial_7e6fo") +sprite_frames = SubResource("SpriteFrames_4huvy") [node name="Collision" type="CollisionShape2D" parent="."] [node name="AnimationPlayer" type="AnimationPlayer" parent="."] -anims/Flicker = SubResource( 4 ) -anims/RESET = SubResource( 5 ) +libraries = { +"": SubResource("AnimationLibrary_cpq4j") +} diff --git a/DungeonShooting_Godot/resource/theme/mainTheme.tres b/DungeonShooting_Godot/resource/theme/mainTheme.tres index d076550..63047b2 100644 --- a/DungeonShooting_Godot/resource/theme/mainTheme.tres +++ b/DungeonShooting_Godot/resource/theme/mainTheme.tres @@ -350,7 +350,7 @@ [sub_resource type="ImageTexture" id="58"] -[sub_resource type="Image" id="Image_3sx6c"] +[sub_resource type="Image" id="Image_1br7l"] 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", @@ -360,7 +360,7 @@ } [sub_resource type="ImageTexture" id="60"] -image = SubResource("Image_3sx6c") +image = SubResource("Image_1br7l") [sub_resource type="StyleBoxTexture" id="61"] content_margin_left = 2.0 @@ -370,7 +370,7 @@ texture = SubResource("60") region_rect = Rect2(0, 0, 12, 12) -[sub_resource type="Image" id="Image_tq2ga"] +[sub_resource type="Image" id="Image_uwsg7"] 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", @@ -380,7 +380,7 @@ } [sub_resource type="ImageTexture" id="63"] -image = SubResource("Image_tq2ga") +image = SubResource("Image_uwsg7") [sub_resource type="StyleBoxTexture" id="64"] content_margin_left = 2.0 @@ -390,7 +390,7 @@ texture = SubResource("63") region_rect = Rect2(0, 0, 12, 12) -[sub_resource type="Image" id="Image_3g6l3"] +[sub_resource type="Image" id="Image_2kybe"] 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", @@ -400,7 +400,7 @@ } [sub_resource type="ImageTexture" id="66"] -image = SubResource("Image_3g6l3") +image = SubResource("Image_2kybe") [sub_resource type="StyleBoxTexture" id="67"] content_margin_left = 2.0 @@ -410,7 +410,7 @@ texture = SubResource("66") region_rect = Rect2(0, 0, 12, 12) -[sub_resource type="Image" id="Image_hdkkt"] +[sub_resource type="Image" id="Image_lx1y8"] 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", @@ -420,7 +420,7 @@ } [sub_resource type="ImageTexture" id="69"] -image = SubResource("Image_hdkkt") +image = SubResource("Image_lx1y8") [sub_resource type="StyleBoxTexture" id="70"] content_margin_left = 0.0 @@ -444,7 +444,7 @@ content_margin_right = 4.0 content_margin_bottom = 4.0 -[sub_resource type="Image" id="Image_e03dx"] +[sub_resource type="Image" id="Image_532jc"] 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", @@ -454,7 +454,7 @@ } [sub_resource type="ImageTexture" id="56"] -image = SubResource("Image_e03dx") +image = SubResource("Image_532jc") [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 4695ec6..6612bc6 100644 --- a/DungeonShooting_Godot/scene/Main.tscn +++ b/DungeonShooting_Godot/scene/Main.tscn @@ -48,8 +48,9 @@ stretch = true [node name="SubViewport" type="SubViewport" parent="ViewCanvas/SubViewportContainer"] -transparent_bg = true handle_input_locally = false +canvas_item_default_texture_filter = 0 +sdf_oversize = 0 size = Vector2i(482, 272) render_target_update_mode = 4 diff --git a/DungeonShooting_Godot/scene/Room.tscn b/DungeonShooting_Godot/scene/Room.tscn index b74929c..1960fcc 100644 --- a/DungeonShooting_Godot/scene/Room.tscn +++ b/DungeonShooting_Godot/scene/Room.tscn @@ -5436,6 +5436,7 @@ [node name="Camera2D" type="Camera2D" parent="."] position = Vector2(253, 219) +process_callback = 0 limit_smoothed = true editor_draw_drag_margin = true script = ExtResource("5") diff --git a/DungeonShooting_Godot/src/framework/ActivityObject.cs b/DungeonShooting_Godot/src/framework/ActivityObject.cs index c42dc85..3b0c74f 100644 --- a/DungeonShooting_Godot/src/framework/ActivityObject.cs +++ b/DungeonShooting_Godot/src/framework/ActivityObject.cs @@ -27,7 +27,7 @@ /// /// 当前物体显示的精灵图像, 节点名称必须叫 "AnimatedSprite2D", 类型为 AnimatedSprite2D /// - public AnimatedSprite2D AnimatedSprite2D { get; } + public AnimatedSprite2D AnimatedSprite { get; } /// /// 当前物体显示的阴影图像, 节点名称必须叫 "ShadowSprite", 类型为 Sprite2D @@ -129,9 +129,9 @@ AddChild(body); switch (body.Name) { - case "AnimatedSprite2D": - AnimatedSprite2D = (AnimatedSprite2D)body; - _blendShaderMaterial = AnimatedSprite2D.Material as ShaderMaterial; + case "AnimatedSprite": + AnimatedSprite = (AnimatedSprite2D)body; + _blendShaderMaterial = AnimatedSprite.Material as ShaderMaterial; break; case "ShadowSprite": ShadowSprite = (Sprite2D)body; @@ -161,12 +161,12 @@ ShadowSprite.Material = ResourceManager.BlendMaterial; } - var anim = AnimatedSprite2D.Animation; + var anim = AnimatedSprite.Animation; - var frame = AnimatedSprite2D.Frame; + var frame = AnimatedSprite.Frame; if (_prevAnimation != anim || _prevAnimationFrame != frame) { - var frames = AnimatedSprite2D.SpriteFrames; + var frames = AnimatedSprite.SpriteFrames; if (frames.HasAnimation(anim)) { //切换阴影动画 @@ -194,19 +194,19 @@ /// public void SetDefaultTexture(Texture2D texture) { - if (AnimatedSprite2D.SpriteFrames == null) + if (AnimatedSprite.SpriteFrames == null) { SpriteFrames spriteFrames = new SpriteFrames(); - AnimatedSprite2D.SpriteFrames = spriteFrames; + AnimatedSprite.SpriteFrames = spriteFrames; spriteFrames.AddFrame("default", texture); } else { - SpriteFrames spriteFrames = AnimatedSprite2D.SpriteFrames; + SpriteFrames spriteFrames = AnimatedSprite.SpriteFrames; spriteFrames.SetFrame("default", 0, texture); } - AnimatedSprite2D.Play("default"); + AnimatedSprite.Play("default"); } /// @@ -214,7 +214,7 @@ /// public Texture2D GetDefaultTexture() { - return AnimatedSprite2D.SpriteFrames.GetFrameTexture("default", 0); + return AnimatedSprite.SpriteFrames.GetFrameTexture("default", 0); } /// @@ -222,7 +222,7 @@ /// public Texture2D GetCurrentTexture() { - return AnimatedSprite2D.SpriteFrames.GetFrameTexture(AnimatedSprite2D.Name, AnimatedSprite2D.Frame); + return AnimatedSprite.SpriteFrames.GetFrameTexture(AnimatedSprite.Name, AnimatedSprite.Frame); } /// @@ -516,11 +516,11 @@ //当高度大于16时, 显示在所有物体上 if (_throwData.Y >= 16) { - AnimatedSprite2D.ZIndex = 20; + AnimatedSprite.ZIndex = 20; } else { - AnimatedSprite2D.ZIndex = 0; + AnimatedSprite.ZIndex = 0; } //达到最高点 @@ -568,12 +568,12 @@ if (ShadowSprite.Visible) { //更新阴影贴图, 使其和动画一致 - var anim = AnimatedSprite2D.Animation; - var frame = AnimatedSprite2D.Frame; + var anim = AnimatedSprite.Animation; + var frame = AnimatedSprite.Frame; if (_prevAnimation != anim || _prevAnimationFrame != frame) { //切换阴影动画 - ShadowSprite.Texture = AnimatedSprite2D.SpriteFrames.GetFrameTexture(anim, AnimatedSprite2D.Frame); + ShadowSprite.Texture = AnimatedSprite.SpriteFrames.GetFrameTexture(anim, AnimatedSprite.Frame); } _prevAnimation = anim; @@ -670,11 +670,11 @@ public void CalcShadow() { //缩放 - ShadowSprite.Scale = AnimatedSprite2D.Scale; + ShadowSprite.Scale = AnimatedSprite.Scale; //阴影角度 ShadowSprite.Rotation = 0; //阴影位置计算 - var pos = AnimatedSprite2D.GlobalPosition; + var pos = AnimatedSprite.GlobalPosition; if (_throwData != null && !_throwData.IsOver) { ShadowSprite.GlobalPosition = new Vector2(pos.X + ShadowOffset.X, pos.Y + ShadowOffset.Y + _throwData.Y); @@ -690,11 +690,11 @@ { if (Scale.Y < 0) { - AnimatedSprite2D.GlobalPosition = GlobalPosition + new Vector2(0, -_throwData.Y) - _throwData.OriginSpritePosition.Rotated(Rotation) * Scale.Abs(); + AnimatedSprite.GlobalPosition = GlobalPosition + new Vector2(0, -_throwData.Y) - _throwData.OriginSpritePosition.Rotated(Rotation) * Scale.Abs(); } else { - AnimatedSprite2D.GlobalPosition = GlobalPosition + new Vector2(0, -_throwData.Y) + _throwData.OriginSpritePosition.Rotated(Rotation); + AnimatedSprite.GlobalPosition = GlobalPosition + new Vector2(0, -_throwData.Y) + _throwData.OriginSpritePosition.Rotated(Rotation); } } @@ -781,7 +781,7 @@ _throwData.OriginRotation = Collision.Rotation; _throwData.OriginScale = Collision.Scale; _throwData.OriginZIndex = ZIndex; - _throwData.OriginSpritePosition = AnimatedSprite2D.Position; + _throwData.OriginSpritePosition = AnimatedSprite.Position; _throwData.OriginCollisionEnable = Collision.Disabled; _throwData.OriginCollisionPosition = Collision.Position; _throwData.OriginCollisionRotation = Collision.Rotation; @@ -821,7 +821,7 @@ Collision.Rotation = _throwData.OriginRotation; Collision.Scale = _throwData.OriginScale; ZIndex = _throwData.OriginZIndex; - AnimatedSprite2D.Position = _throwData.OriginSpritePosition; + AnimatedSprite.Position = _throwData.OriginSpritePosition; Collision.Disabled = _throwData.OriginCollisionEnable; Collision.Position = _throwData.OriginCollisionPosition; Collision.Rotation = _throwData.OriginCollisionRotation; diff --git a/DungeonShooting_Godot/src/framework/Component.cs b/DungeonShooting_Godot/src/framework/Component.cs index 3dafea3..84e9fe7 100644 --- a/DungeonShooting_Godot/src/framework/Component.cs +++ b/DungeonShooting_Godot/src/framework/Component.cs @@ -104,7 +104,7 @@ /// /// 挂载物体的动画节点 /// - public AnimatedSprite2D AnimatedSprite2D => ActivityObject.AnimatedSprite2D; + public AnimatedSprite2D AnimatedSprite2D => ActivityObject.AnimatedSprite; /// /// 挂载物体的阴影节点 /// diff --git a/DungeonShooting_Godot/src/framework/components/MoveController.cs b/DungeonShooting_Godot/src/framework/components/MoveController.cs index c093ed8..475d49f 100644 --- a/DungeonShooting_Godot/src/framework/components/MoveController.cs +++ b/DungeonShooting_Godot/src/framework/components/MoveController.cs @@ -163,8 +163,6 @@ //最终速率 var finallyVelocity = _basisVelocity + finallyEf; - GD.Print("finallyVelocity: " + finallyVelocity); - if (finallyVelocity != Vector2.Zero) { //计算移动 diff --git a/DungeonShooting_Godot/src/game/item/weapon/Weapon.cs b/DungeonShooting_Godot/src/game/item/weapon/Weapon.cs index 46eb1d2..6a52ba0 100644 --- a/DungeonShooting_Godot/src/game/item/weapon/Weapon.cs +++ b/DungeonShooting_Godot/src/game/item/weapon/Weapon.cs @@ -182,7 +182,7 @@ //图标 SetDefaultTexture(ResourceLoader.Load(Attribute.Sprite2D)); - AnimatedSprite2D.Position = Attribute.CenterPosition; + AnimatedSprite.Position = Attribute.CenterPosition; //开火位置 FirePoint.Position = new Vector2(Attribute.FirePosition.X, -Attribute.FirePosition.Y); @@ -952,11 +952,11 @@ { Master = master; //握把位置 - AnimatedSprite2D.Position = Attribute.HoldPosition; + AnimatedSprite.Position = Attribute.HoldPosition; //停止动画 AnimationPlayer.Stop(); //清除泛白效果 - ShaderMaterial sm = (ShaderMaterial)AnimatedSprite2D.Material; + ShaderMaterial sm = (ShaderMaterial)AnimatedSprite.Material; sm.SetShaderParameter("schedule", 0); ZIndex = 0; //禁用碰撞 @@ -972,7 +972,7 @@ public void RemoveAt() { Master = null; - AnimatedSprite2D.Position = Attribute.CenterPosition; + AnimatedSprite.Position = Attribute.CenterPosition; OnRemove(); } diff --git a/DungeonShooting_Godot/src/game/item/weapon/knife/Knife.cs b/DungeonShooting_Godot/src/game/item/weapon/knife/Knife.cs index 1d9bade..5963149 100644 --- a/DungeonShooting_Godot/src/game/item/weapon/knife/Knife.cs +++ b/DungeonShooting_Godot/src/game/item/weapon/knife/Knife.cs @@ -84,7 +84,7 @@ //播放挥刀特效 SpecialEffectManager.Play( ResourcePath.resource_effects_KnifeHit1_tres, "default", - Master.MountPoint.GlobalPosition, GlobalRotation + Mathf.Pi * 0.5f, new Vector2((int)Master.Face, 1) * AnimatedSprite2D.Scale, + Master.MountPoint.GlobalPosition, GlobalRotation + Mathf.Pi * 0.5f, new Vector2((int)Master.Face, 1) * AnimatedSprite.Scale, new Vector2(17, 4), 1 ); } diff --git a/DungeonShooting_Godot/src/game/role/Player.cs b/DungeonShooting_Godot/src/game/role/Player.cs index ca82956..ad2ccf8 100644 --- a/DungeonShooting_Godot/src/game/role/Player.cs +++ b/DungeonShooting_Godot/src/game/role/Player.cs @@ -222,16 +222,16 @@ { if ((Face == FaceDirection.Right && BasisVelocity.X >= 0) || Face == FaceDirection.Left && BasisVelocity.X <= 0) //向前走 { - AnimatedSprite2D.Animation = AnimatorNames.Run; + AnimatedSprite.Animation = AnimatorNames.Run; } else if ((Face == FaceDirection.Right && BasisVelocity.X < 0) || Face == FaceDirection.Left && BasisVelocity.X > 0) //向后走 { - AnimatedSprite2D.Animation = AnimatorNames.ReverseRun; + AnimatedSprite.Animation = AnimatorNames.ReverseRun; } } else { - AnimatedSprite2D.Animation = AnimatorNames.Idle; + AnimatedSprite.Animation = AnimatorNames.Idle; } } } \ No newline at end of file diff --git a/DungeonShooting_Godot/src/game/role/enemy/state/AiFindAmmoState.cs b/DungeonShooting_Godot/src/game/role/enemy/state/AiFindAmmoState.cs index 20f1156..908ae71 100644 --- a/DungeonShooting_Godot/src/game/role/enemy/state/AiFindAmmoState.cs +++ b/DungeonShooting_Godot/src/game/role/enemy/state/AiFindAmmoState.cs @@ -104,7 +104,7 @@ { //计算移动 var nextPos = Master.NavigationAgent2D.GetNextPathPosition(); - Master.AnimatedSprite2D.Animation = AnimatorNames.Run; + Master.AnimatedSprite.Animation = AnimatorNames.Run; Master.BasisVelocity = (nextPos - Master.GlobalPosition - Master.NavigationPoint.Position).Normalized() * Master.MoveSpeed; diff --git a/DungeonShooting_Godot/src/game/role/enemy/state/AiFollowUpState.cs b/DungeonShooting_Godot/src/game/role/enemy/state/AiFollowUpState.cs index e67d4f8..5342d4e 100644 --- a/DungeonShooting_Godot/src/game/role/enemy/state/AiFollowUpState.cs +++ b/DungeonShooting_Godot/src/game/role/enemy/state/AiFollowUpState.cs @@ -72,7 +72,7 @@ { //计算移动 var nextPos = Master.NavigationAgent2D.GetNextPathPosition(); - Master.AnimatedSprite2D.Animation = AnimatorNames.Run; + Master.AnimatedSprite.Animation = AnimatorNames.Run; Master.BasisVelocity = (nextPos - masterPosition - Master.NavigationPoint.Position).Normalized() * Master.MoveSpeed; } diff --git a/DungeonShooting_Godot/src/game/role/enemy/state/AiLeaveForState.cs b/DungeonShooting_Godot/src/game/role/enemy/state/AiLeaveForState.cs index 4b9951f..ed9807e 100644 --- a/DungeonShooting_Godot/src/game/role/enemy/state/AiLeaveForState.cs +++ b/DungeonShooting_Godot/src/game/role/enemy/state/AiLeaveForState.cs @@ -59,7 +59,7 @@ //计算移动 var nextPos = Master.NavigationAgent2D.GetNextPathPosition(); Master.LookTargetPosition(Enemy.FindTargetPosition); - Master.AnimatedSprite2D.Animation = AnimatorNames.Run; + Master.AnimatedSprite.Animation = AnimatorNames.Run; Master.BasisVelocity = (nextPos - Master.GlobalPosition - Master.NavigationPoint.Position).Normalized() * Master.MoveSpeed; } diff --git a/DungeonShooting_Godot/src/game/role/enemy/state/AiNormalState.cs b/DungeonShooting_Godot/src/game/role/enemy/state/AiNormalState.cs index 1f955fb..3932531 100644 --- a/DungeonShooting_Godot/src/game/role/enemy/state/AiNormalState.cs +++ b/DungeonShooting_Godot/src/game/role/enemy/state/AiNormalState.cs @@ -67,7 +67,7 @@ } else if (_pauseTimer >= 0) { - Master.AnimatedSprite2D.Animation = AnimatorNames.Idle; + Master.AnimatedSprite.Animation = AnimatorNames.Idle; _pauseTimer -= delta; } else if (_isMoveOver) //没发现玩家, 且已经移动完成 @@ -89,7 +89,7 @@ _moveFlag = true; //计算移动 var nextPos = Master.NavigationAgent2D.GetNextPathPosition(); - Master.AnimatedSprite2D.Animation = AnimatorNames.Run; + Master.AnimatedSprite.Animation = AnimatorNames.Run; Master.BasisVelocity = (nextPos - Master.GlobalPosition - Master.NavigationPoint.Position).Normalized() * Master.MoveSpeed; } @@ -107,7 +107,7 @@ { //计算移动 var nextPos = Master.NavigationAgent2D.GetNextPathPosition(); - Master.AnimatedSprite2D.Animation = AnimatorNames.Run; + Master.AnimatedSprite.Animation = AnimatorNames.Run; Master.BasisVelocity = (nextPos - Master.GlobalPosition - Master.NavigationPoint.Position).Normalized() * Master.MoveSpeed; } diff --git a/DungeonShooting_Godot/src/game/role/enemy/state/AiSurroundState.cs b/DungeonShooting_Godot/src/game/role/enemy/state/AiSurroundState.cs index a961524..755237a 100644 --- a/DungeonShooting_Godot/src/game/role/enemy/state/AiSurroundState.cs +++ b/DungeonShooting_Godot/src/game/role/enemy/state/AiSurroundState.cs @@ -69,7 +69,7 @@ { if (_pauseTimer >= 0) { - Master.AnimatedSprite2D.Animation = AnimatorNames.Idle; + Master.AnimatedSprite.Animation = AnimatorNames.Idle; _pauseTimer -= delta; } else if (_isMoveOver) //移动已经完成 @@ -91,7 +91,7 @@ _moveFlag = true; //计算移动 var nextPos = Master.NavigationAgent2D.GetNextPathPosition(); - Master.AnimatedSprite2D.Animation = AnimatorNames.Run; + Master.AnimatedSprite.Animation = AnimatorNames.Run; Master.BasisVelocity = (nextPos - Master.GlobalPosition - Master.NavigationPoint.Position).Normalized() * Master.MoveSpeed; } @@ -109,7 +109,7 @@ { //计算移动 var nextPos = Master.NavigationAgent2D.GetNextPathPosition(); - Master.AnimatedSprite2D.Animation = AnimatorNames.Run; + Master.AnimatedSprite.Animation = AnimatorNames.Run; Master.BasisVelocity = (nextPos - Master.GlobalPosition - Master.NavigationPoint.Position).Normalized() * Master.MoveSpeed; } diff --git a/DungeonShooting_Godot/src/game/role/enemy/state/AiTailAfterState.cs b/DungeonShooting_Godot/src/game/role/enemy/state/AiTailAfterState.cs index 0f7b13d..e5b4009 100644 --- a/DungeonShooting_Godot/src/game/role/enemy/state/AiTailAfterState.cs +++ b/DungeonShooting_Godot/src/game/role/enemy/state/AiTailAfterState.cs @@ -65,7 +65,7 @@ { //计算移动 var nextPos = Master.NavigationAgent2D.GetNextPathPosition(); - Master.AnimatedSprite2D.Animation = AnimatorNames.Run; + Master.AnimatedSprite.Animation = AnimatorNames.Run; Master.BasisVelocity = (nextPos - Master.GlobalPosition - Master.NavigationPoint.Position).Normalized() * Master.MoveSpeed; } diff --git a/DungeonShooting_Godot/src/game/room/RoomManager.cs b/DungeonShooting_Godot/src/game/room/RoomManager.cs index 04cd802..fd26717 100644 --- a/DungeonShooting_Godot/src/game/room/RoomManager.cs +++ b/DungeonShooting_Godot/src/game/room/RoomManager.cs @@ -136,7 +136,7 @@ // enemy3.PickUpWeapon(WeaponManager.GetGun("1002")); // WeaponManager.GetGun("1004").PutDown(new Vector2(80, 100)); - // WeaponManager.GetGun("1001").PutDown(new Vector2(220, 120)); + WeaponManager.GetGun("1001").PutDown(new Vector2(220, 120)); // WeaponManager.GetGun("1001").PutDown(new Vector2(80, 80)); // WeaponManager.GetGun("1002").PutDown(new Vector2(80, 120)); // WeaponManager.GetGun("1003").PutDown(new Vector2(120, 80));