X-Git-Url: http://git.localhorst.tv/?a=blobdiff_plain;f=src%2Fcommon%2FInventory.h;h=bca2ba82bb3a41a77c8abf9c96a8884c9fcc09a1;hb=HEAD;hp=f80368c5ca6c1666b8ba2c9f9405ec17117d585c;hpb=89aa9fbc77d72e98549bc3aabd7ced7cd8949bdc;p=l2e.git diff --git a/src/common/Inventory.h b/src/common/Inventory.h index f80368c..bca2ba8 100644 --- a/src/common/Inventory.h +++ b/src/common/Inventory.h @@ -1,14 +1,9 @@ -/* - * Inventory.h - * - * Created on: Aug 9, 2012 - * Author: holy - */ - #ifndef COMMON_INVENTORY_H_ #define COMMON_INVENTORY_H_ -#include "fwd.h" +namespace common { + class Item; +} #include @@ -22,13 +17,20 @@ public: public: bool Add(const Item *, int count = 1); void Remove(const Item *, int count = 1); + void RemoveAll(const Item *); int MaxItems() const { return 96; } + bool AddScenarioItem(const Item *); + const Item *ScenarioItemAt(int offset) const { return scenario[offset]; } + int NumScenarioItems() const { return scenarioEnd; } + int MaxScenarioItems() const { return 64; } + const Item *ItemAt(int offset) const { return entries[offset].item; } int ItemCountAt(int offset) const { return entries[offset].count; } void Sort(); + void SwapEntriesAt(int lhs, int rhs); private: struct Entry { @@ -45,9 +47,11 @@ private: private: Entry entries[96]; + const Item *scenario[64]; + int scenarioEnd; }; } -#endif /* COMMON_INVENTORY_H_ */ +#endif