diff --git a/data/lib/index.ts b/data/lib/index.ts index 3b6fc5c8..e3104089 100644 --- a/data/lib/index.ts +++ b/data/lib/index.ts @@ -4,8 +4,8 @@ // // kind s specie, i item, x literal (Egg, Substitute, ...) // name the encoded name, [a-z0-9_]+ -// flags -o forme -k cosmetic -b back -s shiny -a asymmetrical -// -f female -g gmax or -g -v -c +// flags -o forme -b back -s shiny -a asymmetrical -f female +// -g gmax or -g -v -c // // A name is encoded rather than spelled, because the two places these sprites // are published disagree about what a word boundary is: smogon writes @@ -48,23 +48,12 @@ export function psid(e: string): string { // A published name: the name and its forme joined with a dash, then the // variant flags, which both sides spell the same way. -// -// A cosmetic is its own component rather than part of the forme, because the -// two readings disagree about where a forme's words divide but not about the -// boundary in front of the cosmetic. Alcremie's cream is `caramel-swirl` for -// smogon and `caramelswirl` for PS, while its sweet is `-berry` for both; fold -// the sweet into the forme and whichever reading you spell it for, the other -// one comes out wrong. export function publishedName(sn: SpriteFilename, part: (e: string) => string): string { let name = part(sn.name); let forme = sn.extra.get('o'); if (forme) { name += `-${part(forme)}`; } - let cosmetic = sn.extra.get('k'); - if (cosmetic) { - name += `-${part(cosmetic)}`; - } if (sn.extra.has('f')) { name += '-f'; } @@ -134,25 +123,19 @@ export function parseFilename(s: string): SpriteFilename { return {kind, name: first.slice(1), extra}; } -// The flags publishedName() spells into the name, in the order it spells them. -const NAME_PARTS = ['o', 'k']; - export function formatFilename(si: InputSpriteFilename): string { let s = `${si.kind}${si.name}`; - // The parts of the name lead, in the order they are published, so a - // forme's whole set of sprites sorts together instead of interleaving with - // the base forme's by flag letter. - for (let k of NAME_PARTS) { - let v = si.extra?.get(k); - if (v !== undefined) { - s += `-${k}${v}`; - } + // The forme leads, so a forme's whole set of sprites sorts together + // instead of interleaving with the base forme's by flag letter. + let forme = si.extra?.get('o'); + if (forme !== undefined) { + s += `-o${forme}`; } let extra = []; for (let [k, v] of si.extra?.entries() ?? []) { - if (!NAME_PARTS.includes(k)) { + if (k !== 'o') { extra.push(`-${k}${v}`); } } diff --git a/src/models/salcremie-ocaramel_swirl-kberry.gif b/src/models/salcremie-ocaramel_swirl-kberry.gif deleted file mode 100644 index 4c783adf..00000000 Binary files a/src/models/salcremie-ocaramel_swirl-kberry.gif and /dev/null differ diff --git a/src/models/salcremie-ocaramel_swirl-kclover.gif b/src/models/salcremie-ocaramel_swirl-kclover.gif deleted file mode 100644 index 5451a174..00000000 Binary files a/src/models/salcremie-ocaramel_swirl-kclover.gif and /dev/null differ diff --git a/src/models/salcremie-ocaramel_swirl-kflower.gif b/src/models/salcremie-ocaramel_swirl-kflower.gif deleted file mode 100644 index 19581813..00000000 Binary files a/src/models/salcremie-ocaramel_swirl-kflower.gif and /dev/null differ diff --git a/src/models/salcremie-ocaramel_swirl-klove.gif b/src/models/salcremie-ocaramel_swirl-klove.gif deleted file mode 100644 index 3f985171..00000000 Binary files a/src/models/salcremie-ocaramel_swirl-klove.gif and /dev/null differ diff --git a/src/models/salcremie-ocaramel_swirl-kribbon.gif b/src/models/salcremie-ocaramel_swirl-kribbon.gif deleted file mode 100644 index 6068d529..00000000 Binary files a/src/models/salcremie-ocaramel_swirl-kribbon.gif and /dev/null differ diff --git a/src/models/salcremie-ocaramel_swirl-kstar.gif b/src/models/salcremie-ocaramel_swirl-kstar.gif deleted file mode 100644 index 0ec95532..00000000 Binary files a/src/models/salcremie-ocaramel_swirl-kstar.gif and /dev/null differ diff --git a/src/models/salcremie-olemon_cream-kberry.gif b/src/models/salcremie-olemon_cream-kberry.gif deleted file mode 100644 index e296d4b0..00000000 Binary files a/src/models/salcremie-olemon_cream-kberry.gif and /dev/null differ diff --git a/src/models/salcremie-olemon_cream-kclover.gif b/src/models/salcremie-olemon_cream-kclover.gif deleted file mode 100644 index a8358668..00000000 Binary files a/src/models/salcremie-olemon_cream-kclover.gif and /dev/null differ diff --git a/src/models/salcremie-olemon_cream-kflower.gif b/src/models/salcremie-olemon_cream-kflower.gif deleted file mode 100644 index 62f54c66..00000000 Binary files a/src/models/salcremie-olemon_cream-kflower.gif and /dev/null differ diff --git a/src/models/salcremie-olemon_cream-klove.gif b/src/models/salcremie-olemon_cream-klove.gif deleted file mode 100644 index af68dfc2..00000000 Binary files a/src/models/salcremie-olemon_cream-klove.gif and /dev/null differ diff --git a/src/models/salcremie-olemon_cream-kribbon.gif b/src/models/salcremie-olemon_cream-kribbon.gif deleted file mode 100644 index 72185508..00000000 Binary files a/src/models/salcremie-olemon_cream-kribbon.gif and /dev/null differ diff --git a/src/models/salcremie-olemon_cream-kstar.gif b/src/models/salcremie-olemon_cream-kstar.gif deleted file mode 100644 index 809bd81f..00000000 Binary files a/src/models/salcremie-olemon_cream-kstar.gif and /dev/null differ diff --git a/src/models/salcremie-omatcha_cream-kberry.gif b/src/models/salcremie-omatcha_cream-kberry.gif deleted file mode 100644 index c35c401e..00000000 Binary files a/src/models/salcremie-omatcha_cream-kberry.gif and /dev/null differ diff --git a/src/models/salcremie-omatcha_cream-kclover.gif b/src/models/salcremie-omatcha_cream-kclover.gif deleted file mode 100644 index 04e1999b..00000000 Binary files a/src/models/salcremie-omatcha_cream-kclover.gif and /dev/null differ diff --git a/src/models/salcremie-omatcha_cream-kflower.gif b/src/models/salcremie-omatcha_cream-kflower.gif deleted file mode 100644 index 633d2d93..00000000 Binary files a/src/models/salcremie-omatcha_cream-kflower.gif and /dev/null differ diff --git a/src/models/salcremie-omatcha_cream-klove.gif b/src/models/salcremie-omatcha_cream-klove.gif deleted file mode 100644 index cde68bbc..00000000 Binary files a/src/models/salcremie-omatcha_cream-klove.gif and /dev/null differ diff --git a/src/models/salcremie-omatcha_cream-kribbon.gif b/src/models/salcremie-omatcha_cream-kribbon.gif deleted file mode 100644 index e8430c0b..00000000 Binary files a/src/models/salcremie-omatcha_cream-kribbon.gif and /dev/null differ diff --git a/src/models/salcremie-omatcha_cream-kstar.gif b/src/models/salcremie-omatcha_cream-kstar.gif deleted file mode 100644 index 71ffec1a..00000000 Binary files a/src/models/salcremie-omatcha_cream-kstar.gif and /dev/null differ diff --git a/src/models/salcremie-omint_cream-kberry.gif b/src/models/salcremie-omint_cream-kberry.gif deleted file mode 100644 index 788a9f2d..00000000 Binary files a/src/models/salcremie-omint_cream-kberry.gif and /dev/null differ diff --git a/src/models/salcremie-omint_cream-kclover.gif b/src/models/salcremie-omint_cream-kclover.gif deleted file mode 100644 index dab4a058..00000000 Binary files a/src/models/salcremie-omint_cream-kclover.gif and /dev/null differ diff --git a/src/models/salcremie-omint_cream-kflower.gif b/src/models/salcremie-omint_cream-kflower.gif deleted file mode 100644 index 6f0232a2..00000000 Binary files a/src/models/salcremie-omint_cream-kflower.gif and /dev/null differ diff --git a/src/models/salcremie-omint_cream-klove.gif b/src/models/salcremie-omint_cream-klove.gif deleted file mode 100644 index 3be322b9..00000000 Binary files a/src/models/salcremie-omint_cream-klove.gif and /dev/null differ diff --git a/src/models/salcremie-omint_cream-kribbon.gif b/src/models/salcremie-omint_cream-kribbon.gif deleted file mode 100644 index 72c23952..00000000 Binary files a/src/models/salcremie-omint_cream-kribbon.gif and /dev/null differ diff --git a/src/models/salcremie-omint_cream-kstar.gif b/src/models/salcremie-omint_cream-kstar.gif deleted file mode 100644 index b8b287c8..00000000 Binary files a/src/models/salcremie-omint_cream-kstar.gif and /dev/null differ diff --git a/src/models/salcremie-orainbow_swirl-kberry.gif b/src/models/salcremie-orainbow_swirl-kberry.gif deleted file mode 100644 index fdca5866..00000000 Binary files a/src/models/salcremie-orainbow_swirl-kberry.gif and /dev/null differ diff --git a/src/models/salcremie-orainbow_swirl-kclover.gif b/src/models/salcremie-orainbow_swirl-kclover.gif deleted file mode 100644 index 356d4240..00000000 Binary files a/src/models/salcremie-orainbow_swirl-kclover.gif and /dev/null differ diff --git a/src/models/salcremie-orainbow_swirl-kflower.gif b/src/models/salcremie-orainbow_swirl-kflower.gif deleted file mode 100644 index 7ad06875..00000000 Binary files a/src/models/salcremie-orainbow_swirl-kflower.gif and /dev/null differ diff --git a/src/models/salcremie-orainbow_swirl-klove.gif b/src/models/salcremie-orainbow_swirl-klove.gif deleted file mode 100644 index e6faaa8e..00000000 Binary files a/src/models/salcremie-orainbow_swirl-klove.gif and /dev/null differ diff --git a/src/models/salcremie-orainbow_swirl-kribbon.gif b/src/models/salcremie-orainbow_swirl-kribbon.gif deleted file mode 100644 index acfaafd2..00000000 Binary files a/src/models/salcremie-orainbow_swirl-kribbon.gif and /dev/null differ diff --git a/src/models/salcremie-orainbow_swirl-kstar.gif b/src/models/salcremie-orainbow_swirl-kstar.gif deleted file mode 100644 index 369c3dfa..00000000 Binary files a/src/models/salcremie-orainbow_swirl-kstar.gif and /dev/null differ diff --git a/src/models/salcremie-oruby_cream-kberry.gif b/src/models/salcremie-oruby_cream-kberry.gif deleted file mode 100644 index 78d81203..00000000 Binary files a/src/models/salcremie-oruby_cream-kberry.gif and /dev/null differ diff --git a/src/models/salcremie-oruby_cream-kclover.gif b/src/models/salcremie-oruby_cream-kclover.gif deleted file mode 100644 index ae967821..00000000 Binary files a/src/models/salcremie-oruby_cream-kclover.gif and /dev/null differ diff --git a/src/models/salcremie-oruby_cream-kflower.gif b/src/models/salcremie-oruby_cream-kflower.gif deleted file mode 100644 index 02813688..00000000 Binary files a/src/models/salcremie-oruby_cream-kflower.gif and /dev/null differ diff --git a/src/models/salcremie-oruby_cream-klove.gif b/src/models/salcremie-oruby_cream-klove.gif deleted file mode 100644 index e2cf09e5..00000000 Binary files a/src/models/salcremie-oruby_cream-klove.gif and /dev/null differ diff --git a/src/models/salcremie-oruby_cream-kribbon.gif b/src/models/salcremie-oruby_cream-kribbon.gif deleted file mode 100644 index 54493db7..00000000 Binary files a/src/models/salcremie-oruby_cream-kribbon.gif and /dev/null differ diff --git a/src/models/salcremie-oruby_cream-kstar.gif b/src/models/salcremie-oruby_cream-kstar.gif deleted file mode 100644 index d898315e..00000000 Binary files a/src/models/salcremie-oruby_cream-kstar.gif and /dev/null differ diff --git a/src/models/salcremie-oruby_swirl-kberry.gif b/src/models/salcremie-oruby_swirl-kberry.gif deleted file mode 100644 index e88fd73f..00000000 Binary files a/src/models/salcremie-oruby_swirl-kberry.gif and /dev/null differ diff --git a/src/models/salcremie-oruby_swirl-kclover.gif b/src/models/salcremie-oruby_swirl-kclover.gif deleted file mode 100644 index bcecb518..00000000 Binary files a/src/models/salcremie-oruby_swirl-kclover.gif and /dev/null differ diff --git a/src/models/salcremie-oruby_swirl-kflower.gif b/src/models/salcremie-oruby_swirl-kflower.gif deleted file mode 100644 index adba8c04..00000000 Binary files a/src/models/salcremie-oruby_swirl-kflower.gif and /dev/null differ diff --git a/src/models/salcremie-oruby_swirl-klove.gif b/src/models/salcremie-oruby_swirl-klove.gif deleted file mode 100644 index c77eaa54..00000000 Binary files a/src/models/salcremie-oruby_swirl-klove.gif and /dev/null differ diff --git a/src/models/salcremie-oruby_swirl-kribbon.gif b/src/models/salcremie-oruby_swirl-kribbon.gif deleted file mode 100644 index d8dd1872..00000000 Binary files a/src/models/salcremie-oruby_swirl-kribbon.gif and /dev/null differ diff --git a/src/models/salcremie-oruby_swirl-kstar.gif b/src/models/salcremie-oruby_swirl-kstar.gif deleted file mode 100644 index 72713ce6..00000000 Binary files a/src/models/salcremie-oruby_swirl-kstar.gif and /dev/null differ diff --git a/src/models/salcremie-osalted_cream-kberry.gif b/src/models/salcremie-osalted_cream-kberry.gif deleted file mode 100644 index 7522c533..00000000 Binary files a/src/models/salcremie-osalted_cream-kberry.gif and /dev/null differ diff --git a/src/models/salcremie-osalted_cream-kclover.gif b/src/models/salcremie-osalted_cream-kclover.gif deleted file mode 100644 index 99bb7f39..00000000 Binary files a/src/models/salcremie-osalted_cream-kclover.gif and /dev/null differ diff --git a/src/models/salcremie-osalted_cream-kflower.gif b/src/models/salcremie-osalted_cream-kflower.gif deleted file mode 100644 index 37df0776..00000000 Binary files a/src/models/salcremie-osalted_cream-kflower.gif and /dev/null differ diff --git a/src/models/salcremie-osalted_cream-klove.gif b/src/models/salcremie-osalted_cream-klove.gif deleted file mode 100644 index 4c9c91a3..00000000 Binary files a/src/models/salcremie-osalted_cream-klove.gif and /dev/null differ diff --git a/src/models/salcremie-osalted_cream-kribbon.gif b/src/models/salcremie-osalted_cream-kribbon.gif deleted file mode 100644 index 0ad75421..00000000 Binary files a/src/models/salcremie-osalted_cream-kribbon.gif and /dev/null differ diff --git a/src/models/salcremie-osalted_cream-kstar.gif b/src/models/salcremie-osalted_cream-kstar.gif deleted file mode 100644 index 6c343cd2..00000000 Binary files a/src/models/salcremie-osalted_cream-kstar.gif and /dev/null differ diff --git a/src/models/salcremie-ovanilla_cream-kberry.gif b/src/models/salcremie-ovanilla_cream-kberry.gif deleted file mode 100644 index 785bbfa7..00000000 Binary files a/src/models/salcremie-ovanilla_cream-kberry.gif and /dev/null differ diff --git a/src/models/salcremie-ovanilla_cream-kclover.gif b/src/models/salcremie-ovanilla_cream-kclover.gif deleted file mode 100644 index 1bb3faea..00000000 Binary files a/src/models/salcremie-ovanilla_cream-kclover.gif and /dev/null differ diff --git a/src/models/salcremie-ovanilla_cream-kflower.gif b/src/models/salcremie-ovanilla_cream-kflower.gif deleted file mode 100644 index d25cce2a..00000000 Binary files a/src/models/salcremie-ovanilla_cream-kflower.gif and /dev/null differ diff --git a/src/models/salcremie-ovanilla_cream-klove.gif b/src/models/salcremie-ovanilla_cream-klove.gif deleted file mode 100644 index 6c1a99d5..00000000 Binary files a/src/models/salcremie-ovanilla_cream-klove.gif and /dev/null differ diff --git a/src/models/salcremie-ovanilla_cream-kribbon.gif b/src/models/salcremie-ovanilla_cream-kribbon.gif deleted file mode 100644 index 528a9e3d..00000000 Binary files a/src/models/salcremie-ovanilla_cream-kribbon.gif and /dev/null differ diff --git a/src/models/salcremie-ovanilla_cream-kstar.gif b/src/models/salcremie-ovanilla_cream-kstar.gif deleted file mode 100644 index 54fb5abf..00000000 Binary files a/src/models/salcremie-ovanilla_cream-kstar.gif and /dev/null differ diff --git a/tools/spritedata/coverage.ts b/tools/spritedata/coverage.ts index a95e31dd..16acc110 100644 --- a/tools/spritedata/coverage.ts +++ b/tools/spritedata/coverage.ts @@ -31,14 +31,16 @@ let STAMPED = /-[A-Z2-7]{8}\.[a-z0-9]+$/; // The cap spellings, hoopa-alt and darmanitan-zen-galar predate PS's renames // to Pikachu-Alola, Hoopa-Unbound and Darmanitan-Galar-Zen, all of which the // build publishes; nothing in smogon.com or forum names the old ones. The -// strawberry sweet is spelled as the bare cream both upstream and in chatot's -// list. The pngs are shadowed by the gifs the build ships. The subdirectories -// are XY-era scratch that no build has ever written. +// Alcremie sweets are cosmetic formes PS's data does not carry, so the dex +// never names one either; the only list of them is chatot's, and chatot reads +// play.pokemonshowdown.com first and only falls back here on a 404, which for +// these never happens. The pngs are shadowed by the gifs the build ships. The +// subdirectories are XY-era scratch that no build has ever written. let BACKLOG = [ /^(\.gitignore|manifest\.json)$/, /^pikachu-(kanto|hoenn|sinnoh|unova|kalos|alola)cap\.gif$/, /^(hoopa-alt|darmanitan-zen-galar)\.(gif|png)$/, - /^alcremie-[a-z-]+-strawberry\.gif$/, + /^alcremie-[a-z-]+-(berry|clover|flower|love|ribbon|star|strawberry)\.gif$/, /^(lokix|melmetal|meltan|pawmi|quaquaval|syclant)\.png$/, /^(aback|afront|asback|asfront|back|mini|sback|sfront)\//, ];