Ejemplo n.º 1
0
        public void ShowTurnOptions(Token[] tokens, Token token)
        {
            int choice = 0;

            WriteLine("Here are your tokens:");
            foreach (Token tk in tokens)
            {
                Console.WriteLine("Token #" + tk.GetTokenId() + ": is placed: " + tk.state, 1000);

                switch (tk.state)
                {
                case TokenState.Home:
                    if (dice.GetValue() == 6)
                    {
                        Console.WriteLine(" <- Playable. Ready to move out.");
                        choice++;
                    }
                    else
                    {
                        Console.WriteLine(" <- Not playable");
                    }
                    break;

                case TokenState.InPlay:
                    Console.WriteLine(" <- Playable. This token stands on tile number {0:D} and has {1:D] tiles left.", token.position, token.fieldsLeft);
                    choice++;
                    break;

                case TokenState.Safe:
                    Console.WriteLine("  <- Playable. This token stands on tile number {0:D} and has {1:D] tiles left.", token.position, token.fieldsLeft);
                    choice++;
                    break;

                case TokenState.Finished:
                    Console.WriteLine(" <- Not Playable. This token i already done");
                    choice++;
                    break;

                case TokenState.HomeStretch:
                    Console.WriteLine(" <- Playable. This token only has {0:D} tiles left", token.fieldsLeft);
                    choice++;
                    break;
                }
                WriteLine("");
            }
            WriteLine("");
            WriteLine("You have " + choice.ToString() + " choices this turn", 2000);

            //No choices and rolled 3 times
            if (choice == 0 && throws >= 3)
            {
                this.ChangeTurn();
            }

            //no choices but hasnt rolled 3 times
            if (choice == 0)
            {
                this.TakeTurns();
            }

            //1-4 choices
            else
            {
                ChooseToken(tokens);
            }
        }