Player/Inventory/Container/InventoryItemResource.cs
namespace Opium;

/// <summary>
/// Item types
/// </summary>
public enum ItemType
{
	// Keys, specifically for the key inventory
	Key,
	// Story items, for the narrative
	StoryItem,
	// Consumable items, like medkits, taser ammo, etc..
	Consumable
}

[GameResource( "Opium/Inventory Item", "opitem", "An inventory item" )]
public partial class InventoryItemResource : GameResource
{
	[Category( "Setup" )] public string ItemName { get; set; }
	[Category( "Setup" )] public string ItemDescription { get; set; }
	[Category( "Setup" )] public string ItemIcon { get; set; }

	[Category( "Setup" )] public ItemType ItemType { get; set; }

	/// <summary>
	/// Some tags we can use to sort items
	/// </summary>
	[Property] public string Tags { get; set; }

	/// <summary>
	/// How many of this item can we hold per stack?
	/// </summary>
	[Property] public int StackSize { get; set; } = 1;
}