This commit is contained in:
33333-33333 2026-05-28 16:45:00 +09:00
commit c523bf4380
8 changed files with 76 additions and 26 deletions

7
app.js
View file

@ -16,6 +16,7 @@ const modes = [
const state = {
seedText: "114514",
generationType: "auto",
mode: "all",
showFeatures: true,
showLabels: true,
@ -26,6 +27,7 @@ const state = {
const canvas = document.getElementById("mapCanvas");
const canvasShell = document.querySelector(".canvas-shell");
const seedInput = document.getElementById("seed");
const generationTypeInput = document.getElementById("generationType");
const randomSeedButton = document.getElementById("randomSeed");
const showFeaturesInput = document.getElementById("showFeatures");
const showLabelsInput = document.getElementById("showLabels");
@ -336,10 +338,11 @@ function renderModeButtons() {
async function regenerate() {
state.seedText = seedInput.value;
state.generationType = generationTypeInput?.value || "auto";
setProgressVisible(true, "Preparing generation...");
await nextFrame();
try {
state.map = await generateMapAsync(parseSeed(state.seedText), { onProgress: updateGenerationProgress });
state.map = await generateMapAsync(parseSeed(state.seedText), { onProgress: updateGenerationProgress, terrainType: state.generationType });
state.hoverEntities = buildHoverEntities(state.map);
renderStats(state.map);
redraw();
@ -369,6 +372,8 @@ function init() {
if (event.key === "Enter") regenerate();
});
generationTypeInput?.addEventListener("change", regenerate);
randomSeedButton.addEventListener("click", () => {
seedInput.value = String(Math.floor(Math.random() * 9999999));
regenerate();