public bool SimulateOneTurn(string move, bool playerTurn, PlayersTurn pt, AI enemy) { var pos = move.Split(':'); if (playerTurn) { playerTurn = pt.Shoot(int.Parse(pos[0]), int.Parse(pos[1])); } else { playerTurn = !enemy.AI_shoot(int.Parse(pos[0]), int.Parse(pos[1])); } return(playerTurn); }
public void Simulate(string[] moves, PlayersTurn pt, AI enemy, GameBoard gb, GameBoard shown) { bool playersTurn = true; foreach (var move in moves) { var pos = move.Split(':'); if (playersTurn) { playersTurn = pt.Shoot(int.Parse(pos[0]), int.Parse(pos[1])); } else { playersTurn = !enemy.AI_shoot(int.Parse(pos[0]), int.Parse(pos[1])); } } }
public ActionResult Game(int x, int y) { ViewBag.Message = "Your extra turn"; var Shown = (GameBoard)Session["Shown"]; var Hiden = (GameBoard)Session["Enemy"]; var Rules = (Rules)Session["Rules"]; var Set = (Settings)Session["Set"]; var AI = (AI)Session["AI"]; PlayersTurn pt = new PlayersTurn(Hiden, Rules.gameBoard, Shown, Set); if (!pt.Shoot(x, y)) { var str = new StringBuilder(); var tup = AI.AI_turn(); str.Append(tup.Item1 + " " + tup.Item2 + " "); while (tup.Item2) { tup = AI.AI_turn(); str.Append(tup.Item1 + " " + tup.Item2 + " "); } ViewData["message"] = str.ToString(); } int playerHp = Rules.gameBoard.GetHp(); int AiHp = Hiden.GetHp(); Session["playerHP"] = playerHp; Session["AiHP"] = AiHp; if (playerHp == 0 || AiHp == 0) { return(View("Ended")); } return(View()); }
public void Game() { Console.Clear(); int x = 0; int y = 0; GameRender(x, y); do { ConsoleKeyInfo ckey = Console.ReadKey(); switch (ckey.Key) { case ConsoleKey.DownArrow: if (x == Shown.Board.Count - 1) { x = 0; } else { x++; } break; case ConsoleKey.UpArrow: if (x <= 0) { x = GameBoard.Board.Count - 1; } else { x--; } break; case ConsoleKey.RightArrow: if (y == GameBoard.Board.Count - 1) { y = 0; } else { y++; } break; case ConsoleKey.LeftArrow: if (y <= 0) { y = GameBoard.Board.Count - 1; } else { y--; } break; case ConsoleKey.S: SaveGame(0); break; case ConsoleKey.Spacebar: return; case ConsoleKey.Enter: if (GoodTarget(x, y)) { if (!pt.Shoot(x, y)) { var tup = enemy.AI_turn(); Console.WriteLine(tup.Item1 + " " + tup.Item2); Thread.Sleep(500); while (tup.Item2) { tup = enemy.AI_turn(); Console.WriteLine(tup.Item1 + " " + tup.Item2); Thread.Sleep(500); } if (GameBoard.GetHp() == 0) { GameRender(x, y); Console.WriteLine("AI WON"); Console.WriteLine("Want to save replay? (y/n)"); if (Console.ReadLine()?.ToLower() == "y") { SaveGame(1); } ApplicationMenu.MainMenu.RunMenu(); } } if (hiden.GetHp() == 0) { Console.WriteLine("You Won"); Console.WriteLine("Want to save replay? (y/n)"); if (Console.ReadLine()?.ToLower() == "y") { SaveGame(1); } ApplicationMenu.MainMenu.RunMenu(); } } break; } GameRender(x, y); } while (true); }