void OnStateExit(CurrentState m_LastState) { switch (m_LastState) { case CurrentState.Spawn: break; case CurrentState.Idle: m_EntryPoint.m_SpawnIndex--; m_EntryPoint.ReloadChild(); break; case CurrentState.MovingInQueue: break; case CurrentState.InQueue: break; case CurrentState.MovingTowardChair: break; case CurrentState.MovingTowardObject: break; case CurrentState.ThrowSomething: break; case CurrentState.Sitting: vfx_Poulet.Stop(true); break; case CurrentState.Eating: m_HaveEat = true; canBePickedUp = true; break; case CurrentState.Spitting: m_HaveEat = false; canBePickedUp = true; transform.position = m_Chair.transform.position - Vector3.up * 0.25f; m_Renderer.transform.position = transform.position; m_Chair.ExitChair(); m_Chair.m_Rigidbody.isKinematic = false; m_NavMeshAgent.enabled = true; break; case CurrentState.SittingIdle: transform.position = m_Chair.transform.position - Vector3.up * 0.25f; m_Renderer.transform.position = transform.position; m_Chair.ExitChair(); m_Chair.m_Rigidbody.isKinematic = false; m_NavMeshAgent.enabled = true; break; case CurrentState.MovingTowardExit: break; case CurrentState.Disapear: break; case CurrentState.PickUp: break; case CurrentState.Release: m_Animator.CrossFade("Boy_Walk", 0.5f); break; case CurrentState.Berserker: m_Animator.CrossFade("Boy_Heavy_Walk", 0.5f); m_Chair.ExitChair(); break; } }