Added help box

This commit is contained in:
cblech
2025-01-20 19:30:43 +01:00
parent d8b427de8f
commit 77a7441400
5 changed files with 110 additions and 14 deletions
+26
View File
@@ -0,0 +1,26 @@
extends Node
var container: HelpBoxContainer
func showHelp(text:String)->void:
container.showHelp(text)
func hideHelp()->void:
container.hideHelp()
func registerContainer(container: HelpBoxContainer)->void:
self.container = container
func _input(event: InputEvent) -> void:
if event.is_action_pressed("ui_left"):
HelpBox.showHelp("This is a test help text.")
if event.is_action_pressed("ui_right"):
HelpBox.hideHelp()
if event.is_action_pressed("ui_up"):
Dialogic.start_timeline("test_time_line")
+55
View File
@@ -0,0 +1,55 @@
extends PanelContainer
class_name HelpBoxContainer
@onready var textLabel: Label = $MarginContainer/Label
var animationTween:Tween
# Called when the node enters the scene tree for the first time.
func _ready() -> void:
HelpBox.registerContainer(self)
await get_tree().process_frame
hideHelpInstant()
# Called every frame. 'delta' is the elapsed time since the previous frame.
func _process(delta: float) -> void:
pass
func showHelp(text: String) -> void:
textLabel.text = text
if animationTween:
animationTween.kill()
visible = false
visible = true
var offset = get_rect().size.x + 40
animationTween = get_tree().create_tween()
animationTween.set_ease(Tween.EASE_OUT)
animationTween.set_trans(Tween.TRANS_QUAD)
animationTween.tween_property(self, "position:x", 0, .5).from(offset)
func hideHelp() -> void:
if animationTween:
animationTween.kill()
var offset = get_rect().size.x + 40
animationTween = get_tree().create_tween()
animationTween.set_ease(Tween.EASE_IN)
animationTween.set_trans(Tween.TRANS_QUAD)
animationTween.tween_property(self, "position:x", offset, .5)
func hideHelpInstant() -> void:
if animationTween:
animationTween.kill()
var offset = get_rect().size.x + 40
animationTween = get_tree().create_tween()
animationTween.set_ease(Tween.EASE_IN)
animationTween.set_trans(Tween.TRANS_QUAD)
animationTween.tween_property(self, "position:x", offset, 0)