diff options
Diffstat (limited to 'Player.tscn')
-rw-r--r-- | Player.tscn | 324 |
1 files changed, 202 insertions, 122 deletions
diff --git a/Player.tscn b/Player.tscn index 19d5567..2fdbefe 100644 --- a/Player.tscn +++ b/Player.tscn @@ -1,4 +1,4 @@ -[gd_scene load_steps=73 format=3 uid="uid://fe6exyigjb72"] +[gd_scene load_steps=75 format=3 uid="uid://fe6exyigjb72"] [ext_resource type="Script" path="res://player.gd" id="1_d2vao"] [ext_resource type="Texture2D" uid="uid://tvalc858lt0n" path="res://Assets/Kirby/duck.png" id="1_wgfub"] @@ -33,7 +33,6 @@ [ext_resource type="AudioStream" uid="uid://dch55m1hjpa7n" path="res://Assets/Sounds/star-shot.wav" id="18_8tquw"] [ext_resource type="AudioStream" uid="uid://fc5lm052l0ci" path="res://Assets/Sounds/air-shot.wav" id="18_b0jy8"] [ext_resource type="Texture2D" uid="uid://c5qsow60trggu" path="res://Assets/Kirby/knockout-2.png" id="18_enx47"] -[ext_resource type="Texture2D" uid="uid://d0u6jw880abmk" path="res://Assets/Kirby/air-shot.png" id="19_8bfby"] [ext_resource type="Texture2D" uid="uid://b2smrgiobqc24" path="res://Assets/Kirby/knockout-3.png" id="19_b07rj"] [ext_resource type="Texture2D" uid="uid://dwnmiim6wpj3h" path="res://Assets/Kirby/knockout-4.png" id="20_dcmki"] [ext_resource type="Texture2D" uid="uid://v3mqtnbs3e8g" path="res://Assets/Kirby/star-shot-01.png" id="20_ptn6m"] @@ -49,6 +48,7 @@ [ext_resource type="AudioStream" uid="uid://denc1y7sjgm3o" path="res://Assets/Sounds/enter-door.wav" id="30_bqihm"] [ext_resource type="Texture2D" uid="uid://p5id24wo3axc" path="res://Assets/Kirby/wall-bounce.png" id="30_jvald"] [ext_resource type="AudioStream" uid="uid://brufyhxonh3jr" path="res://Assets/Music/knockout.wav" id="32_cphxk"] +[ext_resource type="AudioStream" uid="uid://c71kp7jc5nf2t" path="res://Assets/Sounds/pickup.wav" id="45_ujcvn"] [sub_resource type="Gradient" id="Gradient_1p6gt"] offsets = PackedFloat32Array(0, 0.188525) @@ -257,9 +257,6 @@ animations = [{ [sub_resource type="CircleShape2D" id="CircleShape2D_ncpg1"] radius = 8.0 -[sub_resource type="CircleShape2D" id="CircleShape2D_vtlrr"] -radius = 8.0 - [sub_resource type="CircleShape2D" id="CircleShape2D_5n68u"] radius = 8.0 @@ -486,6 +483,91 @@ tracks/7/keys = { "values": [Vector2(0, -4), Vector2(0, 0)] } +[sub_resource type="Animation" id="Animation_5k0g6"] +resource_name = "duck" +length = 0.1 +step = 0.1 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath("AnimatedSprite2D:animation") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 1, +"values": [&"duck"] +} +tracks/1/type = "value" +tracks/1/imported = false +tracks/1/enabled = true +tracks/1/path = NodePath("AnimatedSprite2D:frame") +tracks/1/interp = 1 +tracks/1/loop_wrap = true +tracks/1/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 1, +"values": [0] +} + +[sub_resource type="Animation" id="Animation_xd0ce"] +resource_name = "enter_door" +step = 0.1 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath("AnimatedSprite2D:animation") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 1, +"values": [&"enter_door"] +} +tracks/1/type = "value" +tracks/1/imported = false +tracks/1/enabled = true +tracks/1/path = NodePath("AnimatedSprite2D:frame") +tracks/1/interp = 1 +tracks/1/loop_wrap = true +tracks/1/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 1, +"values": [0] +} + +[sub_resource type="Animation" id="Animation_54067"] +resource_name = "exit_door" +step = 0.1 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath("AnimatedSprite2D:animation") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 1, +"values": [&"exit_door"] +} +tracks/1/type = "value" +tracks/1/imported = false +tracks/1/enabled = true +tracks/1/path = NodePath("AnimatedSprite2D:frame") +tracks/1/interp = 1 +tracks/1/loop_wrap = true +tracks/1/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 1, +"values": [0] +} + [sub_resource type="Animation" id="Animation_qpvoi"] resource_name = "fly" loop_mode = 1 @@ -919,6 +1001,108 @@ tracks/7/keys = { "values": [Vector2(0, -4)] } +[sub_resource type="Animation" id="Animation_c5bfn"] +resource_name = "inflated_walk" +length = 0.4 +loop_mode = 1 +step = 0.1 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath("AnimatedSprite2D:animation") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 1, +"values": [&"inflated_walk"] +} +tracks/1/type = "value" +tracks/1/imported = false +tracks/1/enabled = true +tracks/1/path = NodePath("AnimatedSprite2D:frame") +tracks/1/interp = 1 +tracks/1/loop_wrap = true +tracks/1/keys = { +"times": PackedFloat32Array(0, 0.2), +"transitions": PackedFloat32Array(1, 1), +"update": 1, +"values": [0, 1] +} +tracks/2/type = "value" +tracks/2/imported = false +tracks/2/enabled = true +tracks/2/path = NodePath("AnimatedSprite2D:position") +tracks/2/interp = 1 +tracks/2/loop_wrap = true +tracks/2/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 1, +"values": [Vector2(-4, -8)] +} +tracks/3/type = "value" +tracks/3/imported = false +tracks/3/enabled = true +tracks/3/path = NodePath("NavigationShape:shape:radius") +tracks/3/interp = 1 +tracks/3/loop_wrap = true +tracks/3/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 0, +"values": [11.5] +} +tracks/4/type = "value" +tracks/4/imported = false +tracks/4/enabled = true +tracks/4/path = NodePath("NavigationShape:position") +tracks/4/interp = 1 +tracks/4/loop_wrap = true +tracks/4/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 0, +"values": [Vector2(0, -4)] +} +tracks/5/type = "value" +tracks/5/imported = false +tracks/5/enabled = true +tracks/5/path = NodePath("HurtArea/HurtShape:position") +tracks/5/interp = 1 +tracks/5/loop_wrap = true +tracks/5/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 0, +"values": [Vector2(0, -4)] +} +tracks/6/type = "value" +tracks/6/imported = false +tracks/6/enabled = true +tracks/6/path = NodePath("HurtArea/HurtShape:shape:radius") +tracks/6/interp = 1 +tracks/6/loop_wrap = true +tracks/6/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 0, +"values": [12.0] +} +tracks/7/type = "value" +tracks/7/imported = false +tracks/7/enabled = true +tracks/7/path = NodePath("CollisionArea/CollisionShape:position") +tracks/7/interp = 1 +tracks/7/loop_wrap = true +tracks/7/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 0, +"values": [Vector2(0, -4)] +} + [sub_resource type="Animation" id="Animation_73rqc"] resource_name = "inhale" length = 0.1 @@ -1035,108 +1219,6 @@ tracks/1/keys = { "values": [0, 1, 2, 3] } -[sub_resource type="Animation" id="Animation_c5bfn"] -resource_name = "inflated_walk" -length = 0.4 -loop_mode = 1 -step = 0.1 -tracks/0/type = "value" -tracks/0/imported = false -tracks/0/enabled = true -tracks/0/path = NodePath("AnimatedSprite2D:animation") -tracks/0/interp = 1 -tracks/0/loop_wrap = true -tracks/0/keys = { -"times": PackedFloat32Array(0), -"transitions": PackedFloat32Array(1), -"update": 1, -"values": [&"inflated_walk"] -} -tracks/1/type = "value" -tracks/1/imported = false -tracks/1/enabled = true -tracks/1/path = NodePath("AnimatedSprite2D:frame") -tracks/1/interp = 1 -tracks/1/loop_wrap = true -tracks/1/keys = { -"times": PackedFloat32Array(0, 0.2), -"transitions": PackedFloat32Array(1, 1), -"update": 1, -"values": [0, 1] -} -tracks/2/type = "value" -tracks/2/imported = false -tracks/2/enabled = true -tracks/2/path = NodePath("AnimatedSprite2D:position") -tracks/2/interp = 1 -tracks/2/loop_wrap = true -tracks/2/keys = { -"times": PackedFloat32Array(0), -"transitions": PackedFloat32Array(1), -"update": 1, -"values": [Vector2(-4, -8)] -} -tracks/3/type = "value" -tracks/3/imported = false -tracks/3/enabled = true -tracks/3/path = NodePath("NavigationShape:shape:radius") -tracks/3/interp = 1 -tracks/3/loop_wrap = true -tracks/3/keys = { -"times": PackedFloat32Array(0), -"transitions": PackedFloat32Array(1), -"update": 0, -"values": [11.5] -} -tracks/4/type = "value" -tracks/4/imported = false -tracks/4/enabled = true -tracks/4/path = NodePath("NavigationShape:position") -tracks/4/interp = 1 -tracks/4/loop_wrap = true -tracks/4/keys = { -"times": PackedFloat32Array(0), -"transitions": PackedFloat32Array(1), -"update": 0, -"values": [Vector2(0, -4)] -} -tracks/5/type = "value" -tracks/5/imported = false -tracks/5/enabled = true -tracks/5/path = NodePath("HurtArea/HurtShape:position") -tracks/5/interp = 1 -tracks/5/loop_wrap = true -tracks/5/keys = { -"times": PackedFloat32Array(0), -"transitions": PackedFloat32Array(1), -"update": 0, -"values": [Vector2(0, -4)] -} -tracks/6/type = "value" -tracks/6/imported = false -tracks/6/enabled = true -tracks/6/path = NodePath("HurtArea/HurtShape:shape:radius") -tracks/6/interp = 1 -tracks/6/loop_wrap = true -tracks/6/keys = { -"times": PackedFloat32Array(0), -"transitions": PackedFloat32Array(1), -"update": 0, -"values": [12.0] -} -tracks/7/type = "value" -tracks/7/imported = false -tracks/7/enabled = true -tracks/7/path = NodePath("CollisionArea/CollisionShape:position") -tracks/7/interp = 1 -tracks/7/loop_wrap = true -tracks/7/keys = { -"times": PackedFloat32Array(0), -"transitions": PackedFloat32Array(1), -"update": 0, -"values": [Vector2(0, -4)] -} - [sub_resource type="Animation" id="Animation_kgxu5"] resource_name = "wall_bounce" length = 0.1 @@ -1170,6 +1252,9 @@ tracks/1/keys = { _data = { "RESET": SubResource("Animation_hqb8a"), "digest": SubResource("Animation_hekxe"), +"duck": SubResource("Animation_5k0g6"), +"enter_door": SubResource("Animation_xd0ce"), +"exit_door": SubResource("Animation_54067"), "fly": SubResource("Animation_qpvoi"), "fly_exhale": SubResource("Animation_soeb7"), "idle": SubResource("Animation_6ns5d"), @@ -1184,6 +1269,7 @@ _data = { } [node name="Player" type="CharacterBody2D" groups=["player"]] +collision_layer = 0 collision_mask = 18 script = ExtResource("1_d2vao") @@ -1209,13 +1295,13 @@ shape = ExtResource("26_pm11k") debug_color = Color(0.145291, 0.463217, 5.77569e-07, 0.42) [node name="HurtArea" type="Area2D" parent="."] -collision_mask = 34 +collision_mask = 546 [node name="HurtShape" type="CollisionShape2D" parent="HurtArea"] shape = SubResource("CircleShape2D_ncpg1") debug_color = Color(1, 0.560108, 0.528855, 0.42) -[node name="CollisionArea" type="Area2D" parent="."] +[node name="CollisionArea" type="Area2D" parent="." groups=["collision_area"]] collision_mask = 198 [node name="CollisionShape" type="CollisionShape2D" parent="CollisionArea"] @@ -1283,21 +1369,12 @@ stream = ExtResource("30_bqihm") unique_name_in_owner = true stream = ExtResource("32_cphxk") -[node name="AirShot" type="Area2D" parent="."] -position = Vector2(40, 0) -collision_layer = 8 -collision_mask = 518 -metadata/_edit_group_ = true - -[node name="CollisionShape2D" type="CollisionShape2D" parent="AirShot"] -shape = SubResource("CircleShape2D_vtlrr") - -[node name="Sprite2D" type="Sprite2D" parent="AirShot"] -texture_filter = 1 -texture = ExtResource("19_8bfby") +[node name="SoundPickup" type="AudioStreamPlayer" parent="Sounds"] +unique_name_in_owner = true +stream = ExtResource("45_ujcvn") [node name="StarShot" type="Area2D" parent="."] -position = Vector2(64, 0) +position = Vector2(40, 0) collision_layer = 8 collision_mask = 518 metadata/_edit_group_ = true @@ -1347,9 +1424,12 @@ one_shot = true one_shot = true [node name="InvincibilityTimer" type="Timer" parent="."] +wait_time = 2.0 one_shot = true +[connection signal="area_entered" from="HurtArea" to="." method="_on_hurt_area_area_entered"] [connection signal="body_entered" from="HurtArea" to="." method="_on_hurt_area_body_entered"] +[connection signal="area_entered" from="CollisionArea" to="." method="_on_collision_area_area_entered"] [connection signal="body_entered" from="CollisionArea" to="." method="_on_collision_area_body_entered"] [connection signal="body_exited" from="CollisionArea" to="." method="_on_collision_area_body_exited"] [connection signal="timeout" from="InvincibilityTimer" to="." method="_on_invincibility_timer_timeout"] |