30 lines
871 B
GDScript
30 lines
871 B
GDScript
extends CanvasLayer
|
|
|
|
@onready var panel : PanelContainer = $Panel
|
|
@onready var label : Label = $Panel/Label
|
|
|
|
func _ready() -> void:
|
|
panel.visible = false
|
|
GameData.save_started.connect(_on_save_started)
|
|
GameData.save_finished.connect(_on_save_finished)
|
|
|
|
func _on_save_started() -> void:
|
|
label.text = "Sauvegarde en cours..."
|
|
panel.visible = true
|
|
panel.modulate.a = 1.0
|
|
|
|
func _on_save_finished(success : bool) -> void:
|
|
label.text = "Sauvegardé !" if success else "Échec de la sauvegarde"
|
|
_fade_out()
|
|
|
|
func _on_load_finished(success : bool) -> void:
|
|
label.text = "Chargé !" if success else "Aucune sauvegarde"
|
|
_fade_out()
|
|
|
|
func _fade_out() -> void:
|
|
# petit fade out après un court délai
|
|
var tween := create_tween()
|
|
tween.tween_interval(0.8)
|
|
tween.tween_property(panel, "modulate:a", 0.0, 0.3)
|
|
tween.tween_callback(func() -> void: panel.visible = false)
|