public void UseItem(InventoryItem item) { PlayableCharacter character = CurrentPartyMember; switch (item.ItemType) { case ItemType.Consumable: character.ApplyItem(item); _inventory.LoseItem(item); _member.ReloadCharacterStats(character); if (!item.IsAvailable) { _items.HideCommandBar(); } else { _items.LoadItemInCommandBar(item); } PrepItemsPresenter(); return; default: throw new Exception("Unexpected item type: " + item.ItemType); } }