From 5876fe992c970c8b39e4032d3bc86a01ad23e211 Mon Sep 17 00:00:00 2001 From: Artur David Date: Tue, 2 Jun 2026 09:22:07 +0200 Subject: [PATCH] replaced icon breathing with card hover float --- scripts/perk_card.gd | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/scripts/perk_card.gd b/scripts/perk_card.gd index 62def9d..3dea693 100644 --- a/scripts/perk_card.gd +++ b/scripts/perk_card.gd @@ -5,6 +5,7 @@ var play_sound: Callable var _recipe_panel: Control = null var _panel_tween: Tween = null +var _hover_tween: Tween = null const _PANEL_REST_Y = 18 const _FRUIT_ATLAS = preload("res://assets/16x16 Pixelart Food Icons/Pixel_Foods(ARTLİNE).png") @@ -134,19 +135,26 @@ func _on_button_down() -> void: func animate_in(): await get_tree().process_frame pivot_offset = size / 2 - var icon_node = $Card/Name/TextureRect - icon_node.pivot_offset = icon_node.size / 2 - var pulse = create_tween().set_loops() - pulse.tween_property(icon_node, "scale", Vector2(1.12, 1.12), 0.9).set_ease(Tween.EASE_IN_OUT).set_trans(Tween.TRANS_SINE) - pulse.tween_property(icon_node, "scale", Vector2(1.0, 1.0), 0.9).set_ease(Tween.EASE_IN_OUT).set_trans(Tween.TRANS_SINE) var start_y = global_position.y + 500 var end_y = global_position.y global_position.y = start_y var tween = create_tween() tween.tween_property(self, "global_position:y", end_y, 0.3).set_ease(Tween.EASE_OUT).set_trans(Tween.TRANS_QUAD) + await tween.finished + if not is_instance_valid(self): + return + var rest_y = position.y + await get_tree().create_timer(randf_range(0.0, 1.5)).timeout + if not is_instance_valid(self): + return + _hover_tween = create_tween().set_loops() + _hover_tween.tween_property(self, "position:y", rest_y - 5.0, 1.0).set_ease(Tween.EASE_IN_OUT).set_trans(Tween.TRANS_SINE) + _hover_tween.tween_property(self, "position:y", rest_y, 1.0).set_ease(Tween.EASE_IN_OUT).set_trans(Tween.TRANS_SINE) func animate_out(): + if _hover_tween: + _hover_tween.kill() var start_y = global_position.y var end_y = global_position.y - 500 global_position.y = start_y