[gd_scene load_steps=16 format=3 uid="uid://c714s5d7d5765"] [ext_resource type="Script" uid="uid://bpo15kuxdmulu" path="res://objects/player/player.gd" id="1_cqmt1"] [ext_resource type="Texture2D" uid="uid://cre6i8tsdlt7j" path="res://graphics/player/player_1.png" id="2_jnjyq"] [ext_resource type="Texture2D" uid="uid://cr8jegbgl0wxn" path="res://graphics/player/player_3.png" id="3_gnkmh"] [ext_resource type="PackedScene" uid="uid://bs0tv5ubqdjp0" path="res://objects/player/bullet_emitter/player_bullet_emitter.tscn" id="3_ssrue"] [ext_resource type="AudioStream" uid="uid://b3byh6su1b11r" path="res://audio/sounds/se_boom.wav" id="5_gnkmh"] [ext_resource type="PackedScene" uid="uid://ykg8dydq006a" path="res://objects/graze/graze_particles.tscn" id="6_xkryw"] [ext_resource type="AudioStream" uid="uid://cnxsv3xnsxno6" path="res://audio/sounds/graze.wav" id="7_ow0dq"] [sub_resource type="SpriteFrames" id="SpriteFrames_xkryw"] animations = [{ "frames": [{ "duration": 1.0, "texture": ExtResource("2_jnjyq") }, { "duration": 1.0, "texture": ExtResource("3_gnkmh") }], "loop": true, "name": &"default", "speed": 9.0 }] [sub_resource type="RectangleShape2D" id="RectangleShape2D_ssrue"] size = Vector2(20, 19) [sub_resource type="RectangleShape2D" id="RectangleShape2D_ow0dq"] size = Vector2(4, 4) [sub_resource type="RectangleShape2D" id="RectangleShape2D_jnjyq"] size = Vector2(22, 22) [sub_resource type="CircleShape2D" id="CircleShape2D_gnkmh"] radius = 13.038404 [sub_resource type="Animation" id="Animation_ow0dq"] length = 0.001 tracks/0/type = "value" tracks/0/imported = false tracks/0/enabled = true tracks/0/path = NodePath("Sprite2D:visible") tracks/0/interp = 1 tracks/0/loop_wrap = true tracks/0/keys = { "times": PackedFloat32Array(0), "transitions": PackedFloat32Array(1), "update": 1, "values": [true] } tracks/1/type = "value" tracks/1/imported = false tracks/1/enabled = true tracks/1/path = NodePath("Sprite2D:modulate") tracks/1/interp = 1 tracks/1/loop_wrap = true tracks/1/keys = { "times": PackedFloat32Array(0), "transitions": PackedFloat32Array(1), "update": 0, "values": [Color(1, 1, 1, 1)] } [sub_resource type="Animation" id="Animation_xkryw"] resource_name = "respawn" length = 5.0 step = 0.0333333 tracks/0/type = "value" tracks/0/imported = false tracks/0/enabled = true tracks/0/path = NodePath("Sprite2D:visible") tracks/0/interp = 1 tracks/0/loop_wrap = true tracks/0/keys = { "times": PackedFloat32Array(0, 1), "transitions": PackedFloat32Array(1, 1), "update": 1, "values": [false, true] } tracks/1/type = "value" tracks/1/imported = false tracks/1/enabled = true tracks/1/path = NodePath("Sprite2D:modulate") tracks/1/interp = 1 tracks/1/loop_wrap = true tracks/1/keys = { "times": PackedFloat32Array(0, 1, 1.0666666, 1.1333334, 1.2, 1.2666667, 1.3333333, 1.4000001, 1.4666667, 1.5333333, 1.5999999, 1.6666667, 1.7333333, 1.8, 1.8666666, 1.9333334, 2, 2.0666666, 2.1333332, 2.1999998, 2.2666664, 2.333333, 2.3999996, 2.4666667, 2.5333333, 2.6, 2.6666665, 2.7333336, 2.8000002, 2.8666668, 2.9333334, 3, 3.0666666, 3.1333332, 3.1999998, 3.2666664, 3.333333, 3.3999996, 3.4666662, 3.5333333, 3.6, 3.6666665, 3.733333, 3.8000002, 3.8666668, 3.9333334, 4, 4.0666666, 4.133333, 4.2, 4.2666664, 4.333333, 4.3999996, 4.466666, 4.533333, 4.6, 4.6666665, 4.733333, 4.7999997, 4.866667, 4.9333334, 5, 5.0666666, 5.133333, 5.2, 5.266667, 5.3333335, 5.4, 5.4666667, 5.5333333, 5.6, 5.666667, 5.7333336, 5.8, 5.866667, 5.933334, 6.0000005, 6.066667, 6.1333337, 6.2000003, 6.266667, 6.3333335, 6.4, 6.4666667, 6.5333333, 6.6, 6.6666665, 6.733333, 6.8000007, 6.8666663, 6.933334, 7, 7.0666676, 7.133333, 7.200001, 7.2666664, 7.333334, 7.3999996, 7.466667, 7.533333, 7.6000004, 7.666666, 7.7333336, 7.800001, 7.866667, 7.9333344, 8, 8.066668, 8.133333, 8.200001, 8.266666, 8.333334, 8.4, 8.466667, 8.533333, 8.6, 8.666666, 8.733334, 8.799999, 8.866667, 8.933334, 9, 9.066668, 9.133333, 9.200001, 9.266666, 9.333334, 9.4, 9.466667, 9.533333), "transitions": PackedFloat32Array(1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1), "update": 0, "values": [Color(1, 1, 1, 1), Color(1, 1, 1, 1), Color(0, 0, 0, 1), Color(1, 1, 1, 1), Color(0, 0, 0, 1), Color(1, 1, 1, 1), Color(0, 0, 0, 1), Color(1, 1, 1, 1), Color(0, 0, 0, 1), Color(1, 1, 1, 1), Color(0, 0, 0, 1), Color(1, 1, 1, 1), Color(0, 0, 0, 1), Color(1, 1, 1, 1), Color(0, 0, 0, 1), Color(1, 1, 1, 1), Color(0, 0, 0, 1), Color(1, 1, 1, 1), Color(0, 0, 0, 1), Color(1, 1, 1, 1), Color(0, 0, 0, 1), Color(1, 1, 1, 1), Color(0, 0, 0, 1), Color(1, 1, 1, 1), Color(0, 0, 0, 1), Color(1, 1, 1, 1), Color(0, 0, 0, 1), Color(1, 1, 1, 1), Color(0, 0, 0, 1), Color(1, 1, 1, 1), Color(0, 0, 0, 1), Color(1, 1, 1, 1), Color(0, 0, 0, 1), Color(1, 1, 1, 1), Color(0, 0, 0, 1), Color(1, 1, 1, 1), Color(0, 0, 0, 1), Color(1, 1, 1, 1), Color(0, 0, 0, 1), Color(1, 1, 1, 1), Color(0, 0, 0, 1), Color(1, 1, 1, 1), Color(0, 0, 0, 1), Color(1, 1, 1, 1), Color(0, 0, 0, 1), Color(1, 1, 1, 1), Color(0, 0, 0, 1), Color(1, 1, 1, 1), Color(0, 0, 0, 1), Color(1, 1, 1, 1), Color(0, 0, 0, 1), Color(1, 1, 1, 1), Color(0, 0, 0, 1), Color(1, 1, 1, 1), Color(0, 0, 0, 1), Color(1, 1, 1, 1), Color(0, 0, 0, 1), Color(1, 1, 1, 1), Color(0, 0, 0, 1), Color(1, 1, 1, 1), Color(0, 0, 0, 1), Color(1, 1, 1, 1), Color(0, 0, 0, 1), Color(1, 1, 1, 1), Color(0, 0, 0, 1), Color(1, 1, 1, 1), Color(0, 0, 0, 1), Color(1, 1, 1, 1), Color(0, 0, 0, 1), Color(1, 1, 1, 1), Color(0, 0, 0, 1), Color(1, 1, 1, 1), Color(0, 0, 0, 1), Color(1, 1, 1, 1), Color(0, 0, 0, 1), Color(1, 1, 1, 1), Color(0, 0, 0, 1), Color(1, 1, 1, 1), Color(0, 0, 0, 1), Color(1, 1, 1, 1), Color(0, 0, 0, 1), Color(1, 1, 1, 1), Color(0, 0, 0, 1), Color(1, 1, 1, 1), Color(0, 0, 0, 1), Color(1, 1, 1, 1), Color(0, 0, 0, 1), Color(1, 1, 1, 1), Color(0, 0, 0, 1), Color(1, 1, 1, 1), Color(0, 0, 0, 1), Color(1, 1, 1, 1), Color(0, 0, 0, 1), Color(1, 1, 1, 1), Color(0, 0, 0, 1), Color(1, 1, 1, 1), Color(0, 0, 0, 1), Color(1, 1, 1, 1), Color(0, 0, 0, 1), Color(1, 1, 1, 1), Color(0, 0, 0, 1), Color(1, 1, 1, 1), Color(0, 0, 0, 1), Color(1, 1, 1, 1), Color(0, 0, 0, 1), Color(1, 1, 1, 1), Color(0, 0, 0, 1), Color(1, 1, 1, 1), Color(0, 0, 0, 1), Color(1, 1, 1, 1), Color(0, 0, 0, 1), Color(1, 1, 1, 1), Color(0, 0, 0, 1), Color(1, 1, 1, 1), Color(0, 0, 0, 1), Color(1, 1, 1, 1), Color(0, 0, 0, 1), Color(1, 1, 1, 1), Color(0, 0, 0, 1), Color(1, 1, 1, 1), Color(0, 0, 0, 1), Color(1, 1, 1, 1), Color(0, 0, 0, 1), Color(1, 1, 1, 1), Color(0, 0, 0, 1), Color(1, 1, 1, 1), Color(0, 0, 0, 1), Color(1, 1, 1, 1), Color(0, 0, 0, 1), Color(1, 1, 1, 1)] } tracks/2/type = "method" tracks/2/imported = false tracks/2/enabled = true tracks/2/path = NodePath(".") tracks/2/interp = 1 tracks/2/loop_wrap = true tracks/2/keys = { "times": PackedFloat32Array(5), "transitions": PackedFloat32Array(1), "values": [{ "args": [false], "method": &"set_invincible" }] } tracks/3/type = "method" tracks/3/imported = false tracks/3/enabled = true tracks/3/path = NodePath(".") tracks/3/interp = 1 tracks/3/loop_wrap = true tracks/3/keys = { "times": PackedFloat32Array(1), "transitions": PackedFloat32Array(1), "values": [{ "args": [false], "method": &"set_disabled" }] } [sub_resource type="AnimationLibrary" id="AnimationLibrary_m4kly"] _data = { &"RESET": SubResource("Animation_ow0dq"), &"respawn": SubResource("Animation_xkryw") } [node name="Player" type="CharacterBody2D" groups=["player"]] collision_layer = 2 script = ExtResource("1_cqmt1") move_normal_speed = 200.0 move_focused_speed = 100.0 [node name="Sprite2D" type="AnimatedSprite2D" parent="."] sprite_frames = SubResource("SpriteFrames_xkryw") autoplay = "default" frame_progress = 0.46678153 [node name="Collision" type="CollisionShape2D" parent="."] position = Vector2(0, -0.5) shape = SubResource("RectangleShape2D_ssrue") debug_color = Color(0.48012203, 0.5821042, 0.20594019, 0.41960785) [node name="PlayerBulletEmitter" parent="." instance=ExtResource("3_ssrue")] unique_name_in_owner = true [node name="Hurtbox" type="Area2D" parent="."] position = Vector2(0, -1) collision_layer = 2 collision_mask = 8 [node name="HurtboxShape" type="CollisionShape2D" parent="Hurtbox"] unique_name_in_owner = true shape = SubResource("RectangleShape2D_ow0dq") debug_color = Color(1, 0, 0, 0.44313726) [node name="CollectionBox" type="Area2D" parent="."] collision_layer = 2 collision_mask = 32 [node name="CollectionShape" type="CollisionShape2D" parent="CollectionBox"] unique_name_in_owner = true position = Vector2(0, -0.5) shape = SubResource("RectangleShape2D_jnjyq") [node name="GrazeBox" type="Area2D" parent="."] position = Vector2(0, -1) collision_mask = 8 [node name="GrazeShape" type="CollisionShape2D" parent="GrazeBox"] unique_name_in_owner = true shape = SubResource("CircleShape2D_gnkmh") debug_color = Color(0.7740294, 0.14773864, 0.99999994, 0.41960785) [node name="GrazeParticles" parent="." instance=ExtResource("6_xkryw")] unique_name_in_owner = true amount = 10 [node name="AnimationPlayer" type="AnimationPlayer" parent="."] unique_name_in_owner = true libraries = { &"": SubResource("AnimationLibrary_m4kly") } [node name="Sounds" type="Node" parent="."] [node name="DeathSound" type="AudioStreamPlayer" parent="Sounds"] unique_name_in_owner = true stream = ExtResource("5_gnkmh") [node name="GrazeSound" type="AudioStreamPlayer" parent="Sounds"] unique_name_in_owner = true stream = ExtResource("7_ow0dq") volume_db = -2.0 [connection signal="area_entered" from="Hurtbox" to="." method="_on_hurtbox_area_entered"] [connection signal="area_entered" from="GrazeBox" to="." method="_on_graze_box_area_entered"] [connection signal="finished" from="GrazeParticles" to="." method="_on_cpu_particles_2d_finished"] [connection signal="animation_finished" from="AnimationPlayer" to="." method="_on_animation_player_animation_finished"]