aboutsummaryrefslogtreecommitdiff
path: root/BlueTileBehavior.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'BlueTileBehavior.cpp')
-rw-r--r--BlueTileBehavior.cpp12
1 files changed, 4 insertions, 8 deletions
diff --git a/BlueTileBehavior.cpp b/BlueTileBehavior.cpp
index fbca527..487398a 100644
--- a/BlueTileBehavior.cpp
+++ b/BlueTileBehavior.cpp
@@ -1,13 +1,13 @@
#include <memory>
#include "BlueTileBehavior.h"
+#include "YellowTileBehavior.h"
#include "Artist.h"
#include "Tile.h"
-#include "TileData.h"
using namespace std;
-BlueTileBehavior BlueTileBehavior::instance {"B"};
+BlueTileBehavior BlueTileBehavior::instance { BlueTileBehavior::type };
void BlueTileBehavior::step(Artist & artist) {
this->interactions++;
@@ -20,9 +20,7 @@ void BlueTileBehavior::step(Artist & artist) {
void BlueTileBehavior::update_neighbor(Tile * tile) {
if (tile == nullptr) return;
- TileData new_data = tile->data;
- new_data.type = "B";
- tile->set_data(new_data);
+ tile->set_type(BlueTileBehavior::type);
}
void BlueTileBehavior::update(Tile & tile) {
@@ -31,9 +29,7 @@ void BlueTileBehavior::update(Tile & tile) {
this->update_neighbor(tile.get_neighbor(this->dx, this->dy));
this->update_neighbor(tile.get_neighbor(-this->dx, -this->dy));
- TileData new_data = tile.data;
- new_data.type = "Y";
- tile.set_data(new_data);
+ tile.set_type(YellowTileBehavior::type);
}
unique_ptr<TileBehaviorStrategy> BlueTileBehavior::clone(Museum & museum) {