Dialogs and function for new terrain.

This commit is contained in:
Mal
2020-02-10 19:36:46 +01:00
parent f6890eec24
commit b58cb552c8
7 changed files with 79 additions and 7 deletions

View File

@@ -18,6 +18,8 @@ import DialogAddRows from "./dialog/DialogAddRows.js";
import DialogAddColumns from "./dialog/DialogAddColumns.js";
import TilorswiftAddRowsClickedEvent from "./events/TilorswiftAddRowsClickedEvent.js";
import TilorswiftAddColumnsClickedEvent from "./events/TilorswiftAddColumnsClickedEvent.js";
import TilorswiftMenuNewTerrainClickedEvent from "./events/TilorswiftMenuNewTerrainClickedEvent.js";
import DialogNewTerrain from "./dialog/DialogNewTerrain.js";
let loader = new FileLoader('../levels/level.json');
let terrainData = JSON.parse(loader.getContent());
@@ -45,10 +47,8 @@ image.onload = function () {
let mainbar = new MainMenu('mainbar');
let menuFile = new MenuGroup('Datei');
menuFile.addMenuEntry(
new MainMenuEntry('Speichern', TilorswiftMenuSaveClickedEvent)
);
menuFile.addMenuEntry(new MainMenuEntry('Neu...', TilorswiftMenuNewTerrainClickedEvent));
menuFile.addMenuEntry(new MainMenuEntry('Speichern...', TilorswiftMenuSaveClickedEvent));
mainbar.addMenuGroup(menuFile);
let menuEdit = new MenuGroup('Bearbeiten');
@@ -99,6 +99,13 @@ image.onload = function () {
}
);
window.addEventListener(
TilorswiftEvent.NEW_TERRAIN_CLICKED,
() => {
new DialogNewTerrain();
}
);
window.addEventListener(
TilorswiftEvent.ADD_ROWS_CLICKED,
() => {
@@ -127,6 +134,15 @@ image.onload = function () {
}
);
window.addEventListener(
TilorswiftEvent.NEW_TERRAIN,
(event) => {
terrain = new Terrain(tileset, event.tilesX, event.tilesY, event.backgroundColor);
map.innerHTML = '';
map.appendChild(terrain.getElement());
}
);
/* Prevents Firefox's annoying default drag and drop behavior for images */
document.addEventListener(
'dragstart',