WIP: put all svg refs in scenario file at build time

This commit is contained in:
2024-05-30 12:37:29 -07:00
parent 51974436ff
commit 981cc566f0
8 changed files with 437 additions and 8 deletions

View File

@@ -3,6 +3,7 @@ import * as gameboard from './modules/gameboard.js';
import * as recordSheet from './modules/record_sheet.js';
import * as mapSelectDialog from './modules/map_select_dialog.js';
import { Observable } from './modules/observable.js';
import sideShow from './assets/images/scenario-side_show.svg';
globalThis.svgns = 'http://www.w3.org/2000/svg';
@@ -12,7 +13,8 @@ const mapPlaceholder = document.querySelector('.map-placeholder'),
contentVisToggleEl = document.querySelector('#content input[type="checkbox"].visible'),
// fileName = localStorage.getItem('map') || (env === 'test' ? 'test_map' : 'map1'),
fileName = localStorage.getItem('map') || 'scenario-side_show',
map = `assets/images/${fileName}.svg`,
// map = `assets/images/${fileName}.svg`,
map = sideShow,
fileInputEl = document.querySelector('input[type="file"]'),
dice = document.querySelectorAll('.die'),

View File

@@ -1,9 +1,23 @@
import sideShow from './assets/images/scenario-side_show.svg';
import dragonHunting from './assets/images/scenario-dragon_hunting.svg';
// import raceAgainstTime from './assets/images/scenario-race_against_time.svg';
export function init() {
const showButton = document.getElementById('show-dialog'),
mapDialog = document.getElementById('map-dialog'),
selectEl = mapDialog.querySelector('select'),
confirmBtn = mapDialog.querySelector('#confirm-btn');
let option = document.createElement('option');
option.setAttribute('value', sideShow);
option.textContent = 'BattleTroops Scenario 1: Side Show';
selectEl.appendChild(option);
option = document.createElement('option');
option.setAttribute('value', dragonHunting);
option.textContent = 'BattleTroops Scenario 2: Dragon Hunting';
selectEl.appendChild(option);
return {
selectCurrentOptionOnPageLoad() {
mapDialog.querySelectorAll('option').forEach(option =>
@@ -34,9 +48,12 @@ export function init() {
e.preventDefault();
localStorage.removeItem('pan-zoom');
localStorage.setItem('map', selectEl.value);
loadFn(`assets/images/${selectEl.value}.svg`);
// loadFn(`assets/images/${selectEl.value}.svg`);
loadFn(selectEl.value);
mapDialog.close();
});
}
};
}
export const defaultMap = sideShow;