@edv4h/usketch-plugin-map 0.5.2 → 0.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +34 -0
- package/dist/autotile.d.ts +22 -0
- package/dist/autotile.d.ts.map +1 -1
- package/dist/autotile.js +46 -0
- package/dist/autotile.js.map +1 -1
- package/dist/base-terrain.d.ts +58 -0
- package/dist/base-terrain.d.ts.map +1 -0
- package/dist/base-terrain.js +107 -0
- package/dist/base-terrain.js.map +1 -0
- package/dist/generators/noise.d.ts +3 -1
- package/dist/generators/noise.d.ts.map +1 -1
- package/dist/generators/noise.js +8 -3
- package/dist/generators/noise.js.map +1 -1
- package/dist/generators/rng.d.ts +6 -1
- package/dist/generators/rng.d.ts.map +1 -1
- package/dist/generators/rng.js +7 -1
- package/dist/generators/rng.js.map +1 -1
- package/dist/index.d.ts +5 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -0
- package/dist/index.js.map +1 -1
- package/dist/map-layer.d.ts.map +1 -1
- package/dist/map-layer.js +107 -9
- package/dist/map-layer.js.map +1 -1
- package/dist/map-tool.d.ts.map +1 -1
- package/dist/map-tool.js +93 -30
- package/dist/map-tool.js.map +1 -1
- package/dist/plugin.d.ts.map +1 -1
- package/dist/plugin.js +73 -2
- package/dist/plugin.js.map +1 -1
- package/dist/tilemap-shape.d.ts +30 -0
- package/dist/tilemap-shape.d.ts.map +1 -1
- package/dist/tilemap-shape.js +35 -0
- package/dist/tilemap-shape.js.map +1 -1
- package/dist/tool-state.d.ts +7 -1
- package/dist/tool-state.d.ts.map +1 -1
- package/dist/tool-state.js +14 -0
- package/dist/tool-state.js.map +1 -1
- package/package.json +1 -1
package/dist/map-layer.js
CHANGED
|
@@ -1,13 +1,14 @@
|
|
|
1
|
-
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
1
|
+
import { Fragment as _Fragment, jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
2
|
import { useEffect, useRef, useState } from "react";
|
|
3
3
|
import { cellKey, exposedEdges, parseCellKey } from "./autotile.js";
|
|
4
|
+
import { baseTerrainAt, makeTerrainSampler, resolveBaseGen, } from "./base-terrain.js";
|
|
4
5
|
import { genStateStore } from "./gen-state.js";
|
|
5
6
|
import { blockFactor, downsampleCells, tileDetail } from "./lod.js";
|
|
6
7
|
import { terrainCssVars } from "./palette.js";
|
|
7
8
|
import { renderConfigStore } from "./render-config.js";
|
|
8
9
|
import { renderSvgNodes } from "./svg-nodes.js";
|
|
9
10
|
import { TERRAINS, terrainDarkVar, terrainPatternId } from "./terrain.js";
|
|
10
|
-
import { isTileMap } from "./tilemap-shape.js";
|
|
11
|
+
import { isTileMap, seededTilemap } from "./tilemap-shape.js";
|
|
11
12
|
export const WOBBLE_FILTER_ID = "uskmap-wobble";
|
|
12
13
|
const GRID_PATTERN_ID = "uskmap-grid";
|
|
13
14
|
const EDGE_RATIO = 0.22; // dark "one shade darker" ring thickness, fraction of a tile
|
|
@@ -103,6 +104,74 @@ function renderCells(cells, tile, detail, screenTilePx, visible, empty) {
|
|
|
103
104
|
return renderFullCells(cells, tile, visible, empty);
|
|
104
105
|
return renderCoarseCells(cells, tile, screenTilePx, visible);
|
|
105
106
|
}
|
|
107
|
+
/**
|
|
108
|
+
* Infinite base terrain, full tier. Walks the visible cell RANGE and fills EVERY
|
|
109
|
+
* cell from `sample` (painted override, else generated base — always defined), so
|
|
110
|
+
* unpainted space shows generated terrain. Autotile edges compare `sample`d
|
|
111
|
+
* neighbours, which are total, so band borders read correctly with no gaps.
|
|
112
|
+
*/
|
|
113
|
+
function renderInfiniteFull(sample, tile, visible) {
|
|
114
|
+
const range = visibleCellRange(visible, tile);
|
|
115
|
+
if (!range)
|
|
116
|
+
return [];
|
|
117
|
+
const nodes = [];
|
|
118
|
+
const t = EDGE_RATIO * tile;
|
|
119
|
+
for (let r = range.r0; r <= range.r1; r++) {
|
|
120
|
+
for (let c = range.c0; c <= range.c1; c++) {
|
|
121
|
+
const terrain = sample(c, r);
|
|
122
|
+
if (!terrain)
|
|
123
|
+
continue;
|
|
124
|
+
const x = c * tile;
|
|
125
|
+
const y = r * tile;
|
|
126
|
+
const k = cellKey(c, r);
|
|
127
|
+
nodes.push(_jsx("rect", { x: x, y: y, width: tile, height: tile, fill: `url(#${terrainPatternId(terrain)})`, stroke: CELL_LINE, strokeWidth: 1 }, `${k}:base`));
|
|
128
|
+
const dark = terrainDarkVar(terrain);
|
|
129
|
+
const strip = (sx, sy, sw, sh, sk) => (_jsx("rect", { x: sx, y: sy, width: sw, height: sh, fill: dark, opacity: EDGE_OPACITY }, sk));
|
|
130
|
+
if (sample(c, r - 1) !== terrain)
|
|
131
|
+
nodes.push(strip(x, y, tile, t, `${k}:n`));
|
|
132
|
+
if (sample(c, r + 1) !== terrain)
|
|
133
|
+
nodes.push(strip(x, y + tile - t, tile, t, `${k}:s`));
|
|
134
|
+
if (sample(c - 1, r) !== terrain)
|
|
135
|
+
nodes.push(strip(x, y, t, tile, `${k}:w`));
|
|
136
|
+
if (sample(c + 1, r) !== terrain)
|
|
137
|
+
nodes.push(strip(x + tile - t, y, t, tile, `${k}:e`));
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
return nodes;
|
|
141
|
+
}
|
|
142
|
+
/**
|
|
143
|
+
* Infinite base terrain, coarse tier. Flat-colour blocks over the visible block
|
|
144
|
+
* range sampled from the base field (bounded by on-screen blocks, not map size),
|
|
145
|
+
* with painted overrides downsampled on top.
|
|
146
|
+
*/
|
|
147
|
+
function renderInfiniteCoarse(overrides, seed, tile, screenTilePx, visible, gen) {
|
|
148
|
+
if (!visible)
|
|
149
|
+
return [];
|
|
150
|
+
const factor = blockFactor(screenTilePx);
|
|
151
|
+
const bt = factor * tile;
|
|
152
|
+
const half = factor >> 1;
|
|
153
|
+
const nodes = [];
|
|
154
|
+
const bc0 = Math.floor(visible.left / bt);
|
|
155
|
+
const bc1 = Math.ceil(visible.right / bt) - 1;
|
|
156
|
+
const br0 = Math.floor(visible.top / bt);
|
|
157
|
+
const br1 = Math.ceil(visible.bottom / bt) - 1;
|
|
158
|
+
for (let br = br0; br <= br1; br++) {
|
|
159
|
+
for (let bc = bc0; bc <= bc1; bc++) {
|
|
160
|
+
const terrain = baseTerrainAt(seed, bc * factor + half, br * factor + half, gen);
|
|
161
|
+
nodes.push(_jsx("rect", { x: bc * bt, y: br * bt, width: bt, height: bt, fill: `var(--t-${terrain})` }, `b:${bc},${br}`));
|
|
162
|
+
}
|
|
163
|
+
}
|
|
164
|
+
// Painted overrides on top (only the edited area; bounded).
|
|
165
|
+
for (const [bk, terrain] of Object.entries(downsampleCells(overrides, factor))) {
|
|
166
|
+
const [bc, br] = parseCellKey(bk);
|
|
167
|
+
const x = bc * bt;
|
|
168
|
+
const y = br * bt;
|
|
169
|
+
if (culled(x, y, bt, visible))
|
|
170
|
+
continue;
|
|
171
|
+
nodes.push(_jsx("rect", { x: x, y: y, width: bt, height: bt, fill: `var(--t-${terrain})` }, `o:${bk}`));
|
|
172
|
+
}
|
|
173
|
+
return nodes;
|
|
174
|
+
}
|
|
106
175
|
/** Visible world rect from the current viewport (best-effort, window-sized). */
|
|
107
176
|
export function visibleWorldRect(store) {
|
|
108
177
|
if (typeof window === "undefined")
|
|
@@ -149,6 +218,35 @@ export function MapTerrainLayer({ store, renderMode, tile: defaultTile, }) {
|
|
|
149
218
|
const bgCoarse = tileDetail(defaultTile * vp.zoom, renderMode) === "coarse";
|
|
150
219
|
// Match painted tiles: wobble the empty background + grid too at full detail.
|
|
151
220
|
const bgWobble = cfg.lineStyle === "wobble" && !bgCoarse;
|
|
221
|
+
// Infinite base terrain: one pass fills the whole viewport from the base field
|
|
222
|
+
// (+ painted overrides + autotile), replacing the flat empty background and the
|
|
223
|
+
// per-tilemap render. The seed lives on the tilemap SHAPE (persisted + synced),
|
|
224
|
+
// so the generated world survives reloads and is shared with everyone on the
|
|
225
|
+
// board. Chosen deterministically (by id) so every synced client renders the
|
|
226
|
+
// same world even if several seeded tilemaps coexist.
|
|
227
|
+
const seededTm = seededTilemap(tilemaps);
|
|
228
|
+
const baseSeed = seededTm?.baseSeed ?? null;
|
|
229
|
+
// Generation params are frozen on the shape; missing ⇒ v1 (resolveBaseGen).
|
|
230
|
+
const baseGen = resolveBaseGen(seededTm?.baseGen);
|
|
231
|
+
const baseActive = baseSeed != null && !!visible;
|
|
232
|
+
let baseNodes = [];
|
|
233
|
+
let baseWobble = false;
|
|
234
|
+
if (baseActive && visible && baseSeed != null) {
|
|
235
|
+
// Overrides for the sampler. The common case is a single shared tilemap —
|
|
236
|
+
// reuse its `cells` directly (read-only here) to avoid copying every RAF
|
|
237
|
+
// frame; only allocate + merge when several tilemaps coexist. Merge in
|
|
238
|
+
// id order so overlapping cells resolve deterministically (highest id
|
|
239
|
+
// wins) — insertion order isn't consistent across synced clients.
|
|
240
|
+
const merged = tilemaps.length === 1
|
|
241
|
+
? tilemaps[0].cells
|
|
242
|
+
: Object.assign({}, ...[...tilemaps].sort((a, b) => (a.id < b.id ? -1 : 1)).map((tm) => tm.cells));
|
|
243
|
+
const detail = tileDetail(defaultTile * vp.zoom, renderMode);
|
|
244
|
+
baseWobble = cfg.lineStyle === "wobble" && detail === "full";
|
|
245
|
+
baseNodes =
|
|
246
|
+
detail === "full"
|
|
247
|
+
? renderInfiniteFull(makeTerrainSampler(merged, baseSeed, empty, baseGen), defaultTile, visible)
|
|
248
|
+
: renderInfiniteCoarse(merged, baseSeed, defaultTile, defaultTile * vp.zoom, visible, baseGen);
|
|
249
|
+
}
|
|
152
250
|
return (_jsx("div", { style: {
|
|
153
251
|
position: "absolute",
|
|
154
252
|
inset: 0,
|
|
@@ -156,12 +254,12 @@ export function MapTerrainLayer({ store, renderMode, tile: defaultTile, }) {
|
|
|
156
254
|
height: "100%",
|
|
157
255
|
pointerEvents: "none",
|
|
158
256
|
overflow: "hidden",
|
|
159
|
-
}, children: _jsxs("svg", { width: "100%", height: "100%", style: { display: "block", overflow: "visible", ...cssVars }, children: [_jsx(MapDefs, { tile: defaultTile }), _jsxs("g", { transform: `translate(${vp.x} ${vp.y}) scale(${vp.zoom})`, children: [empty && visible && (_jsxs("g", { filter: bgWobble ? `url(#${WOBBLE_FILTER_ID})` : undefined, children: [_jsx("rect", { x: visible.left, y: visible.top, width: visible.width, height: visible.height, fill: bgCoarse ? `var(--t-${empty})` : `url(#${terrainPatternId(empty)})` }), !bgCoarse && (_jsx("rect", { x: visible.left, y: visible.top, width: visible.width, height: visible.height, fill: `url(#${GRID_PATTERN_ID})` }))] })), tilemaps.map((tm) => {
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
257
|
+
}, children: _jsxs("svg", { width: "100%", height: "100%", style: { display: "block", overflow: "visible", ...cssVars }, children: [_jsx(MapDefs, { tile: defaultTile }), _jsxs("g", { transform: `translate(${vp.x} ${vp.y}) scale(${vp.zoom})`, children: [baseActive ? (_jsx("g", { filter: baseWobble ? `url(#${WOBBLE_FILTER_ID})` : undefined, children: baseNodes })) : (_jsxs(_Fragment, { children: [empty && visible && (_jsxs("g", { filter: bgWobble ? `url(#${WOBBLE_FILTER_ID})` : undefined, children: [_jsx("rect", { x: visible.left, y: visible.top, width: visible.width, height: visible.height, fill: bgCoarse ? `var(--t-${empty})` : `url(#${terrainPatternId(empty)})` }), !bgCoarse && (_jsx("rect", { x: visible.left, y: visible.top, width: visible.width, height: visible.height, fill: `url(#${GRID_PATTERN_ID})` }))] })), tilemaps.map((tm) => {
|
|
258
|
+
const screenTilePx = tm.tile * vp.zoom;
|
|
259
|
+
const detail = tileDetail(screenTilePx, renderMode);
|
|
260
|
+
// Wobble only pays off (and is only visible) at full detail.
|
|
261
|
+
const useWobble = cfg.lineStyle === "wobble" && detail === "full";
|
|
262
|
+
return (_jsx("g", { filter: useWobble ? `url(#${WOBBLE_FILTER_ID})` : undefined, children: renderCells(tm.cells, tm.tile, detail, screenTilePx, visible, empty) }, tm.id));
|
|
263
|
+
})] })), pending && (pending.w > 0 || pending.h > 0) && (_jsx("rect", { x: pending.x, y: pending.y, width: pending.w, height: pending.h, fill: "rgba(74,127,184,.14)", stroke: "#4A7FB8", strokeWidth: 2, strokeDasharray: "8 6", vectorEffect: "non-scaling-stroke" }))] })] }) }));
|
|
166
264
|
}
|
|
167
265
|
//# sourceMappingURL=map-layer.js.map
|
package/dist/map-layer.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"map-layer.js","sourceRoot":"","sources":["../src/map-layer.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"map-layer.js","sourceRoot":"","sources":["../src/map-layer.tsx"],"names":[],"mappings":"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"}
|
package/dist/map-tool.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"map-tool.d.ts","sourceRoot":"","sources":["../src/map-tool.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAKX,cAAc,EACd,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"map-tool.d.ts","sourceRoot":"","sources":["../src/map-tool.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAKX,cAAc,EACd,MAAM,uBAAuB,CAAC;AAmE/B,wBAAgB,uBAAuB,CAAC,IAAI,GAAE,MAAqB,GAAG,cAAc,CA4WnF"}
|
package/dist/map-tool.js
CHANGED
|
@@ -1,14 +1,19 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
2
|
import { createAddShapeCommand, createDeleteWithChildrenCommand, isEffectivelyHidden, isEffectivelyLocked, } from "@edv4h/usketch-store";
|
|
3
|
-
import { cellKey, cellsBounds, floodFill, regionFillCells, worldToCell, } from "./autotile.js";
|
|
3
|
+
import { cellKey, cellsBounds, floodFill, regionFillCells, samplerFloodFill, worldToCell, } from "./autotile.js";
|
|
4
4
|
import { createBase, getBaseMap, setBeacon } from "./base/base-ops.js";
|
|
5
5
|
import { baseStateStore } from "./base/base-state.js";
|
|
6
|
+
import { makeTerrainSampler, resolveBaseGen } from "./base-terrain.js";
|
|
6
7
|
import { genStateStore } from "./gen-state.js";
|
|
7
8
|
import { generateIntoBox, resolveTilemap } from "./generate.js";
|
|
8
9
|
import { ICONS_BY_KEY } from "./icons.js";
|
|
9
10
|
import { MAP_ICON_TYPE, makeMapIcon } from "./map-icon-shape.js";
|
|
10
|
-
import { DEFAULT_TILE } from "./tilemap-shape.js";
|
|
11
|
+
import { DEFAULT_TILE, isTileMap, seededTilemap } from "./tilemap-shape.js";
|
|
11
12
|
import { toolStateStore } from "./tool-state.js";
|
|
13
|
+
// Hard cap on a single sampler-based fill over the infinite base terrain. A truly
|
|
14
|
+
// enclosed region terminates well below this; hitting it means the region is open
|
|
15
|
+
// (e.g. an infinite ocean), so the fill is aborted rather than painting a blob.
|
|
16
|
+
const MAX_FILL_CELLS = 8192;
|
|
12
17
|
// Default colours cycled through when a base is auto-created on first beacon.
|
|
13
18
|
const BASE_PALETTE = [
|
|
14
19
|
"#EF5350",
|
|
@@ -72,24 +77,80 @@ export function createMapToolDefinition(tile = DEFAULT_TILE) {
|
|
|
72
77
|
}
|
|
73
78
|
applyCells(ctx, stroke.tilemapId, cells);
|
|
74
79
|
}
|
|
80
|
+
/** The board's infinite-base config (seed + frozen gen), or null when off. */
|
|
81
|
+
function baseConfig(ctx) {
|
|
82
|
+
const tm = seededTilemap(ctx.store.getShapes().values());
|
|
83
|
+
return tm?.baseSeed != null ? { seed: tm.baseSeed, gen: resolveBaseGen(tm.baseGen) } : null;
|
|
84
|
+
}
|
|
85
|
+
/**
|
|
86
|
+
* Painted overrides as the RENDERER sees them: every tilemap's cells merged in
|
|
87
|
+
* id order (highest id wins), matching `map-layer`. The fill sampler must read
|
|
88
|
+
* this — not just the stroke tilemap — so the flooded region agrees with the
|
|
89
|
+
* terrain the user actually clicked when several tilemaps coexist.
|
|
90
|
+
*/
|
|
91
|
+
function mergedOverrides(ctx) {
|
|
92
|
+
const tms = [...ctx.store.getShapes().values()].filter(isTileMap);
|
|
93
|
+
if (tms.length <= 1)
|
|
94
|
+
return tms[0] ? { ...tms[0].cells } : {};
|
|
95
|
+
return Object.assign({}, ...[...tms].sort((a, b) => (a.id < b.id ? -1 : 1)).map((tm) => tm.cells));
|
|
96
|
+
}
|
|
97
|
+
/**
|
|
98
|
+
* Region isn't enclosed (open terrain, e.g. infinite ocean) — don't paint an
|
|
99
|
+
* arbitrary capped blob. Emit an event so a HUD can surface a message (no toast
|
|
100
|
+
* yet), and no-op the fill. Intentionally no console output: an aborted open
|
|
101
|
+
* fill is an expected user outcome, not a warning.
|
|
102
|
+
*/
|
|
103
|
+
function abortFill(ctx, scanned) {
|
|
104
|
+
ctx.events.emit("map:fill-aborted", { reason: "not-enclosed", scanned });
|
|
105
|
+
}
|
|
106
|
+
/** Painted-cell bounds as a flood box, or undefined for an empty tilemap. */
|
|
107
|
+
function paintedBox(cells) {
|
|
108
|
+
if (Object.keys(cells).length === 0)
|
|
109
|
+
return undefined;
|
|
110
|
+
const b = cellsBounds(cells, tile);
|
|
111
|
+
return {
|
|
112
|
+
minC: Math.floor(b.x / tile),
|
|
113
|
+
minR: Math.floor(b.y / tile),
|
|
114
|
+
maxC: Math.floor(b.x / tile) + b.width / tile - 1,
|
|
115
|
+
maxR: Math.floor(b.y / tile) + b.height / tile - 1,
|
|
116
|
+
};
|
|
117
|
+
}
|
|
118
|
+
/** Write `terrain` into every region key that differs; returns whether anything changed. */
|
|
119
|
+
function paintRegion(cells, keys, terrain) {
|
|
120
|
+
let changed = false;
|
|
121
|
+
for (const k of keys) {
|
|
122
|
+
if (cells[k] === terrain)
|
|
123
|
+
continue;
|
|
124
|
+
cells[k] = terrain;
|
|
125
|
+
changed = true;
|
|
126
|
+
}
|
|
127
|
+
return changed;
|
|
128
|
+
}
|
|
75
129
|
function doFill(ctx, event) {
|
|
76
130
|
if (!stroke)
|
|
77
131
|
return;
|
|
78
132
|
const [c, r] = worldToCell(event.worldPoint.x, event.worldPoint.y, tile);
|
|
79
133
|
const { terrain } = toolStateStore.get();
|
|
80
134
|
const cells = currentCells(ctx, stroke.tilemapId);
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
}
|
|
92
|
-
|
|
135
|
+
const base = baseConfig(ctx);
|
|
136
|
+
if (base) {
|
|
137
|
+
// Infinite base: flood over the SAMPLED terrain (merged overrides ?? base)
|
|
138
|
+
// so the click's visible terrain is honoured, capped + aborted when not
|
|
139
|
+
// enclosed. Read the merged view (all tilemaps) but write to the stroke one.
|
|
140
|
+
const sample = makeTerrainSampler(mergedOverrides(ctx), base.seed, null, base.gen);
|
|
141
|
+
const res = samplerFloodFill(sample, c, r, MAX_FILL_CELLS);
|
|
142
|
+
if (res.truncated) {
|
|
143
|
+
abortFill(ctx, res.cells.length);
|
|
144
|
+
return;
|
|
145
|
+
}
|
|
146
|
+
if (!paintRegion(cells, res.cells, terrain))
|
|
147
|
+
return;
|
|
148
|
+
applyCells(ctx, stroke.tilemapId, cells);
|
|
149
|
+
return;
|
|
150
|
+
}
|
|
151
|
+
// Finite board: empty-cell fills are bounded to the current painted region
|
|
152
|
+
// so the flood is finite; painted-cell fills are naturally bounded.
|
|
153
|
+
const keys = floodFill(cells, c, r, paintedBox(cells));
|
|
93
154
|
if (keys.length === 0)
|
|
94
155
|
return;
|
|
95
156
|
for (const k of keys)
|
|
@@ -109,23 +170,25 @@ export function createMapToolDefinition(tile = DEFAULT_TILE) {
|
|
|
109
170
|
const { terrain, excludeTerrains } = toolStateStore.get();
|
|
110
171
|
const exclude = new Set(excludeTerrains);
|
|
111
172
|
const cells = currentCells(ctx, stroke.tilemapId);
|
|
112
|
-
const
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
cells
|
|
126
|
-
|
|
173
|
+
const base = baseConfig(ctx);
|
|
174
|
+
if (base) {
|
|
175
|
+
const sample = makeTerrainSampler(mergedOverrides(ctx), base.seed, null, base.gen);
|
|
176
|
+
const start = sample(c, r);
|
|
177
|
+
// Clicking a protected (or empty) terrain is a no-op; since the flood only
|
|
178
|
+
// spreads across `start`, it can never reach a protected cell.
|
|
179
|
+
if (start === undefined || exclude.has(start))
|
|
180
|
+
return;
|
|
181
|
+
const res = samplerFloodFill(sample, c, r, MAX_FILL_CELLS);
|
|
182
|
+
if (res.truncated) {
|
|
183
|
+
abortFill(ctx, res.cells.length);
|
|
184
|
+
return;
|
|
185
|
+
}
|
|
186
|
+
if (!paintRegion(cells, res.cells, terrain))
|
|
187
|
+
return;
|
|
188
|
+
applyCells(ctx, stroke.tilemapId, cells);
|
|
189
|
+
return;
|
|
127
190
|
}
|
|
128
|
-
if (!
|
|
191
|
+
if (!paintRegion(cells, regionFillCells(cells, c, r, exclude, paintedBox(cells)), terrain))
|
|
129
192
|
return;
|
|
130
193
|
applyCells(ctx, stroke.tilemapId, cells);
|
|
131
194
|
}
|
package/dist/map-tool.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"map-tool.js","sourceRoot":"","sources":["../src/map-tool.tsx"],"names":[],"mappings":";AAWA,OAAO,EACN,qBAAqB,EACrB,+BAA+B,EAC/B,mBAAmB,EACnB,mBAAmB,GACnB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAGN,OAAO,EACP,WAAW,EACX,SAAS,EACT,eAAe,EACf,WAAW,GACX,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AACvE,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAChE,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AACjE,OAAO,EAAE,YAAY,EAAyB,MAAM,oBAAoB,CAAC;AACzE,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAEjD,8EAA8E;AAC9E,MAAM,YAAY,GAAG;IACpB,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;CACT,CAAC;AAEF,SAAS,WAAW;IACnB,OAAO,CACN,eAAK,KAAK,EAAC,IAAI,EAAC,MAAM,EAAC,IAAI,EAAC,OAAO,EAAC,WAAW,EAAC,IAAI,EAAC,MAAM,aAC1D,eACC,CAAC,EAAC,gDAAgD,EAClD,IAAI,EAAC,SAAS,EACd,MAAM,EAAC,SAAS,EAChB,WAAW,EAAC,KAAK,EACjB,cAAc,EAAC,OAAO,GACrB,EACF,eAAM,CAAC,EAAC,oBAAoB,EAAC,MAAM,EAAC,SAAS,EAAC,WAAW,EAAC,KAAK,GAAG,IAC7D,CACN,CAAC;AACH,CAAC;AAED,SAAS,UAAU,CAAC,CAAQ,EAAE,CAAQ;IACrC,MAAM,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC1B,IAAI,EAAE,CAAC,MAAM,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM;QAAE,OAAO,KAAK,CAAC;IACtD,KAAK,MAAM,CAAC,IAAI,EAAE;QAAE,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAAE,OAAO,KAAK,CAAC;IACpD,OAAO,IAAI,CAAC;AACb,CAAC;AAED,MAAM,UAAU,uBAAuB,CAAC,IAAI,GAAW,YAAY;IAOlE,IAAI,MAAM,GAAkB,IAAI,CAAC;IACjC,IAAI,OAAO,GAAG,EAAE,CAAC;IACjB,oEAAoE;IACpE,IAAI,OAAO,GAAsC,IAAI,CAAC;IAEtD,SAAS,YAAY,CAAC,GAAgB,EAAE,EAAU;QACjD,MAAM,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAiC,CAAC;QACjE,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAChC,CAAC;IAED,SAAS,gBAAgB,CAAC,GAAgB,EAAE,EAAU;QACrD,MAAM,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAiC,CAAC;QACjE,OAAO,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAC/C,CAAC;IAED,SAAS,UAAU,CAAC,GAAgB,EAAE,EAAU,EAAE,KAAY;QAC7D,sEAAsE;QACtE,6EAA6E;QAC7E,GAAG,CAAC,KAAK,CAAC,WAAW,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,GAAG,WAAW,CAAC,KAAK,EAAE,IAAI,CAAC,EAAwB,CAAC,CAAC;IACzF,CAAC;IAED,SAAS,OAAO,CAAC,GAAgB,EAAE,KAAyB;QAC3D,IAAI,CAAC,MAAM;YAAE,OAAO;QACpB,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,WAAW,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;QACzE,MAAM,GAAG,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAC1B,IAAI,GAAG,KAAK,OAAO;YAAE,OAAO;QAC5B,OAAO,GAAG,GAAG,CAAC;QACd,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,cAAc,CAAC,GAAG,EAAE,CAAC;QAC/C,MAAM,KAAK,GAAG,YAAY,CAAC,GAAG,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC;QAClD,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;YACvB,IAAI,CAAC,CAAC,GAAG,IAAI,KAAK,CAAC;gBAAE,OAAO;YAC5B,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC;QACnB,CAAC;aAAM,CAAC;YACP,IAAI,KAAK,CAAC,GAAG,CAAC,KAAK,OAAO;gBAAE,OAAO;YACnC,KAAK,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC;QACtB,CAAC;QACD,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;IAC1C,CAAC;IAED,SAAS,MAAM,CAAC,GAAgB,EAAE,KAAyB;QAC1D,IAAI,CAAC,MAAM;YAAE,OAAO;QACpB,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,WAAW,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;QACzE,MAAM,EAAE,OAAO,EAAE,GAAG,cAAc,CAAC,GAAG,EAAE,CAAC;QACzC,MAAM,KAAK,GAAG,YAAY,CAAC,GAAG,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC;QAClD,0EAA0E;QAC1E,qEAAqE;QACrE,MAAM,CAAC,GAAG,WAAW,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QACnC,MAAM,GAAG,GACR,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,KAAK,CAAC;YAC9B,CAAC,CAAC,SAAS;YACX,CAAC,CAAC;gBACA,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;gBAC5B,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;gBAC5B,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,IAAI,GAAG,CAAC;gBACjD,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,GAAG,IAAI,GAAG,CAAC;aAClD,CAAC;QACL,MAAM,IAAI,GAAG,SAAS,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC;QACzC,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO;QAC9B,KAAK,MAAM,CAAC,IAAI,IAAI;YAAE,KAAK,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC;QACzC,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;IAC1C,CAAC;IAED;;;;;OAKG;IACH,SAAS,YAAY,CAAC,GAAgB,EAAE,KAAyB;QAChE,IAAI,CAAC,MAAM;YAAE,OAAO;QACpB,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,WAAW,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;QACzE,MAAM,EAAE,OAAO,EAAE,eAAe,EAAE,GAAG,cAAc,CAAC,GAAG,EAAE,CAAC;QAC1D,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,eAAe,CAAC,CAAC;QACzC,MAAM,KAAK,GAAG,YAAY,CAAC,GAAG,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC;QAClD,MAAM,CAAC,GAAG,WAAW,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QACnC,MAAM,GAAG,GACR,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,KAAK,CAAC;YAC9B,CAAC,CAAC,SAAS;YACX,CAAC,CAAC;gBACA,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;gBAC5B,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;gBAC5B,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,IAAI,GAAG,CAAC;gBACjD,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,GAAG,IAAI,GAAG,CAAC;aAClD,CAAC;QACL,IAAI,OAAO,GAAG,KAAK,CAAC;QACpB,KAAK,MAAM,CAAC,IAAI,eAAe,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,EAAE,OAAO,EAAE,GAAG,CAAC,EAAE,CAAC;YAC5D,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,OAAO;gBAAE,SAAS;YACnC,KAAK,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC;YACnB,OAAO,GAAG,IAAI,CAAC;QAChB,CAAC;QACD,IAAI,CAAC,OAAO;YAAE,OAAO;QACrB,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;IAC1C,CAAC;IAED,SAAS,MAAM,CAAC,GAAgB;QAC/B,IAAI,CAAC,MAAM;YAAE,OAAO;QACpB,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,GAAG,MAAM,CAAC;QAChE,MAAM,GAAG,IAAI,CAAC;QACd,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAiC,CAAC;QAC5E,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;QAE3C,IAAI,OAAO,EAAE,CAAC;YACb,uEAAuE;YACvE,8DAA8D;YAC9D,IAAI,CAAC,KAAK,IAAI,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACnD,IAAI,KAAK;oBAAE,GAAG,CAAC,KAAK,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;gBAC5C,OAAO;YACR,CAAC;YACD,MAAM,SAAS,GAAyB,EAAE,CAAC;YAC3C,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC;gBAAE,SAAS,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;YAC5D,MAAM,UAAU,GAAG,EAAE,GAAG,KAAK,EAAE,SAAS,EAAe,CAAC;YACxD,GAAG,CAAC,KAAK,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;YACjC,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,qBAAqB,CAAC,GAAG,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC;YACnE,OAAO;QACR,CAAC;QAED,0EAA0E;QAC1E,IAAI,UAAU,CAAC,SAAS,EAAE,SAAS,CAAC;YAAE,OAAO;QAC7C,MAAM,IAAI,GAAG,SAAS,CAAC;QACvB,MAAM,IAAI,GAAG,EAAE,GAAG,SAAS,EAAE,CAAC;QAC9B,gFAAgF;QAChF,gFAAgF;QAChF,MAAM,aAAa,GAAG,EAAE,GAAG,aAAa,EAAE,CAAC;QAC3C,KAAK,MAAM,CAAC,IAAI,IAAI,GAAG,CAAC,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;YACvE,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC;gBAAE,SAAS,CAAC,wBAAwB;YAC3D,IAAI,CAAC,IAAI,IAAI;gBAAE,aAAa,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;;gBAClC,OAAO,aAAa,CAAC,CAAC,CAAC,CAAC;QAC9B,CAAC;QACD,MAAM,UAAU,GAAG,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAC3C,MAAM,UAAU,GAAG,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAC3C,MAAM,OAAO,GAAY;YACxB,OAAO,EAAE,GAAG,EAAE,CACb,GAAG,CAAC,KAAK,CAAC,WAAW,CAAC,SAAS,EAAE;gBAChC,KAAK,EAAE,IAAI;gBACX,SAAS,EAAE,aAAa;gBACxB,GAAG,UAAU;aACS,CAAC;YACzB,IAAI,EAAE,GAAG,EAAE,CACV,GAAG,CAAC,KAAK,CAAC,WAAW,CAAC,SAAS,EAAE;gBAChC,KAAK,EAAE,IAAI;gBACX,SAAS,EAAE,aAAa;gBACxB,GAAG,UAAU;aACS,CAAC;SACzB,CAAC;QACF,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAC/B,CAAC;IAED;;;;OAIG;IACH,SAAS,aAAa,CAAC,GAAgB,EAAE,CAAS,EAAE,CAAS;QAC5D,MAAM,GAAG,GAAG,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;QAC1C,IAAI,CAAC,GAAG;YAAE,OAAO,IAAI,CAAC;QACtB,MAAM,KAAK,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;QACvB,IAAI,KAAK,GAAkB,IAAI,CAAC;QAChC,KAAK,MAAM,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,eAAe,EAAE,EAAE,CAAC;YAC7C,IAAI,CAAC,CAAC,IAAI,KAAK,aAAa;gBAAE,SAAS;YACvC,IAAI,mBAAmB,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,IAAI,mBAAmB,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC;gBAAE,SAAS;YACrF,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC,EAAE,KAAK,CAAC;gBAAE,KAAK,GAAG,CAAC,CAAC,EAAE,CAAC;QACzC,CAAC;QACD,OAAO,KAAK,CAAC;IACd,CAAC;IAED,SAAS,SAAS,CAAC,GAAgB,EAAE,KAAyB;QAC7D,MAAM,EAAE,OAAO,EAAE,GAAG,cAAc,CAAC,GAAG,EAAE,CAAC;QACzC,MAAM,GAAG,GAAG,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACtC,IAAI,CAAC,GAAG;YAAE,OAAO;QACjB,MAAM,KAAK,GAAG,WAAW,CAAC,OAAO,EAAE,GAAG,CAAC,QAAQ,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;QACzF,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,qBAAqB,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC;QAC9D,GAAG,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;IACpC,CAAC;IAED,OAAO;QACN,IAAI,EAAE,WAAW;QACjB,MAAM,EAAE,WAAW;QACnB,QAAQ,EAAE,GAAG;QACb,KAAK,EAAE,EAAE;QACT,aAAa,CAAC,GAAG,EAAE,KAAK;YACvB,MAAM,EAAE,IAAI,EAAE,GAAG,cAAc,CAAC,GAAG,EAAE,CAAC;YACtC,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;gBACtB,SAAS,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;gBACtB,OAAO;YACR,CAAC;YACD,IAAI,IAAI,KAAK,UAAU,EAAE,CAAC;gBACzB,OAAO,GAAG,EAAE,EAAE,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC;gBAC7D,aAAa,CAAC,GAAG,CAAC;oBACjB,WAAW,EAAE,EAAE,CAAC,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE;iBACzE,CAAC,CAAC;gBACH,OAAO;YACR,CAAC;YACD,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;gBACrB,mEAAmE;gBACnE,qEAAqE;gBACrE,MAAM,MAAM,GAAG,aAAa,CAAC,GAAG,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;gBAC1E,IAAI,CAAC,MAAM;oBAAE,OAAO,CAAC,2CAA2C;gBAChE,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,QAAQ,EAAE,GAAG,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC;gBAChE,IAAI,MAAM,GAAG,cAAc,CAAC,GAAG,EAAE,CAAC,YAAY,CAAC;gBAC/C,kEAAkE;gBAClE,IAAI,CAAC,MAAM,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;oBACtD,MAAM,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC;oBACjE,MAAM,GAAG,UAAU,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC,EAAE,EAAE,YAAY,CAAC,CAAC,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC;oBAC/E,cAAc,CAAC,GAAG,CAAC,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC,CAAC;gBAC9C,CAAC;gBACD,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;gBAChC,OAAO;YACR,CAAC;YACD,0EAA0E;YAC1E,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;gBACvB,MAAM,MAAM,GAAG,aAAa,CAAC,GAAG,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;gBAC1E,IAAI,MAAM,EAAE,CAAC;oBACZ,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,+BAA+B,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC;oBACzE,OAAO;gBACR,CAAC;YACF,CAAC;YACD,MAAM,MAAM,GAAG,cAAc,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;YAC/C,MAAM,GAAG;gBACR,SAAS,EAAE,MAAM,CAAC,EAAE;gBACpB,OAAO,EAAE,MAAM,CAAC,OAAO;gBACvB,SAAS,EAAE,YAAY,CAAC,GAAG,EAAE,MAAM,CAAC,EAAE,CAAC;gBACvC,aAAa,EAAE,gBAAgB,CAAC,GAAG,EAAE,MAAM,CAAC,EAAE,CAAC;aAC/C,CAAC;YACF,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,IAAI,KAAK,MAAM;gBAAE,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;iBACnC,IAAI,IAAI,KAAK,QAAQ;gBAAE,YAAY,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;;gBAChD,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QAC1B,CAAC;QACD,aAAa,CAAC,GAAG,EAAE,KAAK;YACvB,IAAI,OAAO,EAAE,CAAC;gBACb,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;gBACnD,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;gBACnD,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,GAAG,OAAO,CAAC,EAAE,CAAC,CAAC;gBACpD,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,GAAG,OAAO,CAAC,EAAE,CAAC,CAAC;gBACpD,aAAa,CAAC,GAAG,CAAC,EAAE,WAAW,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;gBACnD,OAAO;YACR,CAAC;YACD,IAAI,CAAC,MAAM;gBAAE,OAAO;YACpB,MAAM,EAAE,IAAI,EAAE,GAAG,cAAc,CAAC,GAAG,EAAE,CAAC;YACtC,IAAI,IAAI,KAAK,OAAO,IAAI,IAAI,KAAK,QAAQ;gBAAE,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QAChE,CAAC;QACD,WAAW,CAAC,GAAG;YACd,IAAI,OAAO,EAAE,CAAC;gBACb,MAAM,IAAI,GAAG,aAAa,CAAC,GAAG,EAAE,CAAC,WAAW,CAAC;gBAC7C,OAAO,GAAG,IAAI,CAAC;gBACf,aAAa,CAAC,GAAG,CAAC,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC;gBACzC,IAAI,IAAI,IAAI,IAAI,CAAC,CAAC,IAAI,IAAI,GAAG,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,IAAI,GAAG,CAAC,EAAE,CAAC;oBACtD,kEAAkE;oBAClE,oEAAoE;oBACpE,MAAM,GAAG,GAAY;wBACpB,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC;wBAC/B,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC;wBAC/B,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC;wBAC7C,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC;qBAC7C,CAAC;oBACF,MAAM,EAAE,GAAG,aAAa,CAAC,GAAG,EAAE,CAAC;oBAC/B,eAAe,CACd,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,QAAQ,EAAE,GAAG,CAAC,QAAQ,EAAE,IAAI,EAAE,EAClD,EAAE,WAAW,EAAE,EAAE,CAAC,WAAW,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE,CACtE,CAAC;gBACH,CAAC;gBACD,OAAO;YACR,CAAC;YACD,MAAM,CAAC,GAAG,CAAC,CAAC;YACZ,6DAA6D;QAC9D,CAAC;QACD,YAAY,CAAC,GAAG;YACf,IAAI,OAAO,EAAE,CAAC;gBACb,OAAO,GAAG,IAAI,CAAC;gBACf,aAAa,CAAC,GAAG,CAAC,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC;YAC1C,CAAC;YACD,mEAAmE;YACnE,sEAAsE;YACtE,wEAAwE;YACxE,gDAAgD;YAChD,IAAI,MAAM,EAAE,CAAC;gBACZ,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,MAAM,CAAC;gBACjD,IAAI,OAAO,EAAE,CAAC;oBACb,GAAG,CAAC,KAAK,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;gBAClC,CAAC;qBAAM,CAAC;oBACP,GAAG,CAAC,KAAK,CAAC,WAAW,CAAC,SAAS,EAAE;wBAChC,KAAK,EAAE,SAAS;wBAChB,GAAG,WAAW,CAAC,SAAS,EAAE,IAAI,CAAC;qBACT,CAAC,CAAC;gBAC1B,CAAC;gBACD,MAAM,GAAG,IAAI,CAAC;gBACd,OAAO,GAAG,EAAE,CAAC;YACd,CAAC;QACF,CAAC;KACD,CAAC;AACH,CAAC"}
|
|
1
|
+
{"version":3,"file":"map-tool.js","sourceRoot":"","sources":["../src/map-tool.tsx"],"names":[],"mappings":"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"}
|
package/dist/plugin.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../src/plugin.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAiB,aAAa,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../src/plugin.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAiB,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAY1E,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAE9C,OAAO,EAAE,KAAK,SAAS,EAAqB,MAAM,oBAAoB,CAAC;AACvE,OAAO,EAAY,KAAK,UAAU,EAAE,MAAM,cAAc,CAAC;AAWzD,MAAM,WAAW,gBAAgB;IAChC,sEAAsE;IACtE,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,gBAAgB,CAAC,EAAE,SAAS,CAAC;IAC7B,gBAAgB,CAAC,EAAE,SAAS,CAAC;IAC7B;;;;OAIG;IACH,YAAY,CAAC,EAAE,UAAU,CAAC;CAC1B;AAMD,wBAAgB,eAAe,CAAC,OAAO,GAAE,gBAAqB,GAAG,aAAa,CAmL7E"}
|
package/dist/plugin.js
CHANGED
|
@@ -2,6 +2,9 @@ import { jsx as _jsx } from "react/jsx-runtime";
|
|
|
2
2
|
import { BaseAreaLayer } from "./base/base-layer.js";
|
|
3
3
|
import { BASE_MAP_TYPE, createBaseMapShapeDefinition } from "./base/base-map-shape.js";
|
|
4
4
|
import { EnterBanner } from "./base/enter-banner.js";
|
|
5
|
+
import { DEFAULT_BASE_GEN } from "./base-terrain.js";
|
|
6
|
+
import { genStateStore } from "./gen-state.js";
|
|
7
|
+
import { resolveTilemap } from "./generate.js";
|
|
5
8
|
import { registerMapHud } from "./hud/register-map-hud.js";
|
|
6
9
|
import { MAP_ICON_TYPE, mapIconShapeDefinition } from "./map-icon-shape.js";
|
|
7
10
|
import { MapTerrainLayer } from "./map-layer.js";
|
|
@@ -10,7 +13,7 @@ import { MAP_TOOL_ID } from "./map-tool-id.js";
|
|
|
10
13
|
import { createRangeEraseToolDefinition, RANGE_ERASE_TOOL_ID } from "./range-erase-tool.js";
|
|
11
14
|
import { renderConfigStore } from "./render-config.js";
|
|
12
15
|
import { TERRAINS } from "./terrain.js";
|
|
13
|
-
import { createTileMapShapeDefinition, DEFAULT_TILE, TILEMAP_TYPE } from "./tilemap-shape.js";
|
|
16
|
+
import { createTileMapShapeDefinition, DEFAULT_TILE, isTileMap, lowestTilemap, seededTilemap, TILEMAP_TYPE, } from "./tilemap-shape.js";
|
|
14
17
|
const TERRAIN_LAYER_ID = "usketch-map:terrain";
|
|
15
18
|
const BASE_LAYER_ID = "usketch-map:base";
|
|
16
19
|
const ENTER_BANNER_ID = "usketch-map:enter-banner";
|
|
@@ -57,6 +60,10 @@ export function createMapPlugin(options = {}) {
|
|
|
57
60
|
// ── Controls: all map operations live on the Control HUD (no bespoke
|
|
58
61
|
// on-canvas palette). Toggle the HUD with the backtick key. ──
|
|
59
62
|
const unregisterMapHud = registerMapHud(ctx, tile);
|
|
63
|
+
// The infinite-terrain seed is read from the seeded tilemap shape (board
|
|
64
|
+
// data — persisted + synced), not from app-local render config. Chosen
|
|
65
|
+
// deterministically so the HUD agrees with the renderer and across clients.
|
|
66
|
+
const currentBaseSeed = () => seededTilemap(ctx.store.getShapes().values())?.baseSeed ?? null;
|
|
60
67
|
// ── Tweaks as declarative HUD settings ──
|
|
61
68
|
const unregisterHud = ctx.hud.registerSettings({
|
|
62
69
|
id: "usketch-map:tweaks",
|
|
@@ -90,10 +97,20 @@ export function createMapPlugin(options = {}) {
|
|
|
90
97
|
...TERRAINS.map((t) => ({ value: t.key, label: t.name })),
|
|
91
98
|
],
|
|
92
99
|
},
|
|
100
|
+
// Infinite procedurally-generated base terrain: fills all unpainted
|
|
101
|
+
// space deterministically so the world can be panned forever.
|
|
102
|
+
{ name: "infinite", label: "無限地形", type: "boolean" },
|
|
103
|
+
{ name: "seed", label: "シード", type: "number", min: 0, max: 999999, step: 1 },
|
|
93
104
|
],
|
|
94
105
|
get: (name) => {
|
|
95
106
|
if (name === "emptyTerrain")
|
|
96
107
|
return renderConfigStore.get().emptyTerrain ?? "none";
|
|
108
|
+
// infinite/seed live on the tilemap SHAPE (persisted + synced), not on the
|
|
109
|
+
// app-local render config — so the generated world survives reload.
|
|
110
|
+
if (name === "infinite")
|
|
111
|
+
return currentBaseSeed() != null;
|
|
112
|
+
if (name === "seed")
|
|
113
|
+
return currentBaseSeed() ?? genStateStore.get().seed;
|
|
97
114
|
return renderConfigStore.get()[name];
|
|
98
115
|
},
|
|
99
116
|
set: (name, value) => {
|
|
@@ -107,8 +124,62 @@ export function createMapPlugin(options = {}) {
|
|
|
107
124
|
renderConfigStore.set({
|
|
108
125
|
emptyTerrain: value === "none" ? null : value,
|
|
109
126
|
});
|
|
127
|
+
else if (name === "infinite") {
|
|
128
|
+
const on = value === true || value === "true";
|
|
129
|
+
if (on) {
|
|
130
|
+
// Stamp the seed onto a tilemap so it persists + syncs. Target the
|
|
131
|
+
// same shape every client would: an already-seeded tilemap if present,
|
|
132
|
+
// else the lowest-id existing tilemap; only create one when the board
|
|
133
|
+
// is blank. (resolveTilemap's insertion-order pick isn't stable across
|
|
134
|
+
// synced peers, so it's the last resort.)
|
|
135
|
+
const seed = currentBaseSeed() ?? genStateStore.get().seed;
|
|
136
|
+
const target = seededTilemap(ctx.store.getShapes().values()) ??
|
|
137
|
+
lowestTilemap(ctx.store.getShapes().values());
|
|
138
|
+
const id = target?.id ?? resolveTilemap(ctx.store, tile).id;
|
|
139
|
+
// Freeze the generation contract on the shape. Reuse the target's own
|
|
140
|
+
// recorded gen if it has one (so an off→on toggle keeps the same world
|
|
141
|
+
// even after the default advances); else stamp the current default.
|
|
142
|
+
ctx.store.updateShape(id, {
|
|
143
|
+
baseSeed: seed,
|
|
144
|
+
baseGen: target?.baseGen ?? DEFAULT_BASE_GEN,
|
|
145
|
+
});
|
|
146
|
+
}
|
|
147
|
+
else {
|
|
148
|
+
for (const [id, s] of ctx.store.getShapes())
|
|
149
|
+
if (isTileMap(s) && s.baseSeed != null)
|
|
150
|
+
ctx.store.updateShape(id, { baseSeed: undefined });
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
else if (name === "seed") {
|
|
154
|
+
// Coerce to a finite integer (matches step:1); ignore junk so a bad
|
|
155
|
+
// value can't turn baseSeed into NaN → NaN elevations everywhere.
|
|
156
|
+
const seed = Math.trunc(Number(value));
|
|
157
|
+
if (!Number.isFinite(seed))
|
|
158
|
+
return;
|
|
159
|
+
// Remember on the gen store, and re-seed any tilemap that already has a base.
|
|
160
|
+
genStateStore.set({ seed });
|
|
161
|
+
for (const [id, s] of ctx.store.getShapes())
|
|
162
|
+
if (isTileMap(s) && s.baseSeed != null)
|
|
163
|
+
ctx.store.updateShape(id, { baseSeed: seed });
|
|
164
|
+
}
|
|
165
|
+
},
|
|
166
|
+
// Re-read on look-and-feel changes (renderConfig) AND shape mutations (the
|
|
167
|
+
// tilemap shape now carries infinite/seed), so the toggle reflects the shape
|
|
168
|
+
// even when edited elsewhere or by another client. Filter to shape events —
|
|
169
|
+
// not viewport/selection — so panning/zooming doesn't re-evaluate the HUD.
|
|
170
|
+
subscribe: (listener) => {
|
|
171
|
+
const unsubConfig = renderConfigStore.subscribe(listener);
|
|
172
|
+
const unsubStore = ctx.store.onMutation((e) => {
|
|
173
|
+
if (e.type === "shape:added" ||
|
|
174
|
+
e.type === "shape:removed" ||
|
|
175
|
+
e.type === "shape:updated")
|
|
176
|
+
listener();
|
|
177
|
+
});
|
|
178
|
+
return () => {
|
|
179
|
+
unsubConfig();
|
|
180
|
+
unsubStore();
|
|
181
|
+
};
|
|
110
182
|
},
|
|
111
|
-
subscribe: renderConfigStore.subscribe,
|
|
112
183
|
});
|
|
113
184
|
return () => {
|
|
114
185
|
ctx.layers.unregister(TERRAIN_LAYER_ID);
|
package/dist/plugin.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plugin.js","sourceRoot":"","sources":["../src/plugin.tsx"],"names":[],"mappings":";AAIA,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,4BAA4B,EAAE,MAAM,0BAA0B,CAAC;AACvF,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAC5E,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAE/C,OAAO,EAAE,8BAA8B,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5F,OAAO,EAAkB,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AACvE,OAAO,EAAE,QAAQ,EAAmB,MAAM,cAAc,CAAC;AACzD,OAAO,
|
|
1
|
+
{"version":3,"file":"plugin.js","sourceRoot":"","sources":["../src/plugin.tsx"],"names":[],"mappings":"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"}
|