Files
tgcc/core/game_menu/arrow_button.gd
2026-06-01 09:03:31 +00:00

40 lines
824 B
GDScript

@tool
extends Button
class_name ArrowButton
@export var image: Texture:
set(value):
image = value
if is_inside_tree() and has_node("%Texture"):
$%Texture.texture = image
@export var flip_h: bool = false:
set(value):
flip_h = value
if is_inside_tree() and has_node("%Texture"):
if $%Texture != null:
$%Texture.flip_h = flip_h
func _ready():
if image != null and has_node("%Texture"):
$%Texture.texture = image
$%Texture.flip_h = flip_h
func _on_pressed() -> void:
if TweenFX.is_playing(self, TweenFX.Animations.PUNCH_IN):
return
TweenFX.punch_in(self)
func _on_mouse_entered() -> void:
if TweenFX.is_playing(self, TweenFX.Animations.BREATHE):
return
TweenFX.breathe(self, 1)
func _on_mouse_exited() -> void:
TweenFX.stop(self, TweenFX.Animations.BREATHE)
scale = Vector2(1, 1)