Exemplo n.º 1
0
    // Use this for initialization
    void Start()
    {
        GameBehaviour.ICubesHandler ich = transform.parent.GetComponent <FloorControl>();

        mCubes = new GameObject[144];

        for (int i = 0; i < 144; i++)
        {
            mCubes[i] = ich.getFloorCube(i + 1);
        }

        // 怪物AI往玩家方向自動尋路
        StartCoroutine(MoveLoop());
    }
Exemplo n.º 2
0
    // Use this for initialization
    void Start()
    {
        GameBehaviour.ICubesHandler ich = transform.parent.GetComponent <FloorControl>();

        mCubes = new GameObject[144];

        for (int i = 0; i < 144; i++)
        {
            mCubes[i] = ich.getFloorCube(i + 1);
        }

        while (true)
        {
            mDirection = Random.Range(0, 4);
            if (mOkDirection [mDirection])
            {
                break;
            }
        }

        if (mDirection == 0)
        {
            mDirX          = 1f;
            mStepDirection = GameBehaviour.Direction.RIGHT;
        }
        else if (mDirection == 1)
        {
            mDirX          = -1f;
            mStepDirection = GameBehaviour.Direction.LEFT;
        }
        else if (mDirection == 2)
        {
            mDirZ          = 1f;
            mStepDirection = GameBehaviour.Direction.FORWARD;
        }
        else if (mDirection == 3)
        {
            mDirZ          = -1f;
            mStepDirection = GameBehaviour.Direction.BACKWARD;
        }

        GameObject nextFloorCube = mCubes[mChessFloorCubeIndex + (int)mDirX + (int)mDirZ * 12 - 1];

        if (!nextFloorCube.CompareTag(GameBehaviour.TAG_HOLE))
        {
            StartCoroutine(MoveLoop());
        }
    }