コード例 #1
0
    void Start()
    {
        m_StateSpawn              = new Boss01StateSpawn(this);
        m_StateAttack             = new Boss01StateAttack(this);
        m_StateChangeAttack       = new Boss01StateChangeAttack(this);
        m_StateRandomiseBehaviour = new Boss01StateRandomiseBehaviour(this);
        m_StateMove        = new Boss01StateMove(this);
        distanceController = GameObject.Find("_DistanceController").GetComponent <DistanceController>();

        ChangeState(eBossState.Spawn);
    }
コード例 #2
0
    public void ChangeState(eBossState _newState)  //change the current state to the selected state
    {
        switch (_newState)
        {
        case eBossState.Spawn: m_CurrentState = m_StateSpawn; break;

        case eBossState.ChangeAttack: m_CurrentState = m_StateChangeAttack; break;

        case eBossState.RandomiseBehaviour: m_CurrentState = m_StateRandomiseBehaviour; break;

        case eBossState.Attack: m_CurrentState = m_StateAttack; break;

        case eBossState.Move: m_CurrentState = m_StateMove; break;
        }
        Debug.Log(m_CurrentState);
        m_CurrentState.Enter();
    }