Exemple #1
0
    /// <summary>
    /// Get a new random room from the Node Manager
    /// </summary>
    /// <remarks>
    /// Chooses between all rooms except the rooms in the exception list
    /// and the previously roamed room.
    /// </remarks>
    /// <returns>A room</returns>
    private Navigation.Room GetRandomRoom()
    {
        Navigation.Room[] exceptions;

        if (currentRoom != null)
        {
            roomExceptions.Add(currentRoom);
            exceptions = roomExceptions.ToArray();
            roomExceptions.Remove(currentRoom);
        }
        else
        {
            exceptions = roomExceptions.ToArray();
        }

        return(nodeManager.RandomRoom(exceptions));
    }