4 * Created on: Aug 9, 2012
8 #ifndef COMMON_INVENTORY_H_
9 #define COMMON_INVENTORY_H_
23 bool Add(const Item *, int count = 1);
24 void Remove(const Item *, int count = 1);
25 void RemoveAll(const Item *);
27 int MaxItems() const { return 96; }
29 bool AddScenarioItem(const Item *);
30 const Item *ScenarioItemAt(int offset) const { return scenario[offset]; }
31 int NumScenarioItems() const { return scenarioEnd; }
32 int MaxScenarioItems() const { return 64; }
34 const Item *ItemAt(int offset) const { return entries[offset].item; }
35 int ItemCountAt(int offset) const { return entries[offset].count; }
38 void SwapEntriesAt(int lhs, int rhs);
42 Entry() : item(0), count(0) { }
45 static bool Less(const Entry &, const Entry &);
49 Entry *FindItem(const Item *);
50 const Entry *FindItem(const Item *) const;
51 bool SloteFree(int offset) const;
55 const Item *scenario[64];
62 #endif /* COMMON_INVENTORY_H_ */