using System.Collections; using System.Collections.Generic; using UnityEngine; namespace Obscurum.Items{ public interface GameItem { //TODO: May want to rename ItemType enumations based on practical application: 1. InventoryItem, 2. CarryableItem, 3. InteractiveItem. This would ensure //inventory items on interact would enter inventory, carryable items on interact go to carry, and interactive items call an event function at once. /// /// Item name. /// public string Name { get; } /// /// Item description. /// public string Description { get; } /// /// Specifies if an item can be held in the player inventory, must be carried with the carry animation, or executes some effect immediately. /// /// UTILITY: Can be carried in inventory. /// WEAPON: Must be carried with the carry animation. /// CONSUMABLE: Executes some effect on interact. /// /// public enum ItemType {UTILITY, WEAPON, CONSUMABLE}; /// /// Gets the collection type for this game item. /// public ItemType Type { get; } //When player interacts with this item apply effect. // public bool Interact(); } }