summaryrefslogtreecommitdiffstats
path: root/src/game-server/item.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/game-server/item.h')
-rw-r--r--src/game-server/item.h23
1 files changed, 14 insertions, 9 deletions
diff --git a/src/game-server/item.h b/src/game-server/item.h
index 1c7639c..f7c380f 100644
--- a/src/game-server/item.h
+++ b/src/game-server/item.h
@@ -28,8 +28,15 @@
class Being;
class Script;
-typedef std::list< std::pair< unsigned int, unsigned int> > ItemEquipInfo;
-typedef std::list< ItemEquipInfo > ItemEquipsInfo;
+// Indicates the equip slot "cost" to equip an item.
+struct ItemEquipRequirement {
+ ItemEquipRequirement():
+ equipSlotId(0),
+ capacityRequired(0)
+ {}
+
+ unsigned int equipSlotId, capacityRequired;
+};
/**
* State effects to beings, and actors.
@@ -224,9 +231,10 @@ class ItemClass
{ return mSpriteID; }
/**
- * Returns equip requirements.
+ * Returns equip requirement.
*/
- const ItemEquipsInfo &getItemEquipData() const { return mEquip; }
+ const ItemEquipRequirement &getItemEquipRequirement() const
+ { return mEquipReq; }
private:
/**
@@ -272,12 +280,9 @@ class ItemClass
std::multimap< ItemTriggerType, ItemEffectInfo * > mDispells;
/**
- * List of list of requirements for equipping. Only one inner list
- * need be satisfied to sucessfully equip. Checks occur in order
- * from outer front to back.
- * All conditions in an inner list must be met for success.
+ * Requirement for equipping.
*/
- ItemEquipsInfo mEquip;
+ ItemEquipRequirement mEquipReq;
friend class ItemManager;
};