public boolean setBaseTile (int fqTileId, int x, int y)
{
if (!_model.setBaseTile(fqTileId, x, y)) {
return false;
}
SceneBlock block = getBlock(x, y);
if (block != null && block.isResolved()) {
block.updateBaseTile(fqTileId, x, y);
}
// and recompute any surrounding fringe
for (int fx = x - 1, xn = x + 1; fx <= xn; fx++) {
for (int fy = y - 1, yn = y + 1; fy <= yn; fy++) {
block = getBlock(fx, fy);
if (block != null && block.isResolved()) {
block.updateFringe(fx, fy);
}
}
}
return true;
}