Merge pull request #59 from duckietm/Dev

🆙 Floorplan fix
This commit is contained in:
DuckieTM
2026-04-30 07:57:49 +02:00
committed by GitHub
@@ -415,36 +415,27 @@ export class FloorplanEditor
public getCurrentTilemapString(): string public getCurrentTilemapString(): string
{ {
const highestTile = this._tilemap[this._height - 1][this._width - 1]; // always rescan bounds: bulk operations like toggleSelectAll / fillSquareSelection
// mutate tile.height directly without updating _width/_height
this._width = 0;
this._height = 0;
if(highestTile.height === 'x') for(let y = MAX_NUM_TILE_PER_AXIS - 1; y >= 0; y--)
{ {
this._width = -1; if(!this._tilemap[y]) continue;
this._height = -1;
for(let y = MAX_NUM_TILE_PER_AXIS - 1; y >= 0; y--) for(let x = MAX_NUM_TILE_PER_AXIS - 1; x >= 0; x--)
{ {
if(!this._tilemap[y]) continue; if(!this._tilemap[y][x]) continue;
for(let x = MAX_NUM_TILE_PER_AXIS - 1; x >= 0; x--) if(this._tilemap[y][x].height !== 'x')
{ {
if(!this._tilemap[y][x]) continue; if((x + 1) > this._width) this._width = x + 1;
if((y + 1) > this._height) this._height = y + 1;
const tile = this._tilemap[y][x];
if(tile.height !== 'x')
{
if((x + 1) > this._width)
this._width = x + 1;
if((y + 1) > this._height)
this._height = y + 1;
}
} }
} }
} }
const rows = []; const rows = [];
for(let y = 0; y < this._height; y++) for(let y = 0; y < this._height; y++)