public static void GenerateDungeon() { DungeonGenerator.GetInstance().CompleteDungeon(Stage_Manager.GetInstance().GetNextFloorRoomNumber()); List <IRoom> rooms = DungeonGenerator.GetInstance().allrooms; foreach (IRoom room in rooms) { using (Packet packet = new Packet((int)ServerPackets.generate_IRoom)) { packet.Write(room.RoomObject.name); packet.Write(room.RoomObject.transform.position); packet.Write(room.Tiles_number_x); packet.Write(room.Tiles_number_z); packet.Write(room.Category); packet.Write(room.Type); SendTcpDataToAll(packet); } foreach (GameObject tile in room.Instantiated_Tiles) { string tile_name = tile.name.Replace("(Clone)", ""); Vector3 tile_position = tile.transform.position; Quaternion tile_rotation = tile.transform.rotation; using (Packet packet = new Packet((int)ServerPackets.generate_Tile)) { packet.Write(tile_name); packet.Write(tile_position); packet.Write(tile_rotation); SendTcpDataToAll(packet); } } } }
private int playerMeanMastery = 10; //TODO implement a player leveling system. /// <summary> /// Calculates the floor's difficulty factor depending on the floor number, player mastery and a standard factor. /// </summary> public void CalculateNewDifficultyFactor() { float floorNumberPercent = 30f; float playerMasteryPercent = 60f; float standardPercent = 10f; difficultyFactor = (Stage_Manager.GetInstance().GetFloorNumber() / Stage_Manager.GetInstance().GetMaxFloorNumber() * floorNumberPercent) + (playerMeanMastery / 100 * playerMasteryPercent) + standardPercent; }
// Start is called before the first frame update void Start() { DungeonGenerator.GetInstance().CompleteDungeon(Stage_Manager.GetInstance().GetNextFloorRoomNumber()); }
public void ProceedNextStage() { StartCoroutine(Stage_Manager.GetInstance().ChangeFloor()); }