2021-05-11 02:57:17 +00:00
|
|
|
import { Tile } from './tile.js';
|
|
|
|
|
export class LayeredTile extends Tile {
|
2021-05-17 04:26:18 +00:00
|
|
|
constructor(width, height, masks, tiles) {
|
|
|
|
|
super(width, height, masks);
|
2021-05-11 03:12:32 +00:00
|
|
|
this.tiles = [];
|
2021-05-11 02:57:17 +00:00
|
|
|
this.elem.style.position = 'relative';
|
|
|
|
|
for (let i = 0; i < tiles.length; i++) {
|
|
|
|
|
const tile = tiles[i];
|
2021-05-11 03:12:32 +00:00
|
|
|
this.tiles.push(tile);
|
2021-05-11 03:23:28 +00:00
|
|
|
this.elem.appendChild(tile.elem);
|
|
|
|
|
tile.elem.style.width = '100%';
|
|
|
|
|
tile.elem.style.height = '100%';
|
|
|
|
|
tile.elem.style.position = 'absolute';
|
|
|
|
|
tile.elem.style.top = '0';
|
|
|
|
|
tile.elem.style.left = '0';
|
|
|
|
|
tile.elem.style.zIndex = `${i}`;
|
2021-05-11 03:12:32 +00:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
play(name) {
|
2021-05-11 05:17:16 +00:00
|
|
|
let ret = undefined;
|
2021-05-11 03:12:32 +00:00
|
|
|
for (const tile of this.tiles) {
|
2021-05-11 05:17:16 +00:00
|
|
|
ret = tile.play(name) || ret;
|
2021-05-11 02:57:17 +00:00
|
|
|
}
|
2021-05-11 05:17:16 +00:00
|
|
|
return ret;
|
2021-05-11 02:57:17 +00:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
//# sourceMappingURL=layered_tile.js.map
|