public PlayerManager(int numberOfPlayers) { this.PlayerList = new List <Player>(); for (var i = 0; i < numberOfPlayers; ++i) { this.PlayerList.Add(new Player(EnumParse <MeepleColor> .IntToEnum(i))); } }
public GameRunner(List <TileComponent> tileComponents, int numberOfPlayers, int difficutly = 3) { var structureManager = new StructureManager(); // initializing structure manager to set min id's for structures to 10 this.PlayerManager = new PlayerManager(numberOfPlayers); this.AI = new AI(difficulty: difficutly, gameRunner: this, meepleColor: EnumParse <MeepleColor> .IntToEnum(numberOfPlayers)); // initializes AI player, as the last player with the last color, and speciffied difficulty System.Console.WriteLine("GameRunner start"); this.GameBoard = new GameBoard(); this.UnplayedTiles = new List <Tile>(); var tileComponentsArray = tileComponents.ToArray(); var shuffler = new Utils <TileComponent>(); var randomWithSeed = new Random(); this.Random = randomWithSeed; shuffler.Shuffle(randomWithSeed, tileComponentsArray); tileComponents = tileComponentsArray.ToList(); //tileComponents = tileComponents.OrderBy(i => Guid.NewGuid()).ToList(); // random is not the same for each session foreach (var tileComponent in tileComponents) { this.UnplayedTiles.Add(new Tile(GameBoard, tileComponent, (-1, -1))); } }