internal void GeneratePlayers(IRule rule) { var p = new List <Player>(rule.NumberOfPlayers); Ships = new List <Ship>(); if (rule.NumberOfPlayers == 2) { var player = new Player(0, (TeamType)2, rule); Ships.Add(player.CurrentTeam.Ship); Ships.Add(player.GetNextTeam().Ship); p.Add(player); player = new Player((TeamType)1, (TeamType)3, rule); Ships.Add(player.CurrentTeam.Ship); Ships.Add(player.GetNextTeam().Ship); p.Add(player); } else { for (var i = 0; i < rule.NumberOfPlayers; i++) { var player = new Player((TeamType)i, rule); Ships.Add(player.CurrentTeam.Ship); p.Add(player); } } players = new CurcuitList <Player>(p); }
public void ShouldReturnNextItem() { // Assert var ints = new List <int> { 10, 20, }; var curcuitList = new CurcuitList <int>(ints); curcuitList.GetNext() .ShouldBeEqual(20); }
public void ShouldReturnFirstItemByCurrent() { // Assert var ints = new List <int> { 10, 20, }; var curcuitList = new CurcuitList <int>(ints); curcuitList.Current .ShouldBeEqual(10); }
public Team(TeamType type, IRule rule) { Type = type; Ship = CreateShip(type, rule.Size); var pirates = new List <Pirate> { new Pirate(this), new Pirate(this), new Pirate(this) }; pirates.ForEach(p => { p.ApplyCommand(Pirate.Actions.Ship); }); Pirates = new CurcuitList <Pirate>(pirates); }