public virtual void SwitchState(ElementState newState) { Debug.Log("Enter to ElementState:" + newState); state = newState; curStateObject.Exit(); curStateObject = GetNewStateObject(state); curStateObject.Init(actor, this); curStateObject.Enter(); }