Files
BH3/Assets/Plugins/Assembly-CSharp-firstpass/BehaviorDesigner/Runtime/SharedGenericVariable.cs
2025-08-13 09:26:42 +08:00

28 lines
939 B
C#

using UnityEngine;
using BehaviorDesigner.Runtime.Tasks;
namespace BehaviorDesigner.Runtime
{
[System.Serializable]
public class GenericVariable
{
[SerializeField]
public string type = "SharedString";
[SerializeField]
public SharedVariable value;
}
[System.Serializable]
public class SharedGenericVariable : SharedVariable
{
public GenericVariable Value { get { return mValue; } set { mValue = value; } }
[SerializeField]
private GenericVariable mValue;
public override object GetValue() { return mValue; }
public override void SetValue(object value) { mValue = (GenericVariable)value; }
public override string ToString() { return mValue == null ? "null" : mValue.ToString(); }
public static implicit operator SharedGenericVariable(GenericVariable value) { return new SharedGenericVariable { mValue = value }; }
}
}