コード例 #1
0
        void ChooseItem(Player player, Enemy randomEnemy)
        {
            Console.Clear();
            Console.WriteLine(border);
            Console.WriteLine("||                INVENTORY");
            Console.WriteLine(border);
            for (int i = 0; i < player.GetConsumables().Count; i++)
            {
                Item item = player.GetConsumables()[i];

                Console.WriteLine("|| [{0}] {1} | x{2}", i + 1, item.GetName(), item.GetAmount());
                Console.WriteLine(border);
            }
            Console.WriteLine(border);
            Console.WriteLine("|| Choose an Item by typing the Number of the Item you want to use.");
            Console.WriteLine("|| or press Enter to return to the Fight");

            string input = Console.ReadLine();
            int    slot;

            if (input == "")
            {
                StartBattle(player, randomEnemy);
            }
            else
            {
                if (Int32.TryParse(input, out slot))
                {
                    slot = Convert.ToInt32(input);
                }
                else
                {
                    Console.WriteLine("Pls enter a valid number!");
                    Console.ReadLine();
                    ChooseItem(player, randomEnemy);
                }

                if (slot < 0 || slot > player.GetConsumables().Count)
                {
                    Console.WriteLine("|| Pls enter a valid number!");
                    Console.ReadLine();
                    ChooseItem(player, randomEnemy);
                }

                Console.WriteLine(border);
                Console.WriteLine("|| {0} | {1}", player.GetConsumables()[slot - 1].GetName(), player.GetConsumables()[slot - 1].GetDescription());
                Console.WriteLine(border);
                Console.WriteLine("|| Do you want to use it?");
                Console.WriteLine("|| ");
                Console.WriteLine("||   [1] Yes  |  [2] No");
                Console.WriteLine(border);
                string choice = Console.ReadLine();
                if (choice == "1")
                {
                    im.UseItem(player.GetConsumables()[slot - 1], player);
                    player.RefreshInventory();
                    Console.WriteLine(border);
                }
                else
                {
                    ChooseItem(player, randomEnemy);
                }
            }

            Console.WriteLine("|| Press Enter to continue");
            Console.ReadLine();

            ChooseItem(player, randomEnemy);
        }