/// <summary> /// 更新 /// </summary> /// <param name="arg_player"></param> public void UpdateByFrame() { //プレイヤーの座標に依存する m_transform.position = m_owner.transform.position; IArmState nextState = m_currentState.GetNextState(this); if (nextState != null) { StateTransition(nextState); } m_currentState.OnUpdate(this); m_viewer.UpdateByFrame(this); }
protected void StateTransition(IArmState arg_nextState) { m_currentState.OnExit(this); m_currentState = arg_nextState; m_currentState.OnEnter(this); }