#include #include "Tile.h" #include "TileAppearance.h" #include "TileBehavior.h" Tile::Tile() { this->data = {}; this->update(); } Tile::Tile(TileData data) { this->data = data; this->update(); } void Tile::update() { this->color = TileAppearance::get_color(this->data.type); this->behavior = TileBehavior::get_strategy(this->data.type).clone(); }