我有以下基类
public abstract class Character : MonoBehaviour
{
protected abstract Enum CurrentState
{
get;
set;
}
}
和以下子类
public class Player : Character
{
protected override Enum CurrentState
{
get
{
return (State)_anim.GetInteger("State");
}
set
{
_anim.SetInteger("State", Convert.ToInt32(value));
}
}
private enum State
{
IDLE = 0,
WALK = 1,
JUMP = 2,
FALL = 3,
CLIMB = 4,
LOOKING_DOWN = 5,
NPC = 6,
IMPATIENT = 7,
LOOKING_UP = 8,
STUCK = 9,
}
void FixedUpdate()
{
if (CurrentState == State.CLIMB)
{
}
}
}
线
if (CurrentState == State.CLIMB)
产生以下错误:运算符'=='不能应用于'Enum'和'Player.State'类型的操作数
有什么帮助吗?吸气剂工作正常。所以也许我需要在 set 访问器中进行强制转换?我不太确定...我对此很陌生...任何帮助都将不胜感激。