示例#1
0
        public MainWindow()
        {
            LoadSprites();

            InitializeComponent();

            Image ItemIcons = Image.FromFile("Graphics\\items.png");

            ItemLargeIcons.Images.AddStrip(ItemIcons);
            ItemSmallIcons.Images.AddStrip(ItemIcons.GetThumbnailImage(ItemIcons.Width / 4, ItemIcons.Height / 4, null, IntPtr.Zero));
            for (int ItemNumber = 0; ItemNumber < ShopItems.Count(); ItemNumber++)
            {
                ShopItemList.Items.Add(Language.GetString(ShopItems[ItemNumber].NameResource), ItemNumber);
            }

            Image PeopleIcons = Image.FromFile("Graphics\\people.png");

            PeopleLargeIcons.Images.AddStrip(PeopleIcons);
            PeopleSmallIcons.Images.AddStrip(PeopleIcons.GetThumbnailImage(PeopleIcons.Width / 4, PeopleIcons.Height / 4, null, IntPtr.Zero));

            PrepareBlueprint();

            tabControl1.ItemSize = new Size(0, 0);  // hide tab selection from the sidebar
            tabControl1.Region   = new Region(new Rectangle(StandardTab.Left, StandardTab.Top, StandardTab.Width, StandardTab.Height));

            LockGame(true);
            FillDebugMenu();
        }
示例#2
0
        public void BuyItem()
        {
            Console.Clear();
            Console.WriteLine("----------------------------------------------------------------------------------------------");
            Console.WriteLine("# Buy Item ");
            Console.WriteLine("----------------------------------------------------------------------------------------------");
            Console.WriteLine(String.Format("{0,3} | {1,-20} | {2,-7} | {3,-15} | {4,-7} |", "ID", "Name", "Class", "Feature", "Price"));
            Console.WriteLine("----------------------------------------------------------------------------------------------");

            for (var i = 0; i < ShopItems.Count(); i++)
            {
                Console.WriteLine(String.Format("{0,3} | {1,-20} | {2,-7} | {3,-15} | {4,-7} |", (i + 1), ShopItems[i].Name, ShopItems[i].GetClass(), ShopItems[i].GetDescription(), ShopItems[i].Price + " Gold"));
            }

            Console.WriteLine("----------------------------------------------------------------------------------------------");
            Console.WriteLine($"# You have {Hero.GoldCoin} Gold now!");
            Console.WriteLine("----------------------------------------------------------------------------------------------");
            Console.Write("# Select Item ID to buy : ");

            var KeyInputNumber = Hero.GetUserInputNumber();
            var itemIndex      = KeyInputNumber - 1;
            var item           = ShopItems.ElementAtOrDefault(itemIndex);

            if (KeyInputNumber > ShopItems.Count() || KeyInputNumber <= 0)
            {
                Console.WriteLine("# Select corrent the Item ID : ");
            }
            else
            {
                item = ShopItems.ElementAtOrDefault(itemIndex);
            }

            if (item != null)
            {
                //Check Hero gold balance
                if (Hero.GoldCoin >= item.Price)
                {
                    //Check in the hero bag the item in he bought already.
                    var heroBagDuplicateQuery = (from heroItem in Hero.HeroBag
                                                 where heroItem.Name == item.Name
                                                 select heroItem).ToList();
                    if (heroBagDuplicateQuery.Any())
                    {
                        Console.WriteLine("Sorry, You got this weapon already!");
                    }
                    else
                    {
                        //pay for items amd add it to Herobag
                        Hero.GoldCoin -= item.Price;
                        Hero.HeroBag.Add(item);
                        Console.WriteLine($"Buying '{item.Name}' is completed!");
                    }
                }
                else
                {
                    Console.WriteLine("You don't have enough gold coins.");
                }
            }

            Console.WriteLine("----------------------------------------------------------------------------------------------");
        }
示例#3
0
 public int GetNumberOfItems()
 {
     return(ShopItems.Count());
 }