mirror of
https://github.com/smogon/sprites.git
synced 2026-08-25 19:25:30 -05:00
some stuff i should commit
This commit is contained in:
128
ps.deploy.js
128
ps.deploy.js
@@ -1,19 +1,61 @@
|
||||
|
||||
function toID(name) {
|
||||
// function toID(name) {
|
||||
// return name.toLowerCase().replace(/[^a-z0-9]+/g, '');
|
||||
// }
|
||||
|
||||
// function spritecopy(f, {dir, ext}) {
|
||||
// const sn = spritedata.parseFilename(f.name);
|
||||
// let name;
|
||||
// if (sn.extension) {
|
||||
// name = toID(sn.name);
|
||||
// } else {
|
||||
// const sd = spritedata.get(sn.id);
|
||||
// debug(sd);
|
||||
// name = toID(sd.base);
|
||||
// if (sd.forme) {
|
||||
// name += `-${toID(sd.forme)}`;
|
||||
// }
|
||||
// }
|
||||
// if (sn.extra.has("f")) {
|
||||
// name += "-f";
|
||||
// }
|
||||
// if (sn.extra.has("g")) {
|
||||
// name += "-gmax";
|
||||
// }
|
||||
// if (sn.extra.has("b")) {
|
||||
// dir += "-back";
|
||||
// }
|
||||
// if (sn.extra.has("s")) {
|
||||
// dir += "-shiny";
|
||||
// }
|
||||
// copy(f, {dir, ext, name});
|
||||
// }
|
||||
|
||||
function toPSID(name) {
|
||||
return name.toLowerCase().replace(/[^a-z0-9]+/g, '');
|
||||
}
|
||||
|
||||
function spritecopy(f, {dir, ext}) {
|
||||
function spritecopy(f, {dir, ext}, allowUnknown=false) {
|
||||
const sn = spritedata.parseFilename(f.name);
|
||||
let name;
|
||||
|
||||
// Skip asymmetrical for now
|
||||
if (sn.extra.has("a") || sn.extra.has("b") || sn.extra.has("s")) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (sn.extension) {
|
||||
name = toID(sn.name);
|
||||
if (allowUnknown && sn.extension && sn.name === "Unknown") {
|
||||
name = "unknown"
|
||||
} else {
|
||||
// Skip this, we don't use Unknown/Substitute
|
||||
return;
|
||||
}
|
||||
} else {
|
||||
const sd = spritedata.get(sn.id);
|
||||
debug(sd);
|
||||
name = toID(sd.base);
|
||||
name = toPSID(sd.base);
|
||||
if (sd.forme) {
|
||||
name += `-${toID(sd.forme)}`;
|
||||
name += `-${toPSID(sd.forme)}`;
|
||||
}
|
||||
}
|
||||
if (sn.extra.has("f")) {
|
||||
@@ -22,53 +64,57 @@ function spritecopy(f, {dir, ext}) {
|
||||
if (sn.extra.has("g")) {
|
||||
name += "-gmax";
|
||||
}
|
||||
if (sn.extra.has("b")) {
|
||||
dir += "-back";
|
||||
}
|
||||
if (sn.extra.has("s")) {
|
||||
dir += "-shiny";
|
||||
}
|
||||
|
||||
copy(f, {dir, ext, name});
|
||||
}
|
||||
|
||||
let seenModels = new Set;
|
||||
|
||||
for (const f of list("src/models")) {
|
||||
seenModels.add(f.name);
|
||||
spritecopy(f, {dir: "ani"});
|
||||
}
|
||||
|
||||
for (const f of list("src/sprites/gen5")) {
|
||||
spritecopy(f, {dir: "gen5ani"});
|
||||
for (const f of list("build/gen10-modelslike")) {
|
||||
if (seenModels.has(f.name)) continue;
|
||||
seenModels.add(f.name);
|
||||
spritecopy(f, {dir: "ani"});
|
||||
}
|
||||
|
||||
for (const f of list("src/afd")) {
|
||||
spritecopy(f, {dir: "afd"});
|
||||
}
|
||||
// for (const f of list("src/sprites/gen5")) {
|
||||
// spritecopy(f, {dir: "gen5ani"});
|
||||
// }
|
||||
|
||||
for (const f of list("build/padded-dex")) {
|
||||
spritecopy(f, {dir: "dex"});
|
||||
}
|
||||
// for (const f of list("src/afd")) {
|
||||
// spritecopy(f, {dir: "afd"});
|
||||
// }
|
||||
|
||||
function fixType(name) {
|
||||
return name.replace("Unknown", "???");
|
||||
}
|
||||
// for (const f of list("build/padded-dex")) {
|
||||
// spritecopy(f, {dir: "dex"});
|
||||
// }
|
||||
|
||||
for (const f of list("src/canonical/ui/types/gen4").concat(list("src/noncanonical/ui/types/gen4"))) {
|
||||
copy(f, {dir: "types", name: fixType(f.name)});
|
||||
}
|
||||
// function fixType(name) {
|
||||
// return name.replace("Unknown", "???");
|
||||
// }
|
||||
|
||||
for (const f of list("src/canonical/ui/categories/gen4")) {
|
||||
copy(f, {dir: "categories"});
|
||||
}
|
||||
copy("src/noncanonical/ui/categories/undefined.png", {dir: "categories"});
|
||||
// for (const f of list("src/canonical/ui/types/gen4").concat(list("src/noncanonical/ui/types/gen4"))) {
|
||||
// copy(f, {dir: "types", name: fixType(f.name)});
|
||||
// }
|
||||
|
||||
copy("src/canonical/ui/battle/Alpha.png", {dir: "misc"});
|
||||
copy("src/canonical/ui/battle/Mega.png", {dir: "misc"});
|
||||
copy("src/canonical/ui/battle/Omega.png", {dir: "misc"});
|
||||
|
||||
// TODO: reenable when trainers are moved
|
||||
// dest("trainers");
|
||||
// sel("build/padded-trainers/canonical");
|
||||
// for (const f of list("src/canonical/ui/categories/gen4")) {
|
||||
// copy(f, {dir: "categories"});
|
||||
// }
|
||||
// copy("src/noncanonical/ui/categories/undefined.png", {dir: "categories"});
|
||||
|
||||
copy("build/ps/pokemonicons-pokeball-sheet.png", {dir: "."});
|
||||
copy("build/ps/pokemonicons-sheet.png", {dir: "."});
|
||||
//copy("build/ps/trainers-sheet.png", {dir: "."});
|
||||
copy("build/ps/itemicons-sheet.png", {dir: "."});
|
||||
// copy("src/canonical/ui/battle/Alpha.png", {dir: "misc"});
|
||||
// copy("src/canonical/ui/battle/Mega.png", {dir: "misc"});
|
||||
// copy("src/canonical/ui/battle/Omega.png", {dir: "misc"});
|
||||
|
||||
// // TODO: reenable when trainers are moved
|
||||
// // dest("trainers");
|
||||
// // sel("build/padded-trainers/canonical");
|
||||
|
||||
// copy("build/ps/pokemonicons-pokeball-sheet.png", {dir: "."});
|
||||
// copy("build/ps/pokemonicons-sheet.png", {dir: "."});
|
||||
// //copy("build/ps/trainers-sheet.png", {dir: "."});
|
||||
// copy("build/ps/itemicons-sheet.png", {dir: "."});
|
||||
|
||||
23
updateminisprites.sh
Executable file
23
updateminisprites.sh
Executable file
@@ -0,0 +1,23 @@
|
||||
#!/bin/bash
|
||||
|
||||
set -ex
|
||||
|
||||
cd ~/smogon/sprites
|
||||
./build.sh
|
||||
|
||||
# Update dex
|
||||
cd ~/smogon/smogon.com/run
|
||||
rm -rf ~/smogon/sprites/build/smogon/spritesheetoutput
|
||||
pnpm exec esbuild ~/smogon/sprites/build/smogon/spritesheet.css --asset-names='[name]-[hash]' --entry-names='[name]-[hash]' --loader:.webp=copy --minify --allow-overwrite --bundle --outdir=/home/monsanto/smogon/sprites/build/smogon/spritesheetoutput
|
||||
zopfli ~/smogon/sprites/build/smogon/spritesheetoutput/spritesheet-*.css
|
||||
brotli -9 ~/smogon/sprites/build/smogon/spritesheetoutput/spritesheet-*.css
|
||||
rsync ~/smogon/sprites/build/smogon/spritesheetoutput/* smogon:/smog2/sprites/assets
|
||||
python -c 'import re; import pathlib; print(re.match(r"spritesheet(.*)\.css", str(list(pathlib.Path("/home/monsanto/smogon/sprites/build/smogon/spritesheetoutput/.").glob("spritesheet-*.css"))[0].name)).group(1))' | ssh smogon 'cat > /smog2/dex/spritesheet_css_suffix.txt'
|
||||
ssh smogon 'systemctl reload dex'
|
||||
|
||||
# Update forum minisprites
|
||||
cd /home/monsanto/smogon/sprites
|
||||
rm -rf deploy/smogon
|
||||
node tools/deploy run smogon.deploy.js -o deploy/smogon
|
||||
rsync -a deploy/smogon/forumsprites/ smogon:/smog2/forumsprites/minisprites
|
||||
rsync -a deploy/smogon/xyicons/ smogon:/smog2/sprites/xyicons
|
||||
11
updatepmdsprites.sh
Executable file
11
updatepmdsprites.sh
Executable file
@@ -0,0 +1,11 @@
|
||||
#!/bin/bash
|
||||
|
||||
set -ex
|
||||
|
||||
cd /home/monsanto/smogon/sprites
|
||||
./build.sh
|
||||
rm -rf deploy/smogon
|
||||
node tools/deploy run smogon.deploy.js -o deploy/smogon
|
||||
|
||||
# Note: the /forums/media/pmd directory should probably stay the same; we can redirect those I guess
|
||||
rsync -a deploy/smogon/pmd/ smogon:/smog2/forumsprites/pmd
|
||||
Reference in New Issue
Block a user