summaryrefslogtreecommitdiff
path: root/src/variabledata.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/variabledata.h')
-rw-r--r--src/variabledata.h33
1 files changed, 32 insertions, 1 deletions
diff --git a/src/variabledata.h b/src/variabledata.h
index f73ebab2..19e09795 100644
--- a/src/variabledata.h
+++ b/src/variabledata.h
@@ -23,6 +23,9 @@
#include <string>
+class ActorSprite;
+class Item;
+
namespace Mana
{
@@ -35,7 +38,9 @@ class VariableData
DATA_INT,
DATA_STRING,
DATA_FLOAT,
- DATA_BOOL
+ DATA_BOOL,
+ DATA_ITEM,
+ DATA_ACTOR
};
virtual ~VariableData() {};
@@ -95,6 +100,32 @@ private:
bool mData;
};
+class ItemData : public VariableData
+{
+public:
+ ItemData(Item *value) { mData = value; }
+
+ Item *getData() const { return mData; }
+
+ int getType() const { return DATA_ITEM; }
+
+private:
+ Item *mData;
+};
+
+class ActorData : public VariableData
+{
+public:
+ ActorData(ActorSprite *value) { mData = value; }
+
+ ActorSprite *getData() const { return mData; }
+
+ int getType() const { return DATA_ACTOR; }
+
+private:
+ ActorSprite *mData;
+};
+
} // namespace Mana
#endif