Merge branch 'main' of https://github.com/snusxd/deltasprite
113
.github/workflows/main.yml
vendored
@@ -1,53 +1,84 @@
|
|||||||
name: sorting
|
name: sorting
|
||||||
on:
|
on:
|
||||||
push:
|
push:
|
||||||
branches: [ main ]
|
branches: [main]
|
||||||
paths:
|
paths:
|
||||||
- '_sprites/**'
|
- "_sprites/**"
|
||||||
- 'scripts/**'
|
- "scripts/**"
|
||||||
|
|
||||||
|
concurrency:
|
||||||
|
group: sorting-${{ github.ref }}
|
||||||
|
cancel-in-progress: true
|
||||||
|
|
||||||
permissions:
|
permissions:
|
||||||
contents: write
|
contents: write
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
run-scripts:
|
run-scripts:
|
||||||
|
if: github.actor != 'github-actions[bot]'
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- name: checkout
|
- name: checkout
|
||||||
uses: actions/checkout@v4
|
uses: actions/checkout@v4
|
||||||
|
|
||||||
- name: setup
|
- name: setup node + npm cache
|
||||||
uses: actions/setup-node@v4
|
uses: actions/setup-node@v6
|
||||||
with:
|
with:
|
||||||
node-version: '20'
|
node-version: "20"
|
||||||
|
cache: "npm"
|
||||||
- name: requirments
|
cache-dependency-path: ./package-lock.json
|
||||||
run: npm ci
|
|
||||||
|
- name: npm ci
|
||||||
- name: scripts
|
working-directory: ./scripts
|
||||||
working-directory: ./scripts
|
run: npm ci --no-audit --no-fund
|
||||||
run: |
|
|
||||||
npx tsx write.ts
|
- name: setup python + pip cache
|
||||||
npx tsx sort.ts
|
uses: actions/setup-python@v6
|
||||||
npx tsx unready.ts
|
with:
|
||||||
|
python-version: "3.13"
|
||||||
- name: commit changes
|
cache: "pip"
|
||||||
run: |
|
cache-dependency-path: ./requirements.txt
|
||||||
git config --local user.email "action@github.com"
|
|
||||||
git config --local user.name "GitHub Action"
|
- name: install python deps
|
||||||
git add ./_sprites/unready
|
working-directory: ./scripts
|
||||||
git commit -m "updated unready list" || exit 0
|
run: pip install -r requirements.txt
|
||||||
git add ./scripts/data.json
|
|
||||||
git commit -m "updated data" || exit 0
|
- name: scripts
|
||||||
git push
|
working-directory: ./scripts
|
||||||
|
run: |
|
||||||
- name: upload
|
rm -rf ../_sprites/unready
|
||||||
uses: actions/upload-artifact@v4
|
npx tsx write.ts
|
||||||
with:
|
npx tsx sort.ts
|
||||||
name: sorted
|
npx tsx unready.ts
|
||||||
path: ./_sprites/sorted
|
|
||||||
retention-days: 15
|
- name: commit changes (exclude sorted)
|
||||||
|
run: |
|
||||||
- name: remove temp sorted folder
|
git config --local user.email "action@github.com"
|
||||||
run: rm -rf ./_sprites/sorted
|
git config --local user.name "GitHub Action"
|
||||||
|
git add -A .
|
||||||
|
git reset _sprites/sorted
|
||||||
|
git reset _sprites/sorted-merged
|
||||||
|
git commit -m "actions commit" || exit 0
|
||||||
|
git push
|
||||||
|
|
||||||
|
- name: upload sorted
|
||||||
|
uses: actions/upload-artifact@v4
|
||||||
|
with:
|
||||||
|
name: sorted
|
||||||
|
path: ./_sprites/sorted
|
||||||
|
retention-days: 15
|
||||||
|
compression-level: 0
|
||||||
|
|
||||||
|
- name: upload sorted-merged
|
||||||
|
uses: actions/upload-artifact@v4
|
||||||
|
with:
|
||||||
|
name: sorted-merged
|
||||||
|
path: ./_sprites/sorted-merged
|
||||||
|
retention-days: 15
|
||||||
|
compression-level: 0
|
||||||
|
|
||||||
|
- name: remove temp sorted folder
|
||||||
|
run: |
|
||||||
|
rm -rf ./_sprites/sorted
|
||||||
|
rm -rf ./_sprites/sorted-merged
|
||||||
|
|||||||
3
.gitignore
vendored
@@ -1,2 +1,3 @@
|
|||||||
*.DS_Store
|
*.DS_Store
|
||||||
.vscode/
|
.vscode/
|
||||||
|
node_modules/
|
||||||
34
README.md
@@ -1,38 +1,36 @@
|
|||||||
# СПРАЙТОВСКАЯ КОВАЛЬНЯ ПО ДЕЛЬТА-РУНЕ
|
# СПРАЙТОВСКАЯ КОВАЛЬНЯ ПО ДЕЛЬТА-РУНЕ
|
||||||
|
|
||||||
Самая умная система перевода спрайтов по Дельта-Руне!
|
cамая умная система перевода спрайтов по Дельта-Руне! _да-да_
|
||||||
|
|
||||||
## Как что работает?
|
[](https://github.com/snusxd/deltasprite/actions/workflows/main.yml)
|
||||||
|
|
||||||
Теперь спрайтерам не нужно вообще что-либо сортировать! Всё делается за них, и за Дюдю! :3
|
## как что работает?
|
||||||
|
|
||||||
Все переведённые спрайты лежат в папке `_sprites/translation`. Говоря «все» я **реально** имею ввиду все.
|
сортировка спрайтов теперь НЕ НУЖНА! всё делается автоматически! :D
|
||||||
Просто скидывайте свой переведённый спрайт в эту папку, и всё! Везде, где этот спрайт будет использоваться, он и окажется потом!
|
|
||||||
|
|
||||||
## Папочки... и для чего они...
|
все переведённые спрайты пихайте в `_sprites/translation`. под «все» я **реально** имею ввиду все.
|
||||||
|
просто скидывайте переведённый спрайт в эту папку, и всё! везде, где этот спрайт используется в игре, он переведётся!
|
||||||
|
|
||||||
Краткий экскурс!
|
## папочки... что куда?
|
||||||
|
|
||||||
---
|
краткий экскурс!
|
||||||
|
|
||||||
**Что спрайтером нужно:**
|
**ОСНОВНОЕ:**
|
||||||
|
|
||||||
`_sprites` — общая папка, в которой лежат все картинки
|
`_sprites` — общая папка для картинок
|
||||||
|
|
||||||
`_sprites/original` — папка, в которой лежат оригинальные спрайты, не переведённые и отсортированные по главам. от того, что находится в них, зависит, что попадёт в отобранную папку
|
`_sprites/original` - тут все оригинальные спрайты. от того, как спрайты расположены в этой папке зависит, куда попадут переводённые спрайты после сортировки
|
||||||
|
|
||||||
`_sprites/translation` — папка, в которой и лежат все **русские** спрайты
|
`_sprites/translation` — тут ВСЕ переведёненые спрайты (в одной куче, да)
|
||||||
|
|
||||||
`_sprites/sorted` — та самая папка, в которой уже отобраны все спрайты по главам (в общем, для общих глаз она так-то бессмысленна... наверное :D)
|
`_sprites/unready` — все спрайты, оставшиеся без перевода!
|
||||||
|
|
||||||
`_sprites/unready` — вообще не переведённые спрайты
|
|
||||||
|
|
||||||
`_sprites/cut.txt` — вырезня (не идут в учёт непереведённых спрайтов)
|
`_sprites/cut.txt` — вырезня (не идут в учёт непереведённых спрайтов)
|
||||||
|
|
||||||
**Что спрайтерам не нужно:**
|
**так, для справочки:**
|
||||||
|
|
||||||
`node_modules` и `scripts` и все остальные файлы — для общих глазок не нужны, нужны для автоматической системы сортировки
|
`_sprites/sorted` — та самая папка, в которой все спрайты лежат в отсортированном виде
|
||||||
|
|
||||||
---
|
`node_modules`, `scripts` и т.д. это просто шла-а-ак...
|
||||||
|
|
||||||
# :P
|
# :P
|
||||||
|
|||||||
@@ -1,15 +0,0 @@
|
|||||||
Для того, чтобы спрайт не шёл в учёт неготовых нужно написать его название в списке ниже!
|
|
||||||
Просто название спрайта, без каких-либо дополнительных символов.
|
|
||||||
|
|
||||||
Вырезня:
|
|
||||||
spr_ch3_gameshow_round
|
|
||||||
spr_ch3_GSA01G_tvtimescreenshot
|
|
||||||
spr_mansion_traffic_2fsign
|
|
||||||
bg_dw_music_ext_original
|
|
||||||
spr_board_tile_quiz
|
|
||||||
spr_ch3_chef_specialguestText
|
|
||||||
spr_gameshow_halloffame_left
|
|
||||||
spr_gameshow_halloffame_right
|
|
||||||
spr_gameshow_screen_halloffame
|
|
||||||
spr_board_tile_quiz
|
|
||||||
spr_dw_green_room_poster_left
|
|
||||||
BIN
_sprites/original/chapter2/IMAGE_LOGO_CENTER_SEPARATE/IMAGE_LOGO_CENTER_SEPARATE_0.png
Executable file → Normal file
|
Before Width: | Height: | Size: 215 B After Width: | Height: | Size: 431 B |
BIN
_sprites/original/chapter2/IMAGE_LOGO_CENTER_SEPARATE/IMAGE_LOGO_CENTER_SEPARATE_1.png
Executable file → Normal file
|
Before Width: | Height: | Size: 208 B After Width: | Height: | Size: 416 B |
|
Before Width: | Height: | Size: 206 B |
BIN
_sprites/original/chapter2/IMAGE_LOGO_CENTER_SEPARATE/IMAGE_LOGO_CENTER_SEPARATE_2.png
Executable file → Normal file
|
Before Width: | Height: | Size: 205 B After Width: | Height: | Size: 421 B |
BIN
_sprites/original/chapter2/IMAGE_LOGO_CENTER_SEPARATE/IMAGE_LOGO_CENTER_SEPARATE_3.png
Executable file → Normal file
|
Before Width: | Height: | Size: 122 B After Width: | Height: | Size: 442 B |
BIN
_sprites/original/chapter2/IMAGE_LOGO_CENTER_SEPARATE/IMAGE_LOGO_CENTER_SEPARATE_4.png
Executable file → Normal file
|
Before Width: | Height: | Size: 233 B After Width: | Height: | Size: 484 B |
BIN
_sprites/original/chapter2/IMAGE_LOGO_CENTER_SEPARATE/IMAGE_LOGO_CENTER_SEPARATE_5.png
Executable file → Normal file
|
Before Width: | Height: | Size: 308 B After Width: | Height: | Size: 426 B |
BIN
_sprites/original/chapter2/IMAGE_LOGO_CENTER_SEPARATE/IMAGE_LOGO_CENTER_SEPARATE_6.png
Executable file → Normal file
|
Before Width: | Height: | Size: 211 B After Width: | Height: | Size: 422 B |
BIN
_sprites/original/chapter2/IMAGE_LOGO_CENTER_SEPARATE/IMAGE_LOGO_CENTER_SEPARATE_7.png
Executable file → Normal file
|
Before Width: | Height: | Size: 122 B After Width: | Height: | Size: 421 B |
BIN
_sprites/original/chapter2/IMAGE_LOGO_CENTER_SEPARATE/IMAGE_LOGO_CENTER_SEPARATE_8.png
Executable file → Normal file
|
Before Width: | Height: | Size: 204 B After Width: | Height: | Size: 416 B |
|
Before Width: | Height: | Size: 199 B |
|
Before Width: | Height: | Size: 6.7 KiB |
|
After Width: | Height: | Size: 1.2 KiB |
|
After Width: | Height: | Size: 1.2 KiB |
|
After Width: | Height: | Size: 1.2 KiB |
|
After Width: | Height: | Size: 1.2 KiB |
|
Before Width: | Height: | Size: 131 B After Width: | Height: | Size: 347 B |
|
Before Width: | Height: | Size: 125 B After Width: | Height: | Size: 342 B |
|
Before Width: | Height: | Size: 113 B After Width: | Height: | Size: 350 B |
|
Before Width: | Height: | Size: 128 B After Width: | Height: | Size: 329 B |
|
Before Width: | Height: | Size: 150 B After Width: | Height: | Size: 347 B |
|
Before Width: | Height: | Size: 122 B After Width: | Height: | Size: 350 B |
|
Before Width: | Height: | Size: 153 B After Width: | Height: | Size: 345 B |
|
Before Width: | Height: | Size: 132 B After Width: | Height: | Size: 343 B |
|
Before Width: | Height: | Size: 134 B After Width: | Height: | Size: 348 B |
|
Before Width: | Height: | Size: 132 B After Width: | Height: | Size: 347 B |
|
Before Width: | Height: | Size: 132 B After Width: | Height: | Size: 348 B |
|
Before Width: | Height: | Size: 142 B After Width: | Height: | Size: 326 B |
|
Before Width: | Height: | Size: 133 B After Width: | Height: | Size: 356 B |
|
Before Width: | Height: | Size: 142 B After Width: | Height: | Size: 337 B |
|
Before Width: | Height: | Size: 133 B After Width: | Height: | Size: 345 B |
|
Before Width: | Height: | Size: 147 B After Width: | Height: | Size: 344 B |
|
Before Width: | Height: | Size: 111 B After Width: | Height: | Size: 355 B |
|
Before Width: | Height: | Size: 129 B After Width: | Height: | Size: 341 B |
|
Before Width: | Height: | Size: 139 B After Width: | Height: | Size: 341 B |
|
Before Width: | Height: | Size: 141 B After Width: | Height: | Size: 357 B |
|
Before Width: | Height: | Size: 133 B After Width: | Height: | Size: 326 B |
|
Before Width: | Height: | Size: 137 B After Width: | Height: | Size: 343 B |
|
Before Width: | Height: | Size: 131 B After Width: | Height: | Size: 358 B |
|
Before Width: | Height: | Size: 144 B After Width: | Height: | Size: 342 B |
|
Before Width: | Height: | Size: 114 B After Width: | Height: | Size: 348 B |
|
Before Width: | Height: | Size: 158 B After Width: | Height: | Size: 345 B |
|
Before Width: | Height: | Size: 131 B After Width: | Height: | Size: 349 B |
|
Before Width: | Height: | Size: 132 B After Width: | Height: | Size: 343 B |
|
Before Width: | Height: | Size: 140 B After Width: | Height: | Size: 357 B |
|
Before Width: | Height: | Size: 141 B After Width: | Height: | Size: 354 B |
|
Before Width: | Height: | Size: 133 B After Width: | Height: | Size: 322 B |
|
Before Width: | Height: | Size: 150 B After Width: | Height: | Size: 348 B |
|
Before Width: | Height: | Size: 131 B After Width: | Height: | Size: 332 B |
|
Before Width: | Height: | Size: 126 B After Width: | Height: | Size: 333 B |
|
Before Width: | Height: | Size: 128 B After Width: | Height: | Size: 356 B |
|
Before Width: | Height: | Size: 144 B After Width: | Height: | Size: 335 B |
|
Before Width: | Height: | Size: 132 B After Width: | Height: | Size: 319 B |
|
Before Width: | Height: | Size: 106 B After Width: | Height: | Size: 335 B |
|
Before Width: | Height: | Size: 741 B |
|
After Width: | Height: | Size: 781 B |
|
After Width: | Height: | Size: 788 B |
|
Before Width: | Height: | Size: 251 B |
|
Before Width: | Height: | Size: 323 B |
|
Before Width: | Height: | Size: 256 B |
|
Before Width: | Height: | Size: 225 B |
|
Before Width: | Height: | Size: 244 B |
|
Before Width: | Height: | Size: 220 B |
|
Before Width: | Height: | Size: 222 B |
|
Before Width: | Height: | Size: 351 B |
|
Before Width: | Height: | Size: 232 B |
|
Before Width: | Height: | Size: 245 B |
|
Before Width: | Height: | Size: 303 B |
|
Before Width: | Height: | Size: 245 B |
|
Before Width: | Height: | Size: 272 B |
|
Before Width: | Height: | Size: 265 B |
|
Before Width: | Height: | Size: 759 B |
BIN
_sprites/original/chapter2/spr_npc_plugboy/spr_npc_plugboy_0.png
Normal file
|
After Width: | Height: | Size: 796 B |
BIN
_sprites/original/chapter2/spr_npc_plugboy/spr_npc_plugboy_1.png
Normal file
|
After Width: | Height: | Size: 802 B |
|
Before Width: | Height: | Size: 889 B |
|
After Width: | Height: | Size: 903 B |
|
After Width: | Height: | Size: 913 B |
|
Before Width: | Height: | Size: 757 B |
|
After Width: | Height: | Size: 791 B |
|
After Width: | Height: | Size: 804 B |
|
Before Width: | Height: | Size: 878 B |
|
After Width: | Height: | Size: 883 B |
|
After Width: | Height: | Size: 893 B |
|
Before Width: | Height: | Size: 704 B |
|
After Width: | Height: | Size: 803 B |
|
After Width: | Height: | Size: 808 B |
|
Before Width: | Height: | Size: 741 B |
|
After Width: | Height: | Size: 781 B |
|
After Width: | Height: | Size: 788 B |
|
Before Width: | Height: | Size: 730 B |
|
After Width: | Height: | Size: 784 B |
|
After Width: | Height: | Size: 789 B |
|
Before Width: | Height: | Size: 962 B |
|
After Width: | Height: | Size: 941 B |
|
After Width: | Height: | Size: 939 B |
|
Before Width: | Height: | Size: 606 B |