class_name RecallInput extends Node #rappel d'un pokemon hors visee : un appui sur RT / clic gauche rappelle le pokemon sorti. #- le pokemon selectionne (HUD) s'il est dehors, sinon le dernier sorti #- pendant la visee et le lancer, c'est AimState / ThrowState qui gerent cet appui # #usage : ajouter ce node comme enfant de ton PlayerCharacter (il le detecte via son parent) @export var player : PlayerCharacter @export var throw_action : StringName = &"player_throw" @export var ignored_states : Array[String] = ["Aim", "Throw"] #valeurs de state_name func _ready() -> void: if player == null: player = get_parent() as PlayerCharacter func _physics_process(_delta : float) -> void: if player == null or !InputMap.has_action(throw_action): return if !Input.is_action_just_pressed(throw_action): return if player.state_machine.curr_state_name in ignored_states: return var target : SentPokemon = null var selected : PokemonInstance = GameData.get_selected_pokemon() if selected: target = SentPokemon.find_for(get_tree(), selected) if target == null: target = SentPokemon.get_latest(get_tree()) if target: target.recall()