summaryrefslogtreecommitdiff
path: root/client
diff options
context:
space:
mode:
Diffstat (limited to 'client')
-rw-r--r--client/menu/scene_transition.gd19
1 files changed, 9 insertions, 10 deletions
diff --git a/client/menu/scene_transition.gd b/client/menu/scene_transition.gd
index b30897aa..a10fccfd 100644
--- a/client/menu/scene_transition.gd
+++ b/client/menu/scene_transition.gd
@@ -19,36 +19,35 @@ extends Control
@onready var anim: AnimationPlayer = $AnimationPlayer
-var black = true
+var s_current = false
+var s_target = false
var fading = false
-var queue = []
-
func _ready():
$ColorRect.visible = true
func next():
- if fading: return
- if queue.is_empty(): return
+ while fading: await anim.animation_finished
+ if s_target == s_current: return
fading = true
- if queue.pop_front():
+ if s_target:
anim.play_backwards("fade")
await anim.animation_finished
self.mouse_filter = Control.MOUSE_FILTER_IGNORE
- black = false
+ s_current = true
else:
self.mouse_filter = Control.MOUSE_FILTER_STOP
anim.play("fade")
await anim.animation_finished
- black = false
+ s_current = false
fading = false
await next()
func fade_in():
- queue.push_back(true)
+ s_target = true
await next()
func fade_out():
- queue.push_back(false)
+ s_target = false
await next()
func _exit_tree():