summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHenrique Alves <henriquelalves@gmail.com>2022-07-17 13:30:42 -0300
committerHenrique Alves <henriquelalves@gmail.com>2022-07-17 13:30:42 -0300
commit1e892024ff2f03baa3af31e1a732d6da222509c3 (patch)
treea6ac66e7fd7e822d24568cf26120300611577c1e
parentd82ead0125167f3288804dc19cafd40c17bd05d8 (diff)
downloadgamejam-gmtk-2022-1e892024ff2f03baa3af31e1a732d6da222509c3.tar.gz
gamejam-gmtk-2022-1e892024ff2f03baa3af31e1a732d6da222509c3.tar.bz2
gamejam-gmtk-2022-1e892024ff2f03baa3af31e1a732d6da222509c3.zip
skip onboarding option
-rw-r--r--Scenes/Dungeon.tscn56
-rw-r--r--Scenes/UIController.gd45
2 files changed, 83 insertions, 18 deletions
diff --git a/Scenes/Dungeon.tscn b/Scenes/Dungeon.tscn
index 07a2de0..25f885a 100644
--- a/Scenes/Dungeon.tscn
+++ b/Scenes/Dungeon.tscn
@@ -1,4 +1,4 @@
-[gd_scene load_steps=34 format=2]
+[gd_scene load_steps=37 format=2]
[ext_resource path="res://Scenes/Dungeon.gd" type="Script" id=1]
[ext_resource path="res://Scenes/CameraControl.gd" type="Script" id=2]
@@ -292,6 +292,43 @@ tracks/0/keys = {
"values": [ Color( 1, 1, 1, 0 ) ]
}
+[sub_resource type="DynamicFont" id=29]
+size = 24
+outline_size = 2
+outline_color = Color( 0, 0, 0, 1 )
+font_data = ExtResource( 5 )
+
+[sub_resource type="Animation" id=27]
+resource_name = "FadeIn"
+length = 0.4
+tracks/0/type = "value"
+tracks/0/path = NodePath(".:modulate")
+tracks/0/interp = 1
+tracks/0/loop_wrap = true
+tracks/0/imported = false
+tracks/0/enabled = true
+tracks/0/keys = {
+"times": PoolRealArray( 0, 0.4 ),
+"transitions": PoolRealArray( 1, 1 ),
+"update": 0,
+"values": [ Color( 1, 1, 1, 0 ), Color( 1, 1, 1, 1 ) ]
+}
+
+[sub_resource type="Animation" id=28]
+length = 0.001
+tracks/0/type = "value"
+tracks/0/path = NodePath(".:modulate")
+tracks/0/interp = 1
+tracks/0/loop_wrap = true
+tracks/0/imported = false
+tracks/0/enabled = true
+tracks/0/keys = {
+"times": PoolRealArray( 0 ),
+"transitions": PoolRealArray( 1 ),
+"update": 0,
+"values": [ Color( 1, 1, 1, 0 ) ]
+}
+
[sub_resource type="Animation" id=9]
resource_name = "FadeIn"
length = 0.4
@@ -679,6 +716,23 @@ valign = 1
anims/FadeIn = SubResource( 25 )
anims/RESET = SubResource( 26 )
+[node name="SkipLabel" type="Label" parent="UIController/OnboardingOverlay"]
+modulate = Color( 1, 1, 1, 0 )
+anchor_top = 1.0
+anchor_bottom = 1.0
+margin_left = 15.0
+margin_top = -96.0
+margin_right = 1067.0
+margin_bottom = -15.0
+custom_fonts/font = SubResource( 29 )
+text = "Press ESC to skip tutorial"
+valign = 2
+autowrap = true
+
+[node name="AnimationPlayer" type="AnimationPlayer" parent="UIController/OnboardingOverlay/SkipLabel"]
+anims/FadeIn = SubResource( 27 )
+anims/RESET = SubResource( 28 )
+
[node name="AnimationPlayer" type="AnimationPlayer" parent="UIController/OnboardingOverlay"]
anims/FadeIn = SubResource( 9 )
anims/RESET = SubResource( 10 )
diff --git a/Scenes/UIController.gd b/Scenes/UIController.gd
index df18866..03c2556 100644
--- a/Scenes/UIController.gd
+++ b/Scenes/UIController.gd
@@ -6,6 +6,8 @@ onready var particles = $Particles
onready var activated_crystals
+onready var skip_all = false
+
signal _skip_step
func _ready():
@@ -42,6 +44,7 @@ func on_onboarding():
$OnboardingOverlay.show()
$OnboardingOverlay/AnimationPlayer.play("FadeIn")
yield($OnboardingOverlay/AnimationPlayer,"animation_finished")
+ show_skip()
yield(onboarding_step(1), "completed")
yield(onboarding_step(2), "completed")
yield(onboarding_step(3), "completed")
@@ -55,24 +58,32 @@ func on_onboarding():
func _input(event):
if event is InputEventKey and event.is_pressed():
+ if event.scancode == KEY_ESCAPE:
+ skip_all = true
emit_signal("_skip_step")
func onboarding_step(i):
- var intro = get_node("OnboardingOverlay/Intro%d" % i)
- intro.show()
- var intro_player = intro.get_node("AnimationPlayer")
- intro_player.play("FadeIn")
- yield(intro_player, "animation_finished")
-
- var timer = get_tree().create_timer(4)
- timer.connect("timeout", self, "emit_signal", ["_skip_step"])
-
- yield(self, "_skip_step")
-
- if timer != null:
- timer.disconnect("timeout", self, "emit_signal")
-
- intro_player.play_backwards("FadeIn")
- yield(intro_player, "animation_finished")
- intro.hide()
+ if not skip_all:
+ var intro = get_node("OnboardingOverlay/Intro%d" % i)
+ intro.show()
+ var intro_player = intro.get_node("AnimationPlayer")
+ intro_player.play("FadeIn")
+ yield(intro_player, "animation_finished")
+
+ var timer = get_tree().create_timer(4)
+ timer.connect("timeout", self, "emit_signal", ["_skip_step"])
+
+ yield(self, "_skip_step")
+
+ if timer != null:
+ timer.disconnect("timeout", self, "emit_signal")
+
+ intro_player.play_backwards("FadeIn")
+ yield(intro_player, "animation_finished")
+ intro.hide()
+ yield(get_tree(),"idle_frame")
+
+func show_skip():
+# yield(get_tree().create_timer(1),"timeout")
+ $OnboardingOverlay/SkipLabel/AnimationPlayer.play("FadeIn")