aboutsummaryrefslogtreecommitdiff
path: root/SetNeighborTileBehavior.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'SetNeighborTileBehavior.cpp')
-rw-r--r--SetNeighborTileBehavior.cpp16
1 files changed, 8 insertions, 8 deletions
diff --git a/SetNeighborTileBehavior.cpp b/SetNeighborTileBehavior.cpp
index 7b7ede7..0314e42 100644
--- a/SetNeighborTileBehavior.cpp
+++ b/SetNeighborTileBehavior.cpp
@@ -8,16 +8,16 @@ using namespace std;
void SetNeighborTileBehavior::step(Artist * artist) {
this->interactions++;
- if (dx != 0 || dy != 0) return;
+ if (this->offset.x != 0 || this->offset.y != 0) return;
if (artist == nullptr) return;
- if (artist->data.vx == 0) dx = 1;
- if (artist->data.vy == 0) dy = 1;
+ if (artist->data.vx == 0) this->offset.x = 1;
+ if (artist->data.vy == 0) this->offset.y = 1;
}
-static void update_neighbor(Tile & here, int dx, int dy) {
- if (dx == 0 && dy == 0) return;
- Tile * neighbor = here.get_neighbor(dx, dy);
+static void update_neighbor(Tile & here, const XY & offset) {
+ if (offset.x == 0 && offset.y == 0) return;
+ Tile * neighbor = here.get_neighbor(offset);
if (neighbor == &here) return;
if (neighbor == nullptr) return;
@@ -28,8 +28,8 @@ static void update_neighbor(Tile & here, int dx, int dy) {
void SetNeighborTileBehavior::update(Tile & tile) {
if (this->interactions < 1) return;
- update_neighbor(tile, this->dx, this->dy);
- update_neighbor(tile, -this->dx, -this->dy);
+ update_neighbor(tile, this->offset);
+ update_neighbor(tile, -this->offset);
tile.set_type(CreateArtistTileBehavior::type);
}