class_name BaseMenu extends ColorRect @export var animation_player: AnimationPlayer var pause_menu: PauseMenu func init() -> void: reset_menu() update_animation_tracks() func close_menu() -> void: animation_player.play("hide") func open_menu() -> void: animation_player.play("show") func reset_menu() -> void: animation_player.play("RESET") ## Update the animation tracks to account for the varying sizes of the menu container[br] ## Requires:[br] ## Track 1 - Must be for the content_container[br] ## First Property - Must be position[br] ## Second Property - Visibility func update_animation_tracks() -> void: var hide_animation: Animation = animation_player.get_animation("hide") var show_animation: Animation = animation_player.get_animation("show") hide_animation.track_set_key_value(0, 1, Vector2(-size.x, hide_animation.track_get_key_value(0, 1).y)) show_animation.track_set_key_value(0, 0, Vector2(-size.x, show_animation.track_get_key_value(0, 0).y))