unite-lib 1.2.0 → 1.3.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 CHANGED
@@ -94,6 +94,10 @@ Game map images (Theia Sky Ruins variants: Groudon, Kyogre, Rayquaza). Each map
94
94
 
95
95
  ![Map](https://raw.githubusercontent.com/cesaroeduardo/unite-lib/main/maps/groudon.png)
96
96
 
97
+ ### Neutrals and spawns
98
+
99
+ The library includes a **neutrals** catalog (wild Pokémon and items that spawn on maps) with images in `neutrals/`, and a unified **spawns** list in `src/spawns.ts` (same pattern as `pokemons.ts`) linking each spawn to a map and a neutral. Use `getSpawnsByMap(mapId)` to get all spawns for a map (e.g. `"map-groudon"`, `"map-kyogre"`, `"map-rayquaza"`), `getNeutralById(id)` to resolve the neutral (e.g. for its image), and `getNeutralImageUrl(neutral, options?)` for the image URL.
100
+
97
101
  ---
98
102
 
99
103
  ## Local development (testing without publishing to npm)
@@ -180,10 +184,15 @@ Asset URLs via jsDelivr (substitua `@latest` por uma versão se quiser):
180
184
  | `pokemons` | Full roster (name, dex, images, battleType, stats, tags, difficulty) |
181
185
  | `moves` | Move list (pokemonId, slotId, name, image) |
182
186
  | `maps` | Map list (id, name, image, images by resolution, description) |
187
+ | `neutrals` | Neutral catalog (id, image; wild Pokémon/items for spawns) |
188
+ | `spawns` | All map spawns (mapId, neutralId, left, top, spawnTime, respawnTime, etc.) |
183
189
  | `BattleType` | `attacker`, `defender`, `allrounder`, `speedster`, `supporter` |
184
190
  | `Tag` | Role + style: `attacker`, `defender`, `melee`, `ranged`, … |
185
191
  | `getImageUrl(pokemon, key, options?)` | Image path or full URL with `baseUrl` |
186
192
  | `getMapImageUrl(map, resolution?, options?)` | Map image URL (resolution: `"1"`, `"2"`, `"4"`) |
193
+ | `getNeutralImageUrl(neutral, options?)` | Neutral image path or full URL |
194
+ | `getSpawnsByMap(mapId)` | Spawns for a map (e.g. `"map-groudon"`) |
195
+ | `getNeutralById(id)` | Find neutral by id |
187
196
  | `getPokemonByName(name)` | Find by display name |
188
197
  | `getPokemonByDex(dex)` | Find by Pokédex number |
189
198
  | `getPokemonBySlug(slug)` | Find by slug (e.g. `venusaur`) |
@@ -194,12 +203,15 @@ Asset URLs via jsDelivr (substitua `@latest` por uma versão se quiser):
194
203
  | `getMapName(mapId, locale)` | Localized map name |
195
204
  | `getMapDescription(mapId, locale)` | Localized map description |
196
205
 
206
+ Types: `Neutral`, `MapSpawn` (see also `Map`, `MapResolution`, `Pokemon`, `Move`, etc.).
207
+
197
208
  ## Project structure
198
209
 
199
210
  - **`dist/`** — Built ESM, CJS, and IIFE; type definitions (`.d.ts`)
200
211
  - **`pokemons/`** — Roster and stat images
201
212
  - **`moves/`** — Move images
202
213
  - **`maps/`** — Map images
214
+ - **`neutrals/`** — Wild Pokémon and item images used in map spawns
203
215
  - **`.cursor/skills/`** — [Cursor Agent Skills](https://docs.cursor.com/context/agent-skills) for use with AI agents in this repo (e.g. syncing roster from images in `pokemons/` and `moves/`).
204
216
  - **`mcp/`** — [MCP server](mcp/README.md) (Model Context Protocol) para consumir a library em agentes de IA: tools para listar e buscar pokémons, moves, mapas, URLs de imagens e nomes localizados (Cursor, Claude Desktop, etc.).
205
217
 
@@ -25,7 +25,10 @@ __export(i18n_exports, {
25
25
  fr: () => fr_default,
26
26
  getMapDescription: () => getMapDescription,
27
27
  getMapName: () => getMapName,
28
+ getNeutralName: () => getNeutralName,
28
29
  getPokemonName: () => getPokemonName,
30
+ getSpawnInfo: () => getSpawnInfo,
31
+ getSpawnInfoForSpawn: () => getSpawnInfoForSpawn,
29
32
  jaJP: () => ja_JP_default,
30
33
  ptBR: () => pt_BR_default
31
34
  });
@@ -2437,6 +2440,29 @@ var maps = [
2437
2440
  ];
2438
2441
  var maps_default = maps;
2439
2442
 
2443
+ // src/neutrals.ts
2444
+ var neutrals = [
2445
+ { id: "accelgor", image: "neutrals/accelgor.png", name: "Accelgor", dex: 617 },
2446
+ { id: "altaria", image: "neutrals/altaria.png", name: "Altaria", dex: 334 },
2447
+ { id: "baltoy", image: "neutrals/baltoy.png", name: "Baltoy", dex: 343 },
2448
+ { id: "bunnelby", image: "neutrals/bunnelby.png", name: "Bunnelby", dex: 659 },
2449
+ { id: "escavalier", image: "neutrals/escavalier.png", name: "Escavalier", dex: 589 },
2450
+ { id: "groudon", image: "neutrals/groudon.png", name: "Groudon", dex: 383 },
2451
+ { id: "indeedee", image: "neutrals/indeedee.png", name: "Indeedee", dex: 876 },
2452
+ { id: "kyogre", image: "neutrals/kyogre.png", name: "Kyogre", dex: 382 },
2453
+ { id: "natu", image: "neutrals/natu.png", name: "Natu", dex: 177 },
2454
+ { id: "rayquaza", image: "neutrals/rayquaza.png", name: "Rayquaza", dex: 384 },
2455
+ { id: "regidrago", image: "neutrals/regidrago.png", name: "Regidrago", dex: 895 },
2456
+ { id: "regice", image: "neutrals/regice.png", name: "Regice", dex: 378 },
2457
+ { id: "regieleki", image: "neutrals/regieleki.png", name: "Regieleki", dex: 894 },
2458
+ { id: "regirock", image: "neutrals/regirock.png", name: "Regirock", dex: 377 },
2459
+ { id: "registeel", image: "neutrals/registeel.png", name: "Registeel", dex: 379 },
2460
+ { id: "salac", image: "neutrals/salac.png", name: "Salac Berry" },
2461
+ { id: "sitrus", image: "neutrals/sitrus.png", name: "Sitrus Berry" },
2462
+ { id: "xatu", image: "neutrals/xatu.png", name: "Xatu", dex: 178 }
2463
+ ];
2464
+ var neutrals_default = neutrals;
2465
+
2440
2466
  // src/i18n/en.ts
2441
2467
  function slugFromMain(mainPath) {
2442
2468
  return mainPath.replace(/^pokemons\/roster-/, "").replace(/\.png$/, "");
@@ -2449,6 +2475,55 @@ for (const m of maps_default) {
2449
2475
  names[m.id] = m.name;
2450
2476
  if (m.description) names[`${m.id}.description`] = m.description;
2451
2477
  }
2478
+ for (const n of neutrals_default) {
2479
+ names[n.id] = n.name;
2480
+ }
2481
+ Object.assign(names, {
2482
+ "spawn.info.groudon.boss": "<p>When defeated, all team members alive receive a <strong>buff</strong> and <strong>15 aeos points</strong>.<br>This buff is <strong>permanent until the holder is KO'd</strong>. When the holder is <strong>KO'd</strong>, the buff <strong>transfers to the killer</strong>.<br>It provides a <strong>goal-scoring speed boost</strong>, a <strong>huge damage boost</strong>, and a <strong>small shield</strong>.<br>Always spawn at 2:00.</p>",
2483
+ "spawn.info.bunnelby.initial": "<p>They <strong>spawn at the beginning of the game</strong> and <strong>never respawn</strong> once killed.</p><p>Give 2 points.</p>",
2484
+ "spawn.info.bunnelby.lane_940": "<p>Starts spawning at <strong>9:40</strong>.</p><p>When defeated, grants <strong>2 points</strong> and respawn after <strong>60 seconds</strong>.</p><p>If either of the <strong>first towers</strong> in the lane is destroyed, it <strong>disappears</strong>.</p>",
2485
+ "spawn.info.bunnelby.lane_920": "<p>Starts spawning at <strong>9:20</strong>.</p><p>When defeated, grants <strong>2 points</strong> and respawn after <strong>60 seconds</strong>.</p><p>If either of the <strong>first towers</strong> in the lane is destroyed, it <strong>disappears</strong>.</p>",
2486
+ "spawn.info.bunnelby.lane_915": "<p>Starts spawning at <strong>9:15</strong>.</p><p>When defeated, grants <strong>2 points</strong> and respawn after <strong>60 seconds</strong>.</p><p>If either of the <strong>first towers</strong> in the lane is destroyed, it <strong>disappears</strong>.</p>",
2487
+ "spawn.info.accelgor": "<p>Starts spawning at <strong>9:45</strong>.</p><p>When defeated, grants <strong>4 / 7 points</strong> and a <strong>buff</strong>. <strong>Respawns after 60 seconds</strong>.</p><p>This buff lasts for <strong>70 seconds</strong> and provides a <strong>10% move cooldown reduction</strong>.</p>",
2488
+ "spawn.info.escavalier": "<p>Starts spawning at <strong>9:45</strong>.</p><p>When defeated, grants <strong>4 / 7 points</strong> and a <strong>buff</strong>. <strong>Respawns after 60 seconds</strong>.</p><p>This buff lasts for <strong>70 seconds</strong> and provides <strong>basic attacks extra damage and decreases opponent movement speed for a short time</strong>.</p>",
2489
+ "spawn.info.baltoy.generic": "<p>Starts spawning at <strong>9:45</strong>.</p><p>When defeated, grants <strong>2 points</strong>. <strong>Respawns after 60 seconds</strong>.</p>",
2490
+ "spawn.info.baltoy.lane_940": "<p>Starts spawning at <strong>9:40</strong>.</p><p>When defeated, grants <strong>2 points</strong>. <strong>Respawns after 60 seconds</strong>.</p><p>If either of the <strong>first towers</strong> in the lane is destroyed, it <strong>disappears</strong>.</p>",
2491
+ "spawn.info.baltoy.lane_920": "<p>Starts spawning at <strong>9:40</strong>.</p><p>When defeated, grants <strong>2 points</strong>. <strong>Respawns after 60 seconds</strong>.</p><p>If either of the <strong>first towers</strong> in the lane is destroyed, it <strong>disappears</strong>.</p>",
2492
+ "spawn.info.baltoy.lane_910": "<p>Starts spawning at <strong>9:10</strong>.</p><p>When defeated, grants <strong>2 points</strong>. <strong>Respawns after 60 seconds</strong>.</p><p>If either of the <strong>first towers</strong> in the lane is destroyed, it <strong>disappears</strong>.</p>",
2493
+ "spawn.info.baltoy.lane_910_only": "<p>Starts spawning at <strong>9:10</strong>.</p><p>When defeated, grants <strong>2 points</strong>. <strong>Respawns after 60 seconds</strong>.</p>",
2494
+ "spawn.info.baltoy.lane_840": "<p>Starts spawning at <strong>8:40</strong>.</p><p>When defeated, grants <strong>2 points</strong>. <strong>Respawns after 60 seconds</strong>.</p>",
2495
+ "spawn.info.baltoy.tower": "<p>Starts spawning when the corresponding <strong>first tower is destroyed</strong>.</p><p>When defeated, grants <strong>2 points</strong>. <strong>Respawns after 60 seconds</strong>.</p>",
2496
+ "spawn.info.regidrago": "<p>Spawns in the <strong>middle of the map at 8:00</strong>. When killed, <strong>Altaria spawn instead 1:30 minute after</strong>.<br>The team that defeats <strong>Regidrago</strong> gains <strong>experience for all teammates</strong>.<br>The player who lands the killing blow receives a <strong>scoring-speed buff</strong> and <strong>20 points</strong>.</p>",
2497
+ "spawn.info.regieleki": "<p>Spawns at <strong>7:00</strong> on a random lane between <strong>toplane and botlane</strong>.<br>When defeated, goes to the base of the opposing team and if it touches the base, scores <strong>20/16/12/8 points</strong> and if the base is still alive, makes <strong>any goal become instant during 20/15/10/5s</strong>.<br>The player who lands the killing blow receives <strong>20 points</strong>.<br>Respawns <strong>2 minutes</strong> after death.</p>",
2498
+ "spawn.info.regi.700": "<p>Spawns at <strong>7:00</strong>.</p>",
2499
+ "spawn.info.xatu": "<p>Spawns at <strong>9:59</strong>.</p><p>Grants <strong>a large amount of experience</strong> and <strong>2 points</strong> when defeated.</p><p><strong>Does not respawn</strong>.</p>",
2500
+ "spawn.info.natu.900": "<p>Spawns at <strong>9:00</strong>.</p>",
2501
+ "spawn.info.natu.920": "<p>Spawns at <strong>9:20</strong>.</p>",
2502
+ "spawn.info.indeedee.lane": "<p>Starts spawning at <strong>9:30</strong> / <strong>9:35</strong>.</p><p>When defeated, <strong>respawns after 60 seconds</strong> and grants <strong>5 points</strong>.</p><p>If either of the <strong>first towers</strong> in the lane is destroyed, it <strong>disappears</strong>.</p>",
2503
+ "spawn.info.indeedee.tower": "<p>Spawns when the corresponding <strong>first tower</strong> is destroyed.</p><p>When defeated, <strong>respawns after 60 seconds</strong> and grants <strong>5 points</strong>.</p>",
2504
+ "spawn.info.salac": "<p>When consumed, grants a <strong>movement speed bonus</strong> for <strong>3 seconds</strong>.</p><p>Starts spawning at <strong>8:30</strong> and respawns <strong>60 seconds</strong> after being consumed.</p>",
2505
+ "spawn.info.salac.short": "<p>Movement speed bonus for 3 seconds.</p>",
2506
+ "spawn.info.altaria.after_regidrago": "<p>Starts spawning <strong>mid 1:30 after Regidrago is killed</strong>.</p>",
2507
+ "spawn.info.altaria.rayquaza": "<p>Spawn at <strong>8:00</strong> and respawn every <strong>1:30</strong>.</p><p>Disappears at <strong>2:30</strong>.</p>",
2508
+ "spawn.info.kyogre.boss": "<p>When defeated, all team members alive receive a <strong>buff</strong>, <strong>15 aeos points</strong> and all opponents' towers still up are disabled for 1:30 (opponent can't receive shield and regen).<br>This buff is <strong>permanent until the holder is KO'd</strong>. When the holder is <strong>KO'd</strong>, the buff <strong>transfers to the killer</strong>.<br>It provides a <strong>goal-scoring speed boost</strong>, <strong>self regen (5% per second)</strong>, and a <strong>small shield</strong>.<br>Always spawn at 2:00.</p>",
2509
+ "spawn.info.rayquaza.boss": "<p>When defeated, grants the winning team <strong>15 aeos points</strong>, a <strong>shield</strong> that <strong>speeds up goal scoring</strong> and <strong>prevents goals from being blocked</strong>.<br>Always spawns at 2:00.</p>",
2510
+ "spawn.info.regidrago.kyogre": "<p>Spawns in the <strong>middle of the map at 8:00</strong>.</p>",
2511
+ "spawn.info.xatu.short": "<p>Spawns at <strong>9:59</strong>.</p>",
2512
+ "spawn.info.indeedee.tower_break": "<p>Tower break spawn.</p>",
2513
+ "spawn.info.baltoy.tower_break": "<p>Tower break spawn.</p>",
2514
+ "spawn.info.bunnelby.lane": "<p>Starts spawning at <strong>9:40</strong>.</p>",
2515
+ "spawn.info.bunnelby.lane_920_short": "<p>Starts spawning at <strong>9:20</strong>.</p>",
2516
+ "spawn.info.bunnelby.lane_915_short": "<p>Starts spawning at <strong>9:15</strong>.</p>",
2517
+ "spawn.info.baltoy.lane_940_short": "<p>Starts spawning at <strong>9:40</strong>.</p>",
2518
+ "spawn.info.baltoy.945_short": "<p>Starts spawning at <strong>9:45</strong>.</p>",
2519
+ "spawn.info.baltoy.lane_910_short": "<p>Starts spawning at <strong>9:10</strong>.</p>",
2520
+ "spawn.info.baltoy.lane_840_short": "<p>Starts spawning at <strong>8:40</strong>.</p>",
2521
+ "spawn.info.indeedee.lane_930": "<p>Starts spawning at <strong>9:30</strong>.</p>",
2522
+ "spawn.info.indeedee.lane_935": "<p>Starts spawning at <strong>9:35</strong>.</p>",
2523
+ "spawn.info.bunnelby.points": "<p>Give 2 points.</p>",
2524
+ "spawn.info.baltoy.tower_kyogre": "<p>Starts spawning when the corresponding <strong>first tower is destroyed</strong>.</p>",
2525
+ "spawn.info.indeedee.tower_short": "<p>Spawns when the corresponding <strong>first tower</strong> is destroyed.</p>"
2526
+ });
2452
2527
  var en_default = names;
2453
2528
 
2454
2529
  // src/i18n/pt-BR.ts
@@ -2460,7 +2535,52 @@ var ptBR = {
2460
2535
  "map-kyogre": "Ru\xEDnas Celestes de Theia",
2461
2536
  "map-kyogre.description": "Mapa 5v5 com Kyogre.",
2462
2537
  "map-rayquaza": "Ru\xEDnas Celestes de Theia",
2463
- "map-rayquaza.description": "Mapa 5v5 com Rayquaza."
2538
+ "map-rayquaza.description": "Mapa 5v5 com Rayquaza.",
2539
+ // Spawn info (HTML) — principais textos; demais usam fallback en
2540
+ "spawn.info.groudon.boss": "<p>Ao ser derrotado, todos os membros vivos do time recebem <strong>buff</strong> e <strong>15 pontos aeos</strong>.<br>O buff \xE9 <strong>permanente at\xE9 o portador ser nocauteado</strong>. Ao ser nocauteado, o buff <strong>transfere para quem aplicou o KO</strong>.<br>Concede <strong>aumento de velocidade de pontua\xE7\xE3o</strong>, <strong>grande aumento de dano</strong> e <strong>pequeno escudo</strong>.<br>Sempre aparece \xE0s 2:00.</p>",
2541
+ "spawn.info.kyogre.boss": "<p>Ao ser derrotado, todos os membros vivos do time recebem <strong>buff</strong>, <strong>15 pontos aeos</strong> e as torres advers\xE1rias ainda de p\xE9 ficam desativadas por 1:30 (advers\xE1rio n\xE3o recebe escudo e regenera\xE7\xE3o).<br>O buff \xE9 <strong>permanente at\xE9 o portador ser nocauteado</strong>. Ao ser nocauteado, o buff <strong>transfere para quem aplicou o KO</strong>.<br>Concede <strong>aumento de velocidade de pontua\xE7\xE3o</strong>, <strong>autorregenera\xE7\xE3o (5% por segundo)</strong> e <strong>pequeno escudo</strong>.<br>Sempre aparece \xE0s 2:00.</p>",
2542
+ "spawn.info.rayquaza.boss": "<p>Ao ser derrotado, concede ao time vencedor <strong>15 pontos aeos</strong>, um <strong>escudo</strong> que <strong>acelera a pontua\xE7\xE3o</strong> e <strong>impede que gols sejam bloqueados</strong>.<br>Sempre aparece \xE0s 2:00.</p>",
2543
+ "spawn.info.bunnelby.initial": "<p><strong>Aparecem no in\xEDcio da partida</strong> e <strong>n\xE3o ressurgem</strong> ap\xF3s derrotados.</p><p>D\xE3o 2 pontos.</p>",
2544
+ "spawn.info.bunnelby.points": "<p>D\xE3o 2 pontos.</p>",
2545
+ "spawn.info.regi.700": "<p>Aparece \xE0s <strong>7:00</strong>.</p>",
2546
+ "spawn.info.bunnelby.lane_940": "<p>Come\xE7a a aparecer \xE0s <strong>9:40</strong>.</p><p>Quando derrotado, concede <strong>2 pontos</strong> e ressurgem ap\xF3s <strong>60 segundos</strong>.</p><p>Se alguma das <strong>primeiras torres</strong> da lane for destru\xEDda, <strong>desaparece</strong>.</p>",
2547
+ "spawn.info.bunnelby.lane_920": "<p>Come\xE7a a aparecer \xE0s <strong>9:20</strong>.</p><p>Quando derrotado, concede <strong>2 pontos</strong> e ressurgem ap\xF3s <strong>60 segundos</strong>.</p><p>Se alguma das <strong>primeiras torres</strong> da lane for destru\xEDda, <strong>desaparece</strong>.</p>",
2548
+ "spawn.info.bunnelby.lane_915": "<p>Come\xE7a a aparecer \xE0s <strong>9:15</strong>.</p><p>Quando derrotado, concede <strong>2 pontos</strong> e ressurgem ap\xF3s <strong>60 segundos</strong>.</p><p>Se alguma das <strong>primeiras torres</strong> da lane for destru\xEDda, <strong>desaparece</strong>.</p>",
2549
+ "spawn.info.accelgor": "<p>Come\xE7a a aparecer \xE0s <strong>9:45</strong>.</p><p>Quando derrotado, concede <strong>4 / 7 pontos</strong> e um <strong>buff</strong>. <strong>Ressurge ap\xF3s 60 segundos</strong>.</p><p>O buff dura <strong>70 segundos</strong> e concede <strong>10% de redu\xE7\xE3o no tempo de recarga dos movimentos</strong>.</p>",
2550
+ "spawn.info.escavalier": "<p>Come\xE7a a aparecer \xE0s <strong>9:45</strong>.</p><p>Quando derrotado, concede <strong>4 / 7 pontos</strong> e um <strong>buff</strong>. <strong>Ressurge ap\xF3s 60 segundos</strong>.</p><p>O buff dura <strong>70 segundos</strong> e concede <strong>dano extra em ataques b\xE1sicos e reduz a velocidade de movimento do oponente por um curto tempo</strong>.</p>",
2551
+ "spawn.info.baltoy.generic": "<p>Come\xE7a a aparecer \xE0s <strong>9:45</strong>.</p><p>Quando derrotado, concede <strong>2 pontos</strong>. <strong>Ressurge ap\xF3s 60 segundos</strong>.</p>",
2552
+ "spawn.info.baltoy.lane_940": "<p>Come\xE7a a aparecer \xE0s <strong>9:40</strong>.</p><p>Quando derrotado, concede <strong>2 pontos</strong>. <strong>Ressurge ap\xF3s 60 segundos</strong>.</p><p>Se alguma das <strong>primeiras torres</strong> da lane for destru\xEDda, <strong>desaparece</strong>.</p>",
2553
+ "spawn.info.baltoy.lane_920": "<p>Come\xE7a a aparecer \xE0s <strong>9:40</strong>.</p><p>Quando derrotado, concede <strong>2 pontos</strong>. <strong>Ressurge ap\xF3s 60 segundos</strong>.</p><p>Se alguma das <strong>primeiras torres</strong> da lane for destru\xEDda, <strong>desaparece</strong>.</p>",
2554
+ "spawn.info.baltoy.lane_910": "<p>Come\xE7a a aparecer \xE0s <strong>9:10</strong>.</p><p>Quando derrotado, concede <strong>2 pontos</strong>. <strong>Ressurge ap\xF3s 60 segundos</strong>.</p><p>Se alguma das <strong>primeiras torres</strong> da lane for destru\xEDda, <strong>desaparece</strong>.</p>",
2555
+ "spawn.info.baltoy.lane_910_only": "<p>Come\xE7a a aparecer \xE0s <strong>9:10</strong>.</p><p>Quando derrotado, concede <strong>2 pontos</strong>. <strong>Ressurge ap\xF3s 60 segundos</strong>.</p>",
2556
+ "spawn.info.baltoy.lane_840": "<p>Come\xE7a a aparecer \xE0s <strong>8:40</strong>.</p><p>Quando derrotado, concede <strong>2 pontos</strong>. <strong>Ressurge ap\xF3s 60 segundos</strong>.</p>",
2557
+ "spawn.info.baltoy.tower": "<p>Come\xE7a a aparecer quando a <strong>primeira torre correspondente</strong> for destru\xEDda.</p><p>Quando derrotado, concede <strong>2 pontos</strong>. <strong>Ressurge ap\xF3s 60 segundos</strong>.</p>",
2558
+ "spawn.info.regidrago": "<p>Aparece no <strong>centro do mapa \xE0s 8:00</strong>. Quando derrotado, <strong>Altaria aparece 1:30 minuto depois</strong>.<br>O time que derrotar o <strong>Regidrago</strong> ganha <strong>experi\xEAncia para todos os aliados</strong>.<br>Quem aplicar o golpe final recebe <strong>buff de velocidade de pontua\xE7\xE3o</strong> e <strong>20 pontos</strong>.</p>",
2559
+ "spawn.info.regieleki": "<p>Aparece \xE0s <strong>7:00</strong> em uma lane aleat\xF3ria entre <strong>topo e base</strong>.<br>Quando derrotado, vai at\xE9 a base do time advers\xE1rio e, se tocar a base, pontua <strong>20/16/12/8 pontos</strong>; se a base ainda estiver de p\xE9, <strong>gols ficam instant\xE2neos por 20/15/10/5s</strong>.<br>Quem aplicar o golpe final recebe <strong>20 pontos</strong>.<br>Ressurge <strong>2 minutos</strong> ap\xF3s a morte.</p>",
2560
+ "spawn.info.xatu": "<p>Aparece \xE0s <strong>9:59</strong>.</p><p>Concede <strong>muita experi\xEAncia</strong> e <strong>2 pontos</strong> quando derrotado.</p><p><strong>N\xE3o ressurgem</strong>.</p>",
2561
+ "spawn.info.natu.900": "<p>Aparece \xE0s <strong>9:00</strong>.</p>",
2562
+ "spawn.info.natu.920": "<p>Aparece \xE0s <strong>9:20</strong>.</p>",
2563
+ "spawn.info.indeedee.lane": "<p>Come\xE7a a aparecer \xE0s <strong>9:30</strong> / <strong>9:35</strong>.</p><p>Quando derrotado, <strong>ressurge ap\xF3s 60 segundos</strong> e concede <strong>5 pontos</strong>.</p><p>Se alguma das <strong>primeiras torres</strong> da lane for destru\xEDda, <strong>desaparece</strong>.</p>",
2564
+ "spawn.info.indeedee.tower": "<p>Aparece quando a <strong>primeira torre correspondente</strong> for destru\xEDda.</p><p>Quando derrotado, <strong>ressurge ap\xF3s 60 segundos</strong> e concede <strong>5 pontos</strong>.</p>",
2565
+ "spawn.info.salac": "<p>Quando consumido, concede <strong>b\xF4nus de velocidade de movimento</strong> por <strong>3 segundos</strong>.</p><p>Come\xE7a a aparecer \xE0s <strong>8:30</strong> e ressurgem <strong>60 segundos</strong> ap\xF3s o consumo.</p>",
2566
+ "spawn.info.salac.short": "<p>B\xF4nus de velocidade de movimento por 3 segundos.</p>",
2567
+ "spawn.info.altaria.after_regidrago": "<p>Come\xE7a a aparecer <strong>1:30 ap\xF3s o Regidrago ser derrotado</strong>.</p>",
2568
+ "spawn.info.altaria.rayquaza": "<p>Aparece \xE0s <strong>8:00</strong> e resurge a cada <strong>1:30</strong>.</p><p>Desaparece \xE0s <strong>2:30</strong>.</p>",
2569
+ "spawn.info.regidrago.kyogre": "<p>Aparece no <strong>centro do mapa \xE0s 8:00</strong>.</p>",
2570
+ "spawn.info.xatu.short": "<p>Aparece \xE0s <strong>9:59</strong>.</p>",
2571
+ "spawn.info.indeedee.tower_break": "<p>Aparece quando torre \xE9 destru\xEDda.</p>",
2572
+ "spawn.info.baltoy.tower_break": "<p>Aparece quando torre \xE9 destru\xEDda.</p>",
2573
+ "spawn.info.bunnelby.lane": "<p>Come\xE7a a aparecer \xE0s <strong>9:40</strong>.</p>",
2574
+ "spawn.info.bunnelby.lane_920_short": "<p>Come\xE7a a aparecer \xE0s <strong>9:20</strong>.</p>",
2575
+ "spawn.info.bunnelby.lane_915_short": "<p>Come\xE7a a aparecer \xE0s <strong>9:15</strong>.</p>",
2576
+ "spawn.info.baltoy.lane_940_short": "<p>Come\xE7a a aparecer \xE0s <strong>9:40</strong>.</p>",
2577
+ "spawn.info.baltoy.945_short": "<p>Come\xE7a a aparecer \xE0s <strong>9:45</strong>.</p>",
2578
+ "spawn.info.baltoy.lane_910_short": "<p>Come\xE7a a aparecer \xE0s <strong>9:10</strong>.</p>",
2579
+ "spawn.info.baltoy.lane_840_short": "<p>Come\xE7a a aparecer \xE0s <strong>8:40</strong>.</p>",
2580
+ "spawn.info.indeedee.lane_930": "<p>Come\xE7a a aparecer \xE0s <strong>9:30</strong>.</p>",
2581
+ "spawn.info.indeedee.lane_935": "<p>Come\xE7a a aparecer \xE0s <strong>9:35</strong>.</p>",
2582
+ "spawn.info.baltoy.tower_kyogre": "<p>Come\xE7a a aparecer quando a <strong>primeira torre correspondente</strong> for destru\xEDda.</p>",
2583
+ "spawn.info.indeedee.tower_short": "<p>Aparece quando a <strong>primeira torre correspondente</strong> for destru\xEDda.</p>"
2464
2584
  };
2465
2585
  var pt_BR_default = ptBR;
2466
2586
 
@@ -2559,7 +2679,71 @@ var jaJP = {
2559
2679
  "map-kyogre": "\u30C6\u30A4\u30A2\u306E\u5929\u7A7A\u907A\u8DE1",
2560
2680
  "map-kyogre.description": "\u30AB\u30A4\u30AA\u30FC\u30AC\u304C\u767B\u5834\u3059\u308B5v5\u30DE\u30C3\u30D7\u3002",
2561
2681
  "map-rayquaza": "\u30C6\u30A4\u30A2\u306E\u5929\u7A7A\u907A\u8DE1",
2562
- "map-rayquaza.description": "\u30EC\u30C3\u30AF\u30A6\u30B6\u304C\u767B\u5834\u3059\u308B5v5\u30DE\u30C3\u30D7\u3002"
2682
+ "map-rayquaza.description": "\u30EC\u30C3\u30AF\u30A6\u30B6\u304C\u767B\u5834\u3059\u308B5v5\u30DE\u30C3\u30D7\u3002",
2683
+ // Neutrals (wild Pokémon / items)
2684
+ accelgor: "\u30A2\u30C3\u30B1\u30E9\u30FC",
2685
+ altaria: "\u30C1\u30EB\u30BF\u30EA\u30B9",
2686
+ baltoy: "\u30E4\u30C9\u30F3",
2687
+ bunnelby: "\u30DB\u30EB\u30D3\u30FC",
2688
+ escavalier: "\u30B7\u30E5\u30D0\u30EB\u30B4",
2689
+ groudon: "\u30B0\u30E9\u30FC\u30C9\u30F3",
2690
+ indeedee: "\u30A4\u30A8\u30C3\u30B5\u30F3",
2691
+ kyogre: "\u30AB\u30A4\u30AA\u30FC\u30AC",
2692
+ natu: "\u30CD\u30A4\u30C6\u30A3",
2693
+ rayquaza: "\u30EC\u30C3\u30AF\u30A6\u30B6",
2694
+ regidrago: "\u30EC\u30B8\u30C9\u30E9\u30B4",
2695
+ regice: "\u30EC\u30B8\u30A2\u30A4\u30B9",
2696
+ regieleki: "\u30EC\u30B8\u30A8\u30EC\u30AD",
2697
+ regirock: "\u30EC\u30B8\u30ED\u30C3\u30AF",
2698
+ registeel: "\u30EC\u30B8\u30B9\u30C1\u30EB",
2699
+ salac: "\u30B5\u30E9\u30AF\u306E\u307F",
2700
+ sitrus: "\u30AA\u30DC\u30F3\u306E\u307F",
2701
+ xatu: "\u30CD\u30A4\u30C6\u30A3\u30AA",
2702
+ // Spawn info (HTML)
2703
+ "spawn.info.groudon.boss": "<p>\u6483\u7834\u3059\u308B\u3068\u3001\u751F\u5B58\u3057\u3066\u3044\u308B\u5473\u65B9\u5168\u54E1\u304C<strong>\u30D0\u30D5</strong>\u3068<strong>15\u30A2\u30A8\u30AA\u30B9\u30DD\u30A4\u30F3\u30C8</strong>\u3092\u7372\u5F97\u3002<br>\u3053\u306E\u30D0\u30D5\u306F<strong>\u6240\u6301\u8005\u304C\u30CE\u30C3\u30AF\u30A2\u30A6\u30C8\u3055\u308C\u308B\u307E\u3067\u6C38\u7D9A</strong>\u3002\u30CE\u30C3\u30AF\u30A2\u30A6\u30C8\u3055\u308C\u308B\u3068\u30D0\u30D5\u306F<strong>\u4E0E\u3048\u305F\u5074\u306B\u79FB\u308B</strong>\u3002<br><strong>\u30B4\u30FC\u30EB\u901F\u5EA6\u4E0A\u6607</strong>\u30FB<strong>\u5927\u30C0\u30E1\u30FC\u30B8\u4E0A\u6607</strong>\u30FB<strong>\u5C0F\u30B7\u30FC\u30EB\u30C9</strong>\u3002<br>2:00\u306B\u51FA\u73FE\u3002</p>",
2704
+ "spawn.info.bunnelby.initial": "<p><strong>\u8A66\u5408\u958B\u59CB\u6642\u306B\u51FA\u73FE</strong>\u3057\u3001<strong>\u6483\u7834\u5F8C\u306F\u518D\u51FA\u73FE\u3057\u306A\u3044</strong>\u3002</p><p>2\u30DD\u30A4\u30F3\u30C8\u7372\u5F97\u3002</p>",
2705
+ "spawn.info.bunnelby.lane_940": "<p><strong>9:40</strong>\u304B\u3089\u51FA\u73FE\u3002<br>\u6483\u7834\u3067<strong>2\u30DD\u30A4\u30F3\u30C8</strong>\u7372\u5F97\u3001<strong>60\u79D2</strong>\u5F8C\u306B\u518D\u51FA\u73FE\u3002<br>\u30EC\u30FC\u30F3\u306E<strong>\u6700\u521D\u306E\u30BF\u30EF\u30FC</strong>\u304C\u7834\u58CA\u3055\u308C\u308B\u3068<strong>\u6D88\u6EC5</strong>\u3002</p>",
2706
+ "spawn.info.bunnelby.lane_920": "<p><strong>9:20</strong>\u304B\u3089\u51FA\u73FE\u3002<br>\u6483\u7834\u3067<strong>2\u30DD\u30A4\u30F3\u30C8</strong>\u7372\u5F97\u3001<strong>60\u79D2</strong>\u5F8C\u306B\u518D\u51FA\u73FE\u3002<br>\u30EC\u30FC\u30F3\u306E<strong>\u6700\u521D\u306E\u30BF\u30EF\u30FC</strong>\u304C\u7834\u58CA\u3055\u308C\u308B\u3068<strong>\u6D88\u6EC5</strong>\u3002</p>",
2707
+ "spawn.info.bunnelby.lane_915": "<p><strong>9:15</strong>\u304B\u3089\u51FA\u73FE\u3002<br>\u6483\u7834\u3067<strong>2\u30DD\u30A4\u30F3\u30C8</strong>\u7372\u5F97\u3001<strong>60\u79D2</strong>\u5F8C\u306B\u518D\u51FA\u73FE\u3002<br>\u30EC\u30FC\u30F3\u306E<strong>\u6700\u521D\u306E\u30BF\u30EF\u30FC</strong>\u304C\u7834\u58CA\u3055\u308C\u308B\u3068<strong>\u6D88\u6EC5</strong>\u3002</p>",
2708
+ "spawn.info.accelgor": "<p><strong>9:45</strong>\u304B\u3089\u51FA\u73FE\u3002\u6483\u7834\u3067<strong>4/7\u30DD\u30A4\u30F3\u30C8</strong>\u3068<strong>\u30D0\u30D5</strong>\u3002<strong>60\u79D2</strong>\u5F8C\u306B\u518D\u51FA\u73FE\u3002<br>\u30D0\u30D5\u306F<strong>70\u79D2</strong>\u9593\u3001<strong>\u308F\u3056\u306E\u30AF\u30FC\u30EB\u30C0\u30A6\u30F310%\u77ED\u7E2E</strong>\u3002</p>",
2709
+ "spawn.info.escavalier": "<p><strong>9:45</strong>\u304B\u3089\u51FA\u73FE\u3002\u6483\u7834\u3067<strong>4/7\u30DD\u30A4\u30F3\u30C8</strong>\u3068<strong>\u30D0\u30D5</strong>\u3002<strong>60\u79D2</strong>\u5F8C\u306B\u518D\u51FA\u73FE\u3002<br>\u30D0\u30D5\u306F<strong>70\u79D2</strong>\u9593\u3001<strong>\u57FA\u672C\u653B\u6483\u30C0\u30E1\u30FC\u30B8\u4E0A\u6607\u30FB\u76F8\u624B\u306E\u79FB\u52D5\u901F\u5EA6\u77ED\u6642\u9593\u4F4E\u4E0B</strong>\u3002</p>",
2710
+ "spawn.info.baltoy.generic": "<p><strong>9:45</strong>\u304B\u3089\u51FA\u73FE\u3002\u6483\u7834\u3067<strong>2\u30DD\u30A4\u30F3\u30C8</strong>\u3002<strong>60\u79D2</strong>\u5F8C\u306B\u518D\u51FA\u73FE\u3002</p>",
2711
+ "spawn.info.baltoy.lane_940": "<p><strong>9:40</strong>\u304B\u3089\u51FA\u73FE\u3002\u6483\u7834\u3067<strong>2\u30DD\u30A4\u30F3\u30C8</strong>\u3002<strong>60\u79D2</strong>\u5F8C\u306B\u518D\u51FA\u73FE\u3002\u30EC\u30FC\u30F3\u306E<strong>\u6700\u521D\u306E\u30BF\u30EF\u30FC</strong>\u7834\u58CA\u3067<strong>\u6D88\u6EC5</strong>\u3002</p>",
2712
+ "spawn.info.baltoy.lane_920": "<p><strong>9:40</strong>\u304B\u3089\u51FA\u73FE\u3002\u6483\u7834\u3067<strong>2\u30DD\u30A4\u30F3\u30C8</strong>\u3002<strong>60\u79D2</strong>\u5F8C\u306B\u518D\u51FA\u73FE\u3002\u30EC\u30FC\u30F3\u306E<strong>\u6700\u521D\u306E\u30BF\u30EF\u30FC</strong>\u7834\u58CA\u3067<strong>\u6D88\u6EC5</strong>\u3002</p>",
2713
+ "spawn.info.baltoy.lane_910": "<p><strong>9:10</strong>\u304B\u3089\u51FA\u73FE\u3002\u6483\u7834\u3067<strong>2\u30DD\u30A4\u30F3\u30C8</strong>\u3002<strong>60\u79D2</strong>\u5F8C\u306B\u518D\u51FA\u73FE\u3002\u30EC\u30FC\u30F3\u306E<strong>\u6700\u521D\u306E\u30BF\u30EF\u30FC</strong>\u7834\u58CA\u3067<strong>\u6D88\u6EC5</strong>\u3002</p>",
2714
+ "spawn.info.baltoy.lane_910_only": "<p><strong>9:10</strong>\u304B\u3089\u51FA\u73FE\u3002\u6483\u7834\u3067<strong>2\u30DD\u30A4\u30F3\u30C8</strong>\u3002<strong>60\u79D2</strong>\u5F8C\u306B\u518D\u51FA\u73FE\u3002</p>",
2715
+ "spawn.info.baltoy.lane_840": "<p><strong>8:40</strong>\u304B\u3089\u51FA\u73FE\u3002\u6483\u7834\u3067<strong>2\u30DD\u30A4\u30F3\u30C8</strong>\u3002<strong>60\u79D2</strong>\u5F8C\u306B\u518D\u51FA\u73FE\u3002</p>",
2716
+ "spawn.info.baltoy.tower": "<p>\u5BFE\u5FDC\u3059\u308B<strong>\u6700\u521D\u306E\u30BF\u30EF\u30FC</strong>\u7834\u58CA\u5F8C\u306B\u51FA\u73FE\u3002\u6483\u7834\u3067<strong>2\u30DD\u30A4\u30F3\u30C8</strong>\u3002<strong>60\u79D2</strong>\u5F8C\u306B\u518D\u51FA\u73FE\u3002</p>",
2717
+ "spawn.info.regidrago": "<p><strong>8:00</strong>\u306B\u30DE\u30C3\u30D7\u4E2D\u592E\u306B\u51FA\u73FE\u3002\u6483\u7834\u304B\u3089<strong>1:30</strong>\u5F8C\u306B\u30C1\u30EB\u30BF\u30EA\u30B9\u304C\u51FA\u73FE\u3002<br>\u6483\u7834\u3057\u305F\u30C1\u30FC\u30E0\u306F<strong>\u5473\u65B9\u5168\u54E1\u306B\u7D4C\u9A13\u5024</strong>\u3002\u3068\u3069\u3081\u3092\u523A\u3057\u305F\u30D7\u30EC\u30A4\u30E4\u30FC\u306F<strong>\u5F97\u70B9\u901F\u5EA6\u30D0\u30D5</strong>\u3068<strong>20\u30DD\u30A4\u30F3\u30C8</strong>\u3002</p>",
2718
+ "spawn.info.regieleki": "<p><strong>7:00</strong>\u306B\u30C8\u30C3\u30D7/\u30DC\u30C8\u30E0\u306E\u3044\u305A\u308C\u304B\u306E\u30EC\u30FC\u30F3\u306B\u51FA\u73FE\u3002\u6483\u7834\u3059\u308B\u3068\u76F8\u624B\u9663\u5730\u3078\u3002\u9663\u5730\u306B\u5230\u9054\u3067<strong>20/16/12/8\u30DD\u30A4\u30F3\u30C8</strong>\u3001\u9663\u5730\u304C\u5065\u5728\u306A\u3089<strong>20/15/10/5\u79D2\u9593\u30B4\u30FC\u30EB\u5373\u6642</strong>\u3002<br>\u3068\u3069\u3081\u3067<strong>20\u30DD\u30A4\u30F3\u30C8</strong>\u3002\u6483\u7834\u304B\u3089<strong>2\u5206</strong>\u3067\u518D\u51FA\u73FE\u3002</p>",
2719
+ "spawn.info.regi.700": "<p><strong>7:00</strong>\u306B\u51FA\u73FE\u3002</p>",
2720
+ "spawn.info.xatu": "<p><strong>9:59</strong>\u306B\u51FA\u73FE\u3002\u6483\u7834\u3067<strong>\u5927\u91CF\u7D4C\u9A13\u5024</strong>\u3068<strong>2\u30DD\u30A4\u30F3\u30C8</strong>\u3002<strong>\u518D\u51FA\u73FE\u306A\u3057</strong>\u3002</p>",
2721
+ "spawn.info.natu.900": "<p><strong>9:00</strong>\u306B\u51FA\u73FE\u3002</p>",
2722
+ "spawn.info.natu.920": "<p><strong>9:20</strong>\u306B\u51FA\u73FE\u3002</p>",
2723
+ "spawn.info.indeedee.lane": "<p><strong>9:30</strong>/<strong>9:35</strong>\u304B\u3089\u51FA\u73FE\u3002\u6483\u7834\u3067<strong>60\u79D2</strong>\u5F8C\u306B\u518D\u51FA\u73FE\u3001<strong>5\u30DD\u30A4\u30F3\u30C8</strong>\u3002\u30EC\u30FC\u30F3\u306E<strong>\u6700\u521D\u306E\u30BF\u30EF\u30FC</strong>\u7834\u58CA\u3067<strong>\u6D88\u6EC5</strong>\u3002</p>",
2724
+ "spawn.info.indeedee.tower": "<p>\u5BFE\u5FDC\u3059\u308B<strong>\u6700\u521D\u306E\u30BF\u30EF\u30FC</strong>\u7834\u58CA\u5F8C\u306B\u51FA\u73FE\u3002\u6483\u7834\u3067<strong>60\u79D2</strong>\u5F8C\u306B\u518D\u51FA\u73FE\u3001<strong>5\u30DD\u30A4\u30F3\u30C8</strong>\u3002</p>",
2725
+ "spawn.info.salac": "<p>\u4F7F\u7528\u3067<strong>3\u79D2\u9593</strong><strong>\u79FB\u52D5\u901F\u5EA6\u30A2\u30C3\u30D7</strong>\u3002<strong>8:30</strong>\u304B\u3089\u51FA\u73FE\u3001\u4F7F\u7528\u5F8C<strong>60\u79D2</strong>\u3067\u518D\u51FA\u73FE\u3002</p>",
2726
+ "spawn.info.salac.short": "<p>3\u79D2\u9593\u79FB\u52D5\u901F\u5EA6\u30A2\u30C3\u30D7\u3002</p>",
2727
+ "spawn.info.altaria.after_regidrago": "<p>\u30EC\u30B8\u30C9\u30E9\u30B4\u6483\u7834\u304B\u3089<strong>1:30</strong>\u5F8C\u306B\u51FA\u73FE\u3002</p>",
2728
+ "spawn.info.altaria.rayquaza": "<p><strong>8:00</strong>\u306B\u51FA\u73FE\u3001<strong>1:30</strong>\u3054\u3068\u306B\u518D\u51FA\u73FE\u3002<strong>2:30</strong>\u306B\u6D88\u6EC5\u3002</p>",
2729
+ "spawn.info.kyogre.boss": "<p>\u6483\u7834\u3059\u308B\u3068\u751F\u5B58\u5473\u65B9\u5168\u54E1\u304C<strong>\u30D0\u30D5</strong>\u3068<strong>15\u30A2\u30A8\u30AA\u30B9\u30DD\u30A4\u30F3\u30C8</strong>\u3092\u7372\u5F97\u3002\u76F8\u624B\u306E\u6B8B\u5B58\u30BF\u30EF\u30FC\u306F1:30\u9593\u7121\u52B9\uFF08\u30B7\u30FC\u30EB\u30C9\u30FB\u56DE\u5FA9\u4E0D\u53EF\uFF09\u3002<br>\u30D0\u30D5\u306F<strong>\u6240\u6301\u8005\u304C\u30CE\u30C3\u30AF\u30A2\u30A6\u30C8\u3055\u308C\u308B\u307E\u3067\u6C38\u7D9A</strong>\u3002\u30CE\u30C3\u30AF\u30A2\u30A6\u30C8\u3067<strong>\u4E0E\u3048\u305F\u5074\u306B\u79FB\u308B</strong>\u3002<br><strong>\u30B4\u30FC\u30EB\u901F\u5EA6\u4E0A\u6607</strong>\u30FB<strong>\u81EA\u5DF1\u56DE\u5FA9(\u6BCE\u79D25%)</strong>\u30FB<strong>\u5C0F\u30B7\u30FC\u30EB\u30C9</strong>\u3002<br>2:00\u306B\u51FA\u73FE\u3002</p>",
2730
+ "spawn.info.rayquaza.boss": "<p>\u6483\u7834\u3067\u52DD\u5229\u30C1\u30FC\u30E0\u306B<strong>15\u30A2\u30A8\u30AA\u30B9\u30DD\u30A4\u30F3\u30C8</strong>\u3068<strong>\u30B7\u30FC\u30EB\u30C9</strong>\uFF08\u5F97\u70B9\u901F\u5EA6\u4E0A\u6607\u30FB\u30B4\u30FC\u30EB\u59A8\u5BB3\u7121\u52B9\uFF09\u3002<br>2:00\u306B\u51FA\u73FE\u3002</p>",
2731
+ "spawn.info.regidrago.kyogre": "<p><strong>8:00</strong>\u306B\u30DE\u30C3\u30D7\u4E2D\u592E\u306B\u51FA\u73FE\u3002</p>",
2732
+ "spawn.info.xatu.short": "<p><strong>9:59</strong>\u306B\u51FA\u73FE\u3002</p>",
2733
+ "spawn.info.indeedee.tower_break": "<p>\u30BF\u30EF\u30FC\u7834\u58CA\u3067\u51FA\u73FE\u3002</p>",
2734
+ "spawn.info.baltoy.tower_break": "<p>\u30BF\u30EF\u30FC\u7834\u58CA\u3067\u51FA\u73FE\u3002</p>",
2735
+ "spawn.info.bunnelby.lane": "<p><strong>9:40</strong>\u304B\u3089\u51FA\u73FE\u3002</p>",
2736
+ "spawn.info.bunnelby.lane_920_short": "<p><strong>9:20</strong>\u304B\u3089\u51FA\u73FE\u3002</p>",
2737
+ "spawn.info.bunnelby.lane_915_short": "<p><strong>9:15</strong>\u304B\u3089\u51FA\u73FE\u3002</p>",
2738
+ "spawn.info.baltoy.lane_940_short": "<p><strong>9:40</strong>\u304B\u3089\u51FA\u73FE\u3002</p>",
2739
+ "spawn.info.baltoy.945_short": "<p><strong>9:45</strong>\u304B\u3089\u51FA\u73FE\u3002</p>",
2740
+ "spawn.info.baltoy.lane_910_short": "<p><strong>9:10</strong>\u304B\u3089\u51FA\u73FE\u3002</p>",
2741
+ "spawn.info.baltoy.lane_840_short": "<p><strong>8:40</strong>\u304B\u3089\u51FA\u73FE\u3002</p>",
2742
+ "spawn.info.indeedee.lane_930": "<p><strong>9:30</strong>\u304B\u3089\u51FA\u73FE\u3002</p>",
2743
+ "spawn.info.indeedee.lane_935": "<p><strong>9:35</strong>\u304B\u3089\u51FA\u73FE\u3002</p>",
2744
+ "spawn.info.bunnelby.points": "<p>2\u30DD\u30A4\u30F3\u30C8\u7372\u5F97\u3002</p>",
2745
+ "spawn.info.baltoy.tower_kyogre": "<p>\u5BFE\u5FDC\u3059\u308B<strong>\u6700\u521D\u306E\u30BF\u30EF\u30FC</strong>\u7834\u58CA\u5F8C\u306B\u51FA\u73FE\u3002</p>",
2746
+ "spawn.info.indeedee.tower_short": "<p>\u5BFE\u5FDC\u3059\u308B<strong>\u6700\u521D\u306E\u30BF\u30EF\u30FC</strong>\u7834\u58CA\u5F8C\u306B\u51FA\u73FE\u3002</p>"
2563
2747
  };
2564
2748
  var ja_JP_default = jaJP;
2565
2749
 
@@ -2658,7 +2842,71 @@ var fr = {
2658
2842
  "map-kyogre": "Ruines C\xE9lestes de Theia",
2659
2843
  "map-kyogre.description": "Carte 5v5 avec Kyogre.",
2660
2844
  "map-rayquaza": "Ruines C\xE9lestes de Theia",
2661
- "map-rayquaza.description": "Carte 5v5 avec Rayquaza."
2845
+ "map-rayquaza.description": "Carte 5v5 avec Rayquaza.",
2846
+ // Neutrals (wild Pokémon / items)
2847
+ accelgor: "Accelgor",
2848
+ altaria: "Altaria",
2849
+ baltoy: "Balbuto",
2850
+ bunnelby: "Sapereau",
2851
+ escavalier: "Lan\xE7argot",
2852
+ groudon: "Groudon",
2853
+ indeedee: "Wimessir",
2854
+ kyogre: "Kyogre",
2855
+ natu: "Natu",
2856
+ rayquaza: "Rayquaza",
2857
+ regidrago: "Regidrago",
2858
+ regice: "Regice",
2859
+ regieleki: "Regieleki",
2860
+ regirock: "Regirock",
2861
+ registeel: "Registeel",
2862
+ salac: "Baie Salac",
2863
+ sitrus: "Baie Sitrus",
2864
+ xatu: "Xatu",
2865
+ // Spawn info (HTML)
2866
+ "spawn.info.groudon.boss": "<p>Une fois vaincu, tous les co\xE9quipiers vivants re\xE7oivent un <strong>buff</strong> et <strong>15 points aeos</strong>.<br>Ce buff est <strong>permanent jusqu'\xE0 ce que le porteur soit K.O.</strong>. Au K.O., le buff <strong>passe au vainqueur</strong>.<br>Il donne un <strong>boost de vitesse de score</strong>, un <strong>gros boost de d\xE9g\xE2ts</strong> et un <strong>petit bouclier</strong>.<br>Appara\xEEt toujours \xE0 2:00.</p>",
2867
+ "spawn.info.bunnelby.initial": "<p>Ils <strong>apparaissent au d\xE9but de la partie</strong> et <strong>ne r\xE9apparaissent jamais</strong> une fois vaincus.</p><p>Donnent 2 points.</p>",
2868
+ "spawn.info.bunnelby.lane_940": "<p>Commence \xE0 appara\xEEtre \xE0 <strong>9:40</strong>.</p><p>Vaincu : <strong>2 points</strong>, r\xE9apparition apr\xE8s <strong>60 secondes</strong>.</p><p>Si une des <strong>premi\xE8res tours</strong> de la voie est d\xE9truite, <strong>dispara\xEEt</strong>.</p>",
2869
+ "spawn.info.bunnelby.lane_920": "<p>Commence \xE0 appara\xEEtre \xE0 <strong>9:20</strong>.</p><p>Vaincu : <strong>2 points</strong>, r\xE9apparition apr\xE8s <strong>60 secondes</strong>.</p><p>Si une des <strong>premi\xE8res tours</strong> de la voie est d\xE9truite, <strong>dispara\xEEt</strong>.</p>",
2870
+ "spawn.info.bunnelby.lane_915": "<p>Commence \xE0 appara\xEEtre \xE0 <strong>9:15</strong>.</p><p>Vaincu : <strong>2 points</strong>, r\xE9apparition apr\xE8s <strong>60 secondes</strong>.</p><p>Si une des <strong>premi\xE8res tours</strong> de la voie est d\xE9truite, <strong>dispara\xEEt</strong>.</p>",
2871
+ "spawn.info.accelgor": "<p>Commence \xE0 <strong>9:45</strong>. Vaincu : <strong>4 / 7 points</strong> et <strong>buff</strong>. R\xE9apparition apr\xE8s <strong>60 s</strong>. Buff <strong>70 s</strong> : <strong>-10% temps de recharge des capacit\xE9s</strong>.</p>",
2872
+ "spawn.info.escavalier": "<p>Commence \xE0 <strong>9:45</strong>. Vaincu : <strong>4 / 7 points</strong> et <strong>buff</strong>. R\xE9apparition apr\xE8s <strong>60 s</strong>. Buff <strong>70 s</strong> : <strong>d\xE9g\xE2ts d\u2019attaque basique + ralentissement adverse</strong>.</p>",
2873
+ "spawn.info.baltoy.generic": "<p>Commence \xE0 <strong>9:45</strong>. Vaincu : <strong>2 points</strong>. R\xE9apparition apr\xE8s <strong>60 s</strong>.</p>",
2874
+ "spawn.info.baltoy.lane_940": "<p>Commence \xE0 <strong>9:40</strong>. Vaincu : <strong>2 points</strong>. R\xE9apparition apr\xE8s <strong>60 s</strong>. <strong>Premi\xE8re tour</strong> d\xE9truite \u2192 <strong>dispara\xEEt</strong>.</p>",
2875
+ "spawn.info.baltoy.lane_920": "<p>Commence \xE0 <strong>9:40</strong>. Vaincu : <strong>2 points</strong>. R\xE9apparition apr\xE8s <strong>60 s</strong>. <strong>Premi\xE8re tour</strong> d\xE9truite \u2192 <strong>dispara\xEEt</strong>.</p>",
2876
+ "spawn.info.baltoy.lane_910": "<p>Commence \xE0 <strong>9:10</strong>. Vaincu : <strong>2 points</strong>. R\xE9apparition apr\xE8s <strong>60 s</strong>. <strong>Premi\xE8re tour</strong> d\xE9truite \u2192 <strong>dispara\xEEt</strong>.</p>",
2877
+ "spawn.info.baltoy.lane_910_only": "<p>Commence \xE0 <strong>9:10</strong>. Vaincu : <strong>2 points</strong>. R\xE9apparition apr\xE8s <strong>60 s</strong>.</p>",
2878
+ "spawn.info.baltoy.lane_840": "<p>Commence \xE0 <strong>8:40</strong>. Vaincu : <strong>2 points</strong>. R\xE9apparition apr\xE8s <strong>60 s</strong>.</p>",
2879
+ "spawn.info.baltoy.tower": "<p>Appara\xEEt quand la <strong>premi\xE8re tour correspondante</strong> est d\xE9truite. Vaincu : <strong>2 points</strong>. R\xE9apparition apr\xE8s <strong>60 s</strong>.</p>",
2880
+ "spawn.info.regidrago": "<p>Appara\xEEt <strong>au centre \xE0 8:00</strong>. Vaincu \u2192 <strong>Altaria 1:30 apr\xE8s</strong>.<br>L\u2019\xE9quipe qui le vainc gagne <strong>de l\u2019exp pour toute l\u2019\xE9quipe</strong>. Dernier coup : <strong>buff score</strong> et <strong>20 points</strong>.</p>",
2881
+ "spawn.info.regieleki": "<p>Appara\xEEt \xE0 <strong>7:00</strong> en haut ou en bas. Vaincu \u2192 va vers la base adverse ; touche la base : <strong>20/16/12/8 points</strong> ; base vivante : <strong>buts instantan\xE9s 20/15/10/5 s</strong>.<br>Dernier coup : <strong>20 points</strong>. R\xE9apparition <strong>2 min</strong> apr\xE8s.</p>",
2882
+ "spawn.info.regi.700": "<p>Appara\xEEt \xE0 <strong>7:00</strong>.</p>",
2883
+ "spawn.info.xatu": "<p>Appara\xEEt \xE0 <strong>9:59</strong>. Vaincu : <strong>beaucoup d\u2019exp</strong> et <strong>2 points</strong>. <strong>Ne r\xE9appara\xEEt pas</strong>.</p>",
2884
+ "spawn.info.natu.900": "<p>Appara\xEEt \xE0 <strong>9:00</strong>.</p>",
2885
+ "spawn.info.natu.920": "<p>Appara\xEEt \xE0 <strong>9:20</strong>.</p>",
2886
+ "spawn.info.indeedee.lane": "<p>Commence \xE0 <strong>9:30</strong> / <strong>9:35</strong>. Vaincu : r\xE9apparition <strong>60 s</strong>, <strong>5 points</strong>. <strong>Premi\xE8re tour</strong> d\xE9truite \u2192 <strong>dispara\xEEt</strong>.</p>",
2887
+ "spawn.info.indeedee.tower": "<p>Appara\xEEt quand la <strong>premi\xE8re tour correspondante</strong> est d\xE9truite. Vaincu : r\xE9apparition <strong>60 s</strong>, <strong>5 points</strong>.</p>",
2888
+ "spawn.info.salac": "<p>Consomm\xE9 : <strong>bonus vitesse 3 s</strong>. Apparition \xE0 <strong>8:30</strong>, r\xE9apparition <strong>60 s</strong> apr\xE8s consommation.</p>",
2889
+ "spawn.info.salac.short": "<p>Bonus de vitesse pendant 3 secondes.</p>",
2890
+ "spawn.info.altaria.after_regidrago": "<p>Appara\xEEt <strong>1:30 apr\xE8s la chute de Regidrago</strong>.</p>",
2891
+ "spawn.info.altaria.rayquaza": "<p>Appara\xEEt \xE0 <strong>8:00</strong>, r\xE9apparition toutes les <strong>1:30</strong>. Dispara\xEEt \xE0 <strong>2:30</strong>.</p>",
2892
+ "spawn.info.kyogre.boss": "<p>Vaincu : co\xE9quipiers vivants \u2192 <strong>buff</strong>, <strong>15 points aeos</strong>, tours adverses encore debout d\xE9sactiv\xE9es 1:30 (pas de bouclier/r\xE9g\xE9n).<br>Buff <strong>permanent jusqu\u2019au K.O. du porteur</strong>, puis <strong>passe au vainqueur</strong>.<br><strong>Vitesse de score</strong>, <strong>r\xE9g\xE9n 5%/s</strong>, <strong>petit bouclier</strong>. Appara\xEEt \xE0 2:00.</p>",
2893
+ "spawn.info.rayquaza.boss": "<p>Vaincu : \xE9quipe gagnante re\xE7oit <strong>15 points aeos</strong>, un <strong>bouclier</strong> qui <strong>acc\xE9l\xE8re le score</strong> et <strong>emp\xEAche le blocage des buts</strong>. Appara\xEEt \xE0 2:00.</p>",
2894
+ "spawn.info.regidrago.kyogre": "<p>Appara\xEEt <strong>au centre \xE0 8:00</strong>.</p>",
2895
+ "spawn.info.xatu.short": "<p>Appara\xEEt \xE0 <strong>9:59</strong>.</p>",
2896
+ "spawn.info.indeedee.tower_break": "<p>Apparition apr\xE8s destruction de tour.</p>",
2897
+ "spawn.info.baltoy.tower_break": "<p>Apparition apr\xE8s destruction de tour.</p>",
2898
+ "spawn.info.bunnelby.lane": "<p>Commence \xE0 appara\xEEtre \xE0 <strong>9:40</strong>.</p>",
2899
+ "spawn.info.bunnelby.lane_920_short": "<p>Commence \xE0 appara\xEEtre \xE0 <strong>9:20</strong>.</p>",
2900
+ "spawn.info.bunnelby.lane_915_short": "<p>Commence \xE0 appara\xEEtre \xE0 <strong>9:15</strong>.</p>",
2901
+ "spawn.info.baltoy.lane_940_short": "<p>Commence \xE0 appara\xEEtre \xE0 <strong>9:40</strong>.</p>",
2902
+ "spawn.info.baltoy.945_short": "<p>Commence \xE0 appara\xEEtre \xE0 <strong>9:45</strong>.</p>",
2903
+ "spawn.info.baltoy.lane_910_short": "<p>Commence \xE0 appara\xEEtre \xE0 <strong>9:10</strong>.</p>",
2904
+ "spawn.info.baltoy.lane_840_short": "<p>Commence \xE0 appara\xEEtre \xE0 <strong>8:40</strong>.</p>",
2905
+ "spawn.info.indeedee.lane_930": "<p>Commence \xE0 appara\xEEtre \xE0 <strong>9:30</strong>.</p>",
2906
+ "spawn.info.indeedee.lane_935": "<p>Commence \xE0 appara\xEEtre \xE0 <strong>9:35</strong>.</p>",
2907
+ "spawn.info.bunnelby.points": "<p>Donnent 2 points.</p>",
2908
+ "spawn.info.baltoy.tower_kyogre": "<p>Appara\xEEt quand la <strong>premi\xE8re tour correspondante</strong> est d\xE9truite.</p>",
2909
+ "spawn.info.indeedee.tower_short": "<p>Appara\xEEt quand la <strong>premi\xE8re tour correspondante</strong> est d\xE9truite.</p>"
2662
2910
  };
2663
2911
  var fr_default = fr;
2664
2912
 
@@ -2757,7 +3005,71 @@ var es = {
2757
3005
  "map-kyogre": "Ruinas Celestiales de Theia",
2758
3006
  "map-kyogre.description": "Mapa 5v5 con Kyogre.",
2759
3007
  "map-rayquaza": "Ruinas Celestiales de Theia",
2760
- "map-rayquaza.description": "Mapa 5v5 con Rayquaza."
3008
+ "map-rayquaza.description": "Mapa 5v5 con Rayquaza.",
3009
+ // Neutrals (wild Pokémon / items)
3010
+ accelgor: "Accelgor",
3011
+ altaria: "Altaria",
3012
+ baltoy: "Baltoy",
3013
+ bunnelby: "Bunnelby",
3014
+ escavalier: "Escavalier",
3015
+ groudon: "Groudon",
3016
+ indeedee: "Indeedee",
3017
+ kyogre: "Kyogre",
3018
+ natu: "Natu",
3019
+ rayquaza: "Rayquaza",
3020
+ regidrago: "Regidrago",
3021
+ regice: "Regice",
3022
+ regieleki: "Regieleki",
3023
+ regirock: "Regirock",
3024
+ registeel: "Registeel",
3025
+ salac: "Baya Salac",
3026
+ sitrus: "Baya Sitrus",
3027
+ xatu: "Xatu",
3028
+ // Spawn info (HTML)
3029
+ "spawn.info.groudon.boss": "<p>Al derrotarlo, todos los compa\xF1eros vivos reciben <strong>buff</strong> y <strong>15 puntos aeos</strong>.<br>El buff es <strong>permanente hasta que el portador sea K.O.</strong>. Al ser K.O., el buff <strong>pasa al que lo derrot\xF3</strong>.<br>Da <strong>aumento de velocidad de anotaci\xF3n</strong>, <strong>gran aumento de da\xF1o</strong> y <strong>peque\xF1o escudo</strong>.<br>Siempre aparece a las 2:00.</p>",
3030
+ "spawn.info.bunnelby.initial": "<p><strong>Aparecen al inicio de la partida</strong> y <strong>no reaparecen</strong> al ser derrotados.</p><p>Dan 2 puntos.</p>",
3031
+ "spawn.info.bunnelby.lane_940": "<p>Empieza a aparecer a las <strong>9:40</strong>.</p><p>Al derrotarlo: <strong>2 puntos</strong>, reaparece tras <strong>60 segundos</strong>.</p><p>Si alguna <strong>primera torre</strong> del carril cae, <strong>desaparece</strong>.</p>",
3032
+ "spawn.info.bunnelby.lane_920": "<p>Empieza a aparecer a las <strong>9:20</strong>.</p><p>Al derrotarlo: <strong>2 puntos</strong>, reaparece tras <strong>60 segundos</strong>.</p><p>Si alguna <strong>primera torre</strong> del carril cae, <strong>desaparece</strong>.</p>",
3033
+ "spawn.info.bunnelby.lane_915": "<p>Empieza a aparecer a las <strong>9:15</strong>.</p><p>Al derrotarlo: <strong>2 puntos</strong>, reaparece tras <strong>60 segundos</strong>.</p><p>Si alguna <strong>primera torre</strong> del carril cae, <strong>desaparece</strong>.</p>",
3034
+ "spawn.info.accelgor": "<p>Empieza a las <strong>9:45</strong>. Derrotado: <strong>4 / 7 puntos</strong> y <strong>buff</strong>. Reaparece en <strong>60 s</strong>. Buff <strong>70 s</strong>: <strong>-10% enfriamiento de movimientos</strong>.</p>",
3035
+ "spawn.info.escavalier": "<p>Empieza a las <strong>9:45</strong>. Derrotado: <strong>4 / 7 puntos</strong> y <strong>buff</strong>. Reaparece en <strong>60 s</strong>. Buff <strong>70 s</strong>: <strong>da\xF1o extra en ataques b\xE1sicos y ralentiza al rival</strong>.</p>",
3036
+ "spawn.info.baltoy.generic": "<p>Empieza a las <strong>9:45</strong>. Derrotado: <strong>2 puntos</strong>. Reaparece en <strong>60 s</strong>.</p>",
3037
+ "spawn.info.baltoy.lane_940": "<p>Empieza a las <strong>9:40</strong>. Derrotado: <strong>2 puntos</strong>. Reaparece en <strong>60 s</strong>. <strong>Primera torre</strong> del carril destruida \u2192 <strong>desaparece</strong>.</p>",
3038
+ "spawn.info.baltoy.lane_920": "<p>Empieza a las <strong>9:40</strong>. Derrotado: <strong>2 puntos</strong>. Reaparece en <strong>60 s</strong>. <strong>Primera torre</strong> del carril destruida \u2192 <strong>desaparece</strong>.</p>",
3039
+ "spawn.info.baltoy.lane_910": "<p>Empieza a las <strong>9:10</strong>. Derrotado: <strong>2 puntos</strong>. Reaparece en <strong>60 s</strong>. <strong>Primera torre</strong> del carril destruida \u2192 <strong>desaparece</strong>.</p>",
3040
+ "spawn.info.baltoy.lane_910_only": "<p>Empieza a las <strong>9:10</strong>. Derrotado: <strong>2 puntos</strong>. Reaparece en <strong>60 s</strong>.</p>",
3041
+ "spawn.info.baltoy.lane_840": "<p>Empieza a las <strong>8:40</strong>. Derrotado: <strong>2 puntos</strong>. Reaparece en <strong>60 s</strong>.</p>",
3042
+ "spawn.info.baltoy.tower": "<p>Aparece cuando la <strong>primera torre correspondiente</strong> es destruida. Derrotado: <strong>2 puntos</strong>. Reaparece en <strong>60 s</strong>.</p>",
3043
+ "spawn.info.regidrago": "<p>Aparece en <strong>el centro del mapa a las 8:00</strong>. Derrotado \u2192 <strong>Altaria 1:30 despu\xE9s</strong>.<br>El equipo que lo derrote gana <strong>experiencia para todos</strong>. Golpe final: <strong>buff de anotaci\xF3n</strong> y <strong>20 puntos</strong>.</p>",
3044
+ "spawn.info.regieleki": "<p>Aparece a las <strong>7:00</strong> en carril superior o inferior. Derrotado \u2192 va a la base rival; toca base: <strong>20/16/12/8 puntos</strong>; base viva: <strong>goles instant\xE1neos 20/15/10/5 s</strong>.<br>Golpe final: <strong>20 puntos</strong>. Reaparece <strong>2 min</strong> despu\xE9s.</p>",
3045
+ "spawn.info.regi.700": "<p>Aparece a las <strong>7:00</strong>.</p>",
3046
+ "spawn.info.xatu": "<p>Aparece a las <strong>9:59</strong>. Derrotado: <strong>mucha experiencia</strong> y <strong>2 puntos</strong>. <strong>No reaparece</strong>.</p>",
3047
+ "spawn.info.natu.900": "<p>Aparece a las <strong>9:00</strong>.</p>",
3048
+ "spawn.info.natu.920": "<p>Aparece a las <strong>9:20</strong>.</p>",
3049
+ "spawn.info.indeedee.lane": "<p>Empieza a las <strong>9:30</strong> / <strong>9:35</strong>. Derrotado: reaparece en <strong>60 s</strong>, <strong>5 puntos</strong>. <strong>Primera torre</strong> destruida \u2192 <strong>desaparece</strong>.</p>",
3050
+ "spawn.info.indeedee.tower": "<p>Aparece cuando la <strong>primera torre correspondiente</strong> es destruida. Derrotado: reaparece en <strong>60 s</strong>, <strong>5 puntos</strong>.</p>",
3051
+ "spawn.info.salac": "<p>Al consumir: <strong>bonus de velocidad 3 s</strong>. Aparece a las <strong>8:30</strong>, reaparece <strong>60 s</strong> despu\xE9s de consumir.</p>",
3052
+ "spawn.info.salac.short": "<p>Bonus de velocidad durante 3 segundos.</p>",
3053
+ "spawn.info.altaria.after_regidrago": "<p>Aparece <strong>1:30 despu\xE9s de derrotar a Regidrago</strong>.</p>",
3054
+ "spawn.info.altaria.rayquaza": "<p>Aparece a las <strong>8:00</strong>, reaparece cada <strong>1:30</strong>. Desaparece a las <strong>2:30</strong>.</p>",
3055
+ "spawn.info.kyogre.boss": "<p>Derrotado: compa\xF1eros vivos \u2192 <strong>buff</strong>, <strong>15 puntos aeos</strong>, torres rivales a\xFAn en pie desactivadas 1:30 (sin escudo/regen).<br>Buff <strong>permanente hasta K.O. del portador</strong>, luego <strong>pasa al que lo derrot\xF3</strong>.<br><strong>Velocidad de anotaci\xF3n</strong>, <strong>regen 5%/s</strong>, <strong>peque\xF1o escudo</strong>. Aparece a las 2:00.</p>",
3056
+ "spawn.info.rayquaza.boss": "<p>Derrotado: el equipo ganador recibe <strong>15 puntos aeos</strong>, un <strong>escudo</strong> que <strong>acelera el marcador</strong> y <strong>evita que bloqueen goles</strong>. Aparece a las 2:00.</p>",
3057
+ "spawn.info.regidrago.kyogre": "<p>Aparece en <strong>el centro del mapa a las 8:00</strong>.</p>",
3058
+ "spawn.info.xatu.short": "<p>Aparece a las <strong>9:59</strong>.</p>",
3059
+ "spawn.info.indeedee.tower_break": "<p>Aparece al destruir torre.</p>",
3060
+ "spawn.info.baltoy.tower_break": "<p>Aparece al destruir torre.</p>",
3061
+ "spawn.info.bunnelby.lane": "<p>Empieza a aparecer a las <strong>9:40</strong>.</p>",
3062
+ "spawn.info.bunnelby.lane_920_short": "<p>Empieza a aparecer a las <strong>9:20</strong>.</p>",
3063
+ "spawn.info.bunnelby.lane_915_short": "<p>Empieza a aparecer a las <strong>9:15</strong>.</p>",
3064
+ "spawn.info.baltoy.lane_940_short": "<p>Empieza a aparecer a las <strong>9:40</strong>.</p>",
3065
+ "spawn.info.baltoy.945_short": "<p>Empieza a aparecer a las <strong>9:45</strong>.</p>",
3066
+ "spawn.info.baltoy.lane_910_short": "<p>Empieza a aparecer a las <strong>9:10</strong>.</p>",
3067
+ "spawn.info.baltoy.lane_840_short": "<p>Empieza a aparecer a las <strong>8:40</strong>.</p>",
3068
+ "spawn.info.indeedee.lane_930": "<p>Empieza a aparecer a las <strong>9:30</strong>.</p>",
3069
+ "spawn.info.indeedee.lane_935": "<p>Empieza a aparecer a las <strong>9:35</strong>.</p>",
3070
+ "spawn.info.bunnelby.points": "<p>Dan 2 puntos.</p>",
3071
+ "spawn.info.baltoy.tower_kyogre": "<p>Aparece cuando la <strong>primera torre correspondiente</strong> es destruida.</p>",
3072
+ "spawn.info.indeedee.tower_short": "<p>Aparece cuando la <strong>primera torre correspondiente</strong> es destruida.</p>"
2761
3073
  };
2762
3074
  var es_default = es;
2763
3075
 
@@ -2782,6 +3094,22 @@ function getMapDescription(mapId, locale = "en") {
2782
3094
  const map = locales[locale] ?? en_default;
2783
3095
  return map[key] ?? en_default[key] ?? "";
2784
3096
  }
3097
+ function getNeutralName(neutralId, locale = "en") {
3098
+ const map = locales[locale] ?? en_default;
3099
+ return map[neutralId] ?? en_default[neutralId] ?? neutralId;
3100
+ }
3101
+ function getSpawnInfo(infoKey, locale = "en") {
3102
+ const key = `spawn.info.${infoKey}`;
3103
+ const map = locales[locale] ?? en_default;
3104
+ return map[key] ?? en_default[key] ?? "";
3105
+ }
3106
+ function getSpawnInfoForSpawn(spawn, locale = "en") {
3107
+ if (spawn.infoKey) {
3108
+ const out = getSpawnInfo(spawn.infoKey, locale);
3109
+ if (out) return out;
3110
+ }
3111
+ return spawn.info ?? "";
3112
+ }
2785
3113
  // Annotate the CommonJS export names for ESM import in node:
2786
3114
  0 && (module.exports = {
2787
3115
  en,
@@ -2789,7 +3117,10 @@ function getMapDescription(mapId, locale = "en") {
2789
3117
  fr,
2790
3118
  getMapDescription,
2791
3119
  getMapName,
3120
+ getNeutralName,
2792
3121
  getPokemonName,
3122
+ getSpawnInfo,
3123
+ getSpawnInfoForSpawn,
2793
3124
  jaJP,
2794
3125
  ptBR
2795
3126
  });