🆙 Floorplan fix

This commit is contained in:
duckietm
2026-04-30 07:57:31 +02:00
parent 853204a5b8
commit 43dc054fed
@@ -415,36 +415,27 @@ export class FloorplanEditor
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;
this._height = -1;
if(!this._tilemap[y]) continue;
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;
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;
}
if((x + 1) > this._width) this._width = x + 1;
if((y + 1) > this._height) this._height = y + 1;
}
}
}
const rows = [];
for(let y = 0; y < this._height; y++)