using System;
using Colosseum.Enemy;
using Unity.Behavior;
using Unity.Properties;
using UnityEngine;
namespace Colosseum.AI.BehaviorActions.Conditions
{
///
/// 보스가 보유한 커스텀 조건 플래그가 활성화되었는지 확인합니다.
///
[Serializable, GeneratePropertyBag]
[Condition(name: "Is Boss Custom Condition True", story: "커스텀 조건 [ConditionId] 가 참인가?", id: "0c4a5f77-a599-40a7-80fb-d22c4bb27f19")]
[NodeDescription(
name: "Is Boss Custom Condition True",
story: "커스텀 조건 [ConditionId] 가 참인가?",
category: "Condition/Phase")]
public partial class IsBossCustomConditionTrueCondition : Unity.Behavior.Condition
{
[SerializeReference]
[Tooltip("확인할 커스텀 조건 ID")]
public BlackboardVariable ConditionId = new BlackboardVariable(string.Empty);
public override bool IsTrue()
{
BossBehaviorRuntimeState context = GameObject.GetComponent();
return context != null && !string.IsNullOrEmpty(ConditionId?.Value) && context.CheckPhaseCustomCondition(ConditionId.Value);
}
}
}