예제 #1
0
        /// <summary>
        /// Gestion de l'achat chez une ia en mode aléatoire
        /// Se réfère a la classe parente : Player
        /// </summary>
        public override void BuyCard(Piles pile)
        {
            Cards card = pile.PickCard();

            Console.WriteLine("{0} pioche la carte : {1}", Name, card);
            Console.WriteLine("{0} a actuellement {1} coins, et la carte coûte {2}.", Name, Coins, card.Info.Cost);

            if (card.Info.Cost > Coins)
            {
                Console.WriteLine("{0} n'a pas assez d'argent.", Name);
                return;
            }

            if (WantToBuyCard(card))
            {
                Console.WriteLine("{0} achète la carte.", Name);
                Coins -= card.Info.Cost;
                cards.Add(card);
            }
            else
            {
                Console.WriteLine("{0} n'achète pas la carte.", Name);
                pile.ReplaceCard(card);
            }
        }
예제 #2
0
        /// <summary>
        /// Affiche et demande dans la console au joueur
        /// Et se base sur les instructions de la classe parent : Player
        /// </summary>
        public override void BuyCard(Piles pile)
        {
            Cards card  = pile.PickCard();
            int   cost  = card.Info.Cost;
            int   coins = Coins;

            Console.WriteLine("Vous piochez la carte : " + card);
            Console.WriteLine("Vous avez actuellement {0} coins, et la carte coûte {1}.", coins, cost);

            if (coins < cost)
            {
                Console.WriteLine("Vous ne pouvez pas l'acheter, vous êtes trop pauvre.");
                return;
            }

            Console.WriteLine("Souhaitez vous l'acheter ?");
            Console.WriteLine("1 - Oui");
            Console.WriteLine("2 - Non");
            string answer = Console.ReadLine().ToLower();

            bool success;

            do
            {
                success = true;
                switch (answer)
                {
                case "1":
                case "oui":
                    BuyCardProcess(pile, card);
                    break;

                case "2":
                case "non":
                    Console.WriteLine("Ok je la remets dans le paquet.");
                    pile.ReplaceCard(card);
                    break;

                default:
                    success = false;
                    break;
                }
            } while (!success);
        }