]> git.localhorst.tv Git - l2e.git/commitdiff
added scenario items to inventory
authorDaniel Karbach <daniel.karbach@localhorst.tv>
Fri, 30 Nov 2012 13:47:04 +0000 (14:47 +0100)
committerDaniel Karbach <daniel.karbach@localhorst.tv>
Fri, 30 Nov 2012 13:47:04 +0000 (14:47 +0100)
src/common/Inventory.cpp
src/common/Inventory.h

index d8ba20c08af5a35c0af1d1311ab2474259634449..275de538f49f83eb344b549d55f1b41fad81f10f 100644 (file)
@@ -14,7 +14,8 @@
 
 namespace common {
 
-Inventory::Inventory() {
+Inventory::Inventory()
+: scenarioEnd(0) {
 
 }
 
@@ -71,6 +72,17 @@ bool Inventory::SloteFree(int offset) const {
 }
 
 
+bool Inventory::AddScenarioItem(const Item *i) {
+       if (scenarioEnd < MaxScenarioItems()) {
+               scenario[scenarioEnd] = i;
+               ++scenarioEnd;
+               return true;
+       } else {
+               return false;
+       }
+}
+
+
 void Inventory::Sort() {
        std::sort(entries, entries + 96, Entry::Less);
 }
index aaf315cc6bd7cd4608706bb3e99e1a36984f60bd..e7c569605999170b924f1fc4ad53cd5b62d73717 100644 (file)
@@ -26,6 +26,11 @@ public:
 
        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; }
 
@@ -47,6 +52,8 @@ private:
 
 private:
        Entry entries[96];
+       const Item *scenario[64];
+       int scenarioEnd;
 
 };