diff --git a/scenes/templates/level_template.tscn b/scenes/templates/level_template.tscn index 61da190..5efe940 100644 --- a/scenes/templates/level_template.tscn +++ b/scenes/templates/level_template.tscn @@ -1,4 +1,4 @@ -[gd_scene load_steps=28 format=3 uid="uid://dd3yegl1xo44m"] +[gd_scene load_steps=41 format=3 uid="uid://dd3yegl1xo44m"] [ext_resource type="Script" uid="uid://bndu1h5kgcde8" path="res://scripts/level/RuntimeLevelData.cs" id="1_31ltw"] [ext_resource type="Script" uid="uid://bso32xkw738sy" path="res://scripts/level/PoolContainer.cs" id="2_s5sti"] @@ -6,10 +6,12 @@ [ext_resource type="Script" uid="uid://blpu7t8tf6277" path="res://scripts/particles/FallFloor.cs" id="3_4bmqp"] [ext_resource type="PackedScene" uid="uid://dpxxjfd5lv5sv" path="res://scenes/gui/choose_your_seeds.tscn" id="3_xy2c6"] [ext_resource type="PackedScene" uid="uid://cfnmspei3k4p7" path="res://scenes/gui/runtime_gui.tscn" id="4_okro4"] +[ext_resource type="Texture2D" uid="uid://b0tb2hjum40aw" path="res://assets/sprites/background_summer.png" id="4_y72yf"] [ext_resource type="PackedScene" uid="uid://fm471x22n8kr" path="res://scenes/gui/pause_menu.tscn" id="6_4bmqp"] [ext_resource type="Texture2D" uid="uid://bt0slphfqhhab" path="res://assets/sprites/atlases/brain.tres" id="7_482ps"] [ext_resource type="Texture2D" uid="uid://dvldjlg0nr355" path="res://assets/sprites/atlases/atlas1.png" id="8_jg5t3"] [ext_resource type="Script" uid="uid://btqwxelqxheh3" path="res://scripts/gui/RestartButton.cs" id="9_2ybed"] +[ext_resource type="PackedScene" uid="uid://c668qnmmpli5r" path="res://scenes/gui/wave_progress.tscn" id="9_7v6ps"] [ext_resource type="Script" uid="uid://dpdpv2oyxdna7" path="res://scripts/gui/ExitButton.cs" id="10_nvbnq"] [ext_resource type="Script" uid="uid://c36bj8u7jghc7" path="res://scripts/audio/ChannelPlayer.cs" id="11_p133p"] [ext_resource type="AudioStream" uid="uid://bdx83fokp6kha" path="res://assets/audio/sfx/buttonclick.mp3" id="12_6gkho"] @@ -19,6 +21,257 @@ [ext_resource type="PackedScene" uid="uid://jm7wm08d2mi7" path="res://scenes/level components/right_boundary_marker.tscn" id="16_s7icd"] [ext_resource type="PackedScene" uid="uid://plc2gus4ppds" path="res://scenes/level components/left_boundary_marker.tscn" id="17_8qqc4"] [ext_resource type="Script" uid="uid://812ldoyxd5n5" path="res://scripts/level/LoseCheckbox.cs" id="19_482ps"] +[ext_resource type="Script" uid="uid://1lkhoh43h86m" path="res://scripts/level/GameTimer.cs" id="19_s7icd"] +[ext_resource type="Script" uid="uid://84gvlkflxdhk" path="res://scripts/level/zombe_spawners/RowSpawner.cs" id="22_8qqc4"] +[ext_resource type="Script" uid="uid://puqxp2xeg1r2" path="res://scripts/level/LevelRunner.cs" id="23_8vb7v"] +[ext_resource type="Script" uid="uid://bc3s06ejbotma" path="res://scripts/gui/ZombieLevelPreviewer.cs" id="24_y5tw7"] +[ext_resource type="Script" uid="uid://b31mnk4enldc4" path="res://scripts/level/InitialPackedSceneSpawner.cs" id="26_i7rp7"] + +[sub_resource type="Animation" id="Animation_vbgdr"] +resource_name = "CYS_Sequence" +length = 3.0 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath("Camera2D:position") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0.666667, 1.5), +"transitions": PackedFloat32Array(0.5, 1), +"update": 0, +"values": [Vector2(481, 200), Vector2(700, 200)] +} +tracks/1/type = "value" +tracks/1/imported = false +tracks/1/enabled = true +tracks/1/path = NodePath("GUI/ChooseYourSeeds:anchor_top") +tracks/1/interp = 1 +tracks/1/loop_wrap = true +tracks/1/keys = { +"times": PackedFloat32Array(0, 2, 3), +"transitions": PackedFloat32Array(1, 0.5, 1), +"update": 0, +"values": [1.0, 1.0, 0.0] +} +tracks/2/type = "value" +tracks/2/imported = false +tracks/2/enabled = true +tracks/2/path = NodePath("GUI/ChooseYourSeeds:anchor_bottom") +tracks/2/interp = 1 +tracks/2/loop_wrap = true +tracks/2/keys = { +"times": PackedFloat32Array(0, 2, 3), +"transitions": PackedFloat32Array(1, 0.5, 1), +"update": 0, +"values": [2.0, 2.0, 1.0] +} + +[sub_resource type="Animation" id="Animation_lrlbv"] +resource_name = "FW_Sequence" +length = 3.0 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath("GUI/ReadySetPlant:visible") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0, 3), +"transitions": PackedFloat32Array(1, 1), +"update": 1, +"values": [true, false] +} +tracks/1/type = "value" +tracks/1/imported = false +tracks/1/enabled = true +tracks/1/path = NodePath("GUI/ReadySetPlant:text") +tracks/1/interp = 1 +tracks/1/loop_wrap = true +tracks/1/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 1, +"values": ["final_wave"] +} + +[sub_resource type="Animation" id="Animation_pqj5f"] +resource_name = "HW_Sequence" +length = 6.0 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath("GUI/ReadySetPlant:text") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 1, +"values": ["huge_wave"] +} +tracks/1/type = "value" +tracks/1/imported = false +tracks/1/enabled = true +tracks/1/path = NodePath("GUI/ReadySetPlant:visible") +tracks/1/interp = 1 +tracks/1/loop_wrap = true +tracks/1/keys = { +"times": PackedFloat32Array(0, 6), +"transitions": PackedFloat32Array(1, 1), +"update": 1, +"values": [true, false] +} + +[sub_resource type="Animation" id="Animation_8ajos"] +resource_name = "PG_Sequence" +length = 5.0 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath("GUI/ChooseYourSeeds:anchor_top") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0, 1), +"transitions": PackedFloat32Array(0.5, 1), +"update": 0, +"values": [0.0, 1.0] +} +tracks/1/type = "value" +tracks/1/imported = false +tracks/1/enabled = true +tracks/1/path = NodePath("GUI/ChooseYourSeeds:anchor_bottom") +tracks/1/interp = 1 +tracks/1/loop_wrap = true +tracks/1/keys = { +"times": PackedFloat32Array(0, 1), +"transitions": PackedFloat32Array(0.5, 1), +"update": 0, +"values": [1.0, 2.0] +} +tracks/2/type = "value" +tracks/2/imported = false +tracks/2/enabled = true +tracks/2/path = NodePath("Camera2D:position") +tracks/2/interp = 1 +tracks/2/loop_wrap = true +tracks/2/keys = { +"times": PackedFloat32Array(0.7, 1.5334), +"transitions": PackedFloat32Array(0.5, 1), +"update": 0, +"values": [Vector2(700, 200), Vector2(481, 200)] +} +tracks/3/type = "value" +tracks/3/imported = false +tracks/3/enabled = true +tracks/3/path = NodePath("GUI/ReadySetPlant:text") +tracks/3/interp = 1 +tracks/3/loop_wrap = true +tracks/3/keys = { +"times": PackedFloat32Array(2, 2.667, 3.334), +"transitions": PackedFloat32Array(1, 1, 1), +"update": 1, +"values": ["ready", "set", "plant"] +} +tracks/4/type = "value" +tracks/4/imported = false +tracks/4/enabled = true +tracks/4/path = NodePath("GUI/ReadySetPlant:visible") +tracks/4/interp = 1 +tracks/4/loop_wrap = true +tracks/4/keys = { +"times": PackedFloat32Array(0, 2, 5), +"transitions": PackedFloat32Array(1, 1, 1), +"update": 1, +"values": [false, true, false] +} +tracks/5/type = "method" +tracks/5/imported = false +tracks/5/enabled = true +tracks/5/path = NodePath("Data") +tracks/5/interp = 1 +tracks/5/loop_wrap = true +tracks/5/keys = { +"times": PackedFloat32Array(3.33333), +"transitions": PackedFloat32Array(1), +"values": [{ +"args": [2], +"method": &"SetLevelState" +}] +} + +[sub_resource type="Animation" id="Animation_yw4uo"] +length = 0.001 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath("Camera2D:position") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 0, +"values": [Vector2(481, 200)] +} +tracks/1/type = "value" +tracks/1/imported = false +tracks/1/enabled = true +tracks/1/path = NodePath("GUI/ChooseYourSeeds:anchor_top") +tracks/1/interp = 1 +tracks/1/loop_wrap = true +tracks/1/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 0, +"values": [1.0] +} +tracks/2/type = "value" +tracks/2/imported = false +tracks/2/enabled = true +tracks/2/path = NodePath("GUI/ChooseYourSeeds:anchor_bottom") +tracks/2/interp = 1 +tracks/2/loop_wrap = true +tracks/2/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 0, +"values": [2.0] +} +tracks/3/type = "value" +tracks/3/imported = false +tracks/3/enabled = true +tracks/3/path = NodePath("GUI/ReadySetPlant:text") +tracks/3/interp = 1 +tracks/3/loop_wrap = true +tracks/3/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 1, +"values": [""] +} +tracks/4/type = "value" +tracks/4/imported = false +tracks/4/enabled = true +tracks/4/path = NodePath("GUI/ReadySetPlant:visible") +tracks/4/interp = 1 +tracks/4/loop_wrap = true +tracks/4/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 1, +"values": [false] +} + +[sub_resource type="AnimationLibrary" id="AnimationLibrary_yw4uo"] +_data = { +&"CYS_Sequence": SubResource("Animation_vbgdr"), +&"FW_Sequence": SubResource("Animation_lrlbv"), +&"HW_Sequence": SubResource("Animation_pqj5f"), +&"PG_Sequence": SubResource("Animation_8ajos"), +&"RESET": SubResource("Animation_yw4uo") +} [sub_resource type="WorldBoundaryShape2D" id="WorldBoundaryShape2D_482ps"] distance = -9.0 @@ -164,19 +417,26 @@ region = Rect2(255, 221, 118, 20) atlas = ExtResource("8_jg5t3") region = Rect2(194, 221, 61, 20) -[sub_resource type="RectangleShape2D" id="RectangleShape2D_xsaqy"] -size = Vector2(244, 399) +[sub_resource type="WorldBoundaryShape2D" id="WorldBoundaryShape2D_vbgdr"] +normal = Vector2(1, 0) +distance = 135.0 -[sub_resource type="RectangleShape2D" id="RectangleShape2D_jg5t3"] -size = Vector2(282, 399) +[sub_resource type="WorldBoundaryShape2D" id="WorldBoundaryShape2D_yw4uo"] +normal = Vector2(1, 0) +distance = 139.0 -[node name="level_template" type="Node2D"] +[node name="StandardLevel" type="Node2D"] [node name="MainAnimationPlayer" type="AnimationPlayer" parent="."] +libraries = { +&"": SubResource("AnimationLibrary_yw4uo") +} -[node name="Data" type="Node" parent="."] +[node name="Data" type="Node" parent="." node_paths=PackedStringArray("levelRunner", "player")] script = ExtResource("1_31ltw") SunCount = 50.0 +levelRunner = NodePath("../LevelRunner") +player = NodePath("../MainAnimationPlayer") [node name="Camera2D" type="Camera2D" parent="."] position = Vector2(481, 200) @@ -255,6 +515,11 @@ shape = SubResource("WorldBoundaryShape2D_482ps") layer = -2 follow_viewport_enabled = true +[node name="Background" type="Sprite2D" parent="Background"] +position = Vector2(500, 200) +texture = ExtResource("4_y72yf") +metadata/_edit_lock_ = true + [node name="HUD" type="CanvasLayer" parent="."] layer = -1 @@ -271,11 +536,36 @@ follow_viewport_enabled = true layer = 10 [node name="ChooseYourSeeds" parent="GUI" instance=ExtResource("3_xy2c6")] +anchors_preset = -1 +anchor_top = 1.0 +anchor_bottom = 2.0 +size_flags_horizontal = 3 +size_flags_vertical = 3 metadata/_edit_lock_ = true [node name="PauseMenu" parent="GUI" instance=ExtResource("6_4bmqp")] visible = false +[node name="WaveProgress" parent="GUI" instance=ExtResource("9_7v6ps")] +visible = false +offset_left = 443.0 +offset_top = 377.0 +offset_right = 443.2 +offset_bottom = 377.0 + +[node name="ReadySetPlant" type="RichTextLabel" parent="GUI"] +visible = false +anchors_preset = 15 +anchor_right = 1.0 +anchor_bottom = 1.0 +grow_horizontal = 2 +grow_vertical = 2 +mouse_filter = 2 +bbcode_enabled = true +shortcut_keys_enabled = false +horizontal_alignment = 1 +vertical_alignment = 1 + [node name="GameOverScreen" type="CanvasLayer" parent="."] process_mode = 3 layer = 11 @@ -345,7 +635,7 @@ collision_layer = 2 [node name="CollisionShape2D" type="CollisionShape2D" parent="GameOverZombie/LoseZone/Hitbox"] position = Vector2(122, 199.5) -shape = SubResource("RectangleShape2D_xsaqy") +shape = SubResource("WorldBoundaryShape2D_vbgdr") [node name="SunSpawner" type="Node" parent="."] script = ExtResource("14_y72yf") @@ -353,7 +643,7 @@ SunScene = ExtResource("15_7v6ps") [node name="Timer" type="Timer" parent="SunSpawner"] wait_time = 10.0 -autostart = true +script = ExtResource("19_s7icd") [node name="right_boundary_marker" parent="." instance=ExtResource("16_s7icd")] position = Vector2(755, 376) @@ -361,14 +651,50 @@ position = Vector2(755, 376) [node name="LeftBoundaryMarker" parent="." instance=ExtResource("17_8qqc4")] position = Vector2(305, 76) -[node name="Checkbox" type="Area2D" parent="."] +[node name="RowSpawner" type="Node2D" parent="." node_paths=PackedStringArray("delayTimer", "runner")] +position = Vector2(837, 76) +script = ExtResource("22_8qqc4") +delayTimer = NodePath("DelayTimer") +runner = NodePath("../LevelRunner") + +[node name="DelayTimer" type="Timer" parent="RowSpawner"] +wait_time = 2.5 + +[node name="LevelRunner" type="Node" parent="." node_paths=PackedStringArray("rowSpawner", "waveTimer")] +script = ExtResource("23_8vb7v") +rowSpawner = NodePath("../RowSpawner") +waveTimer = NodePath("WaveTimer") +approachNotificationTime = 5.0 + +[node name="WaveTimer" type="Timer" parent="LevelRunner"] +one_shot = true + +[node name="ZombieLevelPrevewer" type="Node2D" parent="."] +y_sort_enabled = true +position = Vector2(855, 76) +script = ExtResource("24_y5tw7") + +[node name="Checkbox" type="Area2D" parent="." node_paths=PackedStringArray("gameOverLayer", "fadeAnimation")] collision_mask = 24 script = ExtResource("19_482ps") +gameOverLayer = NodePath("../GameOverZombie") +fadeAnimation = NodePath("../GameOverScreen/AnimationPlayer") [node name="CollisionShape2D" type="CollisionShape2D" parent="Checkbox"] position = Vector2(141, 199.5) -shape = SubResource("RectangleShape2D_jg5t3") +shape = SubResource("WorldBoundaryShape2D_yw4uo") +[node name="InitialSpawner" type="Node" parent="."] +script = ExtResource("26_i7rp7") + +[connection signal="OnLevelStateChanged" from="Data" to="SunSpawner/Timer" method="OnLevelStateChanged"] +[connection signal="OnLevelStateChanged" from="Data" to="ZombieLevelPrevewer" method="OnLevelStateChanged"] +[connection signal="OnLevelStateChanged" from="Data" to="InitialSpawner" method="OnLevelStateChanged"] [connection signal="pressed" from="GameOverScreen/VBoxContainer/RestartButton" to="GameOverScreen/VBoxContainer/TapPlayer" method="Play"] [connection signal="pressed" from="GameOverScreen/VBoxContainer/ExitButton" to="GameOverScreen/VBoxContainer/TapPlayer" method="Play"] [connection signal="timeout" from="SunSpawner/Timer" to="SunSpawner" method="Spawn"] +[connection signal="FinalWaveInitiated" from="LevelRunner" to="MainAnimationPlayer" method="play" binds= ["FW_Sequence"]] +[connection signal="HugeWaveApproachingCallback" from="LevelRunner" to="MainAnimationPlayer" method="play" binds= ["HW_Sequence"]] +[connection signal="HugeWaveInitiated" from="LevelRunner" to="GUI/WaveProgress" method="OnHugeWaveApproached"] +[connection signal="ResourceChanged" from="LevelRunner" to="GUI/WaveProgress" method="SetLevelData"] +[connection signal="WaveChanged" from="LevelRunner" to="GUI/WaveProgress" method="OnWaveChanged"] diff --git a/scenes/templates/standard_players_house.tscn b/scenes/templates/standard_players_house.tscn deleted file mode 100644 index bf96ecf..0000000 --- a/scenes/templates/standard_players_house.tscn +++ /dev/null @@ -1,356 +0,0 @@ -[gd_scene load_steps=17 format=3 uid="uid://bu0dh5ct387xu"] - -[ext_resource type="PackedScene" uid="uid://dd3yegl1xo44m" path="res://scenes/templates/level_template.tscn" id="1_vdv3d"] -[ext_resource type="Texture2D" uid="uid://b0tb2hjum40aw" path="res://assets/sprites/background_summer.png" id="3_lsqv3"] -[ext_resource type="Script" uid="uid://1lkhoh43h86m" path="res://scripts/level/GameTimer.cs" id="4_8ajos"] -[ext_resource type="Script" uid="uid://84gvlkflxdhk" path="res://scripts/level/zombe_spawners/RowSpawner.cs" id="4_kn7hc"] -[ext_resource type="Script" uid="uid://puqxp2xeg1r2" path="res://scripts/level/LevelRunner.cs" id="5_vbgdr"] -[ext_resource type="PackedScene" uid="uid://c668qnmmpli5r" path="res://scenes/gui/wave_progress.tscn" id="6_yw4uo"] -[ext_resource type="Script" uid="uid://bc3s06ejbotma" path="res://scripts/gui/ZombieLevelPreviewer.cs" id="7_8ajos"] -[ext_resource type="Script" uid="uid://b31mnk4enldc4" path="res://scripts/level/InitialPackedSceneSpawner.cs" id="8_pqj5f"] - -[sub_resource type="Animation" id="Animation_vbgdr"] -resource_name = "CYS_Sequence" -length = 3.0 -tracks/0/type = "value" -tracks/0/imported = false -tracks/0/enabled = true -tracks/0/path = NodePath("Camera2D:position") -tracks/0/interp = 1 -tracks/0/loop_wrap = true -tracks/0/keys = { -"times": PackedFloat32Array(0.666667, 1.5), -"transitions": PackedFloat32Array(0.5, 1), -"update": 0, -"values": [Vector2(481, 200), Vector2(700, 200)] -} -tracks/1/type = "value" -tracks/1/imported = false -tracks/1/enabled = true -tracks/1/path = NodePath("GUI/ChooseYourSeeds:anchor_top") -tracks/1/interp = 1 -tracks/1/loop_wrap = true -tracks/1/keys = { -"times": PackedFloat32Array(0, 2, 3), -"transitions": PackedFloat32Array(1, 0.5, 1), -"update": 0, -"values": [1.0, 1.0, 0.0] -} -tracks/2/type = "value" -tracks/2/imported = false -tracks/2/enabled = true -tracks/2/path = NodePath("GUI/ChooseYourSeeds:anchor_bottom") -tracks/2/interp = 1 -tracks/2/loop_wrap = true -tracks/2/keys = { -"times": PackedFloat32Array(0, 2, 3), -"transitions": PackedFloat32Array(1, 0.5, 1), -"update": 0, -"values": [2.0, 2.0, 1.0] -} - -[sub_resource type="Animation" id="Animation_lrlbv"] -resource_name = "FW_Sequence" -length = 3.0 -tracks/0/type = "value" -tracks/0/imported = false -tracks/0/enabled = true -tracks/0/path = NodePath("GUI/ReadySetPlant:visible") -tracks/0/interp = 1 -tracks/0/loop_wrap = true -tracks/0/keys = { -"times": PackedFloat32Array(0, 3), -"transitions": PackedFloat32Array(1, 1), -"update": 1, -"values": [true, false] -} -tracks/1/type = "value" -tracks/1/imported = false -tracks/1/enabled = true -tracks/1/path = NodePath("GUI/ReadySetPlant:text") -tracks/1/interp = 1 -tracks/1/loop_wrap = true -tracks/1/keys = { -"times": PackedFloat32Array(0), -"transitions": PackedFloat32Array(1), -"update": 1, -"values": ["final_wave"] -} - -[sub_resource type="Animation" id="Animation_pqj5f"] -resource_name = "HW_Sequence" -length = 6.0 -tracks/0/type = "value" -tracks/0/imported = false -tracks/0/enabled = true -tracks/0/path = NodePath("GUI/ReadySetPlant:text") -tracks/0/interp = 1 -tracks/0/loop_wrap = true -tracks/0/keys = { -"times": PackedFloat32Array(0), -"transitions": PackedFloat32Array(1), -"update": 1, -"values": ["huge_wave"] -} -tracks/1/type = "value" -tracks/1/imported = false -tracks/1/enabled = true -tracks/1/path = NodePath("GUI/ReadySetPlant:visible") -tracks/1/interp = 1 -tracks/1/loop_wrap = true -tracks/1/keys = { -"times": PackedFloat32Array(0, 6), -"transitions": PackedFloat32Array(1, 1), -"update": 1, -"values": [true, false] -} - -[sub_resource type="Animation" id="Animation_8ajos"] -resource_name = "PG_Sequence" -length = 5.0 -tracks/0/type = "value" -tracks/0/imported = false -tracks/0/enabled = true -tracks/0/path = NodePath("GUI/ChooseYourSeeds:anchor_top") -tracks/0/interp = 1 -tracks/0/loop_wrap = true -tracks/0/keys = { -"times": PackedFloat32Array(0, 1), -"transitions": PackedFloat32Array(0.5, 1), -"update": 0, -"values": [0.0, 1.0] -} -tracks/1/type = "value" -tracks/1/imported = false -tracks/1/enabled = true -tracks/1/path = NodePath("GUI/ChooseYourSeeds:anchor_bottom") -tracks/1/interp = 1 -tracks/1/loop_wrap = true -tracks/1/keys = { -"times": PackedFloat32Array(0, 1), -"transitions": PackedFloat32Array(0.5, 1), -"update": 0, -"values": [1.0, 2.0] -} -tracks/2/type = "value" -tracks/2/imported = false -tracks/2/enabled = true -tracks/2/path = NodePath("Camera2D:position") -tracks/2/interp = 1 -tracks/2/loop_wrap = true -tracks/2/keys = { -"times": PackedFloat32Array(0.7, 1.5334), -"transitions": PackedFloat32Array(0.5, 1), -"update": 0, -"values": [Vector2(700, 200), Vector2(481, 200)] -} -tracks/3/type = "value" -tracks/3/imported = false -tracks/3/enabled = true -tracks/3/path = NodePath("GUI/ReadySetPlant:text") -tracks/3/interp = 1 -tracks/3/loop_wrap = true -tracks/3/keys = { -"times": PackedFloat32Array(2, 2.667, 3.334), -"transitions": PackedFloat32Array(1, 1, 1), -"update": 1, -"values": ["ready", "set", "plant"] -} -tracks/4/type = "value" -tracks/4/imported = false -tracks/4/enabled = true -tracks/4/path = NodePath("GUI/ReadySetPlant:visible") -tracks/4/interp = 1 -tracks/4/loop_wrap = true -tracks/4/keys = { -"times": PackedFloat32Array(0, 2, 5), -"transitions": PackedFloat32Array(1, 1, 1), -"update": 1, -"values": [false, true, false] -} -tracks/5/type = "method" -tracks/5/imported = false -tracks/5/enabled = true -tracks/5/path = NodePath("Data") -tracks/5/interp = 1 -tracks/5/loop_wrap = true -tracks/5/keys = { -"times": PackedFloat32Array(3.33333), -"transitions": PackedFloat32Array(1), -"values": [{ -"args": [2], -"method": &"SetLevelState" -}] -} - -[sub_resource type="Animation" id="Animation_yw4uo"] -length = 0.001 -tracks/0/type = "value" -tracks/0/imported = false -tracks/0/enabled = true -tracks/0/path = NodePath("Camera2D:position") -tracks/0/interp = 1 -tracks/0/loop_wrap = true -tracks/0/keys = { -"times": PackedFloat32Array(0), -"transitions": PackedFloat32Array(1), -"update": 0, -"values": [Vector2(481, 200)] -} -tracks/1/type = "value" -tracks/1/imported = false -tracks/1/enabled = true -tracks/1/path = NodePath("GUI/ChooseYourSeeds:anchor_top") -tracks/1/interp = 1 -tracks/1/loop_wrap = true -tracks/1/keys = { -"times": PackedFloat32Array(0), -"transitions": PackedFloat32Array(1), -"update": 0, -"values": [1.0] -} -tracks/2/type = "value" -tracks/2/imported = false -tracks/2/enabled = true -tracks/2/path = NodePath("GUI/ChooseYourSeeds:anchor_bottom") -tracks/2/interp = 1 -tracks/2/loop_wrap = true -tracks/2/keys = { -"times": PackedFloat32Array(0), -"transitions": PackedFloat32Array(1), -"update": 0, -"values": [2.0] -} -tracks/3/type = "value" -tracks/3/imported = false -tracks/3/enabled = true -tracks/3/path = NodePath("GUI/ReadySetPlant:text") -tracks/3/interp = 1 -tracks/3/loop_wrap = true -tracks/3/keys = { -"times": PackedFloat32Array(0), -"transitions": PackedFloat32Array(1), -"update": 1, -"values": [""] -} -tracks/4/type = "value" -tracks/4/imported = false -tracks/4/enabled = true -tracks/4/path = NodePath("GUI/ReadySetPlant:visible") -tracks/4/interp = 1 -tracks/4/loop_wrap = true -tracks/4/keys = { -"times": PackedFloat32Array(0), -"transitions": PackedFloat32Array(1), -"update": 1, -"values": [false] -} - -[sub_resource type="AnimationLibrary" id="AnimationLibrary_yw4uo"] -_data = { -&"CYS_Sequence": SubResource("Animation_vbgdr"), -&"FW_Sequence": SubResource("Animation_lrlbv"), -&"HW_Sequence": SubResource("Animation_pqj5f"), -&"PG_Sequence": SubResource("Animation_8ajos"), -&"RESET": SubResource("Animation_yw4uo") -} - -[sub_resource type="WorldBoundaryShape2D" id="WorldBoundaryShape2D_vbgdr"] -normal = Vector2(1, 0) -distance = 135.0 - -[sub_resource type="WorldBoundaryShape2D" id="WorldBoundaryShape2D_yw4uo"] -normal = Vector2(1, 0) -distance = 139.0 - -[node name="StandardPlayersHouse" instance=ExtResource("1_vdv3d")] - -[node name="MainAnimationPlayer" parent="." index="0"] -libraries = { -&"": SubResource("AnimationLibrary_yw4uo") -} - -[node name="Data" parent="." index="1" node_paths=PackedStringArray("levelRunner", "player")] -levelRunner = NodePath("../LevelRunner") -player = NodePath("../MainAnimationPlayer") - -[node name="Background" type="Sprite2D" parent="Background" index="0"] -position = Vector2(500, 200) -texture = ExtResource("3_lsqv3") -metadata/_edit_lock_ = true - -[node name="ChooseYourSeeds" parent="GUI" index="0"] -anchors_preset = -1 -anchor_top = 1.0 -anchor_bottom = 2.0 -size_flags_horizontal = 3 -size_flags_vertical = 3 - -[node name="WaveProgress" parent="GUI" index="2" instance=ExtResource("6_yw4uo")] -visible = false -offset_left = 443.0 -offset_top = 377.0 -offset_right = 443.2 -offset_bottom = 377.0 - -[node name="ReadySetPlant" type="RichTextLabel" parent="GUI" index="3"] -visible = false -anchors_preset = 15 -anchor_right = 1.0 -anchor_bottom = 1.0 -grow_horizontal = 2 -grow_vertical = 2 -mouse_filter = 2 -bbcode_enabled = true -shortcut_keys_enabled = false -horizontal_alignment = 1 -vertical_alignment = 1 - -[node name="CollisionShape2D" parent="GameOverZombie/LoseZone/Hitbox" index="0"] -shape = SubResource("WorldBoundaryShape2D_vbgdr") - -[node name="Timer" parent="SunSpawner" index="0"] -autostart = false -script = ExtResource("4_8ajos") - -[node name="RowSpawner" type="Node2D" parent="." index="14" node_paths=PackedStringArray("delayTimer", "runner")] -position = Vector2(837, 76) -script = ExtResource("4_kn7hc") -delayTimer = NodePath("DelayTimer") -runner = NodePath("../LevelRunner") - -[node name="DelayTimer" type="Timer" parent="RowSpawner" index="0"] -wait_time = 2.5 - -[node name="LevelRunner" type="Node" parent="." index="15" node_paths=PackedStringArray("rowSpawner", "waveTimer")] -script = ExtResource("5_vbgdr") -rowSpawner = NodePath("../RowSpawner") -waveTimer = NodePath("WaveTimer") -approachNotificationTime = 5.0 - -[node name="WaveTimer" type="Timer" parent="LevelRunner" index="0"] -one_shot = true - -[node name="ZombieLevelPrevewer" type="Node2D" parent="." index="16"] -y_sort_enabled = true -position = Vector2(855, 76) -script = ExtResource("7_8ajos") - -[node name="Checkbox" parent="." index="17" node_paths=PackedStringArray("gameOverLayer", "fadeAnimation")] -gameOverLayer = NodePath("../GameOverZombie") -fadeAnimation = NodePath("../GameOverScreen/AnimationPlayer") - -[node name="CollisionShape2D" parent="Checkbox" index="0"] -shape = SubResource("WorldBoundaryShape2D_yw4uo") - -[node name="InitialSpawner" type="Node" parent="." index="18"] -script = ExtResource("8_pqj5f") - -[connection signal="OnLevelStateChanged" from="Data" to="SunSpawner/Timer" method="OnLevelStateChanged"] -[connection signal="OnLevelStateChanged" from="Data" to="ZombieLevelPrevewer" method="OnLevelStateChanged"] -[connection signal="OnLevelStateChanged" from="Data" to="InitialSpawner" method="OnLevelStateChanged"] -[connection signal="FinalWaveInitiated" from="LevelRunner" to="MainAnimationPlayer" method="play" binds= ["FW_Sequence"]] -[connection signal="HugeWaveApproachingCallback" from="LevelRunner" to="MainAnimationPlayer" method="play" binds= ["HW_Sequence"]] -[connection signal="HugeWaveInitiated" from="LevelRunner" to="GUI/WaveProgress" method="OnHugeWaveApproached"] -[connection signal="ResourceChanged" from="LevelRunner" to="GUI/WaveProgress" method="SetLevelData"] -[connection signal="WaveChanged" from="LevelRunner" to="GUI/WaveProgress" method="OnWaveChanged"] diff --git a/scripts/gui/menu_buttons.gd b/scripts/gui/menu_buttons.gd index 0514f9d..c7ea205 100644 --- a/scripts/gui/menu_buttons.gd +++ b/scripts/gui/menu_buttons.gd @@ -2,7 +2,7 @@ extends Node func _on_play_button_pressed() -> void: - LevelController.call("StartLevel",preload("uid://bu0dh5ct387xu"),preload("uid://ctbue7dex4umy")) + LevelController.call("StartLevel",preload("uid://dd3yegl1xo44m"),preload("uid://ctbue7dex4umy")) $ChannelPlayer.call("Play")