using Invector.vCharacterController.AI.FSMBehaviour;
using UnityEngine;
namespace DemonBoss.Summoner
{
///
/// FSM Decision: should Summoner flee to reach safe distance
///
[CreateAssetMenu(menuName = "Invector/FSM/Decisions/Summoner/Should Flee To Safe Distance")]
public class DEC_ShouldFleeToSafeDistance : vStateDecision
{
public override string categoryName => "Summoner";
public override string defaultName => "Should Flee To Safe Distance";
[Header("Debug")]
[Tooltip("Enable debug logging")]
public bool enableDebug = false;
public override bool Decide(vIFSMBehaviourController fsmBehaviour)
{
var summoner = fsmBehaviour.gameObject.GetComponent();
if (summoner == null)
{
if (enableDebug) Debug.LogWarning("[DEC_ShouldFleeToSafeDistance] No SummonerAI component found!");
return false;
}
bool shouldFlee = summoner.ShouldFleeToSafeDistance();
if (enableDebug) Debug.Log($"[DEC_ShouldFleeToSafeDistance] shouldFlee={shouldFlee}");
return shouldFlee;
}
}
}