diff --git a/scenes/UI/Start.tscn b/scenes/UI/Start.tscn index dc6c628..9dd71aa 100644 --- a/scenes/UI/Start.tscn +++ b/scenes/UI/Start.tscn @@ -31,7 +31,7 @@ focus_neighbor_right = NodePath("../Button02") focus_neighbor_bottom = NodePath("../Button02") focus_next = NodePath("../Button02") focus_previous = NodePath("../Button05") -text = "New Game" +text = "Play Level 1" [node name="Button02" type="Button" parent="CenterContainer/VBoxContainer"] layout_mode = 2 @@ -41,8 +41,7 @@ focus_neighbor_right = NodePath("../Button03") focus_neighbor_bottom = NodePath("../Button03") focus_next = NodePath("../Button03") focus_previous = NodePath("../Button01") -disabled = true -text = "Continue" +text = "Play Level 2" [node name="Button03" type="Button" parent="CenterContainer/VBoxContainer"] layout_mode = 2 @@ -77,5 +76,6 @@ focus_previous = NodePath("../Button04") text = "Quit " -[connection signal="button_up" from="CenterContainer/VBoxContainer/Button01" to="." method="_on_play"] +[connection signal="button_up" from="CenterContainer/VBoxContainer/Button01" to="." method="_on_play_lv0"] +[connection signal="button_up" from="CenterContainer/VBoxContainer/Button02" to="." method="_on_play_lv1"] [connection signal="button_up" from="CenterContainer/VBoxContainer/Button05" to="." method="_on_quit"] diff --git a/scenes/UI/Win.tscn b/scenes/UI/Win.tscn index 612aa09..42c3656 100644 --- a/scenes/UI/Win.tscn +++ b/scenes/UI/Win.tscn @@ -1,9 +1,9 @@ [gd_scene load_steps=2 format=3 uid="uid://8euefl26umu1"] -[ext_resource type="Script" path="res://scripts/End.gd" id="1_oljih"] +[ext_resource type="Script" path="res://scripts/Win.gd" id="1_wgn5v"] [node name="End" type="CanvasLayer"] -script = ExtResource("1_oljih") +script = ExtResource("1_wgn5v") metadata/_edit_use_anchors_ = true [node name="CenterContainer" type="CenterContainer" parent="."] @@ -27,4 +27,4 @@ horizontal_alignment = 1 layout_mode = 2 text = "Play Again?" -[connection signal="button_up" from="CenterContainer/VBoxContainer/Label2" to="." method="_on_play"] +[connection signal="button_up" from="CenterContainer/VBoxContainer/Label2" to="." method="_on_label_2_button_up"] diff --git a/scenes/main.tscn b/scenes/main.tscn index 68dd6a7..55d486e 100644 --- a/scenes/main.tscn +++ b/scenes/main.tscn @@ -1,7 +1,8 @@ -[gd_scene load_steps=3 format=3 uid="uid://dsqm17w8hg428"] +[gd_scene load_steps=4 format=3 uid="uid://dsqm17w8hg428"] [ext_resource type="Script" path="res://scripts/World.gd" id="1_131aq"] [ext_resource type="PackedScene" uid="uid://cnp8h65468543" path="res://scenes/overlays/crt_overlay.tscn" id="2_xf15f"] +[ext_resource type="PackedScene" uid="uid://bhoqj8b4oxyks" path="res://scenes/levels/level_0.tscn" id="3_wx6ne"] [node name="World" type="Node2D"] script = ExtResource("1_131aq") @@ -11,6 +12,8 @@ one_shot = true [node name="AudioStreamPlayer" type="AudioStreamPlayer" parent="."] +[node name="Level" parent="." instance=ExtResource("3_wx6ne")] + [node name="CRT_Overlay" parent="." instance=ExtResource("2_xf15f")] [connection signal="timeout" from="Timer" to="." method="_on_timeout"] diff --git a/scenes/main1.tscn b/scenes/main1.tscn new file mode 100644 index 0000000..1a6b1b6 --- /dev/null +++ b/scenes/main1.tscn @@ -0,0 +1,19 @@ +[gd_scene load_steps=4 format=3 uid="uid://cokjt1a3cdywh"] + +[ext_resource type="Script" path="res://scripts/World.gd" id="1_3g8ek"] +[ext_resource type="PackedScene" uid="uid://cnp8h65468543" path="res://scenes/overlays/crt_overlay.tscn" id="2_onw3m"] +[ext_resource type="PackedScene" uid="uid://duai0nkslx7o8" path="res://scenes/levels/level_1.tscn" id="2_xjpi1"] + +[node name="World" type="Node2D"] +script = ExtResource("1_3g8ek") + +[node name="Timer" type="Timer" parent="."] +one_shot = true + +[node name="AudioStreamPlayer" type="AudioStreamPlayer" parent="."] + +[node name="Level" parent="." instance=ExtResource("2_xjpi1")] + +[node name="CRT_Overlay" parent="." instance=ExtResource("2_onw3m")] + +[connection signal="timeout" from="Timer" to="." method="_on_timeout"] diff --git a/scripts/End.gd b/scripts/End.gd index 2cbb7d1..d4694a2 100644 --- a/scripts/End.gd +++ b/scripts/End.gd @@ -15,14 +15,17 @@ func _process(delta): func _on_quit(): get_tree().quit() -func _on_play(): - $".".hide() - var w = get_node("/root/World"); - - if !w: - get_tree().change_scene_to_file( "res://scenes/main.tscn" ) - else: - w.load_level() - w.player_spawn() - w.show() +func _on_play_lv0(): + get_tree().change_scene_to_file( "res://scenes/main.tscn" ) +func _on_play_lv1(): + get_tree().change_scene_to_file( "res://scenes/main1.tscn" ) + #$".".hide() + #var w = get_node("/root/World"); + # + #if !w: + #get_tree().change_scene_to_file( "res://scenes/main.tscn" ) + #else: + #w.load_level() + #w.player_spawn() + #w.show() diff --git a/scripts/Menu.gd b/scripts/Menu.gd new file mode 100644 index 0000000..d4694a2 --- /dev/null +++ b/scripts/Menu.gd @@ -0,0 +1,31 @@ +extends CanvasLayer +var mainScene + +# Called when the node enters the scene tree for the first time. +func _ready(): + #$CenterContainer/VBoxContainer/Button05.button_up.connect( _on_quit ) + #$CenterContainer/VBoxContainer/Button01.button_up.connect( _on_play ) + pass # Replace with function body. + + +# Called every frame. 'delta' is the elapsed time since the previous frame. +func _process(delta): + pass + +func _on_quit(): + get_tree().quit() + +func _on_play_lv0(): + get_tree().change_scene_to_file( "res://scenes/main.tscn" ) +func _on_play_lv1(): + get_tree().change_scene_to_file( "res://scenes/main1.tscn" ) + #$".".hide() + #var w = get_node("/root/World"); + # + #if !w: + #get_tree().change_scene_to_file( "res://scenes/main.tscn" ) + #else: + #w.load_level() + #w.player_spawn() + #w.show() + diff --git a/scripts/Splash.gd b/scripts/Splash.gd index 9774857..5ca79bb 100644 --- a/scripts/Splash.gd +++ b/scripts/Splash.gd @@ -16,7 +16,7 @@ func _on_quit(): get_tree().quit() func load_start_menu(): - $".".hide() - get_tree().get_root().add_child( start ) - #get_tree().change_scene_to_file("res://scenes/UI/Start.tscn") + #$".".hide() + #get_tree().get_root().add_child( start ) + get_tree().change_scene_to_file("res://scenes/UI/Start.tscn") diff --git a/scripts/Win.gd b/scripts/Win.gd index b97cc7f..a3cf02e 100644 --- a/scripts/Win.gd +++ b/scripts/Win.gd @@ -16,12 +16,16 @@ func _on_quit(): get_tree().quit() func _on_play(): - $".".hide() - var w = get_node("/root/World"); - - if !w: - get_tree().change_scene_to_file( "res://scenes/main.tscn" ) - else: - w.player_spawn() - w.show() + #$".".hide() + #var w = get_node("/root/World"); + # + #if !w: + get_tree().change_scene_to_file( "res://scenes/Start.tscn" ) + #else: + #w.player_spawn() + #w.show() + + +func _on_label_2_button_up(): + get_tree().change_scene_to_file("res://scenes/UI/Start.tscn") diff --git a/scripts/World.gd b/scripts/World.gd index 5d42b92..2b2dd08 100644 --- a/scripts/World.gd +++ b/scripts/World.gd @@ -3,15 +3,14 @@ extends Node2D var gravity = ProjectSettings.get_setting("physics/2d/default_gravity") var gravity_vector = ProjectSettings.get_setting("physics/2d/default_gravity_vector") var player = load("res://scenes/pDasher.tscn") -var level +#var level var direction: int = 1 var paused: bool = false var asp: AudioStreamPlayer var switch_gravity_sound = preload("res://audio/switch_gravity.wav") var win = preload("res://scenes/UI/Win.tscn").instantiate() var end = preload("res://scenes/UI/End.tscn").instantiate() -@export var Levels: Array[Resource] = [ preload("res://scenes/levels/level_0.tscn"), preload("res://scenes/levels/level_1.tscn") ] -var level_n: int = 0 +#var level_n: int = 1 var pDasher @@ -25,41 +24,32 @@ func switch_direction(): ## NAVIGATION func player_fail(): - $".".hide() - #$pDasher.queue_free() - - #ONLY IF NOT THERE ALREADY - - if !$"."/End : - get_tree().get_root().add_child( end ) - else: - $"."/End.show() - #get_tree().change_scene_to_file("res://scenes/UI/End.tscn") + get_tree().change_scene_to_file("res://scenes/UI/Start.tscn") func player_win(): - level_n += 1 - load_level() - $"." .hide() - get_tree().get_root().add_child( win ) - #get_tree().change_scene_to_file("res://scenes/UI/Win.tscn") + #level_n += 1 + #load_level() + #$"." .hide() + #get_tree().get_root().add_child( win ) + get_tree().change_scene_to_file("res://scenes/UI/Win.tscn") func player_spawn(): pDasher.position = Vector2(0,0 ) -func load_level(): - if level_n == null: - level_n = 0 - level = Levels[level_n] +#func load_level(): + ##if level_n == null: + ##level_n = 0 + #level = Levels[level_n] func _ready(): - load_level() + #load_level() asp = $AudioStreamPlayer #load player and level get_node("/root/World").add_child( player.instantiate() ) - get_node("/root/World").add_child( level.instantiate() ) #relative way meaning or whatever node this script is attached to. + #get_node("/root/World").add_child( level.instantiate() ) #relative way meaning or whatever node this script is attached to. # manage signals connections var abysses = $Level/Abysses.get_children()