40 lines
1.2 KiB
GDScript
40 lines
1.2 KiB
GDScript
extends Control
|
|
|
|
@onready var panel_container = $PanelContainer
|
|
@onready var margin_container2 = $Pivot/MarginContainer
|
|
|
|
var mat: ShaderMaterial
|
|
|
|
func show_panel() -> void:
|
|
margin_container2.position.y = 700
|
|
mat.set_shader_parameter("lod", 0)
|
|
|
|
visible = true
|
|
|
|
var tween = get_tree().create_tween()
|
|
tween.set_parallel(true)
|
|
tween.tween_method(tween_blur, 0.0, 1.0, 0.5).set_trans(Tween.TRANS_EXPO).set_ease(Tween.EASE_IN_OUT)
|
|
tween.tween_property(margin_container2, "position:y", 0.0, 0.5).set_trans(Tween.TRANS_BACK).set_ease(Tween.EASE_OUT)
|
|
|
|
# Called when the node enters the scene tree for the first time.
|
|
func _ready():
|
|
mat = panel_container.material
|
|
pass # Replace with function body.
|
|
|
|
func tween_blur(val: float) -> void:
|
|
mat.set_shader_parameter("lod", val)
|
|
pass
|
|
|
|
func hide_panel() -> void:
|
|
var tween = get_tree().create_tween()
|
|
tween.set_parallel(true)
|
|
tween.tween_method(tween_blur, 1.0, 0.0, 0.5).set_trans(Tween.TRANS_EXPO).set_ease(Tween.EASE_IN_OUT)
|
|
tween.tween_property(margin_container2, "position:y", 700, 0.5).set_trans(Tween.TRANS_BACK).set_ease(Tween.EASE_IN)
|
|
|
|
tween.finished.connect(_on_panel_hidden)
|
|
|
|
func _on_panel_hidden() -> void:
|
|
visible = false
|
|
|
|
func _on_cancel_pressed():
|
|
hide_panel()
|