cirnogodot/addons/dialogic/Modules/Character/DefaultAnimations/slide_down_in_out.gd

27 lines
797 B
GDScript3
Raw Permalink Normal View History

2025-02-06 11:36:21 +01:00
extends DialogicAnimation
func animate() -> void:
var tween := (node.create_tween() as Tween)
tween.set_ease(Tween.EASE_OUT).set_trans(Tween.TRANS_BACK)
2026-01-05 16:00:41 +01:00
var end_position_y: float = base_position.y + node.get_parent().global_position.y
var start_position: float = -get_node_size().y + get_node_origin().y
2025-02-06 11:36:21 +01:00
if is_reversed:
2026-01-05 16:00:41 +01:00
tween.set_ease(Tween.EASE_IN)
end_position_y = -get_node_size().y + get_node_origin().y
2025-02-06 11:36:21 +01:00
start_position = base_position.y
node.position.y = start_position
2026-01-05 16:00:41 +01:00
tween.tween_property(node, 'global_position:y', end_position_y, time)
2025-02-06 11:36:21 +01:00
await tween.finished
finished_once.emit()
func _get_named_variations() -> Dictionary:
return {
"slide in down": {"reversed": false, "type": AnimationType.IN},
"slide out up": {"reversed": true, "type": AnimationType.OUT},
}