ProjectDDD/Assets/External/Behavior Designer/Runtime/Tasks/Unity/SharedVariables/CompareSharedGameObject.cs
2025-07-07 19:25:56 +09:00

30 lines
984 B (Stored with Git LFS)
C#

using UnityEngine;
namespace BehaviorDesigner.Runtime.Tasks.Unity.SharedVariables
{
[TaskCategory("Unity/SharedVariable")]
[TaskDescription("Returns success if the variable value is equal to the compareTo value.")]
public class CompareSharedGameObject : Conditional
{
[Tooltip("The first variable to compare")]
public SharedGameObject variable;
[Tooltip("The variable to compare to")]
public SharedGameObject compareTo;
public override TaskStatus OnUpdate()
{
if (variable.Value == null && compareTo.Value != null)
return TaskStatus.Failure;
if (variable.Value == null && compareTo.Value == null)
return TaskStatus.Success;
return variable.Value.Equals(compareTo.Value) ? TaskStatus.Success : TaskStatus.Failure;
}
public override void OnReset()
{
variable = null;
compareTo = null;
}
}
}