From d0b6c35d0b7da29d7bb42c7f689141e34ccbc233 Mon Sep 17 00:00:00 2001 From: Aitor Date: Sat, 19 Mar 2022 16:42:07 +0100 Subject: [PATCH] Update main.js --- main.js | 18 +++++++++++++++++- modules/ui/layers.js | 25 +++++++++++++++++++++++-- 2 files changed, 40 insertions(+), 3 deletions(-) diff --git a/main.js b/main.js index d4dc39e9..c35206fe 100644 --- a/main.js +++ b/main.js @@ -197,9 +197,16 @@ if (!location.hostname) { } function hideLoading() { + const queryString = window.location.search; + const urlParams = new URLSearchParams(queryString); + + const hideEditor = urlParams.get("hideEditor") ? true : false; + d3.select("#loading").transition().duration(4000).style("opacity", 0); d3.select("#initial").transition().duration(4000).attr("opacity", 0); - d3.select("#optionsContainer").transition().duration(3000).style("opacity", 1); + if (!hideEditor) { + d3.select("#optionsContainer").transition().duration(3000).style("opacity", 1); + } d3.select("#tooltip").transition().duration(4000).style("opacity", 1); } @@ -438,6 +445,15 @@ function applyDefaultBiomesSystem() { } function showWelcomeMessage() { + const queryString = window.location.search; + const urlParams = new URLSearchParams(queryString); + + const hideWelcomeMessage = urlParams.get("hideWelcomeMessage"); + + if (hideWelcomeMessage) { + return; + } + const changelog = link("https://github.com/Azgaar/Fantasy-Map-Generator/wiki/Changelog", "previous versions"); const reddit = link("https://www.reddit.com/r/FantasyMapGenerator", "Reddit community"); const discord = link("https://discordapp.com/invite/X7E84HU", "Discord server"); diff --git a/modules/ui/layers.js b/modules/ui/layers.js index 653cc9e4..c21d67e0 100644 --- a/modules/ui/layers.js +++ b/modules/ui/layers.js @@ -5,7 +5,8 @@ let presets = {}; // global object restoreCustomPresets(); // run on-load function getDefaultPresets() { - return { + const presets = { + geographical: ["toggleBiomes", "toggleIce", "toggleRelief", "toggleRivers", "toggleScaleBar"], political: ["toggleBorders", "toggleIcons", "toggleIce", "toggleLabels", "toggleRivers", "toggleRoutes", "toggleScaleBar", "toggleStates"], cultural: ["toggleBorders", "toggleCultures", "toggleIcons", "toggleLabels", "toggleRivers", "toggleRoutes", "toggleScaleBar"], religions: ["toggleBorders", "toggleIcons", "toggleLabels", "toggleReligions", "toggleRivers", "toggleRoutes", "toggleScaleBar"], @@ -18,6 +19,16 @@ function getDefaultPresets() { emblems: ["toggleBorders", "toggleIcons", "toggleIce", "toggleEmblems", "toggleRivers", "toggleRoutes", "toggleScaleBar", "toggleStates"], landmass: ["toggleScaleBar"] }; + + const queryString = window.location.search; + const urlParams = new URLSearchParams(queryString); + const urlPreset = urlParams.get("presetLayers") ? urlParams.get("presetLayers").split(',') : undefined; + + if (urlPreset) { + presets.url = urlPreset; + } + + return presets; } function restoreCustomPresets() { @@ -35,7 +46,17 @@ function restoreCustomPresets() { // run on map generation function applyPreset() { - const preset = localStorage.getItem("preset") || document.getElementById("layersPreset").value; + const queryString = window.location.search; + const urlParams = new URLSearchParams(queryString); + + const layersInUrl = urlParams.get("presetLayers"); + + if (layersInUrl) { + changePreset('url'); + return; + } + + const preset = urlParams.get("preset") || localStorage.getItem("preset") || document.getElementById("layersPreset").value; changePreset(preset); }