aboutsummaryrefslogtreecommitdiff
path: root/TileBehaviorStrategy.h
diff options
context:
space:
mode:
authorLoek Le Blansch <loek@pipeframe.xyz>2024-10-13 17:43:36 +0200
committerLoek Le Blansch <loek@pipeframe.xyz>2024-10-13 17:43:36 +0200
commitfeaf272efad381414c6ee76c0cd4bf929e8087ae (patch)
treecbdf4ffc206eba701ce39871562a60e889a9ccab /TileBehaviorStrategy.h
parent4343c7cd36a19c03c4885dbf15aaa22fe51b4fe0 (diff)
WIP
Diffstat (limited to 'TileBehaviorStrategy.h')
-rw-r--r--TileBehaviorStrategy.h10
1 files changed, 8 insertions, 2 deletions
diff --git a/TileBehaviorStrategy.h b/TileBehaviorStrategy.h
index a2c90e3..01ecd98 100644
--- a/TileBehaviorStrategy.h
+++ b/TileBehaviorStrategy.h
@@ -4,14 +4,20 @@
#include <memory>
class Tile;
+class Museum;
class TileBehaviorStrategy {
public:
- virtual void run(Tile &) = 0;
- virtual std::unique_ptr<TileBehaviorStrategy> clone() = 0;
+ virtual void step();
+ virtual void update(Tile &) = 0;
+ virtual std::unique_ptr<TileBehaviorStrategy> clone(Museum & m) = 0;
protected:
TileBehaviorStrategy(const std::string type);
TileBehaviorStrategy() = default;
+
+protected:
+ unsigned int steps = 0;
+ Museum * museum = nullptr;
};