// Use this for initialization void Start() { status = transform.root.GetComponent <WargsStatus>(); animator = GetComponent <WargAnimator>(); moveController = GetComponent <EnemyMove>(); searchController = transform.Find("SearchAreaTrigger").GetComponent <WargSearch>(); // 初期位置を保持 initPosition = transform.position; // 待機時間 waitTime = status.MinWaitTime; nowState = WargState.Searching; nextState = WargState.Searching; }
// Update is called once per frame void Update() { switch (nowState) { case WargState.Searching: Searching(); break; case WargState.Chasing: Chasing(); break; case WargState.Attacking: Attacking(); break; } if (nowState != nextState) { nowState = nextState; switch (nowState) { case WargState.Searching: PrepareForSearch(); break; case WargState.Chasing: PrepareForChase(); break; case WargState.Attacking: PrepareForAttack(); break; case WargState.Died: Died(); break; } } animator.SetMoveAnimatorParameter(); }
// ステートを変更する. void ChangeState(WargState _nextState) { nextState = _nextState; }