public void SquaresAreAdjacent() { var gameState = CreateSampleGameState(); var moveRequest = new MoveRequest() { Player = "P1", State = gameState }; var game = GameStateParser.Parse(moveRequest); Assert.IsTrue(game.Grid[0, 19].IsAdjacentTo(game.Grid[0, 18])); }
public void CanCreateGame() { var gameState = CreateSampleGameState(); var moveRequest = new MoveRequest() { Player = "P1", State = gameState }; var game = GameStateParser.Parse(moveRequest); Assert.IsNotNull(game); }
public IEnumerable <BotletMove> GetMoves(MoveRequest request) { GameBoard game = GameStateParser.Parse(request); List <BotletMove> myMoves = new List <BotletMove>(); List <Square> myBots = GetMyBots(game.Grid); foreach (Square bot in myBots) { var myMove = bot.GetMoveTo(game.Grid.EnemySpawn); myMoves.Add(myMove); } return(myMoves); }
public IEnumerable <BotletMove> GetMoves(MoveRequest request) { var game = GameStateParser.Parse(request); Random myRandom = new Random(); var myMoves = new List <BotletMove>(); foreach (var bot in game.Grid.MyBots) { var possibleMoves = bot.GetAdjacentSquares().ToList(); var randomNumber = myRandom.Next(0, possibleMoves.Count); var squareToMoveTo = possibleMoves[randomNumber]; var botletMove = bot.GetMoveTo(squareToMoveTo); myMoves.Add(botletMove); } return(myMoves); }
public IEnumerable <BotletMove> GetMoves(MoveRequest request) { Soldier.Reset(); var game = GameStateParser.Parse(request); var squaresToAssign = game.Grid.Where(x => x == SquareType.PlayerBot).OrderBy(x => x.DistanceFrom(game.Grid.MySpawn)).ToList(); List <Soldier> myArmy = new List <Soldier>(); for (int i = 0; i < squaresToAssign.Count; i++) { var square = squaresToAssign[i]; myArmy.Add(GetAssignment(square, game.Grid, squaresToAssign.Count, i)); } List <BotletMove> moves = new List <BotletMove>(); foreach (var soldier in myArmy) { var move = soldier.GetMove(); moves.Add(move); } return(moves); }