rpgmaker-mz-mcp 1.0.1 → 1.2.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 +32 -12
- package/dist/tiles/catalog/index.d.ts +24 -3
- package/dist/tiles/catalog/index.d.ts.map +1 -1
- package/dist/tiles/catalog/index.js +17 -4
- package/dist/tiles/catalog/index.js.map +1 -1
- package/dist/tools/allTools.d.ts.map +1 -1
- package/dist/tools/allTools.js +2 -0
- package/dist/tools/allTools.js.map +1 -1
- package/dist/tools/battleTools.d.ts.map +1 -1
- package/dist/tools/battleTools.js +12 -0
- package/dist/tools/battleTools.js.map +1 -1
- package/dist/tools/catalogTools.d.ts.map +1 -1
- package/dist/tools/catalogTools.js +16 -4
- package/dist/tools/catalogTools.js.map +1 -1
- package/dist/tools/idTools.d.ts +75 -0
- package/dist/tools/idTools.d.ts.map +1 -0
- package/dist/tools/idTools.js +183 -0
- package/dist/tools/idTools.js.map +1 -0
- package/dist/tools/systemTools.d.ts +21 -3
- package/dist/tools/systemTools.d.ts.map +1 -1
- package/dist/tools/systemTools.js +168 -8
- package/dist/tools/systemTools.js.map +1 -1
- package/dist/tools/validationTools.d.ts +11 -1
- package/dist/tools/validationTools.d.ts.map +1 -1
- package/dist/tools/validationTools.js +4 -1
- package/dist/tools/validationTools.js.map +1 -1
- package/dist/validation/eventBlocks.d.ts +13 -0
- package/dist/validation/eventBlocks.d.ts.map +1 -0
- package/dist/validation/eventBlocks.js +179 -0
- package/dist/validation/eventBlocks.js.map +1 -0
- package/dist/validation/eventCommands.d.ts.map +1 -1
- package/dist/validation/eventCommands.js +94 -9
- package/dist/validation/eventCommands.js.map +1 -1
- package/dist/validation/idUsage.d.ts +44 -0
- package/dist/validation/idUsage.d.ts.map +1 -0
- package/dist/validation/idUsage.js +273 -0
- package/dist/validation/idUsage.js.map +1 -0
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -5,13 +5,13 @@
|
|
|
5
5
|
# RPG Maker MZ MCP Server
|
|
6
6
|
|
|
7
7
|
[](https://github.com/Redseb/rpgmaker-mz-mcp/actions/workflows/ci.yml)
|
|
8
|
-
[](#available-tools)
|
|
9
9
|
[](https://modelcontextprotocol.io/)
|
|
10
10
|
[](tsconfig.json)
|
|
11
11
|
[](package.json)
|
|
12
12
|
[](#license)
|
|
13
13
|
|
|
14
|
-
**
|
|
14
|
+
**119 tools** that let an AI assistant read and write an RPG Maker MZ project directly — actors, classes, skills, items, equipment, states, enemies, troops, common events, maps, tiles, tilesets, events, and system settings — instead of hand-editing everything in the editor.
|
|
15
15
|
|
|
16
16
|
_"Add a town under the world map, paint it with grass, and drop in a shopkeeper who sells potions"_ → done, in-project, no editor clicks.
|
|
17
17
|
|
|
@@ -144,7 +144,7 @@ The easiest path is the `.mcpb` bundle from [Releases](https://github.com/Redseb
|
|
|
144
144
|
|
|
145
145
|
## Available tools
|
|
146
146
|
|
|
147
|
-
All
|
|
147
|
+
All 119 tools, grouped by area. Tools that write to the project accept an optional `dryRun` argument (see [Dry-run preview](#dry-run-preview)); those that can refuse a structurally invalid write also accept `force` (see [Event validation](#event-validation-throw-by-default)).
|
|
148
148
|
|
|
149
149
|
<details>
|
|
150
150
|
<summary><strong>Expand the full tool reference</strong></summary>
|
|
@@ -181,8 +181,8 @@ All 113 tools, grouped by area. Tools that write to the project accept an option
|
|
|
181
181
|
|
|
182
182
|
### Enemies & troops
|
|
183
183
|
|
|
184
|
-
- `create_enemy`, `update_enemy`
|
|
185
|
-
- `create_troop`, `update_troop` — `create_troop` validates that every member references an existing enemy
|
|
184
|
+
- `create_enemy`, `update_enemy`, `search_enemies`
|
|
185
|
+
- `create_troop`, `update_troop`, `search_troops` — `create_troop` validates that every member references an existing enemy
|
|
186
186
|
|
|
187
187
|
### Common events
|
|
188
188
|
|
|
@@ -235,7 +235,7 @@ Read-only builders that return editor-faithful `EventCommand` sequences; land th
|
|
|
235
235
|
### Tiles, catalog & painting
|
|
236
236
|
|
|
237
237
|
- `describe_tile` — decode a raw tile id (sheet, autotile kind/shape, geometry)
|
|
238
|
-
- `get_tile_catalog`, `find_tile` — resolve human names ↔ paintable tile ids
|
|
238
|
+
- `get_tile_catalog`, `find_tile` — resolve human names ↔ paintable tile ids (`find_tile` can widen the search to a custom sheet's catalog descriptions with `searchDescriptions`)
|
|
239
239
|
- `paint_tiles`, `fill_area` — paint with automatic autotiling
|
|
240
240
|
- `place_object` — stamp a multi-tile B/C object and report its passability footprint
|
|
241
241
|
|
|
@@ -252,6 +252,7 @@ Read-only builders that return editor-faithful `EventCommand` sequences; land th
|
|
|
252
252
|
### System & vocabulary
|
|
253
253
|
|
|
254
254
|
- `get_system`, `get_game_title`, `update_game_title`
|
|
255
|
+
- `get_title_screen`, `update_title_screen` — background layers, BGM, and the "draw game title" toggle
|
|
255
256
|
- `get_variables`, `set_variable_name`, `get_switches`, `set_switch_name`
|
|
256
257
|
- `get_starting_position`, `update_starting_position`
|
|
257
258
|
- `get_party`, `set_party` — the starting party (`set_party` validates every actor id)
|
|
@@ -270,6 +271,11 @@ Read-only builders that return editor-faithful `EventCommand` sequences; land th
|
|
|
270
271
|
- `validate_event`, `validate_project` — event-command-shape validation (read-only)
|
|
271
272
|
- `validate_references` — cross-file id-integrity audit (party→actor, transfer→map, effect→state/skill/common-event, drops→item, map-tree cycles, …)
|
|
272
273
|
|
|
274
|
+
### ID allocation
|
|
275
|
+
|
|
276
|
+
- `list_allocated_ids` — which switch / variable / common-event IDs are already spoken for, derived from the project's own JSON; with `id`, every place that one is referenced
|
|
277
|
+
- `next_free_id` — reserve the next unallocated ID(s) instead of picking one by hand
|
|
278
|
+
|
|
273
279
|
</details>
|
|
274
280
|
|
|
275
281
|
## Input validation
|
|
@@ -278,10 +284,10 @@ Every tool declares its arguments as a [Zod](https://zod.dev) schema. The server
|
|
|
278
284
|
|
|
279
285
|
## Event validation (throw-by-default)
|
|
280
286
|
|
|
281
|
-
Event command lists are checked against a table of known RPG Maker MZ command codes (`101` Show Text, `201` Transfer Player, `122` Control Variables, …). Findings come in two tiers, and the tier decides what happens to the write:
|
|
287
|
+
Event command lists are checked against a table of known RPG Maker MZ command codes (`101` Show Text, `201` Transfer Player, `122` Control Variables, …), and against the **block structure** those commands form. Findings come in two tiers, and the tier decides what happens to the write:
|
|
282
288
|
|
|
283
|
-
- **Structural** — a wrong parameter count for a known command, a list not terminated by the code-`0` end marker, a non-array `parameters`, or an action-button event stranded on an impassable tile. These are almost always bugs, so the event-writing tools **validate the would-be result before committing and refuse the write**: the tool errors and *nothing reaches disk*. Pass `force: true` to write anyway (the argument is advertised on exactly the tools that can refuse).
|
|
284
|
-
- **Advisory** — an unrecognized command code (which may simply be a plugin command), an over-long text line, an unknown asset filename. These are legitimately possible, so they never block; they ride along as `warnings` on the normal response.
|
|
289
|
+
- **Structural** — a wrong parameter count for a known command (including the counts that depend on a Conditional Branch's condition type or a Control Variables operand type), a list not terminated by the code-`0` end marker, a non-array `parameters`, a broken block (a Show Choices/Conditional Branch/Loop that is never closed, a branch or closer row orphaned or written at the wrong indent, a choice with no `When` branch), or an action-button event stranded on an impassable tile. These are almost always bugs, so the event-writing tools **validate the would-be result before committing and refuse the write**: the tool errors and *nothing reaches disk*. Pass `force: true` to write anyway (the argument is advertised on exactly the tools that can refuse).
|
|
290
|
+
- **Advisory** — an unrecognized command code (which may simply be a plugin command), an over-long text line, an unknown asset filename, a choice block whose Cancel routing and `When Cancel` branch disagree (dead code, not corruption). These are legitimately possible, so they never block; they ride along as `warnings` on the normal response.
|
|
285
291
|
|
|
286
292
|
Because the check runs *before* the commit, a `dryRun` of a write that would be refused fails too, rather than previewing a write that could never happen.
|
|
287
293
|
|
|
@@ -291,6 +297,16 @@ Because the check runs *before* the commit, a `dryRun` of a write that would be
|
|
|
291
297
|
|
|
292
298
|
`validate_references` performs a **cross-file id-integrity audit** — orthogonal to the command-shape check above. It walks the whole database and flags references that point at something that doesn't exist: a starting party member with no matching actor, a Transfer Player targeting a missing map, a skill effect that adds a non-existent state, an enemy dropping an unknown item, a cyclic map-tree parent, and more. Every check is warn-by-default and guarded against false positives on partially-loaded projects.
|
|
293
299
|
|
|
300
|
+
## ID allocation
|
|
301
|
+
|
|
302
|
+
Switches, variables and common-event IDs are one global namespace, and nothing in RPG Maker stops a later edit from claiming an ID an earlier one already used. The failure is silent — no crash, no validator hit, just a door that is inexplicably already open hours into a playtest.
|
|
303
|
+
|
|
304
|
+
`list_allocated_ids` answers "what's taken?" **from the project files themselves** — never a hand-maintained list, which would drift the moment someone edited in the RPG Maker editor. An ID counts as allocated if it is *declared* (a `System.json` label, a `CommonEvents` row) **or** *referenced* anywhere: event page conditions and command lists, common events, troop pages, and Common Event skill/item effects. Both halves matter — a named-but-unused switch is a claim someone staked, and a used-but-unnamed one is a claim nobody wrote down. Pass `id` to ask the narrower question: where is switch 23 actually used, before I touch it?
|
|
305
|
+
|
|
306
|
+
`next_free_id` hands back the next unallocated ID(s), strictly above everything already taken. Holes below the highest ID are left alone by default (a hole is often an ID claimed in notes but not yet written); `reuseGaps: true` fills them when you're compacting deliberately. It's read-only — it suggests IDs, it doesn't write them, so name what you take with `set_switch_name` / `set_variable_name` to make the claim visible to whoever edits next. Those two grow the `System.json` name list when the ID is past the end, so an ID from `next_free_id` can always be labelled without opening the editor.
|
|
307
|
+
|
|
308
|
+
Like the command validator, the usage scan is **curated, not exhaustive**: it covers the commands that carry switch/variable IDs (Control Switches/Variables, Conditional Branch, the "designation by variable" forms of Transfer Player, Change Gold/Items, Change HP/MP/EXP/Level, …), and every report states the command codes it scanned. An ID used only from a `Script` (355) or a plugin command (357) will read as free.
|
|
309
|
+
|
|
294
310
|
## Dry-run preview
|
|
295
311
|
|
|
296
312
|
Every tool that writes to the project accepts an optional `dryRun` argument. When `dryRun: true`, the tool computes what it _would_ write and returns a diff instead of touching any files:
|
|
@@ -318,7 +334,7 @@ All writes go through a single choke point that skips no-op writes and keeps the
|
|
|
318
334
|
|
|
319
335
|
## Custom-tileset catalog skill
|
|
320
336
|
|
|
321
|
-
The default tilesets are cataloged out of the box. For a **custom** (non-RTP) tileset, a bundled Claude skill under `.claude/skills/tileset-catalog/` slices each sheet into labelled samples, has Claude vision-name them, and writes a versioned, project-scoped catalog to `data/tilecatalog/` — after which `find_tile`/`get_tile_catalog` resolve names for that sheet too. The skill ships a dependency-free PNG codec and engine-exact tile geometry, so it runs anywhere Node does.
|
|
337
|
+
The default tilesets are cataloged out of the box. For a **custom** (non-RTP) tileset, a bundled Claude skill under `.claude/skills/tileset-catalog/` slices each sheet into labelled samples, has Claude vision-name them, and writes a versioned, project-scoped catalog to `data/tilecatalog/` — after which `find_tile`/`get_tile_catalog` resolve names for that sheet too. Those drafts also record what each tile *looks like*, so `find_tile` with `searchDescriptions: true` can match that text when a machine-drafted name is too terse to search by. The skill ships a dependency-free PNG codec and engine-exact tile geometry, so it runs anywhere Node does.
|
|
322
338
|
|
|
323
339
|
## Example prompts
|
|
324
340
|
|
|
@@ -362,15 +378,19 @@ The advertised tool count lives in a few human-facing spots — the README prose
|
|
|
362
378
|
```bash
|
|
363
379
|
npm version minor # or patch/major — bumps package.json + tags
|
|
364
380
|
npm run sync:version # stamp the new version into the other manifests
|
|
365
|
-
git add -A && git commit --amend --no-edit
|
|
381
|
+
git add -A && git commit --amend --no-edit
|
|
382
|
+
git push && git push origin vX.Y.Z # amend rewrites the tagged commit, so push the tag explicitly
|
|
366
383
|
|
|
367
384
|
npm publish # publish to npm (runs the full gate via prepublishOnly)
|
|
368
385
|
mcp-publisher publish # update the MCP registry listing (server.json; login: mcp-publisher login github)
|
|
369
|
-
npm run bundle:mcpb # build rpgmaker-mz-mcp.mcpb
|
|
386
|
+
npm run bundle:mcpb # build rpgmaker-mz-mcp.mcpb
|
|
387
|
+
gh release create vX.Y.Z rpgmaker-mz-mcp.mcpb --title vX.Y.Z --notes "..." # publish the GitHub release + attach the bundle
|
|
370
388
|
```
|
|
371
389
|
|
|
372
390
|
The Claude Code plugin needs no separate publish — users' installs update from this repo (the plugin runs the npm package via `npx rpgmaker-mz-mcp@latest`, so bumping npm is what ships new tools).
|
|
373
391
|
|
|
392
|
+
`git commit --amend` rewrites the commit `npm version`'s tag points to, so `--follow-tags` on the next push won't pick it up — push the tag by name explicitly, and don't forget the `gh release create` step, since nothing before it actually creates the GitHub release.
|
|
393
|
+
|
|
374
394
|
## Project structure
|
|
375
395
|
|
|
376
396
|
```
|
|
@@ -67,11 +67,32 @@ export type CatalogOverlay = Record<string, (string | OverlayTile | undefined)[]
|
|
|
67
67
|
* to one sheet by filename ("World_A2") or slot role ("A2").
|
|
68
68
|
*/
|
|
69
69
|
export declare function catalogForTileset(tilesetNames: string[], sheetFilter?: string, overlay?: CatalogOverlay): CatalogEntry[];
|
|
70
|
+
/** Which catalog fields a {@link findTiles} query matched. */
|
|
71
|
+
export type MatchField = 'name' | 'description';
|
|
72
|
+
/** A {@link findTiles} hit: a catalog entry plus the fields the query matched. */
|
|
73
|
+
export interface CatalogMatch extends CatalogEntry {
|
|
74
|
+
/** The fields `query` matched, in name-then-description order. */
|
|
75
|
+
matchedIn: MatchField[];
|
|
76
|
+
}
|
|
77
|
+
/** Options for {@link findTiles}. */
|
|
78
|
+
export interface FindTilesOptions {
|
|
79
|
+
/**
|
|
80
|
+
* Also match a tile's free-text `description`. Descriptions only exist on
|
|
81
|
+
* `project` catalog entries (the 3f vision-bootstrap skill records what a tile
|
|
82
|
+
* *looks like*), so this widens the search exactly where names are terse and
|
|
83
|
+
* machine-drafted. Off by default — the name-only match surface is tight and
|
|
84
|
+
* predictable, and a description search returns entries whose name says
|
|
85
|
+
* nothing about the query.
|
|
86
|
+
*/
|
|
87
|
+
searchDescriptions?: boolean;
|
|
88
|
+
}
|
|
70
89
|
/**
|
|
71
|
-
* Catalog entries for a tileset
|
|
72
|
-
*
|
|
90
|
+
* Catalog entries for a tileset matching `query` (case-insensitive substring).
|
|
91
|
+
* The bridge for "give me a grass tile" → a paintable tile id. Matches names
|
|
92
|
+
* only unless `searchDescriptions` is set, in which case a project entry also
|
|
93
|
+
* matches on its description text; each hit reports which fields matched.
|
|
73
94
|
*/
|
|
74
|
-
export declare function findTiles(tilesetNames: string[], query: string, overlay?: CatalogOverlay):
|
|
95
|
+
export declare function findTiles(tilesetNames: string[], query: string, overlay?: CatalogOverlay, options?: FindTilesOptions): CatalogMatch[];
|
|
75
96
|
/** Whether any sheet of a tileset is covered by the catalog (built-in or overlay). */
|
|
76
97
|
export declare function hasCatalog(tilesetNames: string[], overlay?: CatalogOverlay): boolean;
|
|
77
98
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/tiles/catalog/index.ts"],"names":[],"mappings":"AAkCA,iFAAiF;AACjF,QAAA,MAAM,UAAU,6DAA8D,CAAC;AAC/E,KAAK,QAAQ,GAAG,CAAC,OAAO,UAAU,CAAC,CAAC,MAAM,CAAC,CAAC;AAkB5C;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,CAM3E;AAED,iEAAiE;AACjE,MAAM,WAAW,YAAY;IAC3B,8CAA8C;IAC9C,IAAI,EAAE,MAAM,CAAC;IACb,yDAAyD;IACzD,KAAK,EAAE,MAAM,CAAC;IACd,yCAAyC;IACzC,IAAI,EAAE,QAAQ,CAAC;IACf,+EAA+E;IAC/E,MAAM,EAAE,MAAM,CAAC;IACf,yFAAyF;IACzF,QAAQ,EAAE,OAAO,CAAC;IAClB,6CAA6C;IAC7C,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;;;OAIG;IACH,MAAM,EAAE,SAAS,GAAG,SAAS,CAAC;IAC9B;;;;;OAKG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,kFAAkF;IAClF,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,iFAAiF;IACjF,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,6EAA6E;IAC7E,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED;;;;;GAKG;AACH,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED;;;;;GAKG;AACH,MAAM,MAAM,cAAc,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,MAAM,GAAG,WAAW,GAAG,SAAS,CAAC,EAAE,CAAC,CAAC;AAElF;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAC/B,YAAY,EAAE,MAAM,EAAE,EACtB,WAAW,CAAC,EAAE,MAAM,EACpB,OAAO,CAAC,EAAE,cAAc,GACvB,YAAY,EAAE,CAgChB;AAED
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/tiles/catalog/index.ts"],"names":[],"mappings":"AAkCA,iFAAiF;AACjF,QAAA,MAAM,UAAU,6DAA8D,CAAC;AAC/E,KAAK,QAAQ,GAAG,CAAC,OAAO,UAAU,CAAC,CAAC,MAAM,CAAC,CAAC;AAkB5C;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,CAM3E;AAED,iEAAiE;AACjE,MAAM,WAAW,YAAY;IAC3B,8CAA8C;IAC9C,IAAI,EAAE,MAAM,CAAC;IACb,yDAAyD;IACzD,KAAK,EAAE,MAAM,CAAC;IACd,yCAAyC;IACzC,IAAI,EAAE,QAAQ,CAAC;IACf,+EAA+E;IAC/E,MAAM,EAAE,MAAM,CAAC;IACf,yFAAyF;IACzF,QAAQ,EAAE,OAAO,CAAC;IAClB,6CAA6C;IAC7C,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;;;OAIG;IACH,MAAM,EAAE,SAAS,GAAG,SAAS,CAAC;IAC9B;;;;;OAKG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,kFAAkF;IAClF,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,iFAAiF;IACjF,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,6EAA6E;IAC7E,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED;;;;;GAKG;AACH,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED;;;;;GAKG;AACH,MAAM,MAAM,cAAc,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,MAAM,GAAG,WAAW,GAAG,SAAS,CAAC,EAAE,CAAC,CAAC;AAElF;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAC/B,YAAY,EAAE,MAAM,EAAE,EACtB,WAAW,CAAC,EAAE,MAAM,EACpB,OAAO,CAAC,EAAE,cAAc,GACvB,YAAY,EAAE,CAgChB;AAED,8DAA8D;AAC9D,MAAM,MAAM,UAAU,GAAG,MAAM,GAAG,aAAa,CAAC;AAEhD,kFAAkF;AAClF,MAAM,WAAW,YAAa,SAAQ,YAAY;IAChD,kEAAkE;IAClE,SAAS,EAAE,UAAU,EAAE,CAAC;CACzB;AAED,qCAAqC;AACrC,MAAM,WAAW,gBAAgB;IAC/B;;;;;;;OAOG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC9B;AAED;;;;;GAKG;AACH,wBAAgB,SAAS,CACvB,YAAY,EAAE,MAAM,EAAE,EACtB,KAAK,EAAE,MAAM,EACb,OAAO,CAAC,EAAE,cAAc,EACxB,OAAO,GAAE,gBAAqB,GAC7B,YAAY,EAAE,CAYhB;AAED,sFAAsF;AACtF,wBAAgB,UAAU,CAAC,YAAY,EAAE,MAAM,EAAE,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAEpF"}
|
|
@@ -101,12 +101,25 @@ export function catalogForTileset(tilesetNames, sheetFilter, overlay) {
|
|
|
101
101
|
return entries;
|
|
102
102
|
}
|
|
103
103
|
/**
|
|
104
|
-
* Catalog entries for a tileset
|
|
105
|
-
*
|
|
104
|
+
* Catalog entries for a tileset matching `query` (case-insensitive substring).
|
|
105
|
+
* The bridge for "give me a grass tile" → a paintable tile id. Matches names
|
|
106
|
+
* only unless `searchDescriptions` is set, in which case a project entry also
|
|
107
|
+
* matches on its description text; each hit reports which fields matched.
|
|
106
108
|
*/
|
|
107
|
-
export function findTiles(tilesetNames, query, overlay) {
|
|
109
|
+
export function findTiles(tilesetNames, query, overlay, options = {}) {
|
|
108
110
|
const q = query.toLowerCase();
|
|
109
|
-
|
|
111
|
+
const matches = [];
|
|
112
|
+
for (const entry of catalogForTileset(tilesetNames, undefined, overlay)) {
|
|
113
|
+
const matchedIn = [];
|
|
114
|
+
if (entry.name.toLowerCase().includes(q))
|
|
115
|
+
matchedIn.push('name');
|
|
116
|
+
if (options.searchDescriptions && entry.description?.toLowerCase().includes(q)) {
|
|
117
|
+
matchedIn.push('description');
|
|
118
|
+
}
|
|
119
|
+
if (matchedIn.length > 0)
|
|
120
|
+
matches.push({ ...entry, matchedIn });
|
|
121
|
+
}
|
|
122
|
+
return matches;
|
|
110
123
|
}
|
|
111
124
|
/** Whether any sheet of a tileset is covered by the catalog (built-in or overlay). */
|
|
112
125
|
export function hasCatalog(tilesetNames, overlay) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/tiles/catalog/index.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/tiles/catalog/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"allTools.d.ts","sourceRoot":"","sources":["../../src/tools/allTools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"allTools.d.ts","sourceRoot":"","sources":["../../src/tools/allTools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AA2BhD;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,EAAE,cAAc,EA0B9C,CAAC"}
|
package/dist/tools/allTools.js
CHANGED
|
@@ -22,6 +22,7 @@ import { listToolDefinitions } from './listTools.js';
|
|
|
22
22
|
import { validationToolDefinitions } from './validationTools.js';
|
|
23
23
|
import { pluginScanToolDefinitions } from './pluginScanTools.js';
|
|
24
24
|
import { batchToolDefinitions } from './batchTools.js';
|
|
25
|
+
import { idToolDefinitions } from './idTools.js';
|
|
25
26
|
/**
|
|
26
27
|
* Every tool the server exposes, gathered from the per-domain tool modules.
|
|
27
28
|
* Kept in its own side-effect-free module so it can be imported by both the
|
|
@@ -50,6 +51,7 @@ export const allToolDefinitions = [
|
|
|
50
51
|
...assetToolDefinitions,
|
|
51
52
|
...listToolDefinitions,
|
|
52
53
|
...validationToolDefinitions,
|
|
54
|
+
...idToolDefinitions,
|
|
53
55
|
...batchToolDefinitions,
|
|
54
56
|
...pluginScanToolDefinitions,
|
|
55
57
|
];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"allTools.js","sourceRoot":"","sources":["../../src/tools/allTools.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AAC3D,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAAE,0BAA0B,EAAE,MAAM,uBAAuB,CAAC;AACnE,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,EAAE,2BAA2B,EAAE,MAAM,wBAAwB,CAAC;AACrE,OAAO,EAAE,wBAAwB,EAAE,MAAM,qBAAqB,CAAC;AAC/D,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AAC3D,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AAC3D,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,EAAE,yBAAyB,EAAE,MAAM,sBAAsB,CAAC;AACjE,OAAO,EAAE,yBAAyB,EAAE,MAAM,sBAAsB,CAAC;AACjE,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"allTools.js","sourceRoot":"","sources":["../../src/tools/allTools.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AAC3D,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAAE,0BAA0B,EAAE,MAAM,uBAAuB,CAAC;AACnE,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,EAAE,2BAA2B,EAAE,MAAM,wBAAwB,CAAC;AACrE,OAAO,EAAE,wBAAwB,EAAE,MAAM,qBAAqB,CAAC;AAC/D,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AAC3D,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AAC3D,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,EAAE,yBAAyB,EAAE,MAAM,sBAAsB,CAAC;AACjE,OAAO,EAAE,yBAAyB,EAAE,MAAM,sBAAsB,CAAC;AACjE,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAEjD;;;;GAIG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAqB;IAClD,GAAG,sBAAsB;IACzB,GAAG,oBAAoB;IACvB,GAAG,mBAAmB;IACtB,GAAG,oBAAoB;IACvB,GAAG,kBAAkB;IACrB,GAAG,qBAAqB;IACxB,GAAG,oBAAoB;IACvB,GAAG,oBAAoB;IACvB,GAAG,0BAA0B;IAC7B,GAAG,mBAAmB;IACtB,GAAG,2BAA2B;IAC9B,GAAG,wBAAwB;IAC3B,GAAG,qBAAqB;IACxB,GAAG,mBAAmB;IACtB,GAAG,sBAAsB;IACzB,GAAG,oBAAoB;IACvB,GAAG,qBAAqB;IACxB,GAAG,sBAAsB;IACzB,GAAG,qBAAqB;IACxB,GAAG,oBAAoB;IACvB,GAAG,mBAAmB;IACtB,GAAG,yBAAyB;IAC5B,GAAG,iBAAiB;IACpB,GAAG,oBAAoB;IACvB,GAAG,yBAAyB;CAC7B,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"battleTools.d.ts","sourceRoot":"","sources":["../../src/tools/battleTools.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AACzE,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAEhD,OAAO,EAAuB,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACxF,OAAO,EAAE,SAAS,EAAa,MAAM,uBAAuB,CAAC;AAI7D;;;;;GAKG;AACH,wBAAgB,YAAY,IAAI,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,CAiBhD;AAED;;;;GAIG;AACH,wBAAgB,cAAc,IAAI,SAAS,CAmB1C;AAoBD;;;;;;;GAOG;AACH,wBAAsB,mBAAmB,CACvC,WAAW,EAAE,MAAM,EACnB,IAAI,EAAE,MAAM,GAAG,SAAS,GACvB,OAAO,CAAC,iBAAiB,EAAE,CAAC,CAM9B;AAaD,wCAAwC;AACxC,wBAAsB,UAAU,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,KAAK,GAAG,IAAI,CAAC,EAAE,CAAC,CAE/E;AAED,iDAAiD;AACjD,wBAAsB,aAAa,CAAC,WAAW,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC,CAI7F;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAC9B,QAAQ,EAAE,CAAC,KAAK,GAAG,IAAI,CAAC,EAAE,EAC1B,KAAK,EAAE,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,GAChC,KAAK,CAOP;AAED;;;;;GAKG;AACH,wBAAsB,eAAe,CAAC,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,CAWtF;AAED;;;;GAIG;AACH,wBAAsB,WAAW,CAC/B,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,GACpC,OAAO,CAAC,KAAK,CAAC,CAShB;AAED,6DAA6D;AAC7D,wBAAsB,WAAW,CAC/B,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,GACtB,OAAO,CAAC,KAAK,CAAC,CAUhB;AAID,uCAAuC;AACvC,wBAAsB,SAAS,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,KAAK,GAAG,IAAI,CAAC,EAAE,CAAC,CAE9E;AAED,gDAAgD;AAChD,wBAAsB,YAAY,CAAC,WAAW,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC,CAI5F;AAoBD;;;;;;GAMG;AACH,wBAAsB,WAAW,CAC/B,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,WAAW,EAAE,CAAC;IAAC,KAAK,CAAC,EAAE,SAAS,EAAE,CAAA;CAAE,EACvE,SAAS,CAAC,EAAE,SAAS,CAAC,KAAK,CAAC,GAC3B,OAAO,CAAC,KAAK,CAAC,CAoBhB;AAED,6DAA6D;AAC7D,wBAAsB,WAAW,CAC/B,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,EACvB,SAAS,CAAC,EAAE,SAAS,CAAC,KAAK,CAAC,GAC3B,OAAO,CAAC,KAAK,CAAC,CAkBhB;AASD,eAAO,MAAM,qBAAqB,EAAE,cAAc,
|
|
1
|
+
{"version":3,"file":"battleTools.d.ts","sourceRoot":"","sources":["../../src/tools/battleTools.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AACzE,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAEhD,OAAO,EAAuB,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACxF,OAAO,EAAE,SAAS,EAAa,MAAM,uBAAuB,CAAC;AAI7D;;;;;GAKG;AACH,wBAAgB,YAAY,IAAI,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,CAiBhD;AAED;;;;GAIG;AACH,wBAAgB,cAAc,IAAI,SAAS,CAmB1C;AAoBD;;;;;;;GAOG;AACH,wBAAsB,mBAAmB,CACvC,WAAW,EAAE,MAAM,EACnB,IAAI,EAAE,MAAM,GAAG,SAAS,GACvB,OAAO,CAAC,iBAAiB,EAAE,CAAC,CAM9B;AAaD,wCAAwC;AACxC,wBAAsB,UAAU,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,KAAK,GAAG,IAAI,CAAC,EAAE,CAAC,CAE/E;AAED,iDAAiD;AACjD,wBAAsB,aAAa,CAAC,WAAW,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC,CAI7F;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAC9B,QAAQ,EAAE,CAAC,KAAK,GAAG,IAAI,CAAC,EAAE,EAC1B,KAAK,EAAE,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,GAChC,KAAK,CAOP;AAED;;;;;GAKG;AACH,wBAAsB,eAAe,CAAC,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,CAWtF;AAED;;;;GAIG;AACH,wBAAsB,WAAW,CAC/B,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,GACpC,OAAO,CAAC,KAAK,CAAC,CAShB;AAED,6DAA6D;AAC7D,wBAAsB,WAAW,CAC/B,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,GACtB,OAAO,CAAC,KAAK,CAAC,CAUhB;AAID,uCAAuC;AACvC,wBAAsB,SAAS,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,KAAK,GAAG,IAAI,CAAC,EAAE,CAAC,CAE9E;AAED,gDAAgD;AAChD,wBAAsB,YAAY,CAAC,WAAW,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC,CAI5F;AAoBD;;;;;;GAMG;AACH,wBAAsB,WAAW,CAC/B,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,WAAW,EAAE,CAAC;IAAC,KAAK,CAAC,EAAE,SAAS,EAAE,CAAA;CAAE,EACvE,SAAS,CAAC,EAAE,SAAS,CAAC,KAAK,CAAC,GAC3B,OAAO,CAAC,KAAK,CAAC,CAoBhB;AAED,6DAA6D;AAC7D,wBAAsB,WAAW,CAC/B,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,EACvB,SAAS,CAAC,EAAE,SAAS,CAAC,KAAK,CAAC,GAC3B,OAAO,CAAC,KAAK,CAAC,CAkBhB;AASD,eAAO,MAAM,qBAAqB,EAAE,cAAc,EAkHjD,CAAC"}
|
|
@@ -275,6 +275,12 @@ export const battleToolDefinitions = [
|
|
|
275
275
|
},
|
|
276
276
|
handler: async (ctx, args) => withEnemyAssetWarnings(ctx.projectPath, await updateEnemy(ctx.projectPath, args.enemyId, args.updates)),
|
|
277
277
|
},
|
|
278
|
+
{
|
|
279
|
+
name: 'search_enemies',
|
|
280
|
+
description: 'Search enemies by name (case-insensitive)',
|
|
281
|
+
inputSchema: { searchTerm: z.string().describe('The search term to find enemies') },
|
|
282
|
+
handler: (ctx, args) => searchEnemies(ctx.projectPath, args.searchTerm),
|
|
283
|
+
},
|
|
278
284
|
{
|
|
279
285
|
name: 'create_troop',
|
|
280
286
|
mutates: true,
|
|
@@ -318,5 +324,11 @@ export const battleToolDefinitions = [
|
|
|
318
324
|
return gate.respond({ troop });
|
|
319
325
|
},
|
|
320
326
|
},
|
|
327
|
+
{
|
|
328
|
+
name: 'search_troops',
|
|
329
|
+
description: 'Search troops by name (case-insensitive)',
|
|
330
|
+
inputSchema: { searchTerm: z.string().describe('The search term to find troops') },
|
|
331
|
+
handler: (ctx, args) => searchTroops(ctx.projectPath, args.searchTerm),
|
|
332
|
+
},
|
|
321
333
|
];
|
|
322
334
|
//# sourceMappingURL=battleTools.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"battleTools.js","sourceRoot":"","sources":["../../src/tools/battleTools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACvF,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAGlD,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,mBAAmB,EAAqB,MAAM,gCAAgC,CAAC;AACxF,OAAO,EAAa,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AACnE,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAEnD;;;;;GAKG;AACH,MAAM,UAAU,YAAY;IAC1B,OAAO;QACL,IAAI,EAAE,EAAE;QACR,WAAW,EAAE,EAAE;QACf,UAAU,EAAE,CAAC;QACb,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;QACxC,GAAG,EAAE,CAAC;QACN,IAAI,EAAE,CAAC;QACP,SAAS,EAAE;YACT,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,WAAW,EAAE,CAAC,EAAE;YACtC,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,WAAW,EAAE,CAAC,EAAE;YACtC,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,WAAW,EAAE,CAAC,EAAE;SACvC;QACD,OAAO,EAAE,CAAC,EAAE,eAAe,EAAE,CAAC,EAAE,eAAe,EAAE,CAAC,EAAE,aAAa,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;QAC9F,MAAM,EAAE,EAAE;QACV,IAAI,EAAE,EAAE;KACT,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,cAAc;IAC5B,OAAO;QACL,UAAU,EAAE;YACV,OAAO,EAAE,EAAE;YACX,OAAO,EAAE,CAAC;YACV,UAAU,EAAE,KAAK;YACjB,OAAO,EAAE,EAAE;YACX,UAAU,EAAE,CAAC;YACb,UAAU,EAAE,KAAK;YACjB,QAAQ,EAAE,CAAC;YACX,WAAW,EAAE,KAAK;YAClB,KAAK,EAAE,CAAC;YACR,KAAK,EAAE,CAAC;YACR,UAAU,EAAE,KAAK;YACjB,SAAS,EAAE,KAAK;SACjB;QACD,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC;QAC9C,IAAI,EAAE,CAAC;KACR,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,SAAS,cAAc,CAAC,KAA0B;IAChD,OAAO,SAAS,CAAQ,KAAK,EAAE,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;QAChD,MAAM,QAAQ,GAAwB,EAAE,CAAC;QACzC,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;YAC/B,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE;gBAC9B,QAAQ,CAAC,IAAI,CAAC,GAAG,mBAAmB,CAAC,IAAI,EAAE,IAAI,EAAE,SAAS,KAAK,CAAC,EAAE,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC;YACrF,CAAC,CAAC,CAAC;QACL,CAAC;QACD,OAAO,QAAQ,CAAC;IAClB,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,WAAmB,EACnB,IAAwB;IAExB,OAAO,gBAAgB,CAAC,WAAW,EAAE,SAAS,EAAE,IAAI,EAAE;QACpD,IAAI,EAAE,aAAa;QACnB,KAAK,EAAE,SAAS;QAChB,WAAW,EAAE,iDAAiD;KAC/D,CAAC,CAAC;AACL,CAAC;AAED,kFAAkF;AAClF,KAAK,UAAU,sBAAsB,CACnC,WAAmB,EACnB,KAAY;IAEZ,MAAM,QAAQ,GAAG,MAAM,mBAAmB,CAAC,WAAW,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC;IAC3E,OAAO,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC;AAC/D,CAAC;AAED,8EAA8E;AAE9E,wCAAwC;AACxC,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,WAAmB;IAClD,OAAO,MAAM,YAAY,CAAmB,WAAW,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC,CAAC;AACxF,CAAC;AAED,iDAAiD;AACjD,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,WAAmB,EAAE,UAAkB;IACzE,MAAM,OAAO,GAAG,MAAM,UAAU,CAAC,WAAW,CAAC,CAAC;IAC9C,MAAM,KAAK,GAAG,UAAU,CAAC,WAAW,EAAE,CAAC;IACvC,OAAO,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAc,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;AACxF,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,gBAAgB,CAC9B,QAA0B,EAC1B,KAAiC;IAEjC,MAAM,KAAK,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;IAC7E,OAAO;QACL,GAAG,YAAY,EAAE;QACjB,GAAG,WAAW,CAAC,KAAK,CAAC;QACrB,EAAE,EAAE,KAAK,GAAG,CAAC;KACd,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,WAAmB,EAAE,KAAY;IACrE,MAAM,CAAC,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;QACzD,iBAAiB,CAAC,WAAW,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;QAC1D,iBAAiB,CAAC,WAAW,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;QACzD,iBAAiB,CAAC,WAAW,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC;QAC3D,iBAAiB,CAAC,WAAW,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;KAC3D,CAAC,CAAC;IACH,MAAM,OAAO,GAAG,oBAAoB,CAAC,KAAK,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;IAChF,IAAI,OAAO,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CAAC,wBAAwB,KAAK,CAAC,IAAI,MAAM,OAAO,EAAE,CAAC,CAAC;IACrE,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,WAAmB,EACnB,SAAqC;IAErC,MAAM,OAAO,GAAG,MAAM,UAAU,CAAC,WAAW,CAAC,CAAC;IAC9C,MAAM,KAAK,GAAG,gBAAgB,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;IAEnD,MAAM,eAAe,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;IAE1C,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACpB,MAAM,YAAY,CAAC,WAAW,CAAC,WAAW,EAAE,cAAc,CAAC,EAAE,OAAO,CAAC,CAAC;IACtE,OAAO,KAAK,CAAC;AACf,CAAC;AAED,6DAA6D;AAC7D,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,WAAmB,EACnB,OAAe,EACf,OAAuB;IAEvB,MAAM,OAAO,GAAG,MAAM,UAAU,CAAC,WAAW,CAAC,CAAC;IAC9C,MAAM,KAAK,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,KAAK,OAAO,CAAC,CAAC;IAC9D,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE,CAAC;QACjB,MAAM,IAAI,KAAK,CAAC,iBAAiB,OAAO,YAAY,CAAC,CAAC;IACxD,CAAC;IAED,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,OAAO,CAAC,KAAK,CAAE,EAAE,GAAG,OAAO,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC;IACjE,MAAM,YAAY,CAAC,WAAW,CAAC,WAAW,EAAE,cAAc,CAAC,EAAE,OAAO,CAAC,CAAC;IACtE,OAAO,OAAO,CAAC,KAAK,CAAE,CAAC;AACzB,CAAC;AAED,8EAA8E;AAE9E,uCAAuC;AACvC,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,WAAmB;IACjD,OAAO,MAAM,YAAY,CAAmB,WAAW,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC,CAAC;AACvF,CAAC;AAED,gDAAgD;AAChD,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,WAAmB,EAAE,UAAkB;IACxE,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,WAAW,CAAC,CAAC;IAC5C,MAAM,KAAK,GAAG,UAAU,CAAC,WAAW,EAAE,CAAC;IACvC,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAc,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;AACvF,CAAC;AAED;;;;GAIG;AACH,KAAK,UAAU,6BAA6B,CAC1C,WAAmB,EACnB,OAAsB;IAEtB,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO;IACjC,MAAM,OAAO,GAAG,MAAM,UAAU,CAAC,WAAW,CAAC,CAAC;IAC9C,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,KAAK,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC;YACvD,MAAM,IAAI,KAAK,CAAC,mCAAmC,MAAM,CAAC,OAAO,wBAAwB,CAAC,CAAC;QAC7F,CAAC;IACH,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,WAAmB,EACnB,OAAuE,EACvE,SAA4B;IAE5B,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,EAAE,CAAC;IACtC,MAAM,6BAA6B,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;IAE1D,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,WAAW,CAAC,CAAC;IAC5C,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;IAE3E,MAAM,KAAK,GAAU;QACnB,EAAE,EAAE,KAAK,GAAG,CAAC;QACb,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,OAAO;QACP,KAAK,EAAE,OAAO,CAAC,KAAK,IAAI,CAAC,cAAc,EAAE,CAAC;KAC3C,CAAC;IAEF,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAEnB,MAAM,SAAS,EAAE,CAAC,KAAK,CAAC,CAAC;IAEzB,MAAM,YAAY,CAAC,WAAW,CAAC,WAAW,EAAE,aAAa,CAAC,EAAE,MAAM,CAAC,CAAC;IACpE,OAAO,KAAK,CAAC;AACf,CAAC;AAED,6DAA6D;AAC7D,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,WAAmB,EACnB,OAAe,EACf,OAAuB,EACvB,SAA4B;IAE5B,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,WAAW,CAAC,CAAC;IAC5C,MAAM,KAAK,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,KAAK,OAAO,CAAC,CAAC;IAC7D,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE,CAAC;QACjB,MAAM,IAAI,KAAK,CAAC,iBAAiB,OAAO,YAAY,CAAC,CAAC;IACxD,CAAC;IAED,MAAM,MAAM,GAAU,EAAE,GAAG,MAAM,CAAC,KAAK,CAAE,EAAE,GAAG,OAAO,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC;IACrE,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;QACpB,MAAM,6BAA6B,CAAC,WAAW,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;IACnE,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC;IAEvB,MAAM,SAAS,EAAE,CAAC,MAAM,CAAC,CAAC;IAE1B,MAAM,YAAY,CAAC,WAAW,CAAC,WAAW,EAAE,aAAa,CAAC,EAAE,MAAM,CAAC,CAAC;IACpE,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC;IACjC,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,4BAA4B,CAAC;IAChE,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,0CAA0C,CAAC;IACxE,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,0CAA0C,CAAC;IACxE,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,iCAAiC,CAAC;CAC1F,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,qBAAqB,GAAqB;IACrD;QACE,IAAI,EAAE,cAAc;QACpB,OAAO,EAAE,IAAI;QACb,WAAW,EACT,0nBAA0nB;QAC5nB,WAAW,EAAE;YACX,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,6CAA6C,CAAC;YACxE,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,wCAAwC,CAAC;YACrF,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,4BAA4B,CAAC;YAC9E,MAAM,EAAE,CAAC;iBACN,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;iBACjB,MAAM,CAAC,CAAC,CAAC;iBACT,QAAQ,EAAE;iBACV,QAAQ,CAAC,6DAA6D,CAAC;YAC1E,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,2BAA2B,CAAC;YACtE,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,4BAA4B,CAAC;YACxE,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC;YAClD,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,uCAAuC,CAAC;YACzF,SAAS,EAAE,CAAC;iBACT,KAAK,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;iBAClB,QAAQ,EAAE;iBACV,QAAQ,CAAC,iDAAiD,CAAC;YAC9D,OAAO,EAAE,CAAC;iBACP,KAAK,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;iBAClB,QAAQ,EAAE;iBACV,QAAQ,CACP,sFAAsF,CACvF;SACJ;QACD,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;YAC3B,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,SAAS,EAAE,GAAG,IAAI,CAAC;YAC/C,MAAM,KAAK,GAAG,MAAM,WAAW,CAAC,GAAG,CAAC,WAAW,EAAE,SAAuC,CAAC,CAAC;YAC1F,OAAO,sBAAsB,CAAC,GAAG,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;QACxD,CAAC;KACF;IACD;QACE,IAAI,EAAE,cAAc;QACpB,OAAO,EAAE,IAAI;QACb,WAAW,EACT,8KAA8K;QAChL,WAAW,EAAE;YACX,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,+BAA+B,CAAC;YAC9E,OAAO,EAAE,CAAC;iBACP,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC;iBAC/B,QAAQ,CAAC,8CAA8C,CAAC;SAC5D;QACD,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,CAC3B,sBAAsB,CACpB,GAAG,CAAC,WAAW,EACf,MAAM,WAAW,CAAC,GAAG,CAAC,WAAW,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,CAC/D;KACJ;IACD;QACE,IAAI,EAAE,cAAc;QACpB,OAAO,EAAE,IAAI;QACb,SAAS,EAAE,IAAI;QACf,WAAW,EACT,+TAA+T;QACjU,WAAW,EAAE;YACX,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,kCAAkC,CAAC;YAC7D,OAAO,EAAE,CAAC;iBACP,KAAK,CAAC,iBAAiB,CAAC;iBACxB,QAAQ,EAAE;iBACV,QAAQ,CAAC,qDAAqD,CAAC;YAClE,KAAK,EAAE,CAAC;iBACL,KAAK,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;iBAClB,QAAQ,EAAE;iBACV,QAAQ,CAAC,2EAA2E,CAAC;SACzF;QACD,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;YAC3B,MAAM,IAAI,GAAG,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACxC,MAAM,KAAK,GAAG,MAAM,WAAW,CAC7B,GAAG,CAAC,WAAW,EACf;gBACE,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,OAAO,EAAE,IAAI,CAAC,OAAoC;gBAClD,KAAK,EAAE,IAAI,CAAC,KAAgC;aAC7C,EACD,IAAI,CAAC,SAAS,CACf,CAAC;YACF,OAAO,IAAI,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;QACjC,CAAC;KACF;IACD;QACE,IAAI,EAAE,cAAc;QACpB,OAAO,EAAE,IAAI;QACb,SAAS,EAAE,IAAI;QACf,WAAW,EACT,0NAA0N;QAC5N,WAAW,EAAE;YACX,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,+BAA+B,CAAC;YAC9E,OAAO,EAAE,CAAC;iBACP,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC;iBAC/B,QAAQ,CAAC,qEAAqE,CAAC;SACnF;QACD,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;YAC3B,MAAM,IAAI,GAAG,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACxC,MAAM,KAAK,GAAG,MAAM,WAAW,CAAC,GAAG,CAAC,WAAW,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;YAC7F,OAAO,IAAI,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;QACjC,CAAC;KACF;CACF,CAAC"}
|
|
1
|
+
{"version":3,"file":"battleTools.js","sourceRoot":"","sources":["../../src/tools/battleTools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACvF,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAGlD,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,mBAAmB,EAAqB,MAAM,gCAAgC,CAAC;AACxF,OAAO,EAAa,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AACnE,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAEnD;;;;;GAKG;AACH,MAAM,UAAU,YAAY;IAC1B,OAAO;QACL,IAAI,EAAE,EAAE;QACR,WAAW,EAAE,EAAE;QACf,UAAU,EAAE,CAAC;QACb,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;QACxC,GAAG,EAAE,CAAC;QACN,IAAI,EAAE,CAAC;QACP,SAAS,EAAE;YACT,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,WAAW,EAAE,CAAC,EAAE;YACtC,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,WAAW,EAAE,CAAC,EAAE;YACtC,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,WAAW,EAAE,CAAC,EAAE;SACvC;QACD,OAAO,EAAE,CAAC,EAAE,eAAe,EAAE,CAAC,EAAE,eAAe,EAAE,CAAC,EAAE,aAAa,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;QAC9F,MAAM,EAAE,EAAE;QACV,IAAI,EAAE,EAAE;KACT,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,cAAc;IAC5B,OAAO;QACL,UAAU,EAAE;YACV,OAAO,EAAE,EAAE;YACX,OAAO,EAAE,CAAC;YACV,UAAU,EAAE,KAAK;YACjB,OAAO,EAAE,EAAE;YACX,UAAU,EAAE,CAAC;YACb,UAAU,EAAE,KAAK;YACjB,QAAQ,EAAE,CAAC;YACX,WAAW,EAAE,KAAK;YAClB,KAAK,EAAE,CAAC;YACR,KAAK,EAAE,CAAC;YACR,UAAU,EAAE,KAAK;YACjB,SAAS,EAAE,KAAK;SACjB;QACD,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC;QAC9C,IAAI,EAAE,CAAC;KACR,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,SAAS,cAAc,CAAC,KAA0B;IAChD,OAAO,SAAS,CAAQ,KAAK,EAAE,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;QAChD,MAAM,QAAQ,GAAwB,EAAE,CAAC;QACzC,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;YAC/B,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE;gBAC9B,QAAQ,CAAC,IAAI,CAAC,GAAG,mBAAmB,CAAC,IAAI,EAAE,IAAI,EAAE,SAAS,KAAK,CAAC,EAAE,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC;YACrF,CAAC,CAAC,CAAC;QACL,CAAC;QACD,OAAO,QAAQ,CAAC;IAClB,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,WAAmB,EACnB,IAAwB;IAExB,OAAO,gBAAgB,CAAC,WAAW,EAAE,SAAS,EAAE,IAAI,EAAE;QACpD,IAAI,EAAE,aAAa;QACnB,KAAK,EAAE,SAAS;QAChB,WAAW,EAAE,iDAAiD;KAC/D,CAAC,CAAC;AACL,CAAC;AAED,kFAAkF;AAClF,KAAK,UAAU,sBAAsB,CACnC,WAAmB,EACnB,KAAY;IAEZ,MAAM,QAAQ,GAAG,MAAM,mBAAmB,CAAC,WAAW,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC;IAC3E,OAAO,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC;AAC/D,CAAC;AAED,8EAA8E;AAE9E,wCAAwC;AACxC,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,WAAmB;IAClD,OAAO,MAAM,YAAY,CAAmB,WAAW,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC,CAAC;AACxF,CAAC;AAED,iDAAiD;AACjD,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,WAAmB,EAAE,UAAkB;IACzE,MAAM,OAAO,GAAG,MAAM,UAAU,CAAC,WAAW,CAAC,CAAC;IAC9C,MAAM,KAAK,GAAG,UAAU,CAAC,WAAW,EAAE,CAAC;IACvC,OAAO,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAc,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;AACxF,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,gBAAgB,CAC9B,QAA0B,EAC1B,KAAiC;IAEjC,MAAM,KAAK,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;IAC7E,OAAO;QACL,GAAG,YAAY,EAAE;QACjB,GAAG,WAAW,CAAC,KAAK,CAAC;QACrB,EAAE,EAAE,KAAK,GAAG,CAAC;KACd,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,WAAmB,EAAE,KAAY;IACrE,MAAM,CAAC,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;QACzD,iBAAiB,CAAC,WAAW,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;QAC1D,iBAAiB,CAAC,WAAW,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;QACzD,iBAAiB,CAAC,WAAW,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC;QAC3D,iBAAiB,CAAC,WAAW,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;KAC3D,CAAC,CAAC;IACH,MAAM,OAAO,GAAG,oBAAoB,CAAC,KAAK,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;IAChF,IAAI,OAAO,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CAAC,wBAAwB,KAAK,CAAC,IAAI,MAAM,OAAO,EAAE,CAAC,CAAC;IACrE,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,WAAmB,EACnB,SAAqC;IAErC,MAAM,OAAO,GAAG,MAAM,UAAU,CAAC,WAAW,CAAC,CAAC;IAC9C,MAAM,KAAK,GAAG,gBAAgB,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;IAEnD,MAAM,eAAe,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;IAE1C,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACpB,MAAM,YAAY,CAAC,WAAW,CAAC,WAAW,EAAE,cAAc,CAAC,EAAE,OAAO,CAAC,CAAC;IACtE,OAAO,KAAK,CAAC;AACf,CAAC;AAED,6DAA6D;AAC7D,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,WAAmB,EACnB,OAAe,EACf,OAAuB;IAEvB,MAAM,OAAO,GAAG,MAAM,UAAU,CAAC,WAAW,CAAC,CAAC;IAC9C,MAAM,KAAK,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,KAAK,OAAO,CAAC,CAAC;IAC9D,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE,CAAC;QACjB,MAAM,IAAI,KAAK,CAAC,iBAAiB,OAAO,YAAY,CAAC,CAAC;IACxD,CAAC;IAED,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,OAAO,CAAC,KAAK,CAAE,EAAE,GAAG,OAAO,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC;IACjE,MAAM,YAAY,CAAC,WAAW,CAAC,WAAW,EAAE,cAAc,CAAC,EAAE,OAAO,CAAC,CAAC;IACtE,OAAO,OAAO,CAAC,KAAK,CAAE,CAAC;AACzB,CAAC;AAED,8EAA8E;AAE9E,uCAAuC;AACvC,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,WAAmB;IACjD,OAAO,MAAM,YAAY,CAAmB,WAAW,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC,CAAC;AACvF,CAAC;AAED,gDAAgD;AAChD,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,WAAmB,EAAE,UAAkB;IACxE,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,WAAW,CAAC,CAAC;IAC5C,MAAM,KAAK,GAAG,UAAU,CAAC,WAAW,EAAE,CAAC;IACvC,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAc,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;AACvF,CAAC;AAED;;;;GAIG;AACH,KAAK,UAAU,6BAA6B,CAC1C,WAAmB,EACnB,OAAsB;IAEtB,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO;IACjC,MAAM,OAAO,GAAG,MAAM,UAAU,CAAC,WAAW,CAAC,CAAC;IAC9C,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,KAAK,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC;YACvD,MAAM,IAAI,KAAK,CAAC,mCAAmC,MAAM,CAAC,OAAO,wBAAwB,CAAC,CAAC;QAC7F,CAAC;IACH,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,WAAmB,EACnB,OAAuE,EACvE,SAA4B;IAE5B,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,EAAE,CAAC;IACtC,MAAM,6BAA6B,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;IAE1D,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,WAAW,CAAC,CAAC;IAC5C,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;IAE3E,MAAM,KAAK,GAAU;QACnB,EAAE,EAAE,KAAK,GAAG,CAAC;QACb,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,OAAO;QACP,KAAK,EAAE,OAAO,CAAC,KAAK,IAAI,CAAC,cAAc,EAAE,CAAC;KAC3C,CAAC;IAEF,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAEnB,MAAM,SAAS,EAAE,CAAC,KAAK,CAAC,CAAC;IAEzB,MAAM,YAAY,CAAC,WAAW,CAAC,WAAW,EAAE,aAAa,CAAC,EAAE,MAAM,CAAC,CAAC;IACpE,OAAO,KAAK,CAAC;AACf,CAAC;AAED,6DAA6D;AAC7D,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,WAAmB,EACnB,OAAe,EACf,OAAuB,EACvB,SAA4B;IAE5B,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,WAAW,CAAC,CAAC;IAC5C,MAAM,KAAK,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,KAAK,OAAO,CAAC,CAAC;IAC7D,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE,CAAC;QACjB,MAAM,IAAI,KAAK,CAAC,iBAAiB,OAAO,YAAY,CAAC,CAAC;IACxD,CAAC;IAED,MAAM,MAAM,GAAU,EAAE,GAAG,MAAM,CAAC,KAAK,CAAE,EAAE,GAAG,OAAO,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC;IACrE,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;QACpB,MAAM,6BAA6B,CAAC,WAAW,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;IACnE,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC;IAEvB,MAAM,SAAS,EAAE,CAAC,MAAM,CAAC,CAAC;IAE1B,MAAM,YAAY,CAAC,WAAW,CAAC,WAAW,EAAE,aAAa,CAAC,EAAE,MAAM,CAAC,CAAC;IACpE,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC;IACjC,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,4BAA4B,CAAC;IAChE,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,0CAA0C,CAAC;IACxE,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,0CAA0C,CAAC;IACxE,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,iCAAiC,CAAC;CAC1F,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,qBAAqB,GAAqB;IACrD;QACE,IAAI,EAAE,cAAc;QACpB,OAAO,EAAE,IAAI;QACb,WAAW,EACT,0nBAA0nB;QAC5nB,WAAW,EAAE;YACX,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,6CAA6C,CAAC;YACxE,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,wCAAwC,CAAC;YACrF,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,4BAA4B,CAAC;YAC9E,MAAM,EAAE,CAAC;iBACN,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;iBACjB,MAAM,CAAC,CAAC,CAAC;iBACT,QAAQ,EAAE;iBACV,QAAQ,CAAC,6DAA6D,CAAC;YAC1E,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,2BAA2B,CAAC;YACtE,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,4BAA4B,CAAC;YACxE,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC;YAClD,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,uCAAuC,CAAC;YACzF,SAAS,EAAE,CAAC;iBACT,KAAK,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;iBAClB,QAAQ,EAAE;iBACV,QAAQ,CAAC,iDAAiD,CAAC;YAC9D,OAAO,EAAE,CAAC;iBACP,KAAK,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;iBAClB,QAAQ,EAAE;iBACV,QAAQ,CACP,sFAAsF,CACvF;SACJ;QACD,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;YAC3B,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,SAAS,EAAE,GAAG,IAAI,CAAC;YAC/C,MAAM,KAAK,GAAG,MAAM,WAAW,CAAC,GAAG,CAAC,WAAW,EAAE,SAAuC,CAAC,CAAC;YAC1F,OAAO,sBAAsB,CAAC,GAAG,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;QACxD,CAAC;KACF;IACD;QACE,IAAI,EAAE,cAAc;QACpB,OAAO,EAAE,IAAI;QACb,WAAW,EACT,8KAA8K;QAChL,WAAW,EAAE;YACX,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,+BAA+B,CAAC;YAC9E,OAAO,EAAE,CAAC;iBACP,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC;iBAC/B,QAAQ,CAAC,8CAA8C,CAAC;SAC5D;QACD,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,CAC3B,sBAAsB,CACpB,GAAG,CAAC,WAAW,EACf,MAAM,WAAW,CAAC,GAAG,CAAC,WAAW,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,CAC/D;KACJ;IACD;QACE,IAAI,EAAE,gBAAgB;QACtB,WAAW,EAAE,2CAA2C;QACxD,WAAW,EAAE,EAAE,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,iCAAiC,CAAC,EAAE;QACnF,OAAO,EAAE,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC,aAAa,CAAC,GAAG,CAAC,WAAW,EAAE,IAAI,CAAC,UAAU,CAAC;KACxE;IACD;QACE,IAAI,EAAE,cAAc;QACpB,OAAO,EAAE,IAAI;QACb,SAAS,EAAE,IAAI;QACf,WAAW,EACT,+TAA+T;QACjU,WAAW,EAAE;YACX,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,kCAAkC,CAAC;YAC7D,OAAO,EAAE,CAAC;iBACP,KAAK,CAAC,iBAAiB,CAAC;iBACxB,QAAQ,EAAE;iBACV,QAAQ,CAAC,qDAAqD,CAAC;YAClE,KAAK,EAAE,CAAC;iBACL,KAAK,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;iBAClB,QAAQ,EAAE;iBACV,QAAQ,CAAC,2EAA2E,CAAC;SACzF;QACD,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;YAC3B,MAAM,IAAI,GAAG,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACxC,MAAM,KAAK,GAAG,MAAM,WAAW,CAC7B,GAAG,CAAC,WAAW,EACf;gBACE,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,OAAO,EAAE,IAAI,CAAC,OAAoC;gBAClD,KAAK,EAAE,IAAI,CAAC,KAAgC;aAC7C,EACD,IAAI,CAAC,SAAS,CACf,CAAC;YACF,OAAO,IAAI,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;QACjC,CAAC;KACF;IACD;QACE,IAAI,EAAE,cAAc;QACpB,OAAO,EAAE,IAAI;QACb,SAAS,EAAE,IAAI;QACf,WAAW,EACT,0NAA0N;QAC5N,WAAW,EAAE;YACX,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,+BAA+B,CAAC;YAC9E,OAAO,EAAE,CAAC;iBACP,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC;iBAC/B,QAAQ,CAAC,qEAAqE,CAAC;SACnF;QACD,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;YAC3B,MAAM,IAAI,GAAG,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACxC,MAAM,KAAK,GAAG,MAAM,WAAW,CAAC,GAAG,CAAC,WAAW,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;YAC7F,OAAO,IAAI,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;QACjC,CAAC;KACF;IACD;QACE,IAAI,EAAE,eAAe;QACrB,WAAW,EAAE,0CAA0C;QACvD,WAAW,EAAE,EAAE,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,gCAAgC,CAAC,EAAE;QAClF,OAAO,EAAE,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC,WAAW,EAAE,IAAI,CAAC,UAAU,CAAC;KACvE;CACF,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"catalogTools.d.ts","sourceRoot":"","sources":["../../src/tools/catalogTools.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAgFhD,eAAO,MAAM,sBAAsB,EAAE,cAAc,
|
|
1
|
+
{"version":3,"file":"catalogTools.d.ts","sourceRoot":"","sources":["../../src/tools/catalogTools.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAgFhD,eAAO,MAAM,sBAAsB,EAAE,cAAc,EA0FlD,CAAC"}
|
|
@@ -115,19 +115,31 @@ export const catalogToolDefinitions = [
|
|
|
115
115
|
},
|
|
116
116
|
{
|
|
117
117
|
name: 'find_tile',
|
|
118
|
-
description: "Find tiles in a tileset by a case-insensitive SUBSTRING match on their catalog name — a quick bridge from a name fragment like 'grass' or 'forest' to a paintable tile id. This is a literal substring match, NOT synonym/semantic search: 'water' matches 'Endless Waterfall' but not 'Sea' or 'Pond' (their names lack the substring). To browse the actual tile names first, use get_tile_catalog with a `sheet` filter, then search a fragment you see. Returns matching catalog entries (name, sheet, tile id, autotile kind, `source`, `transparent` [true = needs an opaque base on a lower layer], plus `description`/`confidence`/`manual` for project catalog drafts). Covers the default Overworld tileset plus custom sheets cataloged into data/tilecatalog/ (via the tileset-catalog skill). Read-only.",
|
|
118
|
+
description: "Find tiles in a tileset by a case-insensitive SUBSTRING match on their catalog name — a quick bridge from a name fragment like 'grass' or 'forest' to a paintable tile id. This is a literal substring match, NOT synonym/semantic search: 'water' matches 'Endless Waterfall' but not 'Sea' or 'Pond' (their names lack the substring). To browse the actual tile names first, use get_tile_catalog with a `sheet` filter, then search a fragment you see. Set `searchDescriptions: true` to also match the free-text description a project catalog carries (custom sheets named by the tileset-catalog skill — their names are terse, the descriptions say what the tile looks like); built-in RPG Maker entries have no description, so this only widens the search over custom sheets. Returns matching catalog entries (name, sheet, tile id, autotile kind, `source`, `matchedIn` [which fields matched], `transparent` [true = needs an opaque base on a lower layer], plus `description`/`confidence`/`manual` for project catalog drafts). Covers the default Overworld tileset plus custom sheets cataloged into data/tilecatalog/ (via the tileset-catalog skill). Read-only.",
|
|
119
119
|
inputSchema: {
|
|
120
120
|
tilesetId: z.number().int().positive().describe('Tileset id (from Tilesets.json / the map)'),
|
|
121
121
|
query: z
|
|
122
122
|
.string()
|
|
123
|
-
.describe("
|
|
123
|
+
.describe("Substring to match, e.g. 'grass' or 'forest' (literal substring, no synonyms)"),
|
|
124
|
+
searchDescriptions: z
|
|
125
|
+
.boolean()
|
|
126
|
+
.optional()
|
|
127
|
+
.describe('Also match project-catalog tile descriptions, not just names (default false — names only)'),
|
|
124
128
|
},
|
|
125
129
|
handler: async (ctx, args) => {
|
|
126
130
|
const tileset = await getTileset(ctx.projectPath, args.tilesetId);
|
|
127
131
|
const overlay = await loadProjectCatalogs(ctx.projectPath);
|
|
128
|
-
const matches = findTiles(tileset.tilesetNames, args.query, overlay
|
|
132
|
+
const matches = findTiles(tileset.tilesetNames, args.query, overlay, {
|
|
133
|
+
searchDescriptions: args.searchDescriptions === true,
|
|
134
|
+
});
|
|
129
135
|
await annotateTransparency(ctx.projectPath, tileset, matches);
|
|
130
|
-
return {
|
|
136
|
+
return {
|
|
137
|
+
tilesetId: args.tilesetId,
|
|
138
|
+
query: args.query,
|
|
139
|
+
searchedDescriptions: args.searchDescriptions === true,
|
|
140
|
+
count: matches.length,
|
|
141
|
+
matches,
|
|
142
|
+
};
|
|
131
143
|
},
|
|
132
144
|
},
|
|
133
145
|
];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"catalogTools.js","sourceRoot":"","sources":["../../src/tools/catalogTools.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"catalogTools.js","sourceRoot":"","sources":["../../src/tools/catalogTools.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
import { ToolDefinition } from '../registry.js';
|
|
2
|
+
import { IdNamespace } from '../validation/idUsage.js';
|
|
3
|
+
/** One id that is spoken for, and why. */
|
|
4
|
+
export interface AllocatedId {
|
|
5
|
+
id: number;
|
|
6
|
+
/** The System.json label (switch/variable) or record name (common_event); `''` when unnamed. */
|
|
7
|
+
name: string;
|
|
8
|
+
/**
|
|
9
|
+
* Whether the id is *declared*: a non-empty System.json label, or a live
|
|
10
|
+
* CommonEvents row. An id that is referenced but not declared is still
|
|
11
|
+
* allocated — someone is using it — but nothing names it.
|
|
12
|
+
*/
|
|
13
|
+
declared: boolean;
|
|
14
|
+
referenceCount: number;
|
|
15
|
+
/** A sample of reference sites; `referenceCount` is the true total. */
|
|
16
|
+
referencedBy: Array<{
|
|
17
|
+
path: string;
|
|
18
|
+
via: string;
|
|
19
|
+
}>;
|
|
20
|
+
}
|
|
21
|
+
export interface AllocationReport {
|
|
22
|
+
type: IdNamespace;
|
|
23
|
+
count: number;
|
|
24
|
+
/** Highest allocated id, or 0 when nothing is allocated. */
|
|
25
|
+
highest: number;
|
|
26
|
+
/** Unallocated ids below `highest` — holes left by deletions or sparse picking. */
|
|
27
|
+
gaps: number[];
|
|
28
|
+
/**
|
|
29
|
+
* switch/variable only: how many ids System.json declares slots for. Ids above
|
|
30
|
+
* this still work at runtime, but the editor won't show a name for them until
|
|
31
|
+
* the array grows (`set_switch_name`/`set_variable_name` grow it).
|
|
32
|
+
*/
|
|
33
|
+
declaredCapacity?: number;
|
|
34
|
+
allocated: AllocatedId[];
|
|
35
|
+
/** What this scan does and doesn't see. */
|
|
36
|
+
coverage: string;
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Every id of one namespace that is spoken for, derived from the project files.
|
|
40
|
+
*
|
|
41
|
+
* "Allocated" means declared (a System.json label / a CommonEvents row) **or**
|
|
42
|
+
* referenced anywhere. Both halves matter: a named-but-unused switch is a claim
|
|
43
|
+
* a previous session staked, and a used-but-unnamed one is a claim nobody wrote
|
|
44
|
+
* down. Handing either out again produces the failure this exists to prevent —
|
|
45
|
+
* silent, no crash, surfacing hours into a playtest as a door that's already
|
|
46
|
+
* open.
|
|
47
|
+
*
|
|
48
|
+
* With `id`, reports just that one id (including `allocated: false` if it's
|
|
49
|
+
* free) with a fuller list of reference sites — "where is switch 23 used?".
|
|
50
|
+
*/
|
|
51
|
+
export declare function listAllocatedIds(projectPath: string, type: IdNamespace, id?: number): Promise<AllocationReport | (AllocatedId & {
|
|
52
|
+
type: IdNamespace;
|
|
53
|
+
allocated: boolean;
|
|
54
|
+
})>;
|
|
55
|
+
export interface NextFreeIdResult {
|
|
56
|
+
type: IdNamespace;
|
|
57
|
+
ids: number[];
|
|
58
|
+
/** `append` = above every allocated id; `gap-fill` = holes first, then append. */
|
|
59
|
+
strategy: 'append' | 'gap-fill';
|
|
60
|
+
highest: number;
|
|
61
|
+
declaredCapacity?: number;
|
|
62
|
+
warnings: string[];
|
|
63
|
+
}
|
|
64
|
+
/**
|
|
65
|
+
* Hand back the next unallocated id(s) so a session never picks one by hand.
|
|
66
|
+
*
|
|
67
|
+
* Defaults to **append** — strictly above every id already spoken for. Holes are
|
|
68
|
+
* left alone by default on purpose: a gap is usually an id a *concurrent or
|
|
69
|
+
* recent* session has claimed in its notes but not yet written into the project,
|
|
70
|
+
* and reusing it is exactly the collision this tool exists to prevent. Pass
|
|
71
|
+
* `reuseGaps` when compacting a project deliberately.
|
|
72
|
+
*/
|
|
73
|
+
export declare function nextFreeId(projectPath: string, type: IdNamespace, count?: number, reuseGaps?: boolean): Promise<NextFreeIdResult>;
|
|
74
|
+
export declare const idToolDefinitions: ToolDefinition[];
|
|
75
|
+
//# sourceMappingURL=idTools.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"idTools.d.ts","sourceRoot":"","sources":["../../src/tools/idTools.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAGhD,OAAO,EACL,WAAW,EAIZ,MAAM,0BAA0B,CAAC;AAYlC,0CAA0C;AAC1C,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,gGAAgG;IAChG,IAAI,EAAE,MAAM,CAAC;IACb;;;;OAIG;IACH,QAAQ,EAAE,OAAO,CAAC;IAClB,cAAc,EAAE,MAAM,CAAC;IACvB,uEAAuE;IACvE,YAAY,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CACpD;AAED,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,WAAW,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,4DAA4D;IAC5D,OAAO,EAAE,MAAM,CAAC;IAChB,mFAAmF;IACnF,IAAI,EAAE,MAAM,EAAE,CAAC;IACf;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,SAAS,EAAE,WAAW,EAAE,CAAC;IACzB,2CAA2C;IAC3C,QAAQ,EAAE,MAAM,CAAC;CAClB;AAsDD;;;;;;;;;;;;GAYG;AACH,wBAAsB,gBAAgB,CACpC,WAAW,EAAE,MAAM,EACnB,IAAI,EAAE,WAAW,EACjB,EAAE,CAAC,EAAE,MAAM,GACV,OAAO,CAAC,gBAAgB,GAAG,CAAC,WAAW,GAAG;IAAE,IAAI,EAAE,WAAW,CAAC;IAAC,SAAS,EAAE,OAAO,CAAA;CAAE,CAAC,CAAC,CAwCvF;AAED,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,WAAW,CAAC;IAClB,GAAG,EAAE,MAAM,EAAE,CAAC;IACd,kFAAkF;IAClF,QAAQ,EAAE,QAAQ,GAAG,UAAU,CAAC;IAChC,OAAO,EAAE,MAAM,CAAC;IAChB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAED;;;;;;;;GAQG;AACH,wBAAsB,UAAU,CAC9B,WAAW,EAAE,MAAM,EACnB,IAAI,EAAE,WAAW,EACjB,KAAK,SAAI,EACT,SAAS,UAAQ,GAChB,OAAO,CAAC,gBAAgB,CAAC,CAiC3B;AAKD,eAAO,MAAM,iBAAiB,EAAE,cAAc,EAsC7C,CAAC"}
|