Example #1
0
        public void displayJailMenu(Player player)
        {
            Monopoly game = new Monopoly();
            Property property = new Property();
            TradeableProperty trade = new TradeableProperty();
            PlayerInput input = new PlayerInput();

            // If the player has been in Jail for 3 turns, on the 4th turn in jail they will be forced to pay themselves out
            if (player.getTurnsInJail() < 3)
            {
                int resp = 0;
                Console.WriteLine("1. Roll doubles to get out of jail");
                Console.WriteLine("2. Pay $50 to get out of jail");
                Console.WriteLine("3. Use \"Get out of jail free\" card");
                Console.WriteLine("4. Trade Property with Player");
                Console.WriteLine("5. Upgrade properties");
                Console.WriteLine("6. View your details");
                Console.WriteLine("7. Declare Bankrupt");
                Console.Write("(1-7)>");
                //read response
                resp = input.inputInteger();
                //if response is invalid redisplay menu
                if (resp == 0)
                    this.displayJailMenu(player);

                //perform choice according to number input
                switch (resp)
                {
                    case 1:
                        player.playerJailRoll();
                        break;
                    case 2:
                        if (player.getBalance() >= 50)
                        {
                            player.pay(50);
                            Console.WriteLine("{0} payed $50 to get out of jail.\n", player.getName());
                            player.setSentToJail(false);
                            player.setInJail(false);
                            player.setTurnsInJail(0);
                            break;
                        }
                        else
                        {
                            Console.WriteLine("You do not have enough money, please make another selection.\n");
                            this.displayJailMenu(player);
                            break;
                        }
                    case 3:
                        if (player.getGetOutOfJailCard())
                        {
                            Console.WriteLine("{0} used their get out of Jail card.\n", player.getName()); ;
                            player.setGetOutOfJailCard(false);
                            player.setInJail(false);
                            player.setTurnsInJail(0);
                            break;
                        }
                        else
                        {
                            Console.WriteLine("{0} doesn't have a get out of Jail card, please make another selection.\n", player.getName());
                            this.displayJailMenu(player);
                            break;
                        }
                    case 4:
                        game.tradeProperty(player);
                        displayJailMenu(player);
                        break;
                    case 5:
                        Console.WriteLine("That option is not implemented yet, please try again.\n");
                        break;
                    case 6:
                        Console.WriteLine("==================================");
                        Console.WriteLine(player.FullDetailsToString());
                        Console.WriteLine("==================================");
                        this.displayJailMenu(player);
                        break;
                    case 7:
                        Console.WriteLine("That option is not implemented yet, please try again.\n");
                        break;
                    default:
                        Console.WriteLine("That option is not avaliable, please try again.");
                        this.displayJailMenu(player);
                        break;
                }
                player.setTurnsInJail(player.getTurnsInJail() + 1);
            }

            // Runs on player's 4th turn in jail
            else if (player.getTurnsInJail() == 3)
            {
                Console.WriteLine("{0} has been in jail for 3 turns and must pay the $50", player.getName());
                player.setInJail(false);
                player.setSentToJail(false);
                player.pay(50);
                player.setTurnsInJail(0);
            }
        }
Example #2
0
        public void displayGameMenu(Player player)
        {
            int resp = 0;
            Monopoly game = new Monopoly();
            PlayerInput input = new PlayerInput();
            Property property = new Property();
            UpgradeProperties upgrade = new UpgradeProperties();

            Console.WriteLine("\n{0}Please make a selection:\n", input.playerPrompt(player));
            Console.WriteLine("1. Finish turn");
            Console.WriteLine("2. View your details");
            Console.WriteLine("3. Purchase This Property");
            Console.WriteLine("4. Buy House for Property");
            Console.WriteLine("5. Buy Hotel for Property");
            Console.WriteLine("6. Trade Property with Player");
            Console.WriteLine("7. Mortgage a property");
            Console.WriteLine("8. Declare Bankrupt");
            Console.WriteLine("9. Quit Game");
            Console.Write("(1-9)>");
            //read response
            resp = input.inputInteger();
            //if response is invalid redisplay menu
            if (resp == 0)
                this.displayGameMenu(player);

            //perform choice according to number input
            switch (resp)
            {
                case 1:
                    break;
                case 2:
                    Console.WriteLine("==================================");
                    Console.WriteLine(player.FullDetailsToString());
                    Console.WriteLine("==================================");
                    this.displayGameMenu(player);
                    break;
                case 3:
                    property.purchaseProperty(player);
                    this.displayGameMenu(player);
                    break;
                case 4:
                    upgrade.buyHouse(player);
                    this.displayGameMenu(player);
                    break;
                case 5:
                    upgrade.buyHotel(player);
                    this.displayGameMenu(player);
                    break;
                case 6:
                    game.tradeProperty(player);
                    this.displayGameMenu(player);
                    break;
                case 7:
                    property.mortgageProperty(player);
                    this.displayGameMenu(player);
                    break;
                case 8:
                    Console.WriteLine("That option is not avaliable, please try again.");
                    this.displayGameMenu(player);
                    break;
                case 9:
                    Environment.Exit(0);
                    break;
                default:
                    Console.WriteLine("That option is not avaliable, please try again.");
                    this.displayGameMenu(player);
                    break;
            }
        }