mirror of
https://git.leinelab.org/Mal/mr-crocs-adventures.git
synced 2025-09-11 02:57:36 +02:00
Startpoint widget implemented
This commit is contained in:
28
tilorswift/js/menu/EntrancePointWidget.js
Normal file
28
tilorswift/js/menu/EntrancePointWidget.js
Normal file
@@ -0,0 +1,28 @@
|
||||
import Widget from "./Widget.js";
|
||||
import BrushMode from "../BrushMode.js";
|
||||
|
||||
export default class EntrancePointWidget extends Widget
|
||||
{
|
||||
constructor(widgetBar, brush) {
|
||||
super('Startpunkt');
|
||||
this.widgetBar = widgetBar;
|
||||
this.brush = brush;
|
||||
this.htmlElement = this.createElement();
|
||||
this.htmlElement.addEventListener(
|
||||
'click',
|
||||
() => {
|
||||
this.widgetBar.disableWidgets();
|
||||
this.enable();
|
||||
this.brush.mode = BrushMode.ENTRANCE;
|
||||
}
|
||||
)
|
||||
}
|
||||
|
||||
createElement()
|
||||
{
|
||||
let htmlElement = document.createElement('div');
|
||||
htmlElement.id = 'entrance-picker';
|
||||
|
||||
return htmlElement;
|
||||
}
|
||||
}
|
||||
@@ -1,13 +1,15 @@
|
||||
import ButtonTile from "../ButtonTile.js";
|
||||
import TilorswiftEvent from "../events/TilorswiftEvent.js";
|
||||
import Widget from "./Widget.js";
|
||||
import BrushMode from "../BrushMode.js";
|
||||
|
||||
export default class TilesetPickerWidget extends Widget
|
||||
{
|
||||
constructor(tileset)
|
||||
constructor(tileset, brush)
|
||||
{
|
||||
super('Terrain');
|
||||
this.tileset = tileset;
|
||||
this.brush = brush;
|
||||
this.htmlElement = this.createElementPicker();
|
||||
this.htmlElementSelector = this.createElementSelector();
|
||||
this.loadTileset();
|
||||
@@ -17,6 +19,7 @@ export default class TilesetPickerWidget extends Widget
|
||||
(event) => {
|
||||
if (this.isActive) {
|
||||
this.setTile(event.button.index);
|
||||
this.brush.mode = BrushMode.TERRAIN;
|
||||
}
|
||||
}
|
||||
)
|
||||
|
||||
@@ -19,6 +19,7 @@ export default class WidgetBar
|
||||
this.widgets.forEach(
|
||||
(widget) => {
|
||||
let container = document.createElement('div');
|
||||
container.classList.add('widget-container');
|
||||
|
||||
container.appendChild(widget.getTitle());
|
||||
container.appendChild(widget.getElement());
|
||||
@@ -29,4 +30,22 @@ export default class WidgetBar
|
||||
|
||||
return htmlElement;
|
||||
}
|
||||
|
||||
enableWidgets()
|
||||
{
|
||||
this.widgets.forEach(
|
||||
(widget) => {
|
||||
widget.enable();
|
||||
}
|
||||
);
|
||||
}
|
||||
|
||||
disableWidgets()
|
||||
{
|
||||
this.widgets.forEach(
|
||||
(widget) => {
|
||||
widget.disable();
|
||||
}
|
||||
);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user