Exemplo n.º 1
0
        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);
        }
Exemplo n.º 2
0
        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]));
                }
            }
        }
Exemplo n.º 3
0
        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());
        }
Exemplo n.º 4
0
        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);
        }