Beispiel #1
0
    private void CallRandomRoom()
    {
        int activeRooms      = 0;
        int activeLastRooms  = 0;
        int totalActiveRooms = 0;

        for (int i = 0; i < rooms.Length; ++i)
        {
            if (!rooms[i].GetComponent <RoomScript>().isBroken)
            {
                ++activeRooms;
            }
        }
        for (int i = 0; i < lastRooms.Length; ++i)
        {
            if (!lastRooms[i].GetComponent <RoomScript>().isBroken)
            {
                ++activeLastRooms;
            }
        }

        totalActiveRooms = activeLastRooms + activeRooms;
        // choose last rooms to disappear
        if (totalActiveRooms > 0)
        {
            if (activeRooms > 0)
            {
                while (roomScript == null)
                {
                    RoomScript avaiableRoom = rooms[Random.Range(0, rooms.Length)].GetComponent <RoomScript>();

                    if (!avaiableRoom.isBroken)
                    {
                        roomScript = avaiableRoom;
                    }
                }
            }
            else if (activeLastRooms > 0)
            {
                while (roomScript == null)
                {
                    RoomScript avaiableRoom = lastRooms[Random.Range(0, lastRooms.Length)].GetComponent <RoomScript>();

                    if (!avaiableRoom.isBroken)
                    {
                        roomScript = avaiableRoom;
                    }
                }
            }

            roomScript.StartFlash(flashDuration, fastFlashTimer, flashSpeed, fastFlashSpeed, flashColor, fastFlashColor);
        }
        else
        {
            GameManagerScript.instance.GameOver();
        }
    }