예제 #1
0
        public void Use(Keys skillKey)
        {
            if (RPG.UIHandler.CurrentDialog != null)
            {
                return;
            }

            var slot = Slots.First(s => s.Key == skillKey);

            if (slot.ItemName != null)
            {
                RPGMethods.UseItem(slot.ItemName);
            }
            else if (slot.SkillName != null)
            {
                RPGMethods.UseSkill(slot.SkillName);
            }
        }
예제 #2
0
        private void UseInventoryItem(RPGListMenu obj)
        {
            var selected = obj.SelectedIndex;

            if (selected >= PlayerData.Inventory.Count)
            {
                View.PopMenu();
                return;
            }

            if (!PlayerData.Inventory.Any())
            {
                return;
            }


            var selectedItem = PlayerData.Inventory[selected];

            var used = RPGMethods.UseItem(selectedItem);

            if (selectedItem.Quantity <= 0)
            {
                selected--;
                if (selected < 0)
                {
                    selected = 0;
                }
            }

            UpdateInventory(selected);
            InventoryMenu.SelectedIndex = selected;
            if (used)
            {
                RPG.Notify(Notification.Alert("Used : " + selectedItem.Name));
            }
        }