#pragma once #include namespace cursebreaker { enum class SkillType : uint8_t { woodcutting, fishing, swordsmanship, mining, archery, magic, defence, blacksmithy, tailoring, carpentry, alchemy, cooking, none, }; enum class WorkbenchType : uint8_t { none, anvil, oven, cooking, carpenter, tailor, forge, alchemist, mystic, }; enum class StatType : uint8_t { health, accuracyPhysical, accuracyMagical, accuracyRanged, damagePhysical, damageMagical, damageRanged, resistancePhysical, resistanceMagical, resistanceRanged, healing, movementSpeed, mana, manaregen, healthregen, power, critical, DamageVsUndead, DamageVsBeasts, CritterSlaying, none, harvestingSpeedWoodcutting }; enum class ItemType : uint8_t { weapon, shield, armor, head, resource, consumable, trinket, bracelet }; enum class ItemCategory : uint8_t { none, bone, bow, crossbow, constructable, torch, blacksmithhammer, questitem, heavyArmor, warhammer, shield, hatchet, blade, armor, pickaxe, fish, fishingrod, shears, hammer, battleaxe, morningstar, wand, staff, dagger }; enum class Tool : uint8_t { hatchet, pickaxe, broom, fishingrod, none }; enum class SpellBookType : uint8_t { none, spells, abilities }; enum class ActionType : uint8_t { NpcDeath, PlayerDeath, PlayerRespawn, NpcInteract, QuestUpdate, QuestTimerEnd, UseItemOnItem, UseItemOnNpc, ConsumeItem, NpcCombatInteract, none, NpcKilledByPlayer, EnterMap, VarUpdated, GrantAchievement, PlayerKilledByNpc, UseItem, CraftItem, HarvestItem, BuyItem, NpcTagKilledByPlayer, UseAbility, LootItem, UseItemCategoryOnItem, }; enum class Material : uint8_t { none, copper, iron, imbersteel, titanium, spruce, oak, evark, deadwood, sheep, troll, ogre, demon, wool, cotton, flax, jute, }; enum class GenstatType : uint8_t { none, dagger, broadsword, battleaxe, greatsword, morningstar, hammer, spear, bow, staff, wand, crossbow, woodenshield, wizardhat, wizardrobe, grandwizardhat, grandwizardrobe, leatherhood, leatherbracelet, leatherarmor, studdedleatherhood, studdedleatherbracelet, studdedleatherarmor, helmet, shield, armor, platehelmet, kiteshield, platearmor, }; struct StatValue { StatType type; uint8_t value; bool isPercentage; }; };