152 Commits

Author SHA1 Message Date
301e0145fb la consola ja no pausa al jugador 2026-03-29 18:24:47 +02:00
3b233f0e12 eliminat Options::console 2026-03-29 18:14:51 +02:00
fd9be2066d reorganitzats els comandos de consola 2026-03-29 18:08:33 +02:00
7551115912 renderInfo amb animacio 2026-03-29 17:47:48 +02:00
b986778bb4 fix: dos logs de consola amb el format incorrecte 2026-03-29 17:34:42 +02:00
fd2e2f1014 eliminat el soport per a arguments 2026-03-29 17:32:06 +02:00
77b844065e canvi d'skin en la consola 2026-03-29 17:21:05 +02:00
2fe79de1d8 arreglos en Console i SS 2026-03-29 14:24:20 +02:00
d6ecadfd3a fix: vsync off no anava en Wayland 2026-03-29 14:13:02 +02:00
ad467847b9 corregit compile_spirv.cmake y la system_folder per a shaders 2026-03-29 13:45:29 +02:00
1bb2142d19 fix: corregida logica per obrir i entrar a la jail. ja no mira el nom de la habitacio sino el numero 2026-03-29 12:58:32 +02:00
f5a82229fe afegits cheats a la consola 2026-03-29 12:42:51 +02:00
145bab037f - eliminats accents en titols d'habitacions
- corregits fitxers .fnt (falta aseprite)
- corregint font_gent.py
- revisades algunes traduccions
2026-03-29 09:48:58 +02:00
754ad2de49 comandos i tecles per a manejar el nou disseny de shaders 2026-03-29 09:09:22 +02:00
a9b7c3f025 treballant en poder incloure diferents shaders 2026-03-29 08:23:42 +02:00
4db92d423c cos: afegida duracio final el logo 2026-03-29 07:45:28 +02:00
6717c1e307 fix: bug mileanri que deixava al jugador atascat en algunes rampes en certes condicions 2026-03-28 22:22:32 +01:00
9282d661aa millorada una mica la classe Debug en quant a mostrar info 2026-03-28 21:58:54 +01:00
a21f530dd4 corregit el caracter de coret que s'havia perdut 2026-03-28 20:53:33 +01:00
7483bf63c8 establir la posicio i habitacio inicial de debug desde la consola 2026-03-28 20:36:56 +01:00
268763f162 clase Debug ara carrega la posicio i habitacio inicial desde un fitxer 2026-03-28 20:15:44 +01:00
71c7b8e553 mes comandos per a Console 2026-03-28 14:14:33 +01:00
854a5f04b2 les tecles de funcio ja tornena a funcionar amb la consola oberta 2026-03-28 14:03:41 +01:00
ed21a47f92 augmentat el limit de caracters en la consola 2026-03-28 13:53:07 +01:00
637df23bc7 mes comandos en Console 2026-03-28 13:37:46 +01:00
ea421b4e17 fix: en TITLE, la consola no bloquejava la pulsacio del 1 al 4 i entrava a les opcions 2026-03-28 13:31:20 +01:00
3a5ff06dab - afegits comandos de GameControl per activar trucos o canviar de habitacio
- modificat el comando debug, ja no activa el overlay sino el mode debug
- nou alias show info i hide info
2026-03-28 13:27:33 +01:00
dfb0d2134f ajustat "al gust" el hud (consola, render info i notifier) 2026-03-28 13:04:03 +01:00
b459e2106f clang format 2026-03-28 12:50:00 +01:00
065f66d40e nova clase renderInfo
afegit control de offset a les notificacions
2026-03-28 12:49:38 +01:00
f15658a767 afegit soport per a configurar el audio (en config i en console) 2026-03-28 11:08:01 +01:00
21c8d1e8ca eliminat renderInfo de ResourceCache::init 2026-03-28 10:49:39 +01:00
a06eb8c8e9 fix: #include <iomanip> en Screen per a std::setprecision() 2026-03-28 10:08:08 +01:00
6b73a76d31 canvis en renderInfo
acabant de pulir el calcul actual del zoom en non integer scale
2026-03-28 02:01:51 +01:00
348a76090b permet escollir driver de gpu o no escollir-ne cap 2026-03-28 01:14:41 +01:00
02c1bf647e modificats defaults per a kiosk mode 2026-03-28 00:42:27 +01:00
a7f0a18e6d canvis de upscale i downscale en consola 2026-03-28 00:37:52 +01:00
8355c266a6 afegits comandos y restriccions en la consola per al modo kiosko 2026-03-28 00:26:29 +01:00
7bad27d686 canvi i reinici d'escene en la consola 2026-03-28 00:02:14 +01:00
d39622c7e2 afegits els comandos de les tecles de funció 2026-03-27 23:32:44 +01:00
4910d201f9 primer comando implementat en la consola 2026-03-27 23:19:47 +01:00
e85800c5ed ja es pot escriure en la consola 2026-03-27 22:54:47 +01:00
f25ee18329 treballant en la consola 2026-03-27 22:24:55 +01:00
3712f0c8d9 implementat lanzcos en el supersampling 2026-03-27 21:59:14 +01:00
c063488e8e optimitzat textureToRenderer() 2026-03-27 20:34:45 +01:00
deb0a8677f mostra el render device en info_debug 2026-03-27 10:18:41 +01:00
c5a7c9e70d optimitzant textureToRenderer() 2026-03-27 09:46:25 +01:00
92453a6104 llevats colorins del debug 2026-03-26 08:49:49 +01:00
7aff3e2109 afegit overlay de debug 2026-03-26 08:47:24 +01:00
8d213e7b3e afinant els shaders 2026-03-26 07:46:11 +01:00
c6d409c303 corregides scanlines per a treballar amb subpixels per proporció 2026-03-25 22:31:34 +01:00
6914f7df93 supersampling ara aplica al tamany de la finestra, no a la textura base 2026-03-25 22:00:10 +01:00
1dbfff2c17 fix: el supersampling es feia per cpu en lloc de per gpu 2026-03-25 21:33:06 +01:00
3493636954 correccions en les traduccions 2026-03-25 20:51:52 +01:00
8ff1073e4a corregides les scanlines per a paletes amb fondo blanc 2026-03-25 18:31:36 +01:00
6497e26202 reordenades i renombrades les classes sprite 2026-03-25 18:01:33 +01:00
e0e37204d7 eliminada la classe Texture 2026-03-25 17:54:23 +01:00
6595b28790 clang-format
clang-tidy (macos)
2026-03-23 07:26:21 +01:00
0ddb6c85e1 afegit un poc de chroma al preset crt 2026-03-22 23:00:39 +01:00
f84007902e afegit flicker a postfx 2026-03-22 22:38:18 +01:00
49ae2ae41f per defecte el joc eixirà ara en valencià 2026-03-22 22:07:12 +01:00
c701421a8f corregits offsets en smb2.fnt 2026-03-22 22:04:23 +01:00
1ecb427106 supersampling implementat 2026-03-22 21:55:18 +01:00
c87779cc09 imlementant supersampling 2026-03-22 21:24:20 +01:00
24594fa89a deixant postfx al gust 2026-03-22 20:54:02 +01:00
030779794e F12 toggle de showFPS en mode debug 2026-03-22 19:59:48 +01:00
495c23a3d2 fix: en la migracio de la marquesina a la nova versio de Text s'havia posat per error un kerning superior al que havia
opt: millores en la getió de la marquesina per optimitzar rendiment
2026-03-22 19:43:35 +01:00
911ee7a13e modificada la paleta d'aseprite.gif per consistencia 2026-03-22 19:22:56 +01:00
b876ccbb09 afegit fallback a la font_gen
afegida deteccio de caracters no definits a font_gen
2026-03-22 19:19:00 +01:00
94684e8758 ferramenta de text pot importar gifs
ferramenta de text accepta separació entre quadricules de lletres
2026-03-22 19:06:01 +01:00
0c116665bc treballant en el generador de .fnt 2026-03-22 18:40:51 +01:00
d0ed49d192 revisada i actualitzada la classe Text per a donar suport a utf-8 2026-03-22 12:47:32 +01:00
5e013a8414 revisió de metodes de debug 2026-03-22 10:16:09 +01:00
0cdbeb768d revisió de la traducció al valencià 2026-03-22 09:57:25 +01:00
cd0477cc4c fix: nom de variable en Locale 2026-03-22 09:21:45 +01:00
c6e2779429 afegit suport multiidioma
afegida traducció al valencià
2026-03-22 09:00:51 +01:00
9b7abc7725 afegit metodo a Surface per a restaurar la subpaleta
fix: les surfaces de loading screen ja no es queden negres per a sempre
2026-03-22 08:10:49 +01:00
c87d682508 sombra als fps 2026-03-22 07:54:54 +01:00
366c00fd22 clang-format 2026-03-21 23:19:15 +01:00
55b58ded70 clang-tidy 2026-03-21 23:08:07 +01:00
d946ab7943 arreglos en make y cmake 2026-03-21 22:17:30 +01:00
167797a7b2 corregit build de release de windows 2026-03-21 19:05:16 +01:00
7ec869a6d4 afegit BUILDING.md 2026-03-21 18:51:53 +01:00
82603c1e41 afegida compilació de shaders y detecció en data/ per a reconstruir resources.pack 2026-03-21 18:41:59 +01:00
3a2015256a fix: pantalla completa, integer scale i vsync 2026-03-21 18:10:48 +01:00
9df3f1b929 corregit postfx en windows 2026-03-21 17:55:18 +01:00
43a6cc2d7a llevant el soport de opengl 2026-03-21 17:11:26 +01:00
aa292dcd92 nous postfx 2026-03-21 15:14:31 +01:00
06457654f4 postfx subpixel 2026-03-21 14:41:51 +01:00
e9fc2e8fa0 normalitzat el caption de la finestra 2026-03-21 14:15:40 +01:00
23863c02a6 millores en els presets 2026-03-21 14:12:11 +01:00
6996b3a82a presets en postfx 2026-03-21 13:57:18 +01:00
2b2eb31c67 treballant en postfx 2026-03-21 13:31:42 +01:00
8aad52f33f treballant en makefile 2026-03-21 12:32:05 +01:00
4e2393f4d5 fix: al acabar el segon ending, la transicio es a logo_to_title, no a logo_to_loading_screen 2026-03-19 11:21:38 +01:00
d9ada12ee0 afegit surface_dissolve_sprite
ending2 amb els fades correctes
2026-03-19 11:19:38 +01:00
a7d04d2bbc treballant en ending2 2026-03-19 09:53:42 +01:00
c80dffe957 afegit pixel_reveal a credits i a ending 2026-03-19 09:01:23 +01:00
31bbaf997f treballant en PixelReveal 2026-03-19 08:20:03 +01:00
c4d4a3b930 gitignore: afegir *.res, dist/ i .claude/settings.local.json
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-19 07:26:30 +01:00
d027216dc6 reestructuració de la carpeta release 2026-03-19 07:20:47 +01:00
483fe7251d control+alt+shift+q per a eixir del modo quiosc 2026-03-13 20:46:26 +01:00
852cda1984 en el mode quiosc s'ignora la pulsació d'F1, F2 i F3 i a mes comença en mode de pantalla completa 2026-03-08 22:43:47 +01:00
8d9c838be2 fix: makefile i cmakes
fix: initSDLVideo en opengl de linux
2026-03-08 15:18:48 +01:00
9ebf259525 fix: hack per a poder entrar en huecos de dos tiles d'altura al saltar
fix: calcul incorrecte del offset dels tiles que maten
2026-03-08 14:46:00 +01:00
f2e45940d5 afegit a defaults la habitació i posició inicials (normal i debug) 2026-03-08 10:09:30 +01:00
2ae8fc7440 fix: isValidPalette fallava al comparar 2026-03-08 09:49:33 +01:00
e7860c697e implementada la opció del mode quiosco 2026-03-08 09:42:00 +01:00
a8240a5d82 afegida estructura per al modo quiosco 2026-03-08 08:57:04 +01:00
723ab3d800 toggle FPS mentres jugues 2025-11-22 11:38:28 +01:00
fda8ff3f65 es poden activar els trucos en calent 2025-11-22 10:27:14 +01:00
9ef7f4274d corregida logica de atravesar el fondo de la pantalla a velocitat terminal 2025-11-22 09:29:20 +01:00
bd011a0ebb retocada aceleració de drag'n drop 2025-11-21 23:21:29 +01:00
6052be0c38 corregit bug en el modo invulnerable si caies de molt alt, es quedava marcat com mort i al llevar la invulnerabilitat, moria 2025-11-21 23:14:40 +01:00
ec3cc49710 si el jugador arriba al borde inferior de la habitació i no hi ha conexió, mor 2025-11-21 22:07:53 +01:00
2e1738c20c corregit el offset del ratoli 2025-11-21 21:23:07 +01:00
7479231110 ara pots recolocar al jugador en debug amb el ratoli 2025-11-21 21:16:03 +01:00
4fc5947ba7 corregits 2 pixels en ending3.gif 2025-11-21 21:00:19 +01:00
a21e6f8bb5 corregits missatges de log en opengl_shader.cpp que no deurien d'eixir en versions release 2025-11-21 20:15:35 +01:00
d27f978c62 afegit fade de audio al final de Ending 2025-11-21 20:06:30 +01:00
2fd101674e afegits MES estats a la classe Game 2025-11-21 18:52:20 +01:00
e36fa95762 afegits estats a la clase Game 2025-11-21 18:35:41 +01:00
88ce6cd570 clang-format 2025-11-21 18:02:53 +01:00
d011a41d5a mini-merdes 2025-11-21 17:35:33 +01:00
039eb20c06 millorat el log del principi antes de que jaildoc remugue 2025-11-21 14:03:11 +01:00
959a513651 modificat cmake per a definir RELEASE_BUILD en el BUILD_TYPE=release 2025-11-21 13:49:53 +01:00
1fed8f63bd eliminat el checkFiles inicial que a jaildoc li molestava 2025-11-21 13:34:20 +01:00
b475c4d818 jo arreglant lo de claude 2025-11-21 12:43:49 +01:00
972d23f178 claude arreglant el ending 2025-11-21 10:48:15 +01:00
83d4d0b954 afegit versió a la pantalla de carrega de recursos 2025-11-21 10:06:43 +01:00
ea43880d59 unificat el numero de versió 2025-11-21 09:44:48 +01:00
6bf26f7470 posat orden en defaults i defines 2025-11-21 09:30:33 +01:00
0fb986d7c4 linter 2025-11-21 08:07:32 +01:00
9aa86cd531 linter 2025-11-20 09:19:43 +01:00
34840a64cf linter 2025-11-20 09:19:24 +01:00
7d962ae752 fix: al canviar de pantalla lateralment, es resetejava la altura de salt i el jugador caia 2025-11-19 22:52:31 +01:00
28f11a42b7 corregides les conveyor belt d'algunes habitacions, de none a right 2025-11-19 22:33:01 +01:00
5337e3b4e5 linter 2025-11-19 20:43:20 +01:00
35ef99cf7c linter 2025-11-19 20:21:45 +01:00
cbe71b5af4 classe Player refactoritzada per chanclot 2025-11-19 19:56:35 +01:00
e73f573e9a arreglos en options.hpp/cpp 2025-11-19 19:06:06 +01:00
fa9723dafc fitxers room amb tile buit = -1 2025-11-19 13:31:24 +01:00
ceb2b71331 fitxers room convertits 2025-11-19 08:09:19 +01:00
0a5594b9a8 format de fitxers room 2025-11-19 07:59:33 +01:00
932de53609 creada resource_types 2025-11-18 13:52:41 +01:00
b7db34cdf7 arreglos d'estil en source/core/resources 2025-11-18 12:41:30 +01:00
4477cc4bbc eliminada tota la funcionalitat de gamepad_config_manager i la dependencia de json 2025-11-18 09:44:42 +01:00
435358ef1e arreglos estetics en credits 2025-11-18 09:22:07 +01:00
fff77e47cf corregides les tecles en la escena de credits 2025-11-18 09:14:50 +01:00
3550f26c45 actualitzat readme amb els controls 2025-11-18 09:11:31 +01:00
c0905adc62 migrada la configuracio de txt a yaml 2025-11-18 09:01:42 +01:00
f9b8edc23c migrat assets.txt a assets.yaml 2025-11-18 08:23:49 +01:00
673 changed files with 44923 additions and 38798 deletions

View File

@@ -1,6 +1,7 @@
BasedOnStyle: Google BasedOnStyle: Google
IndentWidth: 4 IndentWidth: 4
IndentAccessModifiers: true NamespaceIndentation: All
IndentAccessModifiers: false
ColumnLimit: 0 # Sin límite de longitud de línea ColumnLimit: 0 # Sin límite de longitud de línea
BreakBeforeBraces: Attach # Llaves en la misma línea BreakBeforeBraces: Attach # Llaves en la misma línea
AllowShortIfStatementsOnASingleLine: true AllowShortIfStatementsOnASingleLine: true

View File

@@ -19,8 +19,9 @@ Checks:
- -modernize-avoid-c-arrays,-warnings-as-errors - -modernize-avoid-c-arrays,-warnings-as-errors
WarningsAsErrors: '*' WarningsAsErrors: '*'
# Solo incluir archivos de tu código fuente # Solo incluir archivos de tu código fuente (external tiene su propio .clang-tidy)
HeaderFilterRegex: '^source/(sections|ui)/.*' # Excluye jail_audio.hpp del análisis
HeaderFilterRegex: '^source/(?!core/audio/jail_audio\.hpp).*'
FormatStyle: file FormatStyle: file
CheckOptions: CheckOptions:

View File

@@ -1,30 +0,0 @@
{
"permissions": {
"allow": [
"Bash(cmake --build:*)",
"Bash(test:*)",
"Bash(tools/linter/run_clang-tidy.sh:*)",
"Bash(make resources.pack:*)",
"Bash(tools/linter/run_cppcheck.sh:*)",
"Bash(cat:*)",
"Bash(git add:*)",
"Bash(git commit:*)",
"Bash(git checkout:*)",
"Bash(sort:*)",
"Bash(cmake:*)",
"Bash(chmod:*)",
"Bash(python3:*)",
"Bash(make:*)",
"Bash(ldd:*)",
"WebSearch",
"Bash(find:*)",
"WebFetch(domain:github.com)",
"WebFetch(domain:raw.githubusercontent.com)",
"Bash(curl:*)",
"WebFetch(domain:fktn-k.github.io)",
"Bash(./jaildoctors_dilemma)"
],
"deny": [],
"ask": []
}
}

10
.gitignore vendored
View File

@@ -1,5 +1,6 @@
.cache/
.vscode/ .vscode/
*data/config/config.txt *data/config/config.yaml
*stats.txt *stats.txt
*.DS_Store *.DS_Store
thumbs.db thumbs.db
@@ -19,4 +20,9 @@ source/version.h
resources.pack resources.pack
jdd_release/ jdd_release/
tools/pack_resources/pack_resources tools/pack_resources/pack_resources
tools/pack_resources/pack_resources.exe tools/pack_resources/pack_resources.exe
tools/pack_resources/pack_tool
tools/pack_resources/pack_tool.exe
*.res
dist/
.claude/settings.local.json

78
BUILDING.md Normal file
View File

@@ -0,0 +1,78 @@
# Compilar JailDoctor's Dilemma
## Linux (Debian/Ubuntu)
Instal·la les dependències:
```bash
sudo apt install cmake make g++ xxd glslang-tools glslc
```
Per a SDL3, instal·la el paquet de desenvolupament si està disponible al teu repositori:
```bash
sudo apt install libsdl3-dev
```
Si `libsdl3-dev` no està als repos (SDL3 és recent i pot no estar a Debian stable), compila'l des del codi font:
```bash
git clone https://github.com/libsdl-org/SDL.git --branch release-3.x --depth 1
cd SDL && cmake -B build && cmake --build build && sudo cmake --install build
```
Compila el joc:
```bash
cmake -B build
cmake --build build
```
---
## Windows (MinGW via WinLibs)
1. Instal·la [WinLibs](https://winlibs.com/) (MinGW-w64 amb GCC)
2. Instal·la [CMake](https://cmake.org/download/)
3. Descarrega les [biblioteques de desenvolupament de SDL3 per a MinGW](https://github.com/libsdl-org/SDL/releases) — copia les capçaleres a `include/` i els fitxers `.a` a `lib/` de MinGW
4. Instal·la el [Vulkan SDK](https://vulkan.lunarg.com/sdk/home) — proporciona `glslc` per a la compilació dels shaders
Compila el joc (des d'un terminal MinGW):
```bash
cmake -B build -G "MinGW Makefiles"
cmake --build build
```
---
## macOS
Instal·la les dependències amb [Homebrew](https://brew.sh):
```bash
brew install cmake sdl3 glslang
```
Compila el joc:
```bash
cmake -B build
cmake --build build
```
---
## Què fa la compilació
`cmake --build build` ho gestiona tot en ordre:
1. **Compila els shaders** — regenera `postfx_vert_spv.h` / `postfx_frag_spv.h` si els fitxers `.vert` o `.frag` han canviat (requereix `glslc`)
2. **Compila el joc** — només recompila els fitxers `.cpp` modificats
3. **Empaqueta els recursos** — regenera `resources.pack` des de `data/` si algun asset ha canviat
Si `glslc` no està instal·lat, s'utilitzen les capçaleres de shaders precompilades (incloses al repositori).
> **Nota:** El `file(GLOB_RECURSE)` sobre `data/` s'avalua en temps de configuració de CMake. Si **afegeixes un fitxer nou** a `data/`, executa `cmake -B build` de nou perquè CMake el detecte com a dependència.
L'executable es genera a l'arrel del projecte: `./jaildoctors_dilemma`

176
CLAUDE.md
View File

@@ -55,6 +55,46 @@ cmake --build build --clean-first
**Important:** The build directory is `/Users/sergio/Gitea/jaildoctors_dilemma/build` and the output executable is placed in the project root directory. **Important:** The build directory is `/Users/sergio/Gitea/jaildoctors_dilemma/build` and the output executable is placed in the project root directory.
### Testing in Headless Environment (SSH/Remote Server)
**IMPORTANT:** When working on a remote server via SSH without a physical display, the game MUST be run using Xvfb (X Virtual Framebuffer) to avoid SDL3 display initialization errors.
#### Required Setup (One-time)
```bash
# Install Xvfb
sudo apt-get install xvfb
```
#### Running the Game in Headless Mode
**Option 1: Using the wrapper script (RECOMMENDED)**
```bash
./run_headless.sh
```
**Option 2: Using xvfb-run directly**
```bash
xvfb-run -a ./jaildoctors_dilemma
```
**Option 3: Custom display configuration**
```bash
xvfb-run -a -s "-screen 0 1280x720x24" ./jaildoctors_dilemma
```
#### Why This Is Critical
- **SDL3 requires a display:** The game uses SDL3 which requires X11/Wayland display
- **No code changes needed:** Xvfb simulates a virtual display without modifying the codebase
- **Full logging:** Console output and logs work normally, essential for debugging resource loading
- **Testing resource loading:** When modifying asset loading code, running with xvfb-run allows seeing all initialization logs
**ALWAYS use xvfb-run when testing on the remote server, especially when:**
- Modifying resource loading code
- Testing asset initialization
- Debugging startup issues
- Verifying configuration changes
### Static Analysis Tools (Linters) ### Static Analysis Tools (Linters)
This project uses two complementary static analysis tools for code quality: This project uses two complementary static analysis tools for code quality:
@@ -261,7 +301,7 @@ source/
└── main.cpp # Application entry point └── main.cpp # Application entry point
config/ # Configuration files config/ # Configuration files
└── assets.txt # Asset registry (text-based configuration) └── assets.yaml # Asset registry (text-based configuration)
data/ # Game assets data/ # Game assets
├── font/ # Bitmap fonts + descriptors ├── font/ # Bitmap fonts + descriptors
@@ -306,8 +346,8 @@ class Screen {
- `Screen` - Rendering, window management, palette/shader effects - `Screen` - Rendering, window management, palette/shader effects
- `Input` - Keyboard & gamepad input binding and checking - `Input` - Keyboard & gamepad input binding and checking
- `Audio` - Music and sound effect playback - `Audio` - Music and sound effect playback
- `Resource` - Asset loading, caching, streaming - `Resource::Cache` - Asset loading, caching, streaming (with error handling)
- `Asset` - Asset path registry and verification - `Resource::List` - Asset path registry from assets.yaml (O(1) lookups)
- `Director` - Main application controller - `Director` - Main application controller
- `Cheevos` - Achievement state management - `Cheevos` - Achievement state management
- `Debug` - Debug information overlay - `Debug` - Debug information overlay
@@ -413,12 +453,14 @@ struct AnimationData {
main() main()
Director::Director() [Initialization] Director::Director() [Initialization]
├─ Options::init() - Load game configuration ├─ Resource::List::init() - Initialize asset registry singleton
├─ Asset::init() - Register asset paths ├─ Director::setFileList() - Load assets.yaml configuration (no verification)
├─ Screen::init() - Create window, SDL renderer ├─ Options::loadFromFile() - Load game configuration
├─ Audio::init() - Initialize SDL audio ├─ Audio::init() - Initialize SDL audio
├─ Screen::init() - Create window, SDL renderer
├─ Input::init() - Bind keyboard/gamepad controls ├─ Input::init() - Bind keyboard/gamepad controls
├─ Resource::init() - Load all game resources ├─ Resource::Cache::init() - Load ALL game resources (with verification)
│ └─ Throws exception if any required asset is missing
└─ Cheevos::init() - Load achievement state └─ Cheevos::init() - Load achievement state
Director::run() [Main loop] Director::run() [Main loop]
@@ -433,11 +475,11 @@ Director::run() [Main loop]
Director::~Director() [Cleanup] Director::~Director() [Cleanup]
├─ Options::saveToFile() - Save game settings ├─ Options::saveToFile() - Save game settings
├─ Resource::destroy() ├─ Resource::Cache::destroy()
├─ Audio::destroy() ├─ Audio::destroy()
├─ Input::destroy() ├─ Input::destroy()
├─ Screen::destroy() ├─ Screen::destroy()
└─ Asset::destroy() └─ Resource::List::destroy()
``` ```
### 4.2 Game Scene Flow (Core Gameplay Loop) ### 4.2 Game Scene Flow (Core Gameplay Loop)
@@ -468,24 +510,27 @@ Game::run() {
``` ```
Director::setFileList() Director::setFileList()
─ Asset::loadFromFile(config_path, PREFIX, system_folder_) ─ Asset::loadFromFile(config_path, PREFIX, system_folder_)
├─ Read config/assets.txt - Parse text configuration file ├─ Read config/assets.yaml - Parse text configuration file
├─ Parse each line: TYPE|PATH|OPTIONS - Extract asset information ├─ Parse YAML structure: assets grouped by category
├─ Replace variables (${PREFIX}, ${SYSTEM_FOLDER}) ├─ Replace variables (${PREFIX}, ${SYSTEM_FOLDER})
└─ Store in unordered_map (O(1) lookup) - Fast asset path retrieval └─ Store in unordered_map (O(1) lookup) - Fast asset path retrieval
└─ Asset::check() - Verify required files exist
Game Scene initialization Game Scene initialization
└─ Resource::init() - Loads all resources └─ Resource::Cache::init() - Loads all resources
├─ loadSounds() - WAV files ├─ loadSounds() - WAV files (with error handling)
├─ loadMusics() - OGG files ├─ loadMusics() - OGG files (with error handling)
├─ loadSurfaces() - GIF/PNG images ├─ loadSurfaces() - GIF/PNG images (with error handling)
├─ loadAnimations() - .ani animation definitions ├─ loadPalettes() - PAL palette files (with error handling)
├─ loadTileMaps() - .room tilemap data ├─ loadTextFiles() - Font definition files (with error handling)
─ loadRooms() - Room metadata ─ loadAnimations() - YAML animation definitions (with error handling)
└─ loadRooms() - Room YAML files (with error handling)
Note: Asset verification happens during actual loading.
If a required file is missing, Cache::load() throws detailed exception.
During gameplay During gameplay
└─ Resource::get*(name) - Return cached resource └─ Resource::Cache::get*(name) - Return cached resource
``` ```
### 4.4 Input Flow ### 4.4 Input Flow
@@ -587,7 +632,7 @@ namespace Options {
inline Stats stats{}; // Game statistics inline Stats stats{}; // Game statistics
} }
Options::loadFromFile(path); // Load from config.txt Options::loadFromFile(path); // Load from config.yaml
Options::saveToFile(path); // Save on exit Options::saveToFile(path); // Save on exit
``` ```
@@ -653,8 +698,8 @@ Achievements trigger notifications on unlock.
| `Screen` | Rendering, window, palette management | Singleton | | `Screen` | Rendering, window, palette management | Singleton |
| `Input` | Keyboard & gamepad input | Singleton | | `Input` | Keyboard & gamepad input | Singleton |
| `Audio` | Music and SFX playback | Singleton | | `Audio` | Music and SFX playback | Singleton |
| `Resource` | Asset caching and loading | Singleton | | `Resource::Cache` | Asset caching and loading (with detailed error messages) | Singleton |
| `Asset` | Asset path registry from config/assets.txt, O(1) lookups, variable substitution | Singleton | | `Resource::List` | Asset path registry from config/assets.yaml, O(1) lookups, variable substitution | Singleton |
| `Debug` | Debug overlay information | Singleton | | `Debug` | Debug overlay information | Singleton |
| `globalEvents` | Global SDL event handling (quit, device reset, mouse) | Namespace | | `globalEvents` | Global SDL event handling (quit, device reset, mouse) | Namespace |
@@ -717,16 +762,25 @@ Achievements trigger notifications on unlock.
### Adding Game Assets ### Adding Game Assets
1. Place file in `data/` directory 1. Place file in `data/` directory
2. Add entry to `config/assets.txt`: 2. Add entry to `config/assets.yaml` under the appropriate category:
```yaml
assets:
category_name: # e.g., player, enemies, music, etc.
- type: BITMAP
path: ${PREFIX}/data/path/file.ext
``` ```
TYPE|${PREFIX}/data/path/file.ext Available types: `DATA`, `BITMAP`, `ANIMATION`, `MUSIC`, `SOUND`, `FONT`, `ROOM`, `PALETTE`
3. Optional flags can be added:
```yaml
- type: DATA
path: ${SYSTEM_FOLDER}/file.txt
required: false # Don't fail if missing
absolute: true # Path is absolute
``` ```
Available types: `DATA`, `BITMAP`, `ANIMATION`, `MUSIC`, `SOUND`, `FONT`, `ROOM`, `TILEMAP`, `PALETTE`
3. Optional flags can be added: `TYPE|${PREFIX}/path/file.ext|optional,absolute`
4. Resource loads automatically during `Resource::init()` 4. Resource loads automatically during `Resource::init()`
5. Access via: `Resource::Cache::get()->getSurface("name")` 5. Access via: `Resource::Cache::get()->getSurface("name")`
**Note:** No recompilation needed when adding/removing/modifying assets in `config/assets.txt` **Note:** No recompilation needed when adding/removing/modifying assets in `config/assets.yaml`
### Modifying Collision Detection ### Modifying Collision Detection
@@ -782,36 +836,58 @@ In debug builds (`#ifdef DEBUG`), renders:
## 11. File Format Reference ## 11. File Format Reference
### Asset Configuration File (config/assets.txt) ### Asset Configuration File (config/assets.yaml)
Text-based asset registry with pipe-delimited format: YAML-based asset registry with grouped structure:
``` ```yaml
# Format: TYPE|PATH [|OPTIONS] # JailDoctor's Dilemma - Asset Configuration
# Comments start with # or ;
# Variables: ${PREFIX}, ${SYSTEM_FOLDER} # Variables: ${PREFIX}, ${SYSTEM_FOLDER}
# Options: optional, absolute (comma-separated)
# Example entries: assets:
BITMAP|${PREFIX}/data/player/player.gif # FONTS
ANIMATION|${PREFIX}/data/player/player.ani fonts:
MUSIC|${PREFIX}/data/music/title.ogg - type: BITMAP
DATA|${SYSTEM_FOLDER}/config.txt|optional,absolute path: ${PREFIX}/data/font/smb2.gif
- type: FONT
path: ${PREFIX}/data/font/smb2.txt
# PLAYER
player:
- type: BITMAP
path: ${PREFIX}/data/player/player.gif
- type: ANIMATION
path: ${PREFIX}/data/player/player.yaml
# MUSIC
music:
- type: MUSIC
path: ${PREFIX}/data/music/title.ogg
# SYSTEM FILES (optional, absolute paths)
system:
- type: DATA
path: ${SYSTEM_FOLDER}/config.yaml
required: false
absolute: true
``` ```
**Asset Structure:**
- Assets are organized into categories (fonts, palettes, shaders, player, enemies, etc.)
- Each asset entry contains:
- `type` - Asset type (required)
- `path` - File path with variable substitution (required)
- `required` - Whether file must exist (optional, default: `true`)
- `absolute` - Whether path is absolute (optional, default: `false`)
**Available Asset Types:** **Available Asset Types:**
- `DATA` - General data files (text, JSON, etc.) - `DATA` - General data files (text, JSON, etc.)
- `BITMAP` - Images (GIF, PNG) - `BITMAP` - Images (GIF, PNG)
- `ANIMATION` - Animation definition files (.ani) - `ANIMATION` - Animation definition files (.yaml)
- `MUSIC` - Music files (OGG) - `MUSIC` - Music files (OGG)
- `SOUND` - Sound effects (WAV) - `SOUND` - Sound effects (WAV)
- `FONT` - Font definition files - `FONT` - Font definition files
- `ROOM` - Room data files (.room) - `ROOM` - Room data files (.yaml)
- `TILEMAP` - Tilemap files (.tmx)
- `PALETTE` - Color palette files (.pal) - `PALETTE` - Color palette files (.pal)
**Options:**
- `optional` - File is not required (won't fail check if missing)
- `absolute` - Path is absolute (not relative to executable)
**Variables:** **Variables:**
- `${PREFIX}` - Replaced with `/../Resources` on macOS bundles, empty otherwise - `${PREFIX}` - Replaced with `/../Resources` on macOS bundles, empty otherwise
- `${SYSTEM_FOLDER}` - Replaced with user's system config folder - `${SYSTEM_FOLDER}` - Replaced with user's system config folder
@@ -865,7 +941,7 @@ Binary 256-color palette format (256 × 4 bytes RGBA).
- `Player::update()` - Physics and movement - `Player::update()` - Physics and movement
### For Asset Management ### For Asset Management
- `config/assets.txt` - Asset configuration file (text-based, no recompilation needed) - `config/assets.yaml` - Asset configuration file (text-based, no recompilation needed)
- `Asset::loadFromFile()` - Loads assets from config file - `Asset::loadFromFile()` - Loads assets from config file
- `Resource::List::get()` - Retrieves asset path (O(1) lookup with unordered_map) - `Resource::List::get()` - Retrieves asset path (O(1) lookup with unordered_map)
- `Resource::load()` - Asset loading - `Resource::load()` - Asset loading

View File

@@ -10,13 +10,6 @@ set(CMAKE_CXX_STANDARD_REQUIRED True)
# Exportar comandos de compilación para herramientas de análisis # Exportar comandos de compilación para herramientas de análisis
set(CMAKE_EXPORT_COMPILE_COMMANDS ON) set(CMAKE_EXPORT_COMPILE_COMMANDS ON)
# Establece la política CMP0072 para indicar cómo se debe seleccionar la implementación de OpenGL.
# En este caso, se elige la opción "GLVND", que utiliza bibliotecas modernas y modulares (libOpenGL, libGLX),
# en lugar de la biblioteca OpenGL clásica (libGL). Esto mejora la compatibilidad con drivers recientes
# y evita ambigüedades cuando se encuentran múltiples implementaciones de OpenGL en el sistema.
cmake_policy(SET CMP0072 NEW)
set(OpenGL_GL_PREFERENCE GLVND)
# --- GENERACIÓN DE VERSIÓN AUTOMÁTICA --- # --- GENERACIÓN DE VERSIÓN AUTOMÁTICA ---
find_package(Git QUIET) find_package(Git QUIET)
if(GIT_FOUND) if(GIT_FOUND)
@@ -47,13 +40,18 @@ set(APP_SOURCES
# Core - Rendering # Core - Rendering
source/core/rendering/gif.cpp source/core/rendering/gif.cpp
source/core/rendering/pixel_reveal.cpp
source/core/rendering/render_info.cpp
source/core/rendering/screen.cpp source/core/rendering/screen.cpp
source/core/rendering/surface.cpp source/core/rendering/surface.cpp
source/core/rendering/surface_animated_sprite.cpp source/core/rendering/sprite/animated_sprite.cpp
source/core/rendering/surface_moving_sprite.cpp source/core/rendering/sprite/dissolve_sprite.cpp
source/core/rendering/surface_sprite.cpp source/core/rendering/sprite/moving_sprite.cpp
source/core/rendering/sprite/sprite.cpp
source/core/rendering/text.cpp source/core/rendering/text.cpp
source/core/rendering/texture.cpp
# Core - Locale
source/core/locale/locale.cpp
# Core - Resources # Core - Resources
source/core/resources/resource_list.cpp source/core/resources/resource_list.cpp
@@ -98,6 +96,7 @@ set(APP_SOURCES
source/game/scenes/title.cpp source/game/scenes/title.cpp
# Game - UI # Game - UI
source/game/ui/console.cpp
source/game/ui/notifier.cpp source/game/ui/notifier.cpp
# Utils # Utils
@@ -108,9 +107,9 @@ set(APP_SOURCES
source/main.cpp source/main.cpp
) )
# Fuentes del sistema de renderizado # Fuentes del sistema de renderizado (SDL3 GPU para todas las plataformas)
set(RENDERING_SOURCES set(RENDERING_SOURCES
source/core/rendering/opengl/opengl_shader.cpp source/core/rendering/sdl3gpu/sdl3gpu_shader.cpp
) )
# Fuentes de debug (solo en modo Debug) # Fuentes de debug (solo en modo Debug)
@@ -122,9 +121,79 @@ set(DEBUG_SOURCES
find_package(SDL3 REQUIRED CONFIG REQUIRED COMPONENTS SDL3) find_package(SDL3 REQUIRED CONFIG REQUIRED COMPONENTS SDL3)
message(STATUS "SDL3 encontrado: ${SDL3_INCLUDE_DIRS}") message(STATUS "SDL3 encontrado: ${SDL3_INCLUDE_DIRS}")
# --- SHADER COMPILATION (Linux/Windows only - macOS uses Metal) ---
if(NOT APPLE)
find_program(GLSLC_EXE NAMES glslc)
set(SHADERS_DIR "${CMAKE_SOURCE_DIR}/data/shaders")
set(HEADERS_DIR "${CMAKE_SOURCE_DIR}/source/core/rendering/sdl3gpu")
set(SHADER_POSTFX_VERT_SRC "${SHADERS_DIR}/postfx.vert")
set(SHADER_POSTFX_FRAG_SRC "${SHADERS_DIR}/postfx.frag")
set(SHADER_UPSCALE_FRAG_SRC "${SHADERS_DIR}/upscale.frag")
set(SHADER_DOWNSCALE_FRAG_SRC "${SHADERS_DIR}/downscale.frag")
set(SHADER_CRTPI_FRAG_SRC "${SHADERS_DIR}/crtpi_frag.glsl")
set(SHADER_POSTFX_VERT_H "${HEADERS_DIR}/postfx_vert_spv.h")
set(SHADER_POSTFX_FRAG_H "${HEADERS_DIR}/postfx_frag_spv.h")
set(SHADER_UPSCALE_FRAG_H "${HEADERS_DIR}/upscale_frag_spv.h")
set(SHADER_DOWNSCALE_FRAG_H "${HEADERS_DIR}/downscale_frag_spv.h")
set(SHADER_CRTPI_FRAG_H "${HEADERS_DIR}/crtpi_frag_spv.h")
set(ALL_SHADER_HEADERS
"${SHADER_POSTFX_VERT_H}"
"${SHADER_POSTFX_FRAG_H}"
"${SHADER_UPSCALE_FRAG_H}"
"${SHADER_DOWNSCALE_FRAG_H}"
"${SHADER_CRTPI_FRAG_H}"
)
set(ALL_SHADER_SOURCES
"${SHADER_POSTFX_VERT_SRC}"
"${SHADER_POSTFX_FRAG_SRC}"
"${SHADER_UPSCALE_FRAG_SRC}"
"${SHADER_DOWNSCALE_FRAG_SRC}"
"${SHADER_CRTPI_FRAG_SRC}"
)
if(GLSLC_EXE)
add_custom_command(
OUTPUT ${ALL_SHADER_HEADERS}
COMMAND ${CMAKE_COMMAND}
-D GLSLC=${GLSLC_EXE}
-D SHADERS_DIR=${SHADERS_DIR}
-D HEADERS_DIR=${HEADERS_DIR}
-P ${CMAKE_SOURCE_DIR}/tools/shaders/compile_spirv.cmake
DEPENDS ${ALL_SHADER_SOURCES}
WORKING_DIRECTORY "${CMAKE_SOURCE_DIR}"
COMMENT "Compilando shaders SPIR-V..."
)
add_custom_target(shaders DEPENDS ${ALL_SHADER_HEADERS})
message(STATUS "glslc encontrado: shaders se compilarán automáticamente")
else()
foreach(HDR ${ALL_SHADER_HEADERS})
if(NOT EXISTS "${HDR}")
message(FATAL_ERROR
"glslc no encontrado y header SPIR-V no existe: ${HDR}\n"
" Instala glslc: sudo apt install glslang-tools (Linux)\n"
" choco install vulkan-sdk (Windows)\n"
" O genera los headers manualmente: tools/shaders/compile_spirv.sh"
)
endif()
endforeach()
message(STATUS "glslc no encontrado - usando headers SPIR-V precompilados")
endif()
else()
message(STATUS "macOS: shaders SPIR-V omitidos (usa Metal)")
endif()
# --- 2. AÑADIR EJECUTABLE --- # --- 2. AÑADIR EJECUTABLE ---
add_executable(${PROJECT_NAME} ${APP_SOURCES} ${RENDERING_SOURCES}) add_executable(${PROJECT_NAME} ${APP_SOURCES} ${RENDERING_SOURCES})
# Shaders deben compilarse antes que el ejecutable (Linux/Windows con glslc)
if(NOT APPLE AND GLSLC_EXE)
add_dependencies(${PROJECT_NAME} shaders)
endif()
# Añadir fuentes de debug solo en modo Debug # Añadir fuentes de debug solo en modo Debug
target_sources(${PROJECT_NAME} PRIVATE $<$<CONFIG:Debug>:${DEBUG_SOURCES}>) target_sources(${PROJECT_NAME} PRIVATE $<$<CONFIG:Debug>:${DEBUG_SOURCES}>)
@@ -143,13 +212,14 @@ target_link_libraries(${PROJECT_NAME} PRIVATE SDL3::SDL3)
target_compile_options(${PROJECT_NAME} PRIVATE -Wall) target_compile_options(${PROJECT_NAME} PRIVATE -Wall)
target_compile_options(${PROJECT_NAME} PRIVATE $<$<CONFIG:RELEASE>:-Os -ffunction-sections -fdata-sections>) target_compile_options(${PROJECT_NAME} PRIVATE $<$<CONFIG:RELEASE>:-Os -ffunction-sections -fdata-sections>)
# Definir _DEBUG en modo Debug # Definir _DEBUG en modo Debug y RELEASE_BUILD en modo Release
target_compile_definitions(${PROJECT_NAME} PRIVATE $<$<CONFIG:DEBUG>:_DEBUG>) target_compile_definitions(${PROJECT_NAME} PRIVATE $<$<CONFIG:DEBUG>:_DEBUG>)
target_compile_definitions(${PROJECT_NAME} PRIVATE $<$<CONFIG:RELEASE>:RELEASE_BUILD>)
# Configuración específica para cada plataforma # Configuración específica para cada plataforma
if(WIN32) if(WIN32)
target_compile_definitions(${PROJECT_NAME} PRIVATE WINDOWS_BUILD) target_compile_definitions(${PROJECT_NAME} PRIVATE WINDOWS_BUILD)
target_link_libraries(${PROJECT_NAME} PRIVATE ws2_32 mingw32 opengl32) target_link_libraries(${PROJECT_NAME} PRIVATE ws2_32 mingw32)
elseif(APPLE) elseif(APPLE)
target_compile_definitions(${PROJECT_NAME} PRIVATE MACOS_BUILD) target_compile_definitions(${PROJECT_NAME} PRIVATE MACOS_BUILD)
target_compile_options(${PROJECT_NAME} PRIVATE -Wno-deprecated) target_compile_options(${PROJECT_NAME} PRIVATE -Wno-deprecated)
@@ -158,16 +228,97 @@ elseif(UNIX AND NOT APPLE)
target_compile_definitions(${PROJECT_NAME} PRIVATE LINUX_BUILD) target_compile_definitions(${PROJECT_NAME} PRIVATE LINUX_BUILD)
endif() endif()
# Configuración común para OpenGL
if(NOT WIN32)
find_package(OpenGL REQUIRED)
if(OPENGL_FOUND)
message(STATUS "OpenGL encontrado: ${OPENGL_LIBRARIES}")
target_link_libraries(${PROJECT_NAME} PRIVATE ${OPENGL_LIBRARIES})
else()
message(FATAL_ERROR "OpenGL no encontrado")
endif()
endif()
# Especificar la ubicación del ejecutable # Especificar la ubicación del ejecutable
set_target_properties(${PROJECT_NAME} PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_SOURCE_DIR}) set_target_properties(${PROJECT_NAME} PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_SOURCE_DIR})
# --- 5. STATIC ANALYSIS TARGETS ---
# Buscar herramientas de análisis estático
find_program(CLANG_TIDY_EXE NAMES clang-tidy)
find_program(CLANG_FORMAT_EXE NAMES clang-format)
# Recopilar todos los archivos fuente para formateo
file(GLOB_RECURSE ALL_SOURCE_FILES
"${CMAKE_SOURCE_DIR}/source/*.cpp"
"${CMAKE_SOURCE_DIR}/source/*.hpp"
"${CMAKE_SOURCE_DIR}/source/*.h"
)
# Excluir directorio external del análisis
list(FILTER ALL_SOURCE_FILES EXCLUDE REGEX ".*/external/.*")
# Para clang-tidy, también excluir jail_audio.hpp
set(CLANG_TIDY_SOURCES ${ALL_SOURCE_FILES})
list(FILTER CLANG_TIDY_SOURCES EXCLUDE REGEX ".*jail_audio\\.hpp$")
list(FILTER CLANG_TIDY_SOURCES EXCLUDE REGEX ".*_spv\\.h$")
# Targets de clang-tidy
if(CLANG_TIDY_EXE)
add_custom_target(tidy
COMMAND ${CLANG_TIDY_EXE}
-p ${CMAKE_BINARY_DIR}
${CLANG_TIDY_SOURCES}
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
COMMENT "Running clang-tidy..."
)
add_custom_target(tidy-fix
COMMAND ${CLANG_TIDY_EXE}
-p ${CMAKE_BINARY_DIR}
--fix
${CLANG_TIDY_SOURCES}
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
COMMENT "Running clang-tidy with fixes..."
)
else()
message(STATUS "clang-tidy no encontrado - targets 'tidy' y 'tidy-fix' no disponibles")
endif()
# Targets de clang-format
if(CLANG_FORMAT_EXE)
add_custom_target(format
COMMAND ${CLANG_FORMAT_EXE}
-i
${ALL_SOURCE_FILES}
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
COMMENT "Running clang-format..."
)
add_custom_target(format-check
COMMAND ${CLANG_FORMAT_EXE}
--dry-run
--Werror
${ALL_SOURCE_FILES}
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
COMMENT "Checking clang-format..."
)
else()
message(STATUS "clang-format no encontrado - targets 'format' y 'format-check' no disponibles")
endif()
# --- 6. PACK RESOURCES TARGETS ---
set(PACK_TOOL_SOURCES
${CMAKE_SOURCE_DIR}/tools/pack_resources/pack_resources.cpp
${CMAKE_SOURCE_DIR}/source/core/resources/resource_pack.cpp
)
add_executable(pack_tool ${PACK_TOOL_SOURCES})
target_include_directories(pack_tool PRIVATE ${CMAKE_SOURCE_DIR}/source)
set_target_properties(pack_tool PROPERTIES
RUNTIME_OUTPUT_DIRECTORY ${CMAKE_SOURCE_DIR}/tools/pack_resources
)
file(GLOB_RECURSE DATA_FILES "${CMAKE_SOURCE_DIR}/data/*")
add_custom_command(
OUTPUT "${CMAKE_SOURCE_DIR}/resources.pack"
COMMAND $<TARGET_FILE:pack_tool>
"${CMAKE_SOURCE_DIR}/data"
"${CMAKE_SOURCE_DIR}/resources.pack"
DEPENDS pack_tool ${DATA_FILES}
WORKING_DIRECTORY "${CMAKE_SOURCE_DIR}"
COMMENT "Generando resources.pack desde data/..."
)
add_custom_target(pack DEPENDS "${CMAKE_SOURCE_DIR}/resources.pack")
add_dependencies(${PROJECT_NAME} pack)

View File

@@ -1,6 +1,6 @@
Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License
Copyright (c) 2022 JailDoctor's Dilemma Copyright (c) 2022 JailDoctor's Dilemma - JailDesigner
This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.

125
Makefile
View File

@@ -12,9 +12,10 @@ DIR_TOOLS := $(addsuffix /, $(DIR_ROOT)tools)
TARGET_NAME := jaildoctors_dilemma TARGET_NAME := jaildoctors_dilemma
TARGET_FILE := $(DIR_BIN)$(TARGET_NAME) TARGET_FILE := $(DIR_BIN)$(TARGET_NAME)
APP_NAME := JailDoctor's Dilemma APP_NAME := JailDoctor's Dilemma
RELEASE_FOLDER := jdd_release DIST_DIR := dist
RELEASE_FOLDER := dist/_tmp
RELEASE_FILE := $(RELEASE_FOLDER)/$(TARGET_NAME) RELEASE_FILE := $(RELEASE_FOLDER)/$(TARGET_NAME)
RESOURCE_FILE := release/jdd.res RESOURCE_FILE := release/windows/jdd.res
# ============================================================================== # ==============================================================================
# PACKING TOOL # PACKING TOOL
@@ -30,12 +31,20 @@ PACK_SOURCES := $(DIR_TOOLS)pack_resources/pack_resources.cpp source/core/reso
PACK_INCLUDES := -Isource PACK_INCLUDES := -Isource
# ============================================================================== # ==============================================================================
# VERSION (automatic based on date) # SHADERS
# ==============================================================================
SHADER_SCRIPT := $(DIR_ROOT)tools/shaders/compile_spirv.sh
SHADER_VERT_H := $(DIR_ROOT)source/core/rendering/sdl3gpu/postfx_vert_spv.h
SHADER_FRAG_H := $(DIR_ROOT)source/core/rendering/sdl3gpu/postfx_frag_spv.h
GLSLC := $(shell command -v glslc 2>/dev/null)
# ==============================================================================
# VERSION (extracted from defines.hpp)
# ============================================================================== # ==============================================================================
ifeq ($(OS),Windows_NT) ifeq ($(OS),Windows_NT)
VERSION := $(shell powershell -Command "Get-Date -Format 'yyyy-MM-dd'") VERSION := v$(shell powershell -Command "(Select-String -Path 'source/utils/defines.hpp' -Pattern 'constexpr const char\* VERSION = \"(.+?)\"').Matches.Groups[1].Value")
else else
VERSION := $(shell date +%Y-%m-%d) VERSION := v$(shell grep 'constexpr const char\* VERSION' source/utils/defines.hpp | sed -E 's/.*VERSION = "([^"]+)".*/\1/')
endif endif
# ============================================================================== # ==============================================================================
@@ -52,10 +61,10 @@ endif
# ============================================================================== # ==============================================================================
# RELEASE NAMES # RELEASE NAMES
# ============================================================================== # ==============================================================================
WINDOWS_RELEASE := $(TARGET_NAME)-$(VERSION)-win32-x64.zip WINDOWS_RELEASE := $(DIST_DIR)/$(TARGET_NAME)-$(VERSION)-win32-x64.zip
MACOS_INTEL_RELEASE := $(TARGET_NAME)-$(VERSION)-macos-intel.dmg MACOS_INTEL_RELEASE := $(DIST_DIR)/$(TARGET_NAME)-$(VERSION)-macos-intel.dmg
MACOS_APPLE_SILICON_RELEASE := $(TARGET_NAME)-$(VERSION)-macos-apple-silicon.dmg MACOS_APPLE_SILICON_RELEASE := $(DIST_DIR)/$(TARGET_NAME)-$(VERSION)-macos-apple-silicon.dmg
LINUX_RELEASE := $(TARGET_NAME)-$(VERSION)-linux.tar.gz LINUX_RELEASE := $(DIST_DIR)/$(TARGET_NAME)-$(VERSION)-linux.tar.gz
# ============================================================================== # ==============================================================================
# SOURCE FILES # SOURCE FILES
@@ -75,7 +84,9 @@ APP_SOURCES := \
source/core/rendering/text.cpp \ source/core/rendering/text.cpp \
source/core/rendering/texture.cpp \ source/core/rendering/texture.cpp \
source/core/rendering/gif.cpp \ source/core/rendering/gif.cpp \
source/core/rendering/opengl/opengl_shader.cpp \ source/core/rendering/pixel_reveal.cpp \
source/core/rendering/surface_dissolve_sprite.cpp \
source/core/rendering/sdl3gpu/sdl3gpu_shader.cpp \
source/core/resources/resource_list.cpp \ source/core/resources/resource_list.cpp \
source/core/resources/resource_cache.cpp \ source/core/resources/resource_cache.cpp \
source/core/resources/resource_helper.cpp \ source/core/resources/resource_helper.cpp \
@@ -130,7 +141,7 @@ ifeq ($(OS),Windows_NT)
-Wl,--gc-sections -static-libstdc++ -static-libgcc \ -Wl,--gc-sections -static-libstdc++ -static-libgcc \
-Wl,-subsystem,windows -DWINDOWS_BUILD -Wl,-subsystem,windows -DWINDOWS_BUILD
CXXFLAGS_DEBUG := -std=$(CPP_STANDARD) -Wall -g -D_DEBUG -DWINDOWS_BUILD CXXFLAGS_DEBUG := -std=$(CPP_STANDARD) -Wall -g -D_DEBUG -DWINDOWS_BUILD
LDFLAGS := -lmingw32 -lws2_32 -lSDL3 -lopengl32 LDFLAGS := -lmingw32 -lws2_32 -lSDL3
RM := del /Q RM := del /Q
MKDIR := mkdir MKDIR := mkdir
else else
@@ -144,18 +155,35 @@ else
UNAME_S := $(shell uname -s) UNAME_S := $(shell uname -s)
ifeq ($(UNAME_S),Linux) ifeq ($(UNAME_S),Linux)
CXXFLAGS += -DLINUX_BUILD CXXFLAGS += -DLINUX_BUILD
LDFLAGS += -lGL
endif endif
ifeq ($(UNAME_S),Darwin) ifeq ($(UNAME_S),Darwin)
CXXFLAGS += -Wno-deprecated -DMACOS_BUILD CXXFLAGS += -DMACOS_BUILD
CXXFLAGS_DEBUG += -Wno-deprecated -DMACOS_BUILD CXXFLAGS_DEBUG += -DMACOS_BUILD
LDFLAGS += -framework OpenGL
# Configurar arquitectura (por defecto arm64) # Configurar arquitectura (por defecto arm64)
CXXFLAGS += -arch arm64 CXXFLAGS += -arch arm64
CXXFLAGS_DEBUG += -arch arm64 CXXFLAGS_DEBUG += -arch arm64
endif endif
endif endif
# ==============================================================================
# REGLAS PARA COMPILACIÓN DE SHADERS
# ==============================================================================
compile_shaders:
ifdef GLSLC
@echo "Compilando shaders SPIR-V..."
@$(SHADER_SCRIPT)
@echo "✓ Shaders compilados"
else
@if [ -f "$(SHADER_VERT_H)" ] && [ -f "$(SHADER_FRAG_H)" ]; then \
echo "⚠ glslc no encontrado - usando headers SPIR-V precompilados"; \
else \
echo "ERROR: glslc no encontrado y headers SPIR-V no existen."; \
echo " Instala glslc: sudo apt install glslang-tools"; \
echo " O ejecuta manualmente: tools/shaders/compile_spirv.sh"; \
exit 1; \
fi
endif
# ============================================================================== # ==============================================================================
# REGLAS PARA HERRAMIENTA DE EMPAQUETADO Y RESOURCES.PACK # REGLAS PARA HERRAMIENTA DE EMPAQUETADO Y RESOURCES.PACK
# ============================================================================== # ==============================================================================
@@ -176,18 +204,15 @@ resources.pack: $(PACK_TOOL)
# ============================================================================== # ==============================================================================
windows: windows:
@echo off @echo off
@echo Generando version.h...
@powershell -Command "$$GIT_HASH = (git rev-parse --short=7 HEAD 2>$$null); if (-not $$GIT_HASH) { $$GIT_HASH = 'unknown' }; (Get-Content source/version.h.in) -replace '@GIT_HASH@', $$GIT_HASH | Set-Content source/version.h"
@echo Compilando para Windows con nombre: "$(WIN_TARGET_FILE).exe" @echo Compilando para Windows con nombre: "$(WIN_TARGET_FILE).exe"
windres release/jdd.rc -O coff -o $(RESOURCE_FILE) windres release/windows/jdd.rc -O coff -o $(RESOURCE_FILE)
g++ $(ALL_SOURCES) $(RESOURCE_FILE) $(INCLUDES) $(CXXFLAGS) $(LDFLAGS) -o "$(WIN_TARGET_FILE).exe" g++ $(ALL_SOURCES) $(RESOURCE_FILE) $(INCLUDES) $(CXXFLAGS) $(LDFLAGS) -o "$(WIN_TARGET_FILE).exe"
strip -s -R .comment -R .gnu.version "$(WIN_TARGET_FILE).exe" --strip-unneeded strip -s -R .comment -R .gnu.version "$(WIN_TARGET_FILE).exe" --strip-unneeded
windows_debug:
@echo off
@echo Compilando version debug para Windows: "$(WIN_TARGET_FILE)_debug.exe"
g++ $(ALL_SOURCES) $(INCLUDES) -DDEBUG -DVERBOSE $(CXXFLAGS_DEBUG) $(LDFLAGS) -o "$(WIN_TARGET_FILE)_debug.exe"
windows_release: windows_release:
@$(MAKE) pack_tool @$(MAKE) compile_shaders
@$(MAKE) resources.pack @$(MAKE) resources.pack
@echo off @echo off
@echo Creando release para Windows - Version: $(VERSION) @echo Creando release para Windows - Version: $(VERSION)
@@ -196,7 +221,8 @@ windows_release:
@echo "Generando version.h..." @echo "Generando version.h..."
@powershell -Command "$$GIT_HASH = (git rev-parse --short=7 HEAD 2>$$null); if (-not $$GIT_HASH) { $$GIT_HASH = 'unknown' }; (Get-Content source/version.h.in) -replace '@GIT_HASH@', $$GIT_HASH | Set-Content source/version.h" @powershell -Command "$$GIT_HASH = (git rev-parse --short=7 HEAD 2>$$null); if (-not $$GIT_HASH) { $$GIT_HASH = 'unknown' }; (Get-Content source/version.h.in) -replace '@GIT_HASH@', $$GIT_HASH | Set-Content source/version.h"
# Crea carpeta temporal 'RELEASE_FOLDER' # Crea carpeta de distribución y carpeta temporal 'RELEASE_FOLDER'
powershell if (-not (Test-Path "$(DIST_DIR)")) {New-Item "$(DIST_DIR)" -ItemType Directory}
powershell if (Test-Path "$(RELEASE_FOLDER)") {Remove-Item "$(RELEASE_FOLDER)" -Recurse -Force} powershell if (Test-Path "$(RELEASE_FOLDER)") {Remove-Item "$(RELEASE_FOLDER)" -Recurse -Force}
powershell if (-not (Test-Path "$(RELEASE_FOLDER)")) {New-Item "$(RELEASE_FOLDER)" -ItemType Directory} powershell if (-not (Test-Path "$(RELEASE_FOLDER)")) {New-Item "$(RELEASE_FOLDER)" -ItemType Directory}
@@ -207,10 +233,10 @@ windows_release:
powershell Copy-Item "LICENSE" -Destination "$(RELEASE_FOLDER)" powershell Copy-Item "LICENSE" -Destination "$(RELEASE_FOLDER)"
powershell Copy-Item "README.md" -Destination "$(RELEASE_FOLDER)" powershell Copy-Item "README.md" -Destination "$(RELEASE_FOLDER)"
powershell Copy-Item "gamecontrollerdb.txt" -Destination "$(RELEASE_FOLDER)" powershell Copy-Item "gamecontrollerdb.txt" -Destination "$(RELEASE_FOLDER)"
powershell Copy-Item "release\*.dll" -Destination "$(RELEASE_FOLDER)" powershell Copy-Item "release\windows\dll\*.dll" -Destination "$(RELEASE_FOLDER)"
# Compila (con icono) # Compila (con icono)
windres release/jdd.rc -O coff -o $(RESOURCE_FILE) windres release/windows/jdd.rc -O coff -o $(RESOURCE_FILE)
g++ $(ALL_SOURCES) $(RESOURCE_FILE) $(INCLUDES) -DRELEASE_BUILD $(CXXFLAGS) $(LDFLAGS) -o "$(WIN_RELEASE_FILE).exe" g++ $(ALL_SOURCES) $(RESOURCE_FILE) $(INCLUDES) -DRELEASE_BUILD $(CXXFLAGS) $(LDFLAGS) -o "$(WIN_RELEASE_FILE).exe"
strip -s -R .comment -R .gnu.version "$(WIN_RELEASE_FILE).exe" --strip-unneeded strip -s -R .comment -R .gnu.version "$(WIN_RELEASE_FILE).exe" --strip-unneeded
@@ -226,15 +252,13 @@ windows_release:
# COMPILACIÓN PARA MACOS # COMPILACIÓN PARA MACOS
# ============================================================================== # ==============================================================================
macos: macos:
@GIT_HASH=$$(git rev-parse --short=7 HEAD 2>/dev/null || echo "unknown"); \
sed "s/@GIT_HASH@/$$GIT_HASH/g" source/version.h.in > source/version.h
@echo "Compilando para macOS: $(TARGET_NAME)" @echo "Compilando para macOS: $(TARGET_NAME)"
clang++ $(ALL_SOURCES) $(INCLUDES) $(CXXFLAGS) $(LDFLAGS) -o "$(TARGET_FILE)" clang++ $(ALL_SOURCES) $(INCLUDES) $(CXXFLAGS) $(LDFLAGS) -o "$(TARGET_FILE)"
macos_debug:
@echo "Compilando version debug para macOS: $(TARGET_NAME)_debug"
clang++ $(ALL_SOURCES) $(INCLUDES) -DDEBUG -DVERBOSE $(CXXFLAGS_DEBUG) $(LDFLAGS) -o "$(TARGET_FILE)_debug"
macos_release: macos_release:
@$(MAKE) pack_tool @$(MAKE) compile_shaders
@$(MAKE) resources.pack @$(MAKE) resources.pack
@echo "Creando release para macOS - Version: $(VERSION)" @echo "Creando release para macOS - Version: $(VERSION)"
@@ -248,29 +272,31 @@ macos_release:
# Elimina datos de compilaciones anteriores # Elimina datos de compilaciones anteriores
$(RMDIR) "$(RELEASE_FOLDER)" $(RMDIR) "$(RELEASE_FOLDER)"
$(RMDIR) Frameworks
$(RMFILE) tmp.dmg $(RMFILE) tmp.dmg
$(RMFILE) "$(MACOS_INTEL_RELEASE)" $(RMFILE) "$(DIST_DIR)"/rw.*
$(RMFILE) "$(MACOS_APPLE_SILICON_RELEASE)"
# Crea la carpeta temporal para hacer el trabajo y las carpetas obligatorias para crear una app de macOS # Crea la carpeta temporal para hacer el trabajo y las carpetas obligatorias para crear una app de macOS
$(MKDIR) "$(RELEASE_FOLDER)/$(APP_NAME).app/Contents/Frameworks" $(MKDIR) "$(RELEASE_FOLDER)/$(APP_NAME).app/Contents/Frameworks"
$(MKDIR) "$(RELEASE_FOLDER)/$(APP_NAME).app/Contents/MacOS" $(MKDIR) "$(RELEASE_FOLDER)/$(APP_NAME).app/Contents/MacOS"
$(MKDIR) "$(RELEASE_FOLDER)/$(APP_NAME).app/Contents/Resources" $(MKDIR) "$(RELEASE_FOLDER)/$(APP_NAME).app/Contents/Resources"
$(MKDIR) Frameworks
# Copia carpetas y ficheros # Copia carpetas y ficheros
cp resources.pack "$(RELEASE_FOLDER)/$(APP_NAME).app/Contents/Resources" cp resources.pack "$(RELEASE_FOLDER)/$(APP_NAME).app/Contents/Resources"
cp gamecontrollerdb.txt "$(RELEASE_FOLDER)/$(APP_NAME).app/Contents/Resources" cp gamecontrollerdb.txt "$(RELEASE_FOLDER)/$(APP_NAME).app/Contents/Resources"
cp -R release/frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework "$(RELEASE_FOLDER)/$(APP_NAME).app/Contents/Frameworks" cp -R release/macos/frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework "$(RELEASE_FOLDER)/$(APP_NAME).app/Contents/Frameworks"
cp -R release/frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework Frameworks cp release/icons/*.icns "$(RELEASE_FOLDER)/$(APP_NAME).app/Contents/Resources"
cp release/*.icns "$(RELEASE_FOLDER)/$(APP_NAME).app/Contents/Resources" cp release/macos/Info.plist "$(RELEASE_FOLDER)/$(APP_NAME).app/Contents"
cp release/Info.plist "$(RELEASE_FOLDER)/$(APP_NAME).app/Contents"
cp LICENSE "$(RELEASE_FOLDER)" cp LICENSE "$(RELEASE_FOLDER)"
cp README.md "$(RELEASE_FOLDER)" cp README.md "$(RELEASE_FOLDER)"
# Actualiza versión en Info.plist
@echo "Actualizando Info.plist con versión $(VERSION)..."
@RAW_VERSION=$$(echo "$(VERSION)" | sed 's/^v//'); \
sed -i '' '/<key>CFBundleShortVersionString<\/key>/{n;s|<string>.*</string>|<string>'"$$RAW_VERSION"'</string>|;}' "$(RELEASE_FOLDER)/$(APP_NAME).app/Contents/Info.plist"; \
sed -i '' '/<key>CFBundleVersion<\/key>/{n;s|<string>.*</string>|<string>'"$$RAW_VERSION"'</string>|;}' "$(RELEASE_FOLDER)/$(APP_NAME).app/Contents/Info.plist"
# Compila la versión para procesadores Intel # Compila la versión para procesadores Intel
clang++ $(ALL_SOURCES) $(INCLUDES) -DMACOS_BUNDLE -DRELEASE_BUILD -std=$(CPP_STANDARD) -Wall -Os -framework SDL3 -F ./Frameworks -framework OpenGL -Wno-deprecated -ffunction-sections -fdata-sections -o "$(RELEASE_FOLDER)/$(APP_NAME).app/Contents/MacOS/$(TARGET_NAME)" -rpath @executable_path/../Frameworks/ -target x86_64-apple-macos10.15 clang++ $(ALL_SOURCES) $(INCLUDES) -DMACOS_BUNDLE -DRELEASE_BUILD -std=$(CPP_STANDARD) -Wall -Os -framework SDL3 -F release/macos/frameworks/SDL3.xcframework/macos-arm64_x86_64 -ffunction-sections -fdata-sections -o "$(RELEASE_FOLDER)/$(APP_NAME).app/Contents/MacOS/$(TARGET_NAME)" -rpath @executable_path/../Frameworks/ -target x86_64-apple-macos10.15
# Firma la aplicación # Firma la aplicación
codesign --deep --force --sign - --timestamp=none "$(RELEASE_FOLDER)/$(APP_NAME).app" codesign --deep --force --sign - --timestamp=none "$(RELEASE_FOLDER)/$(APP_NAME).app"
@@ -293,7 +319,7 @@ macos_release:
@echo "Release Intel creado: $(MACOS_INTEL_RELEASE)" @echo "Release Intel creado: $(MACOS_INTEL_RELEASE)"
# Compila la versión para procesadores Apple Silicon # Compila la versión para procesadores Apple Silicon
clang++ $(ALL_SOURCES) $(INCLUDES) -DMACOS_BUNDLE -DRELEASE_BUILD -std=$(CPP_STANDARD) -Wall -Os -framework SDL3 -F ./Frameworks -framework OpenGL -Wno-deprecated -ffunction-sections -fdata-sections -o "$(RELEASE_FOLDER)/$(APP_NAME).app/Contents/MacOS/$(TARGET_NAME)" -rpath @executable_path/../Frameworks/ -target arm64-apple-macos11 clang++ $(ALL_SOURCES) $(INCLUDES) -DMACOS_BUNDLE -DRELEASE_BUILD -std=$(CPP_STANDARD) -Wall -Os -framework SDL3 -F release/macos/frameworks/SDL3.xcframework/macos-arm64_x86_64 -ffunction-sections -fdata-sections -o "$(RELEASE_FOLDER)/$(APP_NAME).app/Contents/MacOS/$(TARGET_NAME)" -rpath @executable_path/../Frameworks/ -target arm64-apple-macos11
# Firma la aplicación # Firma la aplicación
codesign --deep --force --sign - --timestamp=none "$(RELEASE_FOLDER)/$(APP_NAME).app" codesign --deep --force --sign - --timestamp=none "$(RELEASE_FOLDER)/$(APP_NAME).app"
@@ -316,23 +342,21 @@ macos_release:
@echo "Release Apple Silicon creado: $(MACOS_APPLE_SILICON_RELEASE)" @echo "Release Apple Silicon creado: $(MACOS_APPLE_SILICON_RELEASE)"
# Elimina las carpetas temporales # Elimina las carpetas temporales
$(RMDIR) Frameworks
$(RMDIR) "$(RELEASE_FOLDER)" $(RMDIR) "$(RELEASE_FOLDER)"
$(RMFILE) "$(DIST_DIR)"/rw.*
# ============================================================================== # ==============================================================================
# COMPILACIÓN PARA LINUX # COMPILACIÓN PARA LINUX
# ============================================================================== # ==============================================================================
linux: linux:
@GIT_HASH=$$(git rev-parse --short=7 HEAD 2>/dev/null || echo "unknown"); \
sed "s/@GIT_HASH@/$$GIT_HASH/g" source/version.h.in > source/version.h
@echo "Compilando para Linux: $(TARGET_NAME)" @echo "Compilando para Linux: $(TARGET_NAME)"
g++ $(ALL_SOURCES) $(INCLUDES) $(CXXFLAGS) $(LDFLAGS) -o "$(TARGET_FILE)" g++ $(ALL_SOURCES) $(INCLUDES) $(CXXFLAGS) $(LDFLAGS) -o "$(TARGET_FILE)"
strip -s -R .comment -R .gnu.version "$(TARGET_FILE)" --strip-unneeded strip -s -R .comment -R .gnu.version "$(TARGET_FILE)" --strip-unneeded
linux_debug:
@echo "Compilando version debug para Linux: $(TARGET_NAME)_debug"
g++ $(ALL_SOURCES) $(INCLUDES) -DDEBUG -DVERBOSE $(CXXFLAGS_DEBUG) $(LDFLAGS) -o "$(TARGET_FILE)_debug"
linux_release: linux_release:
@$(MAKE) pack_tool @$(MAKE) compile_shaders
@$(MAKE) resources.pack @$(MAKE) resources.pack
@echo "Creando release para Linux - Version: $(VERSION)" @echo "Creando release para Linux - Version: $(VERSION)"
@@ -341,10 +365,8 @@ linux_release:
@GIT_HASH=$$(git rev-parse --short=7 HEAD 2>/dev/null || echo "unknown"); \ @GIT_HASH=$$(git rev-parse --short=7 HEAD 2>/dev/null || echo "unknown"); \
sed "s/@GIT_HASH@/$$GIT_HASH/g" source/version.h.in > source/version.h sed "s/@GIT_HASH@/$$GIT_HASH/g" source/version.h.in > source/version.h
# Elimina carpetas previas # Elimina carpeta temporal previa y la recrea (crea dist/ si no existe)
$(RMDIR) "$(RELEASE_FOLDER)" $(RMDIR) "$(RELEASE_FOLDER)"
# Crea la carpeta temporal para realizar el lanzamiento
$(MKDIR) "$(RELEASE_FOLDER)" $(MKDIR) "$(RELEASE_FOLDER)"
# Copia ficheros # Copia ficheros
@@ -377,13 +399,10 @@ help:
@echo "Makefile para JailDoctor's Dilemma" @echo "Makefile para JailDoctor's Dilemma"
@echo "Comandos disponibles:" @echo "Comandos disponibles:"
@echo " windows - Compilar para Windows" @echo " windows - Compilar para Windows"
@echo " windows_debug - Compilar debug para Windows"
@echo " windows_release - Crear release completo para Windows" @echo " windows_release - Crear release completo para Windows"
@echo " linux - Compilar para Linux" @echo " linux - Compilar para Linux"
@echo " linux_debug - Compilar debug para Linux"
@echo " linux_release - Crear release completo para Linux" @echo " linux_release - Crear release completo para Linux"
@echo " macos - Compilar para macOS" @echo " macos - Compilar para macOS"
@echo " macos_debug - Compilar debug para macOS"
@echo " macos_release - Crear release completo para macOS" @echo " macos_release - Crear release completo para macOS"
@echo " pack_tool - Compilar herramienta de empaquetado" @echo " pack_tool - Compilar herramienta de empaquetado"
@echo " resources.pack - Generar pack de recursos desde data/" @echo " resources.pack - Generar pack de recursos desde data/"
@@ -392,4 +411,4 @@ help:
FORCE: FORCE:
.PHONY: windows windows_debug windows_release macos macos_debug macos_release linux linux_debug linux_release pack_tool resources.pack show_version help .PHONY: windows windows_release macos macos_release linux linux_release compile_shaders pack_tool resources.pack show_version help

View File

@@ -30,21 +30,25 @@ Quan hages recuperat la major part de les peces, dirigeix-te a la Jail per mostr
El joc permet tant l'ús del teclat com d'un comandament. Les tecles per a jugar són les següents: El joc permet tant l'ús del teclat com d'un comandament. Les tecles per a jugar són les següents:
- **Cursors**: Per moure's a l'esquerra o dreta i per saltar. Es poden modificar les tecles en el fitxer de configuració, triant entre aquestes opcions: | Tecla | Acció |
- O, P per moure's i Q per saltar. |-------|-------|
- A, D per moure's i W per saltar. | **←, →** | Moure's a l'esquerra o dreta |
| **↑** | Saltar |
| **Enter** | Eixir dels projectes |
| **ESC** | Cancelar / Eixir del joc |
| **F1** | Disminuir la mida de la finestra |
| **F2** | Augmentar la mida de la finestra |
| **F3** | Alternar pantalla completa |
| **F4** | Activar/desactivar els shaders |
| **F5** | Següent paleta de colors |
| **F6** | Paleta de colors anterior |
| **F7** | Activar/desactivar l'escalat exacte |
| **F8** | Activar/desactivar la música |
| **F9** | Activar/desactivar el marge de colors |
| **F10** | Activar/desactivar VSync |
| **F11** | Pausar el joc |
- **Tecla M**: Activa o desactiva la música. **Nota:** Les tecles de moviment (←, →, ↑) es poden redefinir des del menú del joc.
- **Tecla P**: Pausa el joc.
- **Tecla ESC**: Ix del joc si estàs jugant. Tanca el programa en qualsevol altra circumstància.
- **Tecla F1**: Disminueix la mida de la finestra.
- **Tecla F2**: Augmenta la mida de la finestra.
- **Tecla F3**: Alterna entre el mode de pantalla completa i el mode finestra.
- **Tecla F4**: Activa o desactiva els shaders.
- **Tecla F5**: Estableix la següent paleta de colors.
- **Tecla F6**: Estableix la paleta de colors prèvia.
- **Tecla F7**: Activa o desactiva el escalat exacte.
- **Tecla B**: Activa o desactiva el marge de colors.
![JailDoctor's Dilemma - Gameplay](https://php.sustancia.synology.me/images/jdd/jdd_game2.png) ![JailDoctor's Dilemma - Gameplay](https://php.sustancia.synology.me/images/jdd/jdd_game2.png)
@@ -56,9 +60,9 @@ El programa guarda automàticament la configuració del mode de vídeo i les est
- **Windows**: `C:\Users\<nom_d'usuari>\AppData\Roaming\jailgames\jaildoctors_dilemma` - **Windows**: `C:\Users\<nom_d'usuari>\AppData\Roaming\jailgames\jaildoctors_dilemma`
- **MacOS**: `~/Library/Application Support/jailgames/jaildoctors_dilemma` - **MacOS**: `~/Library/Application Support/jailgames/jaildoctors_dilemma`
- **Linux**: `~/.jailgames/jaildoctors_dilemma` - **Linux**: `~/.config/jailgames/jaildoctors_dilemma`
Dins de la carpeta es troba el fitxer de configuració `config.txt`, on es pot modificar la configuració per connectar-se al servei en línia, i els fitxers `stats.csv` i `stats_buffer.csv`, que contenen informació sobre les estadístiques del joc. Dins de la carpeta es troba el fitxer de configuració `config.yaml`, on es pot modificar la configuració per connectar-se al servei en línia, i els fitxers `stats.csv` i `stats_buffer.csv`, que contenen informació sobre les estadístiques del joc.
--- ---

View File

@@ -1,339 +0,0 @@
# JailDoctor's Dilemma - Asset Configuration
# Format: TYPE|PATH [|OPTIONS]
# Options: optional, absolute (comma-separated)
# Variables: ${PREFIX}, ${SYSTEM_FOLDER}
# ===================================================================
# FONTS
# ===================================================================
BITMAP|${PREFIX}/data/font/smb2.gif
FONT|${PREFIX}/data/font/smb2.txt
BITMAP|${PREFIX}/data/font/aseprite.gif
FONT|${PREFIX}/data/font/aseprite.txt
BITMAP|${PREFIX}/data/font/gauntlet.gif
FONT|${PREFIX}/data/font/gauntlet.txt
BITMAP|${PREFIX}/data/font/subatomic.gif
FONT|${PREFIX}/data/font/subatomic.txt
BITMAP|${PREFIX}/data/font/8bithud.gif
FONT|${PREFIX}/data/font/8bithud.txt
# ===================================================================
# PALETTES
# ===================================================================
PALETTE|${PREFIX}/data/palette/zx-spectrum.pal
PALETTE|${PREFIX}/data/palette/zx-spectrum-adjusted.pal
PALETTE|${PREFIX}/data/palette/zxarne-5-2.pal
PALETTE|${PREFIX}/data/palette/black-and-white.pal
PALETTE|${PREFIX}/data/palette/green-phosphor.pal
PALETTE|${PREFIX}/data/palette/orange-screen.pal
PALETTE|${PREFIX}/data/palette/ruzx-spectrum.pal
PALETTE|${PREFIX}/data/palette/ruzx-spectrum-revision-2.pal
PALETTE|${PREFIX}/data/palette/pico-8.pal
PALETTE|${PREFIX}/data/palette/sweetie-16.pal
PALETTE|${PREFIX}/data/palette/island-joy-16.pal
PALETTE|${PREFIX}/data/palette/lost-century.pal
PALETTE|${PREFIX}/data/palette/na16.pal
PALETTE|${PREFIX}/data/palette/steam-lords.pal
# ===================================================================
# SHADERS
# ===================================================================
DATA|${PREFIX}/data/shaders/crtpi_vertex.glsl
DATA|${PREFIX}/data/shaders/crtpi_fragment.glsl
DATA|${PREFIX}/data/shaders/crtpi_vertex_es.glsl
DATA|${PREFIX}/data/shaders/crtpi_fragment_es.glsl
# ===================================================================
# INPUT DATA (in root, not packed - SDL needs filesystem access)
# ===================================================================
DATA|${PREFIX}/gamecontrollerdb.txt
# ===================================================================
# SYSTEM FILES (optional, absolute paths)
# ===================================================================
DATA|${SYSTEM_FOLDER}/config.txt|optional,absolute
DATA|${SYSTEM_FOLDER}/stats_buffer.csv|optional,absolute
DATA|${SYSTEM_FOLDER}/stats.csv|optional,absolute
DATA|${SYSTEM_FOLDER}/cheevos.bin|optional,absolute
# ===================================================================
# ROOMS (60 rooms - formato YAML unificado con tilemap embebido)
# ===================================================================
ROOM|${PREFIX}/data/room/01.yaml
ROOM|${PREFIX}/data/room/02.yaml
ROOM|${PREFIX}/data/room/03.yaml
ROOM|${PREFIX}/data/room/04.yaml
ROOM|${PREFIX}/data/room/05.yaml
ROOM|${PREFIX}/data/room/06.yaml
ROOM|${PREFIX}/data/room/07.yaml
ROOM|${PREFIX}/data/room/08.yaml
ROOM|${PREFIX}/data/room/09.yaml
ROOM|${PREFIX}/data/room/10.yaml
ROOM|${PREFIX}/data/room/11.yaml
ROOM|${PREFIX}/data/room/12.yaml
ROOM|${PREFIX}/data/room/13.yaml
ROOM|${PREFIX}/data/room/14.yaml
ROOM|${PREFIX}/data/room/15.yaml
ROOM|${PREFIX}/data/room/16.yaml
ROOM|${PREFIX}/data/room/17.yaml
ROOM|${PREFIX}/data/room/18.yaml
ROOM|${PREFIX}/data/room/19.yaml
ROOM|${PREFIX}/data/room/20.yaml
ROOM|${PREFIX}/data/room/21.yaml
ROOM|${PREFIX}/data/room/22.yaml
ROOM|${PREFIX}/data/room/23.yaml
ROOM|${PREFIX}/data/room/24.yaml
ROOM|${PREFIX}/data/room/25.yaml
ROOM|${PREFIX}/data/room/26.yaml
ROOM|${PREFIX}/data/room/27.yaml
ROOM|${PREFIX}/data/room/28.yaml
ROOM|${PREFIX}/data/room/29.yaml
ROOM|${PREFIX}/data/room/30.yaml
ROOM|${PREFIX}/data/room/31.yaml
ROOM|${PREFIX}/data/room/32.yaml
ROOM|${PREFIX}/data/room/33.yaml
ROOM|${PREFIX}/data/room/34.yaml
ROOM|${PREFIX}/data/room/35.yaml
ROOM|${PREFIX}/data/room/36.yaml
ROOM|${PREFIX}/data/room/37.yaml
ROOM|${PREFIX}/data/room/38.yaml
ROOM|${PREFIX}/data/room/39.yaml
ROOM|${PREFIX}/data/room/40.yaml
ROOM|${PREFIX}/data/room/41.yaml
ROOM|${PREFIX}/data/room/42.yaml
ROOM|${PREFIX}/data/room/43.yaml
ROOM|${PREFIX}/data/room/44.yaml
ROOM|${PREFIX}/data/room/45.yaml
ROOM|${PREFIX}/data/room/46.yaml
ROOM|${PREFIX}/data/room/47.yaml
ROOM|${PREFIX}/data/room/48.yaml
ROOM|${PREFIX}/data/room/49.yaml
ROOM|${PREFIX}/data/room/50.yaml
ROOM|${PREFIX}/data/room/51.yaml
ROOM|${PREFIX}/data/room/52.yaml
ROOM|${PREFIX}/data/room/53.yaml
ROOM|${PREFIX}/data/room/54.yaml
ROOM|${PREFIX}/data/room/55.yaml
ROOM|${PREFIX}/data/room/56.yaml
ROOM|${PREFIX}/data/room/57.yaml
ROOM|${PREFIX}/data/room/58.yaml
ROOM|${PREFIX}/data/room/59.yaml
ROOM|${PREFIX}/data/room/60.yaml
# ===================================================================
# TILESETS
# ===================================================================
BITMAP|${PREFIX}/data/tilesets/standard.gif
# ===================================================================
# ENEMIES
# ===================================================================
ANIMATION|${PREFIX}/data/enemies/abad_bell.yaml
BITMAP|${PREFIX}/data/enemies/abad_bell.gif
ANIMATION|${PREFIX}/data/enemies/abad.yaml
BITMAP|${PREFIX}/data/enemies/abad.gif
ANIMATION|${PREFIX}/data/enemies/amstrad_cs.yaml
BITMAP|${PREFIX}/data/enemies/amstrad_cs.gif
ANIMATION|${PREFIX}/data/enemies/flying_arounder.yaml
BITMAP|${PREFIX}/data/enemies/flying_arounder.gif
ANIMATION|${PREFIX}/data/enemies/stopped_arounder.yaml
BITMAP|${PREFIX}/data/enemies/stopped_arounder.gif
ANIMATION|${PREFIX}/data/enemies/walking_arounder.yaml
BITMAP|${PREFIX}/data/enemies/walking_arounder.gif
ANIMATION|${PREFIX}/data/enemies/arounders_door.yaml
BITMAP|${PREFIX}/data/enemies/arounders_door.gif
ANIMATION|${PREFIX}/data/enemies/arounders_machine.yaml
BITMAP|${PREFIX}/data/enemies/arounders_machine.gif
ANIMATION|${PREFIX}/data/enemies/bat.yaml
BITMAP|${PREFIX}/data/enemies/bat.gif
ANIMATION|${PREFIX}/data/enemies/batman_bell.yaml
BITMAP|${PREFIX}/data/enemies/batman_bell.gif
ANIMATION|${PREFIX}/data/enemies/batman_fire.yaml
BITMAP|${PREFIX}/data/enemies/batman_fire.gif
ANIMATION|${PREFIX}/data/enemies/batman.yaml
BITMAP|${PREFIX}/data/enemies/batman.gif
ANIMATION|${PREFIX}/data/enemies/bell.yaml
BITMAP|${PREFIX}/data/enemies/bell.gif
ANIMATION|${PREFIX}/data/enemies/bin.yaml
BITMAP|${PREFIX}/data/enemies/bin.gif
ANIMATION|${PREFIX}/data/enemies/bird.yaml
BITMAP|${PREFIX}/data/enemies/bird.gif
ANIMATION|${PREFIX}/data/enemies/breakout.yaml
BITMAP|${PREFIX}/data/enemies/breakout.gif
ANIMATION|${PREFIX}/data/enemies/bry.yaml
BITMAP|${PREFIX}/data/enemies/bry.gif
ANIMATION|${PREFIX}/data/enemies/chip.yaml
BITMAP|${PREFIX}/data/enemies/chip.gif
ANIMATION|${PREFIX}/data/enemies/code.yaml
BITMAP|${PREFIX}/data/enemies/code.gif
ANIMATION|${PREFIX}/data/enemies/congo.yaml
BITMAP|${PREFIX}/data/enemies/congo.gif
ANIMATION|${PREFIX}/data/enemies/crosshair.yaml
BITMAP|${PREFIX}/data/enemies/crosshair.gif
ANIMATION|${PREFIX}/data/enemies/demon.yaml
BITMAP|${PREFIX}/data/enemies/demon.gif
ANIMATION|${PREFIX}/data/enemies/dimallas.yaml
BITMAP|${PREFIX}/data/enemies/dimallas.gif
ANIMATION|${PREFIX}/data/enemies/floppy.yaml
BITMAP|${PREFIX}/data/enemies/floppy.gif
ANIMATION|${PREFIX}/data/enemies/dong.yaml
BITMAP|${PREFIX}/data/enemies/dong.gif
ANIMATION|${PREFIX}/data/enemies/guitar.yaml
BITMAP|${PREFIX}/data/enemies/guitar.gif
ANIMATION|${PREFIX}/data/enemies/heavy.yaml
BITMAP|${PREFIX}/data/enemies/heavy.gif
ANIMATION|${PREFIX}/data/enemies/jailer_#1.yaml
BITMAP|${PREFIX}/data/enemies/jailer_#1.gif
ANIMATION|${PREFIX}/data/enemies/jailer_#2.yaml
BITMAP|${PREFIX}/data/enemies/jailer_#2.gif
ANIMATION|${PREFIX}/data/enemies/jailer_#3.yaml
BITMAP|${PREFIX}/data/enemies/jailer_#3.gif
ANIMATION|${PREFIX}/data/enemies/jailbattle_alien.yaml
BITMAP|${PREFIX}/data/enemies/jailbattle_alien.gif
ANIMATION|${PREFIX}/data/enemies/jailbattle_human.yaml
BITMAP|${PREFIX}/data/enemies/jailbattle_human.gif
ANIMATION|${PREFIX}/data/enemies/jeannine.yaml
BITMAP|${PREFIX}/data/enemies/jeannine.gif
ANIMATION|${PREFIX}/data/enemies/lamp.yaml
BITMAP|${PREFIX}/data/enemies/lamp.gif
ANIMATION|${PREFIX}/data/enemies/lord_abad.yaml
BITMAP|${PREFIX}/data/enemies/lord_abad.gif
ANIMATION|${PREFIX}/data/enemies/matatunos.yaml
BITMAP|${PREFIX}/data/enemies/matatunos.gif
ANIMATION|${PREFIX}/data/enemies/mummy.yaml
BITMAP|${PREFIX}/data/enemies/mummy.gif
ANIMATION|${PREFIX}/data/enemies/paco.yaml
BITMAP|${PREFIX}/data/enemies/paco.gif
ANIMATION|${PREFIX}/data/enemies/elsa.yaml
BITMAP|${PREFIX}/data/enemies/elsa.gif
ANIMATION|${PREFIX}/data/enemies/qvoid.yaml
BITMAP|${PREFIX}/data/enemies/qvoid.gif
ANIMATION|${PREFIX}/data/enemies/robot.yaml
BITMAP|${PREFIX}/data/enemies/robot.gif
ANIMATION|${PREFIX}/data/enemies/sam.yaml
BITMAP|${PREFIX}/data/enemies/sam.gif
ANIMATION|${PREFIX}/data/enemies/shock.yaml
BITMAP|${PREFIX}/data/enemies/shock.gif
ANIMATION|${PREFIX}/data/enemies/sigmasua.yaml
BITMAP|${PREFIX}/data/enemies/sigmasua.gif
ANIMATION|${PREFIX}/data/enemies/spark.yaml
BITMAP|${PREFIX}/data/enemies/spark.gif
ANIMATION|${PREFIX}/data/enemies/special/aerojailer.yaml
BITMAP|${PREFIX}/data/enemies/special/aerojailer.gif
ANIMATION|${PREFIX}/data/enemies/special/arounder.yaml
BITMAP|${PREFIX}/data/enemies/special/arounder.gif
ANIMATION|${PREFIX}/data/enemies/special/pepe_rosita_job.yaml
BITMAP|${PREFIX}/data/enemies/special/pepe_rosita_job.gif
ANIMATION|${PREFIX}/data/enemies/special/shooting_star.yaml
BITMAP|${PREFIX}/data/enemies/special/shooting_star.gif
ANIMATION|${PREFIX}/data/enemies/spider.yaml
BITMAP|${PREFIX}/data/enemies/spider.gif
ANIMATION|${PREFIX}/data/enemies/tree_thing.yaml
BITMAP|${PREFIX}/data/enemies/tree_thing.gif
ANIMATION|${PREFIX}/data/enemies/tuno.yaml
BITMAP|${PREFIX}/data/enemies/tuno.gif
ANIMATION|${PREFIX}/data/enemies/tv_panel.yaml
BITMAP|${PREFIX}/data/enemies/tv_panel.gif
ANIMATION|${PREFIX}/data/enemies/tv.yaml
BITMAP|${PREFIX}/data/enemies/tv.gif
ANIMATION|${PREFIX}/data/enemies/upv_student.yaml
BITMAP|${PREFIX}/data/enemies/upv_student.gif
ANIMATION|${PREFIX}/data/enemies/wave.yaml
BITMAP|${PREFIX}/data/enemies/wave.gif
ANIMATION|${PREFIX}/data/enemies/z80.yaml
BITMAP|${PREFIX}/data/enemies/z80.gif
# ===================================================================
# PLAYER
# ===================================================================
BITMAP|${PREFIX}/data/player/player.gif
ANIMATION|${PREFIX}/data/player/player.yaml
BITMAP|${PREFIX}/data/player/player2.gif
ANIMATION|${PREFIX}/data/player/player2.yaml
BITMAP|${PREFIX}/data/player/player_game_over.gif
ANIMATION|${PREFIX}/data/player/player_game_over.yaml
# ===================================================================
# ITEMS
# ===================================================================
BITMAP|${PREFIX}/data/items/items.gif
# ===================================================================
# MUSIC
# ===================================================================
MUSIC|${PREFIX}/data/music/title.ogg
MUSIC|${PREFIX}/data/music/game.ogg
MUSIC|${PREFIX}/data/music/loading_data1.ogg
MUSIC|${PREFIX}/data/music/loading_data2.ogg
MUSIC|${PREFIX}/data/music/loading_header.ogg
MUSIC|${PREFIX}/data/music/loading_screen_color.ogg
MUSIC|${PREFIX}/data/music/loading_screen_data.ogg
MUSIC|${PREFIX}/data/music/ending1.ogg
MUSIC|${PREFIX}/data/music/ending2.ogg
MUSIC|${PREFIX}/data/music/game_over.ogg
# ===================================================================
# SOUND EFFECTS
# ===================================================================
SOUND|${PREFIX}/data/sound/item.wav
SOUND|${PREFIX}/data/sound/death.wav
SOUND|${PREFIX}/data/sound/notify.wav
# Jump sounds (1-24)
SOUND|${PREFIX}/data/sound/jump1.wav
SOUND|${PREFIX}/data/sound/jump2.wav
SOUND|${PREFIX}/data/sound/jump3.wav
SOUND|${PREFIX}/data/sound/jump4.wav
SOUND|${PREFIX}/data/sound/jump5.wav
SOUND|${PREFIX}/data/sound/jump6.wav
SOUND|${PREFIX}/data/sound/jump7.wav
SOUND|${PREFIX}/data/sound/jump8.wav
SOUND|${PREFIX}/data/sound/jump9.wav
SOUND|${PREFIX}/data/sound/jump10.wav
SOUND|${PREFIX}/data/sound/jump11.wav
SOUND|${PREFIX}/data/sound/jump12.wav
SOUND|${PREFIX}/data/sound/jump13.wav
SOUND|${PREFIX}/data/sound/jump14.wav
SOUND|${PREFIX}/data/sound/jump15.wav
SOUND|${PREFIX}/data/sound/jump16.wav
SOUND|${PREFIX}/data/sound/jump17.wav
SOUND|${PREFIX}/data/sound/jump18.wav
SOUND|${PREFIX}/data/sound/jump19.wav
SOUND|${PREFIX}/data/sound/jump20.wav
SOUND|${PREFIX}/data/sound/jump21.wav
SOUND|${PREFIX}/data/sound/jump22.wav
SOUND|${PREFIX}/data/sound/jump23.wav
SOUND|${PREFIX}/data/sound/jump24.wav
# ===================================================================
# LOGO
# ===================================================================
BITMAP|${PREFIX}/data/logo/jailgames.gif
BITMAP|${PREFIX}/data/logo/since_1998.gif
# ===================================================================
# LOADING SCREEN
# ===================================================================
BITMAP|${PREFIX}/data/loading/loading_screen_bn.gif
BITMAP|${PREFIX}/data/loading/loading_screen_color.gif
BITMAP|${PREFIX}/data/loading/program_jaildoc.gif
# ===================================================================
# TITLE SCREEN
# ===================================================================
BITMAP|${PREFIX}/data/title/title_logo.gif
# ===================================================================
# ENDING SCREENS
# ===================================================================
BITMAP|${PREFIX}/data/ending/ending1.gif
BITMAP|${PREFIX}/data/ending/ending2.gif
BITMAP|${PREFIX}/data/ending/ending3.gif
BITMAP|${PREFIX}/data/ending/ending4.gif
BITMAP|${PREFIX}/data/ending/ending5.gif
# ===================================================================
# CREDITS
# ===================================================================
BITMAP|${PREFIX}/data/credits/shine.gif
ANIMATION|${PREFIX}/data/credits/shine.yaml

600
config/assets.yaml Normal file
View File

@@ -0,0 +1,600 @@
# JailDoctor's Dilemma - Asset Configuration
# Variables: ${PREFIX}, ${SYSTEM_FOLDER}
assets:
# FONTS
fonts:
- type: BITMAP
path: ${PREFIX}/data/font/smb2.gif
- type: FONT
path: ${PREFIX}/data/font/smb2.fnt
- type: BITMAP
path: ${PREFIX}/data/font/aseprite.gif
- type: FONT
path: ${PREFIX}/data/font/aseprite.fnt
- type: BITMAP
path: ${PREFIX}/data/font/gauntlet.gif
- type: FONT
path: ${PREFIX}/data/font/gauntlet.fnt
- type: BITMAP
path: ${PREFIX}/data/font/subatomic.gif
- type: FONT
path: ${PREFIX}/data/font/subatomic.fnt
- type: BITMAP
path: ${PREFIX}/data/font/8bithud.gif
- type: FONT
path: ${PREFIX}/data/font/8bithud.fnt
# PALETTES
palettes:
- type: PALETTE
path: ${PREFIX}/data/palette/zx-spectrum.pal
- type: PALETTE
path: ${PREFIX}/data/palette/zx-spectrum-adjusted.pal
- type: PALETTE
path: ${PREFIX}/data/palette/zxarne-5-2.pal
- type: PALETTE
path: ${PREFIX}/data/palette/black-and-white.pal
- type: PALETTE
path: ${PREFIX}/data/palette/green-phosphor.pal
- type: PALETTE
path: ${PREFIX}/data/palette/orange-screen.pal
- type: PALETTE
path: ${PREFIX}/data/palette/ruzx-spectrum.pal
- type: PALETTE
path: ${PREFIX}/data/palette/ruzx-spectrum-revision-2.pal
- type: PALETTE
path: ${PREFIX}/data/palette/pico-8.pal
- type: PALETTE
path: ${PREFIX}/data/palette/sweetie-16.pal
- type: PALETTE
path: ${PREFIX}/data/palette/island-joy-16.pal
- type: PALETTE
path: ${PREFIX}/data/palette/lost-century.pal
- type: PALETTE
path: ${PREFIX}/data/palette/na16.pal
- type: PALETTE
path: ${PREFIX}/data/palette/steam-lords.pal
# LOCALE
locale:
- type: DATA
path: ${PREFIX}/data/locale/en.yaml
- type: DATA
path: ${PREFIX}/data/locale/ca.yaml
# INPUT
input:
- type: DATA
path: ${PREFIX}/gamecontrollerdb.txt
# SYSTEM
system:
- type: DATA
path: ${SYSTEM_FOLDER}/config.yaml
required: false
absolute: true
- type: DATA
path: ${SYSTEM_FOLDER}/debug.yaml
required: false
absolute: true
- type: DATA
path: ${SYSTEM_FOLDER}/stats_buffer.csv
required: false
absolute: true
- type: DATA
path: ${SYSTEM_FOLDER}/stats.csv
required: false
absolute: true
- type: DATA
path: ${SYSTEM_FOLDER}/cheevos.bin
required: false
absolute: true
- type: DATA
path: ${SYSTEM_FOLDER}/shaders/postfx.yaml
required: false
absolute: true
- type: DATA
path: ${SYSTEM_FOLDER}/shaders/crtpi.yaml
required: false
absolute: true
# ROOMS
rooms:
- type: ROOM
path: ${PREFIX}/data/room/01.yaml
- type: ROOM
path: ${PREFIX}/data/room/02.yaml
- type: ROOM
path: ${PREFIX}/data/room/03.yaml
- type: ROOM
path: ${PREFIX}/data/room/04.yaml
- type: ROOM
path: ${PREFIX}/data/room/05.yaml
- type: ROOM
path: ${PREFIX}/data/room/06.yaml
- type: ROOM
path: ${PREFIX}/data/room/07.yaml
- type: ROOM
path: ${PREFIX}/data/room/08.yaml
- type: ROOM
path: ${PREFIX}/data/room/09.yaml
- type: ROOM
path: ${PREFIX}/data/room/10.yaml
- type: ROOM
path: ${PREFIX}/data/room/11.yaml
- type: ROOM
path: ${PREFIX}/data/room/12.yaml
- type: ROOM
path: ${PREFIX}/data/room/13.yaml
- type: ROOM
path: ${PREFIX}/data/room/14.yaml
- type: ROOM
path: ${PREFIX}/data/room/15.yaml
- type: ROOM
path: ${PREFIX}/data/room/16.yaml
- type: ROOM
path: ${PREFIX}/data/room/17.yaml
- type: ROOM
path: ${PREFIX}/data/room/18.yaml
- type: ROOM
path: ${PREFIX}/data/room/19.yaml
- type: ROOM
path: ${PREFIX}/data/room/20.yaml
- type: ROOM
path: ${PREFIX}/data/room/21.yaml
- type: ROOM
path: ${PREFIX}/data/room/22.yaml
- type: ROOM
path: ${PREFIX}/data/room/23.yaml
- type: ROOM
path: ${PREFIX}/data/room/24.yaml
- type: ROOM
path: ${PREFIX}/data/room/25.yaml
- type: ROOM
path: ${PREFIX}/data/room/26.yaml
- type: ROOM
path: ${PREFIX}/data/room/27.yaml
- type: ROOM
path: ${PREFIX}/data/room/28.yaml
- type: ROOM
path: ${PREFIX}/data/room/29.yaml
- type: ROOM
path: ${PREFIX}/data/room/30.yaml
- type: ROOM
path: ${PREFIX}/data/room/31.yaml
- type: ROOM
path: ${PREFIX}/data/room/32.yaml
- type: ROOM
path: ${PREFIX}/data/room/33.yaml
- type: ROOM
path: ${PREFIX}/data/room/34.yaml
- type: ROOM
path: ${PREFIX}/data/room/35.yaml
- type: ROOM
path: ${PREFIX}/data/room/36.yaml
- type: ROOM
path: ${PREFIX}/data/room/37.yaml
- type: ROOM
path: ${PREFIX}/data/room/38.yaml
- type: ROOM
path: ${PREFIX}/data/room/39.yaml
- type: ROOM
path: ${PREFIX}/data/room/40.yaml
- type: ROOM
path: ${PREFIX}/data/room/41.yaml
- type: ROOM
path: ${PREFIX}/data/room/42.yaml
- type: ROOM
path: ${PREFIX}/data/room/43.yaml
- type: ROOM
path: ${PREFIX}/data/room/44.yaml
- type: ROOM
path: ${PREFIX}/data/room/45.yaml
- type: ROOM
path: ${PREFIX}/data/room/46.yaml
- type: ROOM
path: ${PREFIX}/data/room/47.yaml
- type: ROOM
path: ${PREFIX}/data/room/48.yaml
- type: ROOM
path: ${PREFIX}/data/room/49.yaml
- type: ROOM
path: ${PREFIX}/data/room/50.yaml
- type: ROOM
path: ${PREFIX}/data/room/51.yaml
- type: ROOM
path: ${PREFIX}/data/room/52.yaml
- type: ROOM
path: ${PREFIX}/data/room/53.yaml
- type: ROOM
path: ${PREFIX}/data/room/54.yaml
- type: ROOM
path: ${PREFIX}/data/room/55.yaml
- type: ROOM
path: ${PREFIX}/data/room/56.yaml
- type: ROOM
path: ${PREFIX}/data/room/57.yaml
- type: ROOM
path: ${PREFIX}/data/room/58.yaml
- type: ROOM
path: ${PREFIX}/data/room/59.yaml
- type: ROOM
path: ${PREFIX}/data/room/60.yaml
# TILESETS
tilesets:
- type: BITMAP
path: ${PREFIX}/data/tilesets/standard.gif
# ENEMIES
enemies:
- type: ANIMATION
path: ${PREFIX}/data/enemies/abad_bell.yaml
- type: BITMAP
path: ${PREFIX}/data/enemies/abad_bell.gif
- type: ANIMATION
path: ${PREFIX}/data/enemies/abad.yaml
- type: BITMAP
path: ${PREFIX}/data/enemies/abad.gif
- type: ANIMATION
path: ${PREFIX}/data/enemies/amstrad_cs.yaml
- type: BITMAP
path: ${PREFIX}/data/enemies/amstrad_cs.gif
- type: ANIMATION
path: ${PREFIX}/data/enemies/flying_arounder.yaml
- type: BITMAP
path: ${PREFIX}/data/enemies/flying_arounder.gif
- type: ANIMATION
path: ${PREFIX}/data/enemies/stopped_arounder.yaml
- type: BITMAP
path: ${PREFIX}/data/enemies/stopped_arounder.gif
- type: ANIMATION
path: ${PREFIX}/data/enemies/walking_arounder.yaml
- type: BITMAP
path: ${PREFIX}/data/enemies/walking_arounder.gif
- type: ANIMATION
path: ${PREFIX}/data/enemies/arounders_door.yaml
- type: BITMAP
path: ${PREFIX}/data/enemies/arounders_door.gif
- type: ANIMATION
path: ${PREFIX}/data/enemies/arounders_machine.yaml
- type: BITMAP
path: ${PREFIX}/data/enemies/arounders_machine.gif
- type: ANIMATION
path: ${PREFIX}/data/enemies/bat.yaml
- type: BITMAP
path: ${PREFIX}/data/enemies/bat.gif
- type: ANIMATION
path: ${PREFIX}/data/enemies/batman_bell.yaml
- type: BITMAP
path: ${PREFIX}/data/enemies/batman_bell.gif
- type: ANIMATION
path: ${PREFIX}/data/enemies/batman_fire.yaml
- type: BITMAP
path: ${PREFIX}/data/enemies/batman_fire.gif
- type: ANIMATION
path: ${PREFIX}/data/enemies/batman.yaml
- type: BITMAP
path: ${PREFIX}/data/enemies/batman.gif
- type: ANIMATION
path: ${PREFIX}/data/enemies/bell.yaml
- type: BITMAP
path: ${PREFIX}/data/enemies/bell.gif
- type: ANIMATION
path: ${PREFIX}/data/enemies/bin.yaml
- type: BITMAP
path: ${PREFIX}/data/enemies/bin.gif
- type: ANIMATION
path: ${PREFIX}/data/enemies/bird.yaml
- type: BITMAP
path: ${PREFIX}/data/enemies/bird.gif
- type: ANIMATION
path: ${PREFIX}/data/enemies/breakout.yaml
- type: BITMAP
path: ${PREFIX}/data/enemies/breakout.gif
- type: ANIMATION
path: ${PREFIX}/data/enemies/bry.yaml
- type: BITMAP
path: ${PREFIX}/data/enemies/bry.gif
- type: ANIMATION
path: ${PREFIX}/data/enemies/chip.yaml
- type: BITMAP
path: ${PREFIX}/data/enemies/chip.gif
- type: ANIMATION
path: ${PREFIX}/data/enemies/code.yaml
- type: BITMAP
path: ${PREFIX}/data/enemies/code.gif
- type: ANIMATION
path: ${PREFIX}/data/enemies/congo.yaml
- type: BITMAP
path: ${PREFIX}/data/enemies/congo.gif
- type: ANIMATION
path: ${PREFIX}/data/enemies/crosshair.yaml
- type: BITMAP
path: ${PREFIX}/data/enemies/crosshair.gif
- type: ANIMATION
path: ${PREFIX}/data/enemies/demon.yaml
- type: BITMAP
path: ${PREFIX}/data/enemies/demon.gif
- type: ANIMATION
path: ${PREFIX}/data/enemies/dimallas.yaml
- type: BITMAP
path: ${PREFIX}/data/enemies/dimallas.gif
- type: ANIMATION
path: ${PREFIX}/data/enemies/floppy.yaml
- type: BITMAP
path: ${PREFIX}/data/enemies/floppy.gif
- type: ANIMATION
path: ${PREFIX}/data/enemies/dong.yaml
- type: BITMAP
path: ${PREFIX}/data/enemies/dong.gif
- type: ANIMATION
path: ${PREFIX}/data/enemies/guitar.yaml
- type: BITMAP
path: ${PREFIX}/data/enemies/guitar.gif
- type: ANIMATION
path: ${PREFIX}/data/enemies/heavy.yaml
- type: BITMAP
path: ${PREFIX}/data/enemies/heavy.gif
- type: ANIMATION
path: ${PREFIX}/data/enemies/jailer1.yaml
- type: BITMAP
path: ${PREFIX}/data/enemies/jailer1.gif
- type: ANIMATION
path: ${PREFIX}/data/enemies/jailer2.yaml
- type: BITMAP
path: ${PREFIX}/data/enemies/jailer2.gif
- type: ANIMATION
path: ${PREFIX}/data/enemies/jailer3.yaml
- type: BITMAP
path: ${PREFIX}/data/enemies/jailer3.gif
- type: ANIMATION
path: ${PREFIX}/data/enemies/jailbattle_alien.yaml
- type: BITMAP
path: ${PREFIX}/data/enemies/jailbattle_alien.gif
- type: ANIMATION
path: ${PREFIX}/data/enemies/jailbattle_human.yaml
- type: BITMAP
path: ${PREFIX}/data/enemies/jailbattle_human.gif
- type: ANIMATION
path: ${PREFIX}/data/enemies/jeannine.yaml
- type: BITMAP
path: ${PREFIX}/data/enemies/jeannine.gif
- type: ANIMATION
path: ${PREFIX}/data/enemies/lamp.yaml
- type: BITMAP
path: ${PREFIX}/data/enemies/lamp.gif
- type: ANIMATION
path: ${PREFIX}/data/enemies/lord_abad.yaml
- type: BITMAP
path: ${PREFIX}/data/enemies/lord_abad.gif
- type: ANIMATION
path: ${PREFIX}/data/enemies/matatunos.yaml
- type: BITMAP
path: ${PREFIX}/data/enemies/matatunos.gif
- type: ANIMATION
path: ${PREFIX}/data/enemies/mummy.yaml
- type: BITMAP
path: ${PREFIX}/data/enemies/mummy.gif
- type: ANIMATION
path: ${PREFIX}/data/enemies/paco.yaml
- type: BITMAP
path: ${PREFIX}/data/enemies/paco.gif
- type: ANIMATION
path: ${PREFIX}/data/enemies/elsa.yaml
- type: BITMAP
path: ${PREFIX}/data/enemies/elsa.gif
- type: ANIMATION
path: ${PREFIX}/data/enemies/qvoid.yaml
- type: BITMAP
path: ${PREFIX}/data/enemies/qvoid.gif
- type: ANIMATION
path: ${PREFIX}/data/enemies/robot.yaml
- type: BITMAP
path: ${PREFIX}/data/enemies/robot.gif
- type: ANIMATION
path: ${PREFIX}/data/enemies/sam.yaml
- type: BITMAP
path: ${PREFIX}/data/enemies/sam.gif
- type: ANIMATION
path: ${PREFIX}/data/enemies/shock.yaml
- type: BITMAP
path: ${PREFIX}/data/enemies/shock.gif
- type: ANIMATION
path: ${PREFIX}/data/enemies/sigmasua.yaml
- type: BITMAP
path: ${PREFIX}/data/enemies/sigmasua.gif
- type: ANIMATION
path: ${PREFIX}/data/enemies/spark.yaml
- type: BITMAP
path: ${PREFIX}/data/enemies/spark.gif
- type: ANIMATION
path: ${PREFIX}/data/enemies/special/aerojailer.yaml
- type: BITMAP
path: ${PREFIX}/data/enemies/special/aerojailer.gif
- type: ANIMATION
path: ${PREFIX}/data/enemies/special/arounder.yaml
- type: BITMAP
path: ${PREFIX}/data/enemies/special/arounder.gif
- type: ANIMATION
path: ${PREFIX}/data/enemies/special/pepe_rosita_job.yaml
- type: BITMAP
path: ${PREFIX}/data/enemies/special/pepe_rosita_job.gif
- type: ANIMATION
path: ${PREFIX}/data/enemies/special/shooting_star.yaml
- type: BITMAP
path: ${PREFIX}/data/enemies/special/shooting_star.gif
- type: ANIMATION
path: ${PREFIX}/data/enemies/spider.yaml
- type: BITMAP
path: ${PREFIX}/data/enemies/spider.gif
- type: ANIMATION
path: ${PREFIX}/data/enemies/tree_thing.yaml
- type: BITMAP
path: ${PREFIX}/data/enemies/tree_thing.gif
- type: ANIMATION
path: ${PREFIX}/data/enemies/tuno.yaml
- type: BITMAP
path: ${PREFIX}/data/enemies/tuno.gif
- type: ANIMATION
path: ${PREFIX}/data/enemies/tv_panel.yaml
- type: BITMAP
path: ${PREFIX}/data/enemies/tv_panel.gif
- type: ANIMATION
path: ${PREFIX}/data/enemies/tv.yaml
- type: BITMAP
path: ${PREFIX}/data/enemies/tv.gif
- type: ANIMATION
path: ${PREFIX}/data/enemies/upv_student.yaml
- type: BITMAP
path: ${PREFIX}/data/enemies/upv_student.gif
- type: ANIMATION
path: ${PREFIX}/data/enemies/wave.yaml
- type: BITMAP
path: ${PREFIX}/data/enemies/wave.gif
- type: ANIMATION
path: ${PREFIX}/data/enemies/z80.yaml
- type: BITMAP
path: ${PREFIX}/data/enemies/z80.gif
# PLAYER
player:
- type: BITMAP
path: ${PREFIX}/data/player/player.gif
- type: ANIMATION
path: ${PREFIX}/data/player/player.yaml
- type: BITMAP
path: ${PREFIX}/data/player/player2.gif
- type: ANIMATION
path: ${PREFIX}/data/player/player2.yaml
- type: BITMAP
path: ${PREFIX}/data/player/player_game_over.gif
- type: ANIMATION
path: ${PREFIX}/data/player/player_game_over.yaml
# ITEMS
items:
- type: BITMAP
path: ${PREFIX}/data/items/items.gif
# MUSIC
music:
- type: MUSIC
path: ${PREFIX}/data/music/title.ogg
- type: MUSIC
path: ${PREFIX}/data/music/game.ogg
- type: MUSIC
path: ${PREFIX}/data/music/loading_data1.ogg
- type: MUSIC
path: ${PREFIX}/data/music/loading_data2.ogg
- type: MUSIC
path: ${PREFIX}/data/music/loading_header.ogg
- type: MUSIC
path: ${PREFIX}/data/music/loading_screen_color.ogg
- type: MUSIC
path: ${PREFIX}/data/music/loading_screen_data.ogg
- type: MUSIC
path: ${PREFIX}/data/music/ending1.ogg
- type: MUSIC
path: ${PREFIX}/data/music/ending2.ogg
- type: MUSIC
path: ${PREFIX}/data/music/game_over.ogg
# SOUNDS
sounds:
- type: SOUND
path: ${PREFIX}/data/sound/item.wav
- type: SOUND
path: ${PREFIX}/data/sound/death.wav
- type: SOUND
path: ${PREFIX}/data/sound/notify.wav
- type: SOUND
path: ${PREFIX}/data/sound/jump1.wav
- type: SOUND
path: ${PREFIX}/data/sound/jump2.wav
- type: SOUND
path: ${PREFIX}/data/sound/jump3.wav
- type: SOUND
path: ${PREFIX}/data/sound/jump4.wav
- type: SOUND
path: ${PREFIX}/data/sound/jump5.wav
- type: SOUND
path: ${PREFIX}/data/sound/jump6.wav
- type: SOUND
path: ${PREFIX}/data/sound/jump7.wav
- type: SOUND
path: ${PREFIX}/data/sound/jump8.wav
- type: SOUND
path: ${PREFIX}/data/sound/jump9.wav
- type: SOUND
path: ${PREFIX}/data/sound/jump10.wav
- type: SOUND
path: ${PREFIX}/data/sound/jump11.wav
- type: SOUND
path: ${PREFIX}/data/sound/jump12.wav
- type: SOUND
path: ${PREFIX}/data/sound/jump13.wav
- type: SOUND
path: ${PREFIX}/data/sound/jump14.wav
- type: SOUND
path: ${PREFIX}/data/sound/jump15.wav
- type: SOUND
path: ${PREFIX}/data/sound/jump16.wav
- type: SOUND
path: ${PREFIX}/data/sound/jump17.wav
- type: SOUND
path: ${PREFIX}/data/sound/jump18.wav
- type: SOUND
path: ${PREFIX}/data/sound/jump19.wav
- type: SOUND
path: ${PREFIX}/data/sound/jump20.wav
- type: SOUND
path: ${PREFIX}/data/sound/jump21.wav
- type: SOUND
path: ${PREFIX}/data/sound/jump22.wav
- type: SOUND
path: ${PREFIX}/data/sound/jump23.wav
- type: SOUND
path: ${PREFIX}/data/sound/jump24.wav
# LOGO
logo:
- type: BITMAP
path: ${PREFIX}/data/logo/jailgames.gif
- type: BITMAP
path: ${PREFIX}/data/logo/since_1998.gif
# LOADING
loading:
- type: BITMAP
path: ${PREFIX}/data/loading/loading_screen_bn.gif
- type: BITMAP
path: ${PREFIX}/data/loading/loading_screen_color.gif
- type: BITMAP
path: ${PREFIX}/data/loading/program_jaildoc.gif
# TITLE
title:
- type: BITMAP
path: ${PREFIX}/data/title/title_logo.gif
# ENDING
ending:
- type: BITMAP
path: ${PREFIX}/data/ending/ending1.gif
- type: BITMAP
path: ${PREFIX}/data/ending/ending2.gif
- type: BITMAP
path: ${PREFIX}/data/ending/ending3.gif
- type: BITMAP
path: ${PREFIX}/data/ending/ending4.gif
- type: BITMAP
path: ${PREFIX}/data/ending/ending5.gif
# CREDITS
credits:
- type: BITMAP
path: ${PREFIX}/data/credits/shine.gif
- type: ANIMATION
path: ${PREFIX}/data/credits/shine.yaml

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.9 KiB

After

Width:  |  Height:  |  Size: 2.9 KiB

View File

Before

Width:  |  Height:  |  Size: 224 B

After

Width:  |  Height:  |  Size: 224 B

View File

@@ -1,5 +1,5 @@
# jailer_#3 animation # jailer1 animation
tileSetFile: jailer_#3.gif tileSetFile: jailer1.gif
frameWidth: 16 frameWidth: 16
frameHeight: 16 frameHeight: 16

View File

Before

Width:  |  Height:  |  Size: 280 B

After

Width:  |  Height:  |  Size: 280 B

View File

@@ -1,5 +1,5 @@
# jailer_#2 animation # jailer2 animation
tileSetFile: jailer_#2.gif tileSetFile: jailer2.gif
frameWidth: 16 frameWidth: 16
frameHeight: 16 frameHeight: 16

View File

Before

Width:  |  Height:  |  Size: 226 B

After

Width:  |  Height:  |  Size: 226 B

View File

@@ -1,5 +1,5 @@
# jailer_#1 animation # jailer3 animation
tileSetFile: jailer_#1.gif tileSetFile: jailer3.gif
frameWidth: 16 frameWidth: 16
frameHeight: 16 frameHeight: 16

132
data/font/8bithud.fnt Normal file
View File

@@ -0,0 +1,132 @@
# Font: 8bithud — generado desde 8-bit-hud.ttf size 5
# Generado con tools/font_gen/font_gen.py
box_width 8
box_height 8
columns 15
# codepoint_decimal ancho_visual
32 3 # U+0020
33 2 # !
34 5 # "
35 6 # #
36 6 # $
37 6 # %
38 6 # &
39 2 # '
40 3 # (
41 3 # )
42 4 # *
43 3 # +
44 2 # ,
45 3 # -
46 2 # .
47 4 # /
48 6 # 0
49 3 # 1
50 6 # 2
51 6 # 3
52 6 # 4
53 6 # 5
54 6 # 6
55 6 # 7
56 6 # 8
57 6 # 9
58 2 # :
59 2 # ;
60 4 # <
61 3 # =
62 4 # >
63 6 # ?
64 8 # @
65 6 # A
66 6 # B
67 6 # C
68 6 # D
69 6 # E
70 6 # F
71 6 # G
72 6 # H
73 6 # I
74 6 # J
75 6 # K
76 6 # L
77 6 # M
78 6 # N
79 6 # O
80 6 # P
81 6 # Q
82 6 # R
83 6 # S
84 6 # T
85 6 # U
86 5 # V
87 6 # W
88 6 # X
89 6 # Y
90 6 # Z
91 3 # [
92 4 # \
93 3 # ]
94 4 # ^
95 6 # _
96 2 # `
97 5 # a
98 5 # b
99 5 # c
100 5 # d
101 5 # e
102 5 # f
103 5 # g
104 5 # h
105 4 # i
106 5 # j
107 5 # k
108 5 # l
109 6 # m
110 5 # n
111 5 # o
112 5 # p
113 5 # q
114 5 # r
115 5 # s
116 4 # t
117 5 # u
118 5 # v
119 6 # w
120 4 # x
121 4 # y
122 5 # z
123 4 # {
124 1 # |
125 4 # }
126 4 # ~
192 6 # À
193 6 # Á
200 6 # È
201 6 # É
204 6 # Ì
205 6 # Í
210 6 # Ò
211 6 # Ó
219 6 # Ù
218 6 # Ú
209 6 # Ñ
199 6 # Ç
224 5 # à
225 5 # á
232 5 # è
233 5 # é
236 4 # ì
237 4 # í
242 5 # ò
243 5 # ó
249 5 # ù
250 5 # ú
241 5 # ñ
231 5 # ç
161 2 # ¡
191 6 # ¿
171 4 # «
187 4 # »
183 2 # ·

Binary file not shown.

Before

Width:  |  Height:  |  Size: 680 B

After

Width:  |  Height:  |  Size: 837 B

View File

@@ -1,194 +0,0 @@
# box width
8
# box height
8
# 32 espacio ( )
2
# 33 !
2
# 34 "
5
# 35 #
6
# 36 $
6
# 37 %
6
# 38 &
6
# 39 '
2
# 40 (
3
# 41 )
3
# 42 *
4
# 43 +
3
# 44 ,
2
# 45 -
3
# 46 .
2
# 47 /
4
# 48 0
6
# 49 1
6
# 50 2
6
# 51 3
6
# 52 4
6
# 53 5
6
# 54 6
6
# 55 7
6
# 56 8
6
# 57 9
6
# 58 :
2
# 59 ;
2
# 60 <
4
# 61 =
3
# 62 >
4
# 63 ?
6
# 64 @
8
# 65 A
6
# 66 B
6
# 67 C
6
# 68 D
6
# 69 E
6
# 70 F
6
# 71 G
6
# 72 H
6
# 73 I
6
# 74 J
6
# 75 K
6
# 76 L
6
# 77 M
6
# 78 N
6
# 79 O
6
# 80 P
6
# 81 Q
6
# 82 R
6
# 83 S
6
# 84 T
6
# 85 U
6
# 86 V
5
# 87 W
6
# 88 X
6
# 89 Y
6
# 90 Z
6
# 91 [
3
# 92 \
5
# 93 ]
3
# 94 ^
4
# 95 _
6
# 96 `
2
# 97 a
5
# 98 b
5
# 99 c
5
# 100 d
5
# 101 e
5
# 102 f
5
# 103 g
5
# 104 h
5
# 105 i
4
# 106 j
5
# 107 k
5
# 108 l
5
# 109 m
6
# 110 n
5
# 111 o
5
# 112 p
5
# 113 q
5
# 114 r
5
# 115 s
5
# 116 t
4
# 117 u
5
# 118 v
5
# 119 w
6
# 120 x
4
# 121 y
4
# 122 z
5
# 123 {
3
# 124 |
2
# 125 }
3
# 126 ~
3

134
data/font/aseprite.fnt Normal file
View File

@@ -0,0 +1,134 @@
# Font: aseprite — generado desde aseprite_font.gif
# Generado con tools/font_gen/font_gen.py
box_width 10
box_height 7
columns 16
cell_spacing 1
row_spacing 4
# codepoint_decimal ancho_visual
32 3 # U+0020
33 1 # !
34 3 # "
35 5 # #
36 4 # $
37 5 # %
38 5 # &
39 2 # '
40 2 # (
41 2 # )
42 5 # *
43 5 # +
44 2 # ,
45 3 # -
46 1 # .
47 3 # /
48 4 # 0
49 2 # 1
50 4 # 2
51 4 # 3
52 4 # 4
53 4 # 5
54 4 # 6
55 4 # 7
56 4 # 8
57 4 # 9
58 1 # :
59 2 # ;
60 3 # <
61 4 # =
62 3 # >
63 4 # ?
64 8 # @
65 4 # A
66 4 # B
67 4 # C
68 4 # D
69 4 # E
70 4 # F
71 4 # G
72 4 # H
73 1 # I
74 2 # J
75 4 # K
76 4 # L
77 5 # M
78 4 # N
79 5 # O
80 4 # P
81 5 # Q
82 4 # R
83 4 # S
84 5 # T
85 4 # U
86 5 # V
87 7 # W
88 5 # X
89 5 # Y
90 4 # Z
91 2 # [
92 3 # \
93 2 # ]
94 5 # ^
95 5 # _
96 3 # `
97 4 # a
98 4 # b
99 4 # c
100 4 # d
101 4 # e
102 2 # f
103 4 # g
104 4 # h
105 1 # i
106 2 # j
107 4 # k
108 1 # l
109 7 # m
110 4 # n
111 4 # o
112 4 # p
113 4 # q
114 3 # r
115 3 # s
116 2 # t
117 4 # u
118 4 # v
119 5 # w
120 5 # x
121 4 # y
122 4 # z
123 3 # {
124 1 # |
125 3 # }
126 4 # ~
192 5 # À
193 5 # Á
200 5 # È
201 5 # É
205 5 # Í
207 5 # Ï
210 5 # Ò
211 5 # Ó
218 5 # Ú
220 5 # Ü
209 5 # Ñ
199 5 # Ç
224 5 # à
225 5 # á
232 5 # è
233 5 # é
237 5 # í
239 5 # ï
242 5 # ò
243 5 # ó
250 5 # ú
252 5 # ü
241 5 # ñ
231 5 # ç
161 5 # ¡
191 5 # ¿
171 5 # «
187 5 # »
183 5 # ·

Binary file not shown.

Before

Width:  |  Height:  |  Size: 640 B

After

Width:  |  Height:  |  Size: 3.9 KiB

View File

@@ -1,194 +0,0 @@
# box width
8
# box height
8
# 32 espacio ( )
3
# 33 !
1
# 34 "
3
# 35 #
3
# 36 $
4
# 37 %
5
# 38 &
5
# 39 '
2
# 40 (
2
# 41 )
2
# 42 *
5
# 43 +
5
# 44 ,
3
# 45 -
3
# 46 .
1
# 47 /
4
# 48 0
4
# 49 1
2
# 50 2
4
# 51 3
4
# 52 4
4
# 53 5
4
# 54 6
4
# 55 7
4
# 56 8
4
# 57 9
4
# 58 :
1
# 59 ;
1
# 60 <
3
# 61 =
4
# 62 >
4
# 63 ?
4
# 64 @
7
# 65 A
4
# 66 B
4
# 67 C
4
# 68 D
4
# 69 E
4
# 70 F
4
# 71 G
4
# 72 H
4
# 73 I
2
# 74 J
2
# 75 K
4
# 76 L
4
# 77 M
5
# 78 N
4
# 79 O
5
# 80 P
4
# 81 Q
5
# 82 R
4
# 83 S
4
# 84 T
5
# 85 U
4
# 86 V
5
# 87 W
7
# 88 X
5
# 89 Y
5
# 90 Z
4
# 91 [
2
# 92 \
3
# 93 ]
2
# 94 ^
5
# 95 _
5
# 96 `
3
# 97 a
4
# 98 b
4
# 99 c
4
# 100 d
4
# 101 e
4
# 102 f
2
# 103 g
4
# 104 h
4
# 105 i
1
# 106 j
2
# 107 k
4
# 108 l
1
# 109 m
7
# 110 n
4
# 111 o
4
# 112 p
4
# 113 q
4
# 114 r
3
# 115 s
3
# 116 t
2
# 117 u
4
# 118 v
4
# 119 w
5
# 120 x
5
# 121 y
4
# 122 z
4
# 123 {
3
# 124 |
3
# 125 }
3
# 126 ~
5

128
data/font/gauntlet.fnt Normal file
View File

@@ -0,0 +1,128 @@
# Font: gauntlet — generado desde Gauntlet.ttf size 7
# Generado con tools/font_gen/font_gen.py
box_width 8
box_height 8
columns 15
# codepoint_decimal ancho_visual
32 3 # U+0020
33 2 # !
34 5 # "
35 6 # #
36 6 # $
37 7 # %
38 7 # &
39 2 # '
40 4 # (
41 4 # )
42 6 # *
43 8 # +
44 2 # ,
45 7 # -
46 2 # .
47 7 # /
48 7 # 0
49 6 # 1
50 6 # 2
51 6 # 3
52 7 # 4
53 6 # 5
54 6 # 6
55 6 # 7
56 6 # 8
57 6 # 9
58 2 # :
59 3 # ;
60 5 # <
61 6 # =
62 5 # >
63 6 # ?
64 6 # @
65 6 # A
66 7 # B
67 7 # C
68 7 # D
69 7 # E
70 7 # F
71 7 # G
72 6 # H
73 6 # I
74 7 # J
75 7 # K
76 7 # L
77 7 # M
78 7 # N
79 7 # O
80 7 # P
81 7 # Q
82 7 # R
83 6 # S
84 6 # T
85 6 # U
86 6 # V
87 7 # W
88 7 # X
89 6 # Y
90 7 # Z
91 8 # [
92 3 # \
93 7 # ]
94 7 # ^
95 8 # _
97 6 # a
98 7 # b
99 7 # c
100 7 # d
101 7 # e
102 7 # f
103 7 # g
104 6 # h
105 6 # i
106 7 # j
107 7 # k
108 7 # l
109 7 # m
110 7 # n
111 7 # o
112 7 # p
113 7 # q
114 7 # r
115 6 # s
116 6 # t
117 6 # u
118 6 # v
119 7 # w
120 7 # x
121 6 # y
122 7 # z
126 6 # ~
192 6 # À
193 6 # Á
200 7 # È
201 7 # É
204 6 # Ì
205 6 # Í
210 7 # Ò
211 7 # Ó
217 6 # Ù
218 6 # Ú
209 7 # Ñ
199 7 # Ç
224 6 # à
225 6 # á
232 7 # è
233 7 # é
236 6 # ì
237 6 # í
242 7 # ò
243 7 # ó
249 6 # ù
250 6 # ú
241 7 # ñ
231 7 # ç
161 2 # ¡
191 6 # ¿
171 5 # «
187 5 # »
183 2 # ·

Binary file not shown.

Before

Width:  |  Height:  |  Size: 810 B

After

Width:  |  Height:  |  Size: 959 B

View File

@@ -1,194 +0,0 @@
# box width
8
# box height
8
# 32 espacio ( )
6
# 33 !
2
# 34 "
5
# 35 #
6
# 36 $
6
# 37 %
7
# 38 &
7
# 39 '
2
# 40 (
4
# 41 )
4
# 42 *
6
# 43 +
8
# 44 ,
2
# 45 -
7
# 46 .
2
# 47 /
7
# 48 0
7
# 49 1
6
# 50 2
6
# 51 3
6
# 52 4
7
# 53 5
6
# 54 6
6
# 55 7
6
# 56 8
6
# 57 9
6
# 58 :
2
# 59 ;
2
# 60 <
5
# 61 =
6
# 62 >
5
# 63 ?
6
# 64 @
6
# 65 A
6
# 66 B
7
# 67 C
7
# 68 D
7
# 69 E
7
# 70 F
7
# 71 G
7
# 72 H
6
# 73 I
6
# 74 J
7
# 75 K
7
# 76 L
7
# 77 M
7
# 78 N
7
# 79 O
7
# 80 P
7
# 81 Q
7
# 82 R
7
# 83 S
6
# 84 T
6
# 85 U
6
# 86 V
6
# 87 W
7
# 88 X
7
# 89 Y
6
# 90 Z
7
# 91 [
8
# 92 \
3
# 93 ]
7
# 94 ^
7
# 95 _
8
# 96 `
0
# 97 a
6
# 98 b
7
# 99 c
7
# 100 d
7
# 101 e
7
# 102 f
7
# 103 g
7
# 104 h
6
# 105 i
6
# 106 j
7
# 107 k
7
# 108 l
7
# 109 m
7
# 110 n
7
# 111 o
7
# 112 p
7
# 113 q
7
# 114 r
7
# 115 s
6
# 116 t
6
# 117 u
6
# 118 v
6
# 119 w
7
# 120 x
7
# 121 y
6
# 122 z
7
# 123 {
0
# 124 |
0
# 125 }
0
# 126 ~
0

133
data/font/smb2.fnt Normal file
View File

@@ -0,0 +1,133 @@
# Font: smb2 — generado desde Super Mario Bros. 2.ttf size 8
# Generado con tools/font_gen/font_gen.py
box_width 8
box_height 8
columns 15
# codepoint_decimal ancho_visual
32 7 # U+0020
33 7 # !
34 7 # "
35 7 # #
36 7 # $
37 7 # %
38 7 # &
39 7 # '
40 7 # (
41 7 # )
42 7 # *
43 7 # +
44 7 # ,
45 7 # -
46 7 # .
47 7 # /
48 7 # 0
49 7 # 1
50 7 # 2
51 7 # 3
52 7 # 4
53 7 # 5
54 7 # 6
55 7 # 7
56 7 # 8
57 7 # 9
58 7 # :
59 7 # ;
60 7 # <
61 7 # =
62 7 # >
63 7 # ?
64 7 # @
65 7 # A
66 7 # B
67 7 # C
68 7 # D
69 7 # E
70 7 # F
71 7 # G
72 7 # H
73 7 # I
74 7 # J
75 7 # K
76 7 # L
77 7 # M
78 7 # N
79 7 # O
80 7 # P
81 7 # Q
82 7 # R
83 7 # S
84 7 # T
85 7 # U
86 7 # V
87 7 # W
88 7 # X
89 7 # Y
90 7 # Z
91 7 # [
92 7 # \
93 7 # ]
94 7 # ^
95 7 # _
96 7 # `
97 7 # a
98 7 # b
99 7 # c
100 7 # d
101 7 # e
102 7 # f
103 7 # g
104 7 # h
105 7 # i
106 7 # j
107 7 # k
108 7 # l
109 7 # m
110 7 # n
111 7 # o
112 7 # p
113 7 # q
114 7 # r
115 7 # s
116 7 # t
117 7 # u
118 7 # v
119 7 # w
120 7 # x
121 7 # y
122 7 # z
123 7 # {
124 7 # |
125 7 # }
126 7 # ~
192 7 # À
193 7 # Á
200 7 # È
201 7 # É
204 7 # Ì
205 7 # Í
210 7 # Ò
211 7 # Ó
217 7 # Ù
218 7 # Ú
209 7 # Ñ
199 7 # Ç
224 7 # à
225 7 # á
232 7 # è
233 7 # é
236 7 # ì
237 7 # í
242 7 # ò
243 7 # ó
249 7 # ù
250 7 # ú
241 7 # ñ
231 7 # ç
161 7 # ¡
191 7 # ¿
171 7 # «
187 7 # »
183 7 # ·
228 7 # ä (corazón)

Binary file not shown.

Before

Width:  |  Height:  |  Size: 798 B

After

Width:  |  Height:  |  Size: 1001 B

View File

@@ -1,194 +0,0 @@
# box width
8
# box height
8
# 32 espacio ( )
7
# 33 !
7
# 34 "
7
# 35 #
7
# 36 $
7
# 37 %
7
# 38 &
7
# 39 '
7
# 40 (
7
# 41 )
7
# 42 *
7
# 43 +
7
# 44 ,
7
# 45 -
7
# 46 .
7
# 47 /
7
# 48 0
7
# 49 1
7
# 50 2
7
# 51 3
7
# 52 4
7
# 53 5
7
# 54 6
7
# 55 7
7
# 56 8
7
# 57 9
7
# 58 :
7
# 59 ;
7
# 60 <
7
# 61 =
7
# 62 >
7
# 63 ?
7
# 64 @
7
# 65 A
7
# 66 B
7
# 67 C
7
# 68 D
7
# 69 E
7
# 70 F
7
# 71 G
7
# 72 H
7
# 73 I
7
# 74 J
7
# 75 K
7
# 76 L
7
# 77 M
7
# 78 N
7
# 79 O
7
# 80 P
7
# 81 Q
7
# 82 R
7
# 83 S
7
# 84 T
7
# 85 U
7
# 86 V
7
# 87 W
7
# 88 X
7
# 89 Y
7
# 90 Z
7
# 91 [
7
# 92 \
7
# 93 ]
7
# 94 ^
7
# 95 _
7
# 96 `
7
# 97 a
7
# 98 b
7
# 99 c
7
# 100 d
7
# 101 e
7
# 102 f
7
# 103 g
7
# 104 h
7
# 105 i
7
# 106 j
7
# 107 k
7
# 108 l
7
# 109 m
7
# 110 n
7
# 111 o
7
# 112 p
7
# 113 q
7
# 114 r
7
# 115 s
7
# 116 t
7
# 117 u
7
# 118 v
7
# 119 w
7
# 120 x
7
# 121 y
7
# 122 z
7
# 123 {
7
# 124 |
7
# 125 }
7
# 126 ~
7

132
data/font/subatomic.fnt Normal file
View File

@@ -0,0 +1,132 @@
# Font: subatomic — generado desde atomics.TTF size 6
# Generado con tools/font_gen/font_gen.py
box_width 7
box_height 7
columns 15
# codepoint_decimal ancho_visual
32 4 # U+0020
33 1 # !
34 3 # "
35 5 # #
36 5 # $
37 5 # %
38 6 # &
39 1 # '
40 2 # (
41 2 # )
42 5 # *
43 5 # +
44 1 # ,
45 5 # -
46 1 # .
47 5 # /
48 5 # 0
49 2 # 1
50 5 # 2
51 5 # 3
52 5 # 4
53 5 # 5
54 5 # 6
55 5 # 7
56 5 # 8
57 5 # 9
58 1 # :
59 1 # ;
60 3 # <
61 5 # =
62 3 # >
63 4 # ?
64 5 # @
65 5 # A
66 5 # B
67 5 # C
68 5 # D
69 4 # E
70 5 # F
71 5 # G
72 5 # H
73 1 # I
74 5 # J
75 5 # K
76 4 # L
77 5 # M
78 5 # N
79 5 # O
80 5 # P
81 5 # Q
82 5 # R
83 5 # S
84 5 # T
85 5 # U
86 5 # V
87 5 # W
88 5 # X
89 5 # Y
90 5 # Z
91 2 # [
92 5 # \
93 2 # ]
94 3 # ^
95 5 # _
96 2 # `
97 4 # a
98 4 # b
99 3 # c
100 4 # d
101 4 # e
102 3 # f
103 4 # g
104 4 # h
105 1 # i
106 2 # j
107 3 # k
108 1 # l
109 5 # m
110 4 # n
111 4 # o
112 4 # p
113 4 # q
114 3 # r
115 4 # s
116 2 # t
117 4 # u
118 4 # v
119 5 # w
120 3 # x
121 4 # y
122 4 # z
123 3 # {
124 1 # |
125 3 # }
126 4 # ~
192 5 # À
193 5 # Á
200 4 # È
201 4 # É
204 1 # Ì
205 1 # Í
210 5 # Ò
211 5 # Ó
217 5 # Ù
218 5 # Ú
209 5 # Ñ
199 5 # Ç
224 4 # à
225 4 # á
232 4 # è
233 4 # é
236 1 # ì
237 1 # í
242 4 # ò
243 4 # ó
249 4 # ù
250 4 # ú
241 4 # ñ
231 3 # ç
161 1 # ¡
191 4 # ¿
171 3 # «
187 3 # »
183 1 # ·

Binary file not shown.

Before

Width:  |  Height:  |  Size: 540 B

After

Width:  |  Height:  |  Size: 648 B

View File

@@ -1,194 +0,0 @@
# box width
7
# box height
7
# 32 espacio ( )
4
# 33 !
1
# 34 "
3
# 35 #
5
# 36 $
5
# 37 %
5
# 38 &
6
# 39 '
1
# 40 (
2
# 41 )
2
# 42 *
5
# 43 +
5
# 44 ,
1
# 45 -
5
# 46 .
1
# 47 /
5
# 48 0
5
# 49 1
2
# 50 2
5
# 51 3
5
# 52 4
5
# 53 5
5
# 54 6
5
# 55 7
5
# 56 8
5
# 57 9
5
# 58 :
1
# 59 ;
2
# 60 <
3
# 61 =
5
# 62 >
3
# 63 ?
4
# 64 @
5
# 65 A
5
# 66 B
5
# 67 C
5
# 68 D
5
# 69 E
4
# 70 F
5
# 71 G
5
# 72 H
5
# 73 I
1
# 74 J
5
# 75 K
5
# 76 L
2
# 77 M
5
# 78 N
5
# 79 O
5
# 80 P
5
# 81 Q
5
# 82 R
5
# 83 S
5
# 84 T
5
# 85 U
5
# 86 V
5
# 87 W
5
# 88 X
5
# 89 Y
5
# 90 Z
5
# 91 [
2
# 92 \
5
# 93 ]
2
# 94 ^
3
# 95 _
5
# 96 `
2
# 97 a
4
# 98 b
4
# 99 c
3
# 100 d
4
# 101 e
4
# 102 f
3
# 103 g
4
# 104 h
4
# 105 i
1
# 106 j
2
# 107 k
3
# 108 l
1
# 109 m
5
# 110 n
4
# 111 o
4
# 112 p
4
# 113 q
4
# 114 r
3
# 115 s
4
# 116 t
2
# 117 u
4
# 118 v
4
# 119 w
5
# 120 x
3
# 121 y
4
# 122 z
4
# 123 {
0
# 124 |
0
# 125 }
0
# 126 ~
0

140
data/locale/ca.yaml Normal file
View File

@@ -0,0 +1,140 @@
# JailDoctor's Dilemma - Catalan Locale
# lang: ca
title:
marquee: "EI JAILERS!! ESTEM EN 2022 I ENCARA HO PETEM COM EN 1998!! QUÉ, HO HEU SENTIT O NO? ELS JAILGAMES HAN TORNAT!! SÍ, COLLONS, HAN TORNAT!! MÉS DE 10 TÍTOLS QUE EL JAILDOC TÉ EN LA CUINA A FOC LENT!! MOLT LENT!! AIXÒ ÉS UNA BARBARITAT, PERÒ... QUIN EIXIRÀ PRIMER? I ATENCIÓ, QUE HI HA UN APARELLET NOU QUE VOS FARÀ VOLAR EL CAP: EL P.A.C.O.! PERÒ UN MOMENT... QUÈ ÉS AQUELLA COSETA QUE VE PER ALLÀ? OOOH, AQUELLA MINIASCII ÉS AMOR DEL BO!! LI PEGARIA UNA LLEPAETA A CADA BYTE! OSTRES! I NO VOS OBLIDEU DE PUJAR AQUELLS JAILGAMES VELLS I PANXUTS DE MS-DOS A GITHUB, QUE SI NO ES PERDRAN!! QUIN SERÀ EL PRÒXIM PROJECTE DE JAILDOC? SERÀ UN PROJECTE DE MERDA? AI MARE... NI IDEA, PERÒ ACÍ PODEU SABER-HO SI RESOLEU EL DILEMA DEL JAILDOCTOR... VOS ATREVIU O QUÈ? VAAAAA!!!"
menu:
play: "1. JUGAR"
keyboard: "2. REDEFINIR TECLES"
joystick: "3. REDEFINIR MANDO"
projects: "4. PROJECTES"
keys:
prompt0: "PREM UNA TECLA PER A ESQUERRA"
prompt1: "PREM UNA TECLA PER A DRETA"
prompt2: "PREM UNA TECLA PER A SALTAR"
defined: "TECLES DEFINIDES"
label0: "ESQUERRA: "
label1: "DRETA: "
label2: "SALTAR: "
invalid: "TECLA INVÀLIDA! PROVA'N UNA ALTRA"
already_used: "TECLA JA USADA! PROVA'N UNA ALTRA"
buttons:
prompt0: "PREM UN BOTÓ PER A ESQUERRA"
prompt1: "PREM UN BOTÓ PER A DRETA"
prompt2: "PREM UN BOTÓ PER A SALTAR"
defined: "BOTONS DEFINITS"
already_used: "BOTÓ JA USAT! PROVA'N UN ALTRE"
projects: "PROJECTES"
game_over:
title: "G A M E O V E R"
items: "OBJECTES: "
rooms: "SALES: "
worst_nightmare: "EL TEU PITJOR MALSON ÉS"
ending:
t0: "FINALMENT HO VA ACONSEGUIR"
t1: "ARRIBAR A LA JAIL"
t2: "AMB TOTS ELS SEUS PROJECTES"
t3: "A PUNT D'ALLIBERAR-LOS"
t4: "ALLÍ ESTAVEN TOTS ELS JAILERS"
t5: "ESPERANT QUE ELS JAILGAMES"
t6: "FOREN ALLIBERATS"
t7: "HI HAVIA FINS I TOT BARRULLS"
t8: "I BEGGINERS ENTRE LA GENT"
t9: "BRY ESTAVA PLORANT..."
t10: "PERÒ DE SOBTE ALGUNA COSA"
t11: "LI VA CRIDAR L'ATENCIÓ"
t12: "UN MUNT DE FERRALLA!"
t13: "PLE DE TRASTOS QUE NI ANAVEN!!"
t14: "I ALESHORES,"
t15: "QUARANTA PROJECTES NOUS"
t16: "VAN NÀIXER..."
ending2:
starring: "PROTAGONISTES"
jaildoctor: "JAILDOCTOR"
thank_you: "GRÀCIES"
for_playing: "PER JUGAR!"
credits:
instructions: "INSTRUCCIONS:"
l0: "AJUDA A JAILDOC A RECUPERAR"
l1: "ELS SEUS PROJECTES I ARRIBAR"
l2: "A LA JAIL PER ACABAR-LOS"
keys: "TECLES:"
keys_move: "CURSORS PER A MOURE I SALTAR"
f8: "F8 ACTIVAR/DESACTIVAR MÚSICA"
f11: "F11 PAUSAR EL JOC"
f1f2: "F1-F2 MIDA DE LA FINESTRA"
f3: "F3 PANTALLA COMPLETA"
f9: "F9 VORA DE LA PANTALLA"
author: "UN JOC DE JAILDESIGNER"
date: "FET A L'ESTIU/TARDOR DEL 2022"
love: "I LOVE JAILGAMES! "
achievements:
header: "ASSOLIMENT DESBLOQUEJAT!"
c1: "COSES BRILLANTS"
d1: "Aconseguiu el 25% dels objectes"
c2: "A MITJAN CAMÍ"
d2: "Aconseguiu el 50% dels objectes"
c3: "QUASI HI SOM"
d3: "Aconseguiu el 75% dels objectes"
c4: "EL COL·LECCIONISTA"
d4: "Aconseguiu el 100% dels objectes"
c5: "PASSEJANT PER ACÍ"
d5: "Visiteu 20 sales"
c6: "M'HE PERDUT"
d6: "Visiteu 40 sales"
c7: "M'AGRADA EXPLORAR"
d7: "Visiteu totes les sales"
c8: "JA ESTÀ?"
d8: "Completeu el joc"
c9: "UN FORAT EM VA ENGOLIR"
d9: "Completeu el joc sense entrar a la presó"
c10: "ELS MEUS PROJECTES"
d10: "Completeu el joc amb tots els objectes"
c11: "M'AGRADEN ELS MEUS AMICS DE COLORS"
d11: "Completeu el joc sense morir"
c12: "PROJECTES A CORRE-CUITA"
d12: "Completeu el joc en menys de 30 minuts"
ui:
press_again_menu: "PREM DE NOU PER TORNAR AL MENÚ"
press_again_exit: "PREM DE NOU PER EIXIR"
border_enabled: "VORA ACTIVADA"
border_disabled: "VORA DESACTIVADA"
fullscreen_enabled: "PANTALLA COMPLETA ACTIVADA"
fullscreen_disabled: "PANTALLA COMPLETA DESACTIVADA"
window_zoom: "ZOOM FINESTRA x"
shaders_enabled: "SHADERS ACTIVATS"
shaders_disabled: "SHADERS DESACTIVATS"
shader: "SHADER"
postfx: "POSTFX"
crtpi: "CRTPI"
supersampling_enabled: "SUPERMOSTREIG ACTIVAT"
supersampling_disabled: "SUPERMOSTREIG DESACTIVAT"
palette: "PALETA"
integer_scale_enabled: "ESCALAT SENCER ACTIVAT"
integer_scale_disabled: "ESCALAT SENCER DESACTIVAT"
vsync_enabled: "V-SYNC ACTIVAT"
vsync_disabled: "V-SYNC DESACTIVAT"
scoreboard:
items: "TRESORS PILLATS "
time: " HORA "
rooms: "SALES"
game:
music_enabled: "MÚSICA ACTIVADA"
music_disabled: "MÚSICA DESACTIVADA"
paused: "JOC EN PAUSA"
running: "JOC EN MARXA"
enabled: " ACTIVAT"
disabled: " DESACTIVAT"
cheat_infinite_lives: "VIDES INFINITES"
cheat_invincible: "INVENCIBLE"
cheat_jail_open: "JAIL OBERTA"
debug_enabled: "DEBUG ACTIVAT"
debug_disabled: "DEBUG DESACTIVAT"

140
data/locale/en.yaml Normal file
View File

@@ -0,0 +1,140 @@
# JailDoctor's Dilemma - English Locale
# lang: en
title:
marquee: "HEY JAILERS!! IT'S 2022 AND WE'RE STILL ROCKING LIKE IT'S 1998!!! HAVE YOU HEARD IT? JAILGAMES ARE BACK!! YEEESSS BACK!! MORE THAN 10 TITLES ON JAILDOC'S KITCHEN!! THATS A LOOOOOOT OF JAILGAMES, BUT WHICH ONE WILL STRIKE FIRST? THERE IS ALSO A NEW DEVICE TO COME THAT WILL BLOW YOUR MIND WITH JAILGAMES ON THE GO: P.A.C.O. BUT WAIT! WHAT'S THAT BEAUTY I'M SEEING RIGHT OVER THERE?? OOOH THAT TINY MINIASCII IS PURE LOVE!! I WANT TO LICK EVERY BYTE OF IT!! OH SHIT! AND DON'T FORGET TO BRING BACK THOSE OLD AND FAT MS-DOS JAILGAMES TO GITHUB TO KEEP THEM ALIVE!! WHAT WILL BE THE NEXT JAILDOC RELEASE? WHAT WILL BE THE NEXT PROJECT TO COME ALIVE?? OH BABY WE DON'T KNOW BUT HERE YOU CAN FIND THE ANSWER, YOU JUST HAVE TO COMPLETE JAILDOCTOR'S DILEMMA ... COULD YOU?"
menu:
play: "1. PLAY"
keyboard: "2. REDEFINE KEYBOARD"
joystick: "3. REDEFINE JOYSTICK"
projects: "4. PROJECTS"
keys:
prompt0: "PRESS KEY FOR LEFT"
prompt1: "PRESS KEY FOR RIGHT"
prompt2: "PRESS KEY FOR JUMP"
defined: "KEYS DEFINED"
label0: "LEFT: "
label1: "RIGHT: "
label2: "JUMP: "
invalid: "INVALID KEY! TRY ANOTHER"
already_used: "KEY ALREADY USED! TRY ANOTHER"
buttons:
prompt0: "PRESS BUTTON FOR LEFT"
prompt1: "PRESS BUTTON FOR RIGHT"
prompt2: "PRESS BUTTON FOR JUMP"
defined: "BUTTONS DEFINED"
already_used: "BUTTON ALREADY USED! TRY ANOTHER"
projects: "PROJECTS"
game_over:
title: "G A M E O V E R"
items: "ITEMS: "
rooms: "ROOMS: "
worst_nightmare: "YOUR WORST NIGHTMARE IS"
ending:
t0: "HE FINALLY MANAGED"
t1: "TO GET TO THE JAIL"
t2: "WITH ALL HIS PROJECTS"
t3: "READY TO BE FREED"
t4: "ALL THE JAILERS WERE THERE"
t5: "WAITING FOR THE JAILGAMES"
t6: "TO BE RELEASED"
t7: "THERE WERE EVEN BARRULLS AND"
t8: "BEGINNERS AMONG THE CROWD"
t9: "BRY WAS CRYING..."
t10: "BUT SUDDENLY SOMETHING"
t11: "CAUGHT HIS ATTENTION"
t12: "A PILE OF JUNK!"
t13: "FULL OF NON WORKING TRASH!!"
t14: "AND THEN,"
t15: "FOURTY NEW PROJECTS"
t16: "WERE BORN..."
ending2:
starring: "STARRING"
jaildoctor: "JAILDOCTOR"
thank_you: "THANK YOU"
for_playing: "FOR PLAYING!"
credits:
instructions: "INSTRUCTIONS:"
l0: "HELP JAILDOC TO GET BACK ALL"
l1: "HIS PROJECTS AND GO TO THE"
l2: "JAIL TO FINISH THEM"
keys: "KEYS:"
keys_move: "CURSORS TO MOVE AND JUMP"
f8: "F8 TOGGLE THE MUSIC"
f11: "F11 PAUSE THE GAME"
f1f2: "F1-F2 WINDOWS SIZE"
f3: "F3 TOGGLE FULLSCREEN"
f9: "F9 TOOGLE BORDER SCREEN"
author: "A GAME BY JAILDESIGNER"
date: "MADE ON SUMMER/FALL 2022"
love: "I LOVE JAILGAMES! "
achievements:
header: "ACHIEVEMENT UNLOCKED!"
c1: "SHINY THINGS"
d1: "Get 25% of the items"
c2: "HALF THE WORK"
d2: "Get 50% of the items"
c3: "GETTING THERE"
d3: "Get 75% of the items"
c4: "THE COLLECTOR"
d4: "Get 100% of the items"
c5: "WANDERING AROUND"
d5: "Visit 20 rooms"
c6: "I GOT LOST"
d6: "Visit 40 rooms"
c7: "I LIKE TO EXPLORE"
d7: "Visit all rooms"
c8: "FINISH THE GAME"
d8: "Complete the game"
c9: "I WAS SUCKED BY A HOLE"
d9: "Complete the game without entering the jail"
c10: "MY LITTLE PROJECTS"
d10: "Complete the game with all items"
c11: "I LIKE MY MULTICOLOURED FRIENDS"
d11: "Complete the game without dying"
c12: "SHIT PROJECTS DONE FAST"
d12: "Complete the game in under 30 minutes"
ui:
press_again_menu: "PRESS AGAIN TO RETURN TO MENU"
press_again_exit: "PRESS AGAIN TO EXIT"
border_enabled: "BORDER ENABLED"
border_disabled: "BORDER DISABLED"
fullscreen_enabled: "FULLSCREEN ENABLED"
fullscreen_disabled: "FULLSCREEN DISABLED"
window_zoom: "WINDOW ZOOM x"
shaders_enabled: "SHADERS ON"
shaders_disabled: "SHADERS OFF"
shader: "SHADER"
postfx: "POSTFX"
crtpi: "CRTPI"
supersampling_enabled: "SUPERSAMPLING ON"
supersampling_disabled: "SUPERSAMPLING OFF"
palette: "PALETTE"
integer_scale_enabled: "INTEGER SCALE ENABLED"
integer_scale_disabled: "INTEGER SCALE DISABLED"
vsync_enabled: "V-SYNC ENABLED"
vsync_disabled: "V-SYNC DISABLED"
scoreboard:
items: "ITEMS COLLECTED "
time: " TIME "
rooms: "ROOMS"
game:
music_enabled: "MUSIC ENABLED"
music_disabled: "MUSIC DISABLED"
paused: "GAME PAUSED"
running: "GAME RUNNING"
enabled: " ENABLED"
disabled: " DISABLED"
cheat_infinite_lives: "INFINITE LIVES"
cheat_invincible: "INVINCIBLE"
cheat_jail_open: "JAIL IS OPEN"
debug_enabled: "DEBUG ENABLED"
debug_disabled: "DEBUG DISABLED"

View File

@@ -1,27 +1,27 @@
# THE JAIL # THE JAIL
room: room:
number: "01" name_en: "THE JAIL"
name: "THE JAIL" name_ca: "LA JAIL"
bgColor: bright_blue bgColor: bright_blue
border: blue border: blue
tileSetFile: standard.gif tileSetFile: standard.gif
# Room connections (null for no connection) # Conexiones de la habitación (null = sin conexión)
connections: connections:
up: null up: null
down: null down: null
left: null left: null
right: "02" right: 02.yaml
# Item display colors # Colores de los objetos
itemColor1: yellow itemColor1: yellow
itemColor2: magenta itemColor2: magenta
# Conveyor belt direction: left (-1), none (0), right (1) # Dirección de la cinta transportadora: left, none, right
autoSurface: 0 conveyorBelt: none
# Tilemap: 16 rows × 32 columns (256×192 pixels @ 8px/tile) # Tilemap: 16 filas × 32 columnas (256×192 píxeles @ 8px/tile)
# Values are 0-based tile indices (0 = empty) # Índices de tiles (-1 = vacío)
tilemap: tilemap:
- [191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191] - [191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191]
- [167, 165, 184, 166, 165, 184, 165, 165, 167, 165, 165, 166, 165, 165, 184, 165, 165, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 165] - [167, 165, 184, 166, 165, 184, 165, 165, 167, 165, 165, 166, 165, 165, 184, 165, 165, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 165]
@@ -40,96 +40,78 @@ tilemap:
- [33, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 134, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1] - [33, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 134, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1]
- [33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33] - [33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33]
# Enemies in this room # Enemigos en esta habitación
enemies: enemies:
- animation: jailer_#1.yaml - animation: jailer1.yaml
position: {x: 1, y: 13} position: {x: 1, y: 13}
velocity: {x: 0, y: 0} velocity: {x: 0, y: 0}
boundaries: boundaries:
x1: 1 position1: {x: 1, y: 13}
y1: 13 position2: {x: 1, y: 13}
x2: 1
y2: 13
color: white color: white
- animation: jailer_#3.yaml - animation: jailer3.yaml
position: {x: 4, y: 13} position: {x: 4, y: 13}
velocity: {x: 0, y: 0} velocity: {x: 0, y: 0}
boundaries: boundaries:
x1: 4 position1: {x: 4, y: 13}
y1: 13 position2: {x: 4, y: 13}
x2: 4
y2: 13
color: white color: white
- animation: jailer_#1.yaml - animation: jailer1.yaml
position: {x: 7, y: 13} position: {x: 7, y: 13}
velocity: {x: 0, y: 0} velocity: {x: 0, y: 0}
boundaries: boundaries:
x1: 7 position1: {x: 7, y: 13}
y1: 13 position2: {x: 7, y: 13}
x2: 7
y2: 13
color: white color: white
- animation: jailer_#2.yaml - animation: jailer2.yaml
position: {x: 10, y: 13} position: {x: 10, y: 13}
velocity: {x: 0, y: 0} velocity: {x: 0, y: 0}
boundaries: boundaries:
x1: 10 position1: {x: 10, y: 13}
y1: 13 position2: {x: 10, y: 13}
x2: 10
y2: 13
color: white color: white
- animation: jailer_#1.yaml - animation: jailer1.yaml
position: {x: 13, y: 13} position: {x: 13, y: 13}
velocity: {x: 0, y: 0} velocity: {x: 0, y: 0}
boundaries: boundaries:
x1: 13 position1: {x: 13, y: 13}
y1: 13 position2: {x: 13, y: 13}
x2: 13
y2: 13
color: white color: white
- animation: elsa.yaml - animation: elsa.yaml
position: {x: 3, y: 9} position: {x: 3, y: 9}
velocity: {x: 0, y: 0} velocity: {x: 0, y: 0}
boundaries: boundaries:
x1: 3 position1: {x: 3, y: 9}
y1: 9 position2: {x: 3, y: 9}
x2: 3
y2: 9
color: white color: white
- animation: elsa.yaml - animation: elsa.yaml
position: {x: 6, y: 9} position: {x: 6, y: 9}
velocity: {x: 0, y: 0} velocity: {x: 0, y: 0}
boundaries: boundaries:
x1: 6 position1: {x: 6, y: 9}
y1: 9 position2: {x: 6, y: 9}
x2: 6
y2: 9
color: white color: white
- animation: lamp.yaml - animation: lamp.yaml
position: {x: 23, y: 6} position: {x: 23, y: 6}
velocity: {x: 0, y: 0} velocity: {x: 0, y: 0}
boundaries: boundaries:
x1: 23 position1: {x: 23, y: 6}
y1: 6 position2: {x: 23, y: 6}
x2: 23
y2: 6
color: white color: white
- animation: bry.yaml - animation: bry.yaml
position: {x: 17, y: 13} position: {x: 17, y: 13}
velocity: {x: 0, y: 0} velocity: {x: 0, y: 0}
boundaries: boundaries:
x1: 17 position1: {x: 17, y: 13}
y1: 13 position2: {x: 17, y: 13}
x2: 17
y2: 13
color: white color: white
# No items in this room # No items in this room

View File

@@ -1,27 +1,27 @@
# ROAD TO THE JAIL # ROAD TO THE JAIL
room: room:
number: "02" name_en: "ROAD TO THE JAIL"
name: "ROAD TO THE JAIL" name_ca: "CAMI A LA JAIL"
bgColor: black bgColor: black
border: blue border: blue
tileSetFile: standard.gif tileSetFile: standard.gif
# Room connections (null for no connection) # Conexiones de la habitación (null = sin conexión)
connections: connections:
up: null up: null
down: "04" down: 04.yaml
left: "01" left: 01.yaml
right: "03" right: 03.yaml
# Item display colors # Colores de los objetos
itemColor1: yellow itemColor1: yellow
itemColor2: bright_yellow itemColor2: bright_yellow
# Conveyor belt direction: left (-1), none (0), right (1) # Dirección de la cinta transportadora: left, none, right
autoSurface: 0 conveyorBelt: none
# Tilemap: 16 rows × 32 columns (256×192 pixels @ 8px/tile) # Tilemap: 16 filas × 32 columnas (256×192 píxeles @ 8px/tile)
# Values are 0-based tile indices (0 = empty) # Índices de tiles (-1 = vacío)
tilemap: tilemap:
- [191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 42, 42, 42, 42, 42] - [191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 42, 42, 42, 42, 42]
- [42, 165, 165, 166, 167, 165, 184, 166, 165, 184, 165, 165, 167, 165, 165, 166, 165, 165, 184, 165, 165, 165, 184, 166, 165, 165, 165, 184, 24, 24, 24, 24] - [42, 165, 165, 166, 167, 165, 184, 166, 165, 184, 165, 165, 167, 165, 165, 166, 165, 165, 184, 165, 165, 165, 184, 166, 165, 165, 165, 184, 24, 24, 24, 24]
@@ -40,30 +40,26 @@ tilemap:
- [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 523, 188, 190, 547, -1, -1, -1, -1] - [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 523, 188, 190, 547, -1, -1, -1, -1]
- [33, 33, 188, 189, 188, 189, 188, 189, 188, 189, 188, 189, 188, 189, 188, 189, 188, 189, 188, 190, -1, -1, 188, 189, 188, 189, 188, 189, 188, 190, 24, 24] - [33, 33, 188, 189, 188, 189, 188, 189, 188, 189, 188, 189, 188, 189, 188, 189, 188, 189, 188, 190, -1, -1, 188, 189, 188, 189, 188, 189, 188, 190, 24, 24]
# Enemies in this room # Enemigos en esta habitación
enemies: enemies:
- animation: bin.yaml - animation: bin.yaml
position: {x: 4, y: 7} position: {x: 4, y: 7}
velocity: {x: 36.0, y: 0} velocity: {x: 36.0, y: 0}
boundaries: boundaries:
x1: 4 position1: {x: 4, y: 7}
y1: 7 position2: {x: 25, y: 7}
x2: 25
y2: 7
color: green color: green
- animation: upv_student.yaml - animation: upv_student.yaml
position: {x: 4, y: 13} position: {x: 4, y: 13}
velocity: {x: 36.0, y: 0} velocity: {x: 36.0, y: 0}
boundaries: boundaries:
x1: 4 position1: {x: 4, y: 13}
y1: 13 position2: {x: 19, y: 13}
x2: 19
y2: 13
color: cyan color: cyan
flip: true flip: true
# Items in this room # Objetos en esta habitación
items: items:
- tileSetFile: items.gif - tileSetFile: items.gif
tile: 2 tile: 2

View File

@@ -1,27 +1,27 @@
# VOID MAIN # VOID MAIN
room: room:
number: "03" name_en: "VOID MAIN"
name: "VOID MAIN" name_ca: "VOID MAIN"
bgColor: black bgColor: black
border: magenta border: magenta
tileSetFile: standard.gif tileSetFile: standard.gif
# Room connections (null for no connection) # Conexiones de la habitación (null = sin conexión)
connections: connections:
up: null up: null
down: null down: null
left: "02" left: 02.yaml
right: null right: null
# Item display colors # Colores de los objetos
itemColor1: bright_cyan itemColor1: bright_cyan
itemColor2: yellow itemColor2: yellow
# Conveyor belt direction: left (-1), none (0), right (1) # Dirección de la cinta transportadora: left, none, right
autoSurface: -1 conveyorBelt: left
# Tilemap: 16 rows × 32 columns (256×192 pixels @ 8px/tile) # Tilemap: 16 filas × 32 columnas (256×192 píxeles @ 8px/tile)
# Values are 0-based tile indices (0 = empty) # Índices de tiles (-1 = vacío)
tilemap: tilemap:
- [24, 24, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 24, 24] - [24, 24, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 24, 24]
- [24, 24, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 24, 24] - [24, 24, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 24, 24]
@@ -40,19 +40,17 @@ tilemap:
- [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 440, 440, 440, 440, -1, -1, -1, -1, -1, -1, -1, -1, 134, 24] - [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 440, 440, 440, 440, -1, -1, -1, -1, -1, -1, -1, -1, 134, 24]
- [24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24] - [24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24]
# Enemies in this room # Enemigos en esta habitación
enemies: enemies:
- animation: code.yaml - animation: code.yaml
position: {x: 3, y: 2} position: {x: 3, y: 2}
velocity: {x: 24.0, y: 0} velocity: {x: 24.0, y: 0}
boundaries: boundaries:
x1: 3 position1: {x: 3, y: 2}
y1: 2 position2: {x: 27, y: 2}
x2: 27
y2: 2
color: yellow color: yellow
# Items in this room # Objetos en esta habitación
items: items:
- tileSetFile: items.gif - tileSetFile: items.gif
tile: 42 tile: 42

View File

@@ -1,27 +1,27 @@
# JUMP THROUGH # JUMP THROUGH
room: room:
number: "04" name_en: "JUMP THROUGH"
name: "JUMP THROUGH" name_ca: "SALTA A TRAVES"
bgColor: black bgColor: black
border: cyan border: cyan
tileSetFile: standard.gif tileSetFile: standard.gif
# Room connections (null for no connection) # Conexiones de la habitación (null = sin conexión)
connections: connections:
up: "02" up: 02.yaml
down: null down: null
left: "07" left: 07.yaml
right: "05" right: 05.yaml
# Item display colors # Colores de los objetos
itemColor1: white itemColor1: white
itemColor2: green itemColor2: green
# Conveyor belt direction: left (-1), none (0), right (1) # Dirección de la cinta transportadora: left, none, right
autoSurface: 0 conveyorBelt: none
# Tilemap: 16 rows × 32 columns (256×192 pixels @ 8px/tile) # Tilemap: 16 filas × 32 columnas (256×192 píxeles @ 8px/tile)
# Values are 0-based tile indices (0 = empty) # Índices de tiles (-1 = vacío)
tilemap: tilemap:
- [188, 189, 188, 189, 188, 189, 188, 189, 188, 189, 188, 189, 188, 189, 188, 189, 188, 189, 188, 190, -1, -1, -1, 527, 188, 189, 188, 189, 188, 189, 188, 189] - [188, 189, 188, 189, 188, 189, 188, 189, 188, 189, 188, 189, 188, 189, 188, 189, 188, 189, 188, 190, -1, -1, -1, 527, 188, 189, 188, 189, 188, 189, 188, 189]
- [14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, -1, -1, -1, -1, -1, 527, -1, 14, 14, 14, 14, 14, 14, 14, 14] - [14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, -1, -1, -1, -1, -1, 527, -1, 14, 14, 14, 14, 14, 14, 14, 14]
@@ -40,29 +40,25 @@ tilemap:
- [-1, -1, 518, 14, 62, 14, 62, 542, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 551, -1, -1, -1, -1, 518, 14, 62, 14, 62, 14, 62, 14, 62] - [-1, -1, 518, 14, 62, 14, 62, 542, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 551, -1, -1, -1, -1, 518, 14, 62, 14, 62, 14, 62, 14, 62]
- [62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62] - [62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62]
# Enemies in this room # Enemigos en esta habitación
enemies: enemies:
- animation: chip.yaml - animation: chip.yaml
position: {x: 24, y: 12} position: {x: 24, y: 12}
velocity: {x: 18.0, y: 0} velocity: {x: 18.0, y: 0}
boundaries: boundaries:
x1: 24 position1: {x: 24, y: 12}
y1: 12 position2: {x: 31, y: 12}
x2: 31
y2: 12
color: magenta color: magenta
- animation: chip.yaml - animation: chip.yaml
position: {x: 4, y: 2} position: {x: 4, y: 2}
velocity: {x: 0, y: 24.0} velocity: {x: 0, y: 24.0}
boundaries: boundaries:
x1: 4 position1: {x: 4, y: 2}
y1: 2 position2: {x: 4, y: 12}
x2: 4
y2: 12
color: yellow color: yellow
# Items in this room # Objetos en esta habitación
items: items:
- tileSetFile: items.gif - tileSetFile: items.gif
tile: 51 tile: 51

View File

@@ -1,27 +1,27 @@
# BIG JUMP # BIG JUMP
room: room:
number: "05" name_en: "BIG JUMP"
name: "BIG JUMP" name_ca: "EL GRAN BOT"
bgColor: black bgColor: black
border: red border: red
tileSetFile: standard.gif tileSetFile: standard.gif
# Room connections (null for no connection) # Conexiones de la habitación (null = sin conexión)
connections: connections:
up: null up: null
down: "60" down: 60.yaml
left: "04" left: 04.yaml
right: "06" right: 06.yaml
# Item display colors # Colores de los objetos
itemColor1: bright_green itemColor1: bright_green
itemColor2: green itemColor2: green
# Conveyor belt direction: left (-1), none (0), right (1) # Dirección de la cinta transportadora: left, none, right
autoSurface: 0 conveyorBelt: none
# Tilemap: 16 rows × 32 columns (256×192 pixels @ 8px/tile) # Tilemap: 16 filas × 32 columnas (256×192 píxeles @ 8px/tile)
# Values are 0-based tile indices (0 = empty) # Índices de tiles (-1 = vacío)
tilemap: tilemap:
- [24, 24, 24, 24, 24, 24, -1, -1, 304, -1, -1, -1, 304, 304, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 304, 425, 426, 425, 426] - [24, 24, 24, 24, 24, 24, -1, -1, 304, -1, -1, -1, 304, 304, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 304, 425, 426, 425, 426]
- [24, 24, 24, 24, 304, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 304, 425, 426, 92] - [24, 24, 24, 24, 304, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 304, 425, 426, 92]
@@ -40,30 +40,26 @@ tilemap:
- [30, 30, 531, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 30, 48, 48, 48, 48, 48, 48, 48, 48, 88, 89, 88, 89] - [30, 30, 531, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 30, 48, 48, 48, 48, 48, 48, 48, 48, 88, 89, 88, 89]
- [30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 304, -1, -1, 304, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30] - [30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 304, -1, -1, 304, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30]
# Enemies in this room # Enemigos en esta habitación
enemies: enemies:
- animation: floppy.yaml - animation: floppy.yaml
position: {x: 15, y: 4} position: {x: 15, y: 4}
velocity: {x: 0, y: 48.0} velocity: {x: 0, y: 48.0}
boundaries: boundaries:
x1: 15 position1: {x: 15, y: 0}
y1: 0 position2: {x: 15, y: 11}
x2: 15
y2: 11
color: magenta color: magenta
- animation: congo.yaml - animation: congo.yaml
position: {x: 21, y: 12} position: {x: 21, y: 12}
velocity: {x: 24.0, y: 0} velocity: {x: 24.0, y: 0}
boundaries: boundaries:
x1: 21 position1: {x: 21, y: 12}
y1: 12 position2: {x: 28, y: 12}
x2: 28
y2: 12
color: yellow color: yellow
flip: true flip: true
# Items in this room # Objetos en esta habitación
items: items:
- tileSetFile: items.gif - tileSetFile: items.gif
tile: 68 tile: 68

View File

@@ -1,27 +1,27 @@
# WELCOME TO MY ABBEY # WELCOME TO MY ABBEY
room: room:
number: "06" name_en: "WELCOME TO MY ABBEY"
name: "WELCOME TO MY ABBEY" name_ca: "BENVINGUT A LA MEUA ABADIA"
bgColor: blue bgColor: blue
border: yellow border: yellow
tileSetFile: standard.gif tileSetFile: standard.gif
# Room connections (null for no connection) # Conexiones de la habitación (null = sin conexión)
connections: connections:
up: "15" up: 15.yaml
down: null down: null
left: "05" left: 05.yaml
right: "25" right: 25.yaml
# Item display colors # Colores de los objetos
itemColor1: green itemColor1: green
itemColor2: bright_blue itemColor2: bright_blue
# Conveyor belt direction: left (-1), none (0), right (1) # Dirección de la cinta transportadora: left, none, right
autoSurface: 0 conveyorBelt: none
# Tilemap: 16 rows × 32 columns (256×192 pixels @ 8px/tile) # Tilemap: 16 filas × 32 columnas (256×192 píxeles @ 8px/tile)
# Values are 0-based tile indices (0 = empty) # Índices de tiles (-1 = vacío)
tilemap: tilemap:
- [425, 426, 425, 426, -1, -1, -1, -1, 425, 426, 66, 67, 66, 67, 66, 67, 66, 67, 66, 67, 66, 67, 66, 67, 66, 67, 66, 67, 66, 67, 66, 67] - [425, 426, 425, 426, -1, -1, -1, -1, 425, 426, 66, 67, 66, 67, 66, 67, 66, 67, 66, 67, 66, 67, 66, 67, 66, 67, 66, 67, 66, 67, 66, 67]
- [426, 425, 426, -1, -1, -1, -1, -1, -1, 91, 90, 91, 90, 91, 90, 91, 90, 91, 90, 91, 90, 91, 90, 91, 90, 91, 90, 91, 90, 91, 90, 91] - [426, 425, 426, -1, -1, -1, -1, -1, -1, 91, 90, 91, 90, 91, 90, 91, 90, 91, 90, 91, 90, 91, 90, 91, 90, 91, 90, 91, 90, 91, 90, 91]
@@ -40,16 +40,14 @@ tilemap:
- [134, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 555, -1, -1, -1, -1, -1] - [134, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 555, -1, -1, -1, -1, -1]
- [88, 89, 88, 89, 88, 89, 88, 89, 88, 89, 88, 89, 88, 89, 88, 89, 88, 89, 88, 89, 88, 89, 88, 89, 88, 89, 88, 89, 88, 89, 88, 89] - [88, 89, 88, 89, 88, 89, 88, 89, 88, 89, 88, 89, 88, 89, 88, 89, 88, 89, 88, 89, 88, 89, 88, 89, 88, 89, 88, 89, 88, 89, 88, 89]
# Enemies in this room # Enemigos en esta habitación
enemies: enemies:
- animation: abad.yaml - animation: abad.yaml
position: {x: 1, y: 13} position: {x: 1, y: 13}
velocity: {x: 48.0, y: 0} velocity: {x: 48.0, y: 0}
boundaries: boundaries:
x1: 1 position1: {x: 1, y: 13}
y1: 13 position2: {x: 23, y: 13}
x2: 23
y2: 13
color: yellow color: yellow
flip: true flip: true
@@ -57,13 +55,11 @@ enemies:
position: {x: 24, y: 4} position: {x: 24, y: 4}
velocity: {x: 0, y: 48.0} velocity: {x: 0, y: 48.0}
boundaries: boundaries:
x1: 24 position1: {x: 24, y: 2}
y1: 2 position2: {x: 24, y: 7}
x2: 24
y2: 7
color: green color: green
# Items in this room # Objetos en esta habitación
items: items:
- tileSetFile: items.gif - tileSetFile: items.gif
tile: 49 tile: 49

View File

@@ -1,27 +1,27 @@
# SIGMASUA > TELEGRAM # SIGMASUA > TELEGRAM
room: room:
number: "07" name_en: "SIGMASUA > TELEGRAM"
name: "SIGMASUA > TELEGRAM" name_ca: "SIGMASUA > TELEGRAM"
bgColor: black bgColor: black
border: blue border: blue
tileSetFile: standard.gif tileSetFile: standard.gif
# Room connections (null for no connection) # Conexiones de la habitación (null = sin conexión)
connections: connections:
up: null up: null
down: null down: null
left: "08" left: 08.yaml
right: "04" right: 04.yaml
# Item display colors # Colores de los objetos
itemColor1: magenta itemColor1: magenta
itemColor2: red itemColor2: red
# Conveyor belt direction: left (-1), none (0), right (1) # Dirección de la cinta transportadora: left, none, right
autoSurface: 0 conveyorBelt: none
# Tilemap: 16 rows × 32 columns (256×192 pixels @ 8px/tile) # Tilemap: 16 filas × 32 columnas (256×192 píxeles @ 8px/tile)
# Values are 0-based tile indices (0 = empty) # Índices de tiles (-1 = vacío)
tilemap: tilemap:
- [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1] - [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1]
- [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1] - [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1]
@@ -40,69 +40,57 @@ tilemap:
- [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 6, -1, -1, -1, -1, -1, -1, -1, -1] - [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 6, -1, -1, -1, -1, -1, -1, -1, -1]
- [6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6] - [6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6]
# Enemies in this room # Enemigos en esta habitación
enemies: enemies:
- animation: sigmasua.yaml - animation: sigmasua.yaml
position: {x: 15, y: 7} position: {x: 15, y: 7}
velocity: {x: 48.0, y: 0} velocity: {x: 48.0, y: 0}
boundaries: boundaries:
x1: 7 position1: {x: 7, y: 7}
y1: 7 position2: {x: 23, y: 7}
x2: 23
y2: 7
color: cyan color: cyan
- animation: sigmasua.yaml - animation: sigmasua.yaml
position: {x: 15, y: 4} position: {x: 15, y: 4}
velocity: {x: -30.0, y: 0} velocity: {x: -30.0, y: 0}
boundaries: boundaries:
x1: 7 position1: {x: 7, y: 4}
y1: 4 position2: {x: 23, y: 4}
x2: 23
y2: 4
color: blue color: blue
- animation: sigmasua.yaml - animation: sigmasua.yaml
position: {x: 3, y: 8} position: {x: 3, y: 8}
velocity: {x: 0, y: 24.0} velocity: {x: 0, y: 24.0}
boundaries: boundaries:
x1: 3 position1: {x: 3, y: 5}
y1: 5 position2: {x: 3, y: 13}
x2: 3
y2: 13
color: bright_red color: bright_red
- animation: sigmasua.yaml - animation: sigmasua.yaml
position: {x: 27, y: 8} position: {x: 27, y: 8}
velocity: {x: 0, y: -24.0} velocity: {x: 0, y: -24.0}
boundaries: boundaries:
x1: 27 position1: {x: 27, y: 5}
y1: 5 position2: {x: 27, y: 13}
x2: 27
y2: 13
color: yellow color: yellow
- animation: sigmasua.yaml - animation: sigmasua.yaml
position: {x: 12, y: 10} position: {x: 12, y: 10}
velocity: {x: 0, y: 18.0} velocity: {x: 0, y: 18.0}
boundaries: boundaries:
x1: 12 position1: {x: 12, y: 10}
y1: 10 position2: {x: 12, y: 13}
x2: 12
y2: 13
color: bright_magenta color: bright_magenta
- animation: sigmasua.yaml - animation: sigmasua.yaml
position: {x: 17, y: 13} position: {x: 17, y: 13}
velocity: {x: 0, y: -18.0} velocity: {x: 0, y: -18.0}
boundaries: boundaries:
x1: 17 position1: {x: 17, y: 10}
y1: 10 position2: {x: 17, y: 13}
x2: 17
y2: 13
color: bright_green color: bright_green
# Items in this room # Objetos en esta habitación
items: items:
- tileSetFile: items.gif - tileSetFile: items.gif
tile: 67 tile: 67

View File

@@ -1,27 +1,27 @@
# THE GARDEN # THE GARDEN
room: room:
number: "08" name_en: "THE GARDEN"
name: "THE GARDEN" name_ca: "EL JARDI"
bgColor: black bgColor: black
border: cyan border: cyan
tileSetFile: standard.gif tileSetFile: standard.gif
# Room connections (null for no connection) # Conexiones de la habitación (null = sin conexión)
connections: connections:
up: "09" up: 09.yaml
down: null down: null
left: "16" left: 16.yaml
right: "07" right: 07.yaml
# Item display colors # Colores de los objetos
itemColor1: yellow itemColor1: yellow
itemColor2: magenta itemColor2: magenta
# Conveyor belt direction: left (-1), none (0), right (1) # Dirección de la cinta transportadora: left, none, right
autoSurface: 0 conveyorBelt: none
# Tilemap: 16 rows × 32 columns (256×192 pixels @ 8px/tile) # Tilemap: 16 filas × 32 columnas (256×192 píxeles @ 8px/tile)
# Values are 0-based tile indices (0 = empty) # Índices de tiles (-1 = vacío)
tilemap: tilemap:
- [81, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 40, 40, 40, 40, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 504, 81] - [81, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 40, 40, 40, 40, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 504, 81]
- [81, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 40, 40, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 504, -1, 81] - [81, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 40, 40, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 504, -1, 81]
@@ -40,20 +40,18 @@ tilemap:
- [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 515, 81, 81, 81, 81, 81, 81, 81, 81, 539, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1] - [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 515, 81, 81, 81, 81, 81, 81, 81, 81, 539, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1]
- [81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81] - [81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 81]
# Enemies in this room # Enemigos en esta habitación
enemies: enemies:
- animation: abad.yaml - animation: abad.yaml
position: {x: 4, y: 13} position: {x: 4, y: 13}
velocity: {x: 24.0, y: 0} velocity: {x: 24.0, y: 0}
boundaries: boundaries:
x1: 2 position1: {x: 2, y: 13}
y1: 13 position2: {x: 10, y: 13}
x2: 10
y2: 13
color: green color: green
flip: true flip: true
# Items in this room # Objetos en esta habitación
items: items:
- tileSetFile: items.gif - tileSetFile: items.gif
tile: 18 tile: 18

View File

@@ -1,27 +1,27 @@
# THE BIG TREE # THE BIG TREE
room: room:
number: "09" name_en: "THE BIG TREE"
name: "THE BIG TREE" name_ca: "EL GRAN ARBRE"
bgColor: black bgColor: black
border: bright_blue border: bright_blue
tileSetFile: standard.gif tileSetFile: standard.gif
# Room connections (null for no connection) # Conexiones de la habitación (null = sin conexión)
connections: connections:
up: "10" up: 10.yaml
down: "08" down: 08.yaml
left: null left: null
right: null right: null
# Item display colors # Colores de los objetos
itemColor1: cyan itemColor1: cyan
itemColor2: green itemColor2: green
# Conveyor belt direction: left (-1), none (0), right (1) # Dirección de la cinta transportadora: left, none, right
autoSurface: 0 conveyorBelt: none
# Tilemap: 16 rows × 32 columns (256×192 pixels @ 8px/tile) # Tilemap: 16 filas × 32 columnas (256×192 píxeles @ 8px/tile)
# Values are 0-based tile indices (0 = empty) # Índices de tiles (-1 = vacío)
tilemap: tilemap:
- [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 304, 304, 40, 40, 40, 40, 304, 304, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 517, 16, 16] - [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 304, 304, 40, 40, 40, 40, 304, 304, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 517, 16, 16]
- [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 304, -1, -1, 40, 40, 40, 40, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 517, 16, 16, 16] - [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 304, -1, -1, 40, 40, 40, 40, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 517, 16, 16, 16]
@@ -40,16 +40,14 @@ tilemap:
- [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 537, -1, -1, -1, -1, -1, -1, -1, -1, -1, 16] - [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 537, -1, -1, -1, -1, -1, -1, -1, -1, -1, 16]
- [562, 562, 562, 562, 562, 562, 562, 562, 562, 562, -1, -1, -1, 40, 40, 40, 40, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, -1, -1, 348, 348, 348] - [562, 562, 562, 562, 562, 562, 562, 562, 562, 562, -1, -1, -1, 40, 40, 40, 40, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, -1, -1, 348, 348, 348]
# Enemies in this room # Enemigos en esta habitación
enemies: enemies:
- animation: congo.yaml - animation: congo.yaml
position: {x: 10, y: 12} position: {x: 10, y: 12}
velocity: {x: 24.0, y: 0} velocity: {x: 24.0, y: 0}
boundaries: boundaries:
x1: 10 position1: {x: 10, y: 12}
y1: 12 position2: {x: 20, y: 12}
x2: 20
y2: 12
color: yellow color: yellow
flip: true flip: true
@@ -57,14 +55,12 @@ enemies:
position: {x: 12, y: 6} position: {x: 12, y: 6}
velocity: {x: 36.0, y: 0} velocity: {x: 36.0, y: 0}
boundaries: boundaries:
x1: 12 position1: {x: 12, y: 6}
y1: 6 position2: {x: 17, y: 6}
x2: 17
y2: 6
color: white color: white
flip: true flip: true
# Items in this room # Objetos en esta habitación
items: items:
- tileSetFile: items.gif - tileSetFile: items.gif
tile: 52 tile: 52

View File

@@ -1,27 +1,27 @@
# TREE TOP # TREE TOP
room: room:
number: "10" name_en: "TREE TOP"
name: "TREE TOP" name_ca: "DALT DE L'ARBRE"
bgColor: bright_black bgColor: bright_black
border: blue border: blue
tileSetFile: standard.gif tileSetFile: standard.gif
# Room connections (null for no connection) # Conexiones de la habitación (null = sin conexión)
connections: connections:
up: null up: null
down: "09" down: 09.yaml
left: null left: null
right: "11" right: 11.yaml
# Item display colors # Colores de los objetos
itemColor1: green itemColor1: green
itemColor2: red itemColor2: red
# Conveyor belt direction: left (-1), none (0), right (1) # Dirección de la cinta transportadora: left, none, right
autoSurface: 0 conveyorBelt: none
# Tilemap: 16 rows × 32 columns (256×192 pixels @ 8px/tile) # Tilemap: 16 filas × 32 columnas (256×192 píxeles @ 8px/tile)
# Values are 0-based tile indices (0 = empty) # Índices de tiles (-1 = vacío)
tilemap: tilemap:
- [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 85, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1] - [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 85, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1]
- [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 85, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1] - [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 85, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1]
@@ -43,7 +43,7 @@ tilemap:
# No enemies in this room # No enemies in this room
enemies: [] enemies: []
# Items in this room # Objetos en esta habitación
items: items:
- tileSetFile: items.gif - tileSetFile: items.gif
tile: 16 tile: 16

View File

@@ -1,27 +1,27 @@
# LAZY ROOM # LAZY ROOM
room: room:
number: "11" name_en: "LAZY ROOM"
name: "LAZY ROOM" name_ca: "LA SALA GOSSA"
bgColor: black bgColor: black
border: blue border: blue
tileSetFile: standard.gif tileSetFile: standard.gif
# Room connections (null for no connection) # Conexiones de la habitación (null = sin conexión)
connections: connections:
up: null up: null
down: null down: null
left: "10" left: 10.yaml
right: "12" right: 12.yaml
# Item display colors # Colores de los objetos
itemColor1: yellow itemColor1: yellow
itemColor2: magenta itemColor2: magenta
# Conveyor belt direction: left (-1), none (0), right (1) # Dirección de la cinta transportadora: left, none, right
autoSurface: 0 conveyorBelt: none
# Tilemap: 16 rows × 32 columns (256×192 pixels @ 8px/tile) # Tilemap: 16 filas × 32 columnas (256×192 píxeles @ 8px/tile)
# Values are 0-based tile indices (0 = empty) # Índices de tiles (-1 = vacío)
tilemap: tilemap:
- [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 27] - [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 27]
- [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 27] - [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 27]
@@ -40,56 +40,46 @@ tilemap:
- [85, 85, 539, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 515, 85, 85] - [85, 85, 539, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 515, 85, 85]
- [85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85] - [85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 85]
# Enemies in this room # Enemigos en esta habitación
enemies: enemies:
- animation: lamp.yaml - animation: lamp.yaml
position: {x: 7, y: 10} position: {x: 7, y: 10}
velocity: {x: 0, y: 0} velocity: {x: 0, y: 0}
boundaries: boundaries:
x1: 7 position1: {x: 7, y: 10}
y1: 10 position2: {x: 7, y: 10}
x2: 7
y2: 10
color: magenta color: magenta
- animation: lamp.yaml - animation: lamp.yaml
position: {x: 21, y: 10} position: {x: 21, y: 10}
velocity: {x: 0, y: 0} velocity: {x: 0, y: 0}
boundaries: boundaries:
x1: 21 position1: {x: 21, y: 10}
y1: 10 position2: {x: 21, y: 10}
x2: 21
y2: 10
color: magenta color: magenta
- animation: bin.yaml - animation: bin.yaml
position: {x: 12, y: 14} position: {x: 12, y: 14}
velocity: {x: 48.0, y: 0} velocity: {x: 48.0, y: 0}
boundaries: boundaries:
x1: 3 position1: {x: 3, y: 14}
y1: 14 position2: {x: 27, y: 14}
x2: 27
y2: 14
color: green color: green
- animation: wave.yaml - animation: wave.yaml
position: {x: 7, y: 6} position: {x: 7, y: 6}
velocity: {x: 30.0, y: 0} velocity: {x: 30.0, y: 0}
boundaries: boundaries:
x1: 0 position1: {x: 0, y: 6}
y1: 6 position2: {x: 14, y: 6}
x2: 14
y2: 6
color: green color: green
- animation: wave.yaml - animation: wave.yaml
position: {x: 23, y: 6} position: {x: 23, y: 6}
velocity: {x: -30.0, y: 0} velocity: {x: -30.0, y: 0}
boundaries: boundaries:
x1: 16 position1: {x: 16, y: 6}
y1: 6 position2: {x: 31, y: 6}
x2: 31
y2: 6
color: green color: green
# No items in this room # No items in this room

View File

@@ -1,27 +1,27 @@
# THE PASSAGE # THE PASSAGE
room: room:
number: "12" name_en: "THE PASSAGE"
name: "THE PASSAGE" name_ca: "EL PASSATGE"
bgColor: black bgColor: black
border: green border: green
tileSetFile: standard.gif tileSetFile: standard.gif
# Room connections (null for no connection) # Conexiones de la habitación (null = sin conexión)
connections: connections:
up: null up: null
down: null down: null
left: "11" left: 11.yaml
right: "13" right: 13.yaml
# Item display colors # Colores de los objetos
itemColor1: red itemColor1: red
itemColor2: magenta itemColor2: magenta
# Conveyor belt direction: left (-1), none (0), right (1) # Dirección de la cinta transportadora: left, none, right
autoSurface: 0 conveyorBelt: none
# Tilemap: 16 rows × 32 columns (256×192 pixels @ 8px/tile) # Tilemap: 16 filas × 32 columnas (256×192 píxeles @ 8px/tile)
# Values are 0-based tile indices (0 = empty) # Índices de tiles (-1 = vacío)
tilemap: tilemap:
- [24, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1] - [24, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1]
- [24, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1] - [24, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1]
@@ -40,29 +40,25 @@ tilemap:
- [24, 24, 550, -1, -1, -1, -1, -1, -1, 346, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1] - [24, 24, 550, -1, -1, -1, -1, -1, -1, 346, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1]
- [24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24] - [24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24]
# Enemies in this room # Enemigos en esta habitación
enemies: enemies:
- animation: floppy.yaml - animation: floppy.yaml
position: {x: 9, y: 10} position: {x: 9, y: 10}
velocity: {x: 36.0, y: 0} velocity: {x: 36.0, y: 0}
boundaries: boundaries:
x1: 4 position1: {x: 4, y: 10}
y1: 10 position2: {x: 22, y: 10}
x2: 22
y2: 10
color: green color: green
- animation: floppy.yaml - animation: floppy.yaml
position: {x: 1, y: 0} position: {x: 1, y: 0}
velocity: {x: 0, y: 30.0} velocity: {x: 0, y: 30.0}
boundaries: boundaries:
x1: 1 position1: {x: 1, y: 0}
y1: 0 position2: {x: 1, y: 7}
x2: 1
y2: 7
color: yellow color: yellow
# Items in this room # Objetos en esta habitación
items: items:
- tileSetFile: items.gif - tileSetFile: items.gif
tile: 34 tile: 34

View File

@@ -1,27 +1,27 @@
# TUNO KILLER # TUNO KILLER
room: room:
number: "13" name_en: "TUNO KILLER"
name: "TUNO KILLER" name_ca: "MATATUNOS"
bgColor: black bgColor: black
border: blue border: blue
tileSetFile: standard.gif tileSetFile: standard.gif
# Room connections (null for no connection) # Conexiones de la habitación (null = sin conexión)
connections: connections:
up: null up: null
down: null down: null
left: "12" left: 12.yaml
right: "14" right: 14.yaml
# Item display colors # Colores de los objetos
itemColor1: yellow itemColor1: yellow
itemColor2: cyan itemColor2: cyan
# Conveyor belt direction: left (-1), none (0), right (1) # Dirección de la cinta transportadora: left, none, right
autoSurface: 0 conveyorBelt: none
# Tilemap: 16 rows × 32 columns (256×192 pixels @ 8px/tile) # Tilemap: 16 filas × 32 columnas (256×192 píxeles @ 8px/tile)
# Values are 0-based tile indices (0 = empty) # Índices de tiles (-1 = vacío)
tilemap: tilemap:
- [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1] - [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1]
- [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1] - [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1]
@@ -40,49 +40,41 @@ tilemap:
- [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1] - [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1]
- [25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25] - [25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25]
# Enemies in this room # Enemigos en esta habitación
enemies: enemies:
- animation: matatunos.yaml - animation: matatunos.yaml
position: {x: 5, y: 1} position: {x: 5, y: 1}
velocity: {x: 0, y: 60.0} velocity: {x: 0, y: 60.0}
boundaries: boundaries:
x1: 5 position1: {x: 5, y: 1}
y1: 1 position2: {x: 5, y: 13}
x2: 5
y2: 13
color: bright_blue color: bright_blue
- animation: tuno.yaml - animation: tuno.yaml
position: {x: 12, y: 4} position: {x: 12, y: 4}
velocity: {x: 0, y: 66.0} velocity: {x: 0, y: 66.0}
boundaries: boundaries:
x1: 12 position1: {x: 12, y: 1}
y1: 1 position2: {x: 12, y: 13}
x2: 12
y2: 13
color: red color: red
- animation: tuno.yaml - animation: tuno.yaml
position: {x: 19, y: 7} position: {x: 19, y: 7}
velocity: {x: 0, y: 54.0} velocity: {x: 0, y: 54.0}
boundaries: boundaries:
x1: 19 position1: {x: 19, y: 1}
y1: 1 position2: {x: 19, y: 13}
x2: 19
y2: 13
color: yellow color: yellow
- animation: tuno.yaml - animation: tuno.yaml
position: {x: 26, y: 11} position: {x: 26, y: 11}
velocity: {x: 0, y: 42.0} velocity: {x: 0, y: 42.0}
boundaries: boundaries:
x1: 26 position1: {x: 26, y: 1}
y1: 1 position2: {x: 26, y: 13}
x2: 26
y2: 13
color: magenta color: magenta
# Items in this room # Objetos en esta habitación
items: items:
- tileSetFile: items.gif - tileSetFile: items.gif
tile: 53 tile: 53

View File

@@ -1,27 +1,27 @@
# KILLING SPREE # KILLING SPREE
room: room:
number: "14" name_en: "KILLING SPREE"
name: "KILLING SPREE" name_ca: "MATANÇA INDISCRIMINADA"
bgColor: black bgColor: black
border: blue border: blue
tileSetFile: standard.gif tileSetFile: standard.gif
# Room connections (null for no connection) # Conexiones de la habitación (null = sin conexión)
connections: connections:
up: null up: null
down: "15" down: 15.yaml
left: "13" left: 13.yaml
right: "45" right: 45.yaml
# Item display colors # Colores de los objetos
itemColor1: yellow itemColor1: yellow
itemColor2: cyan itemColor2: cyan
# Conveyor belt direction: left (-1), none (0), right (1) # Dirección de la cinta transportadora: left, none, right
autoSurface: 0 conveyorBelt: none
# Tilemap: 16 rows × 32 columns (256×192 pixels @ 8px/tile) # Tilemap: 16 filas × 32 columnas (256×192 píxeles @ 8px/tile)
# Values are 0-based tile indices (0 = empty) # Índices de tiles (-1 = vacío)
tilemap: tilemap:
- [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 29] - [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 29]
- [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 29] - [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 29]
@@ -40,39 +40,33 @@ tilemap:
- [-1, -1, -1, -1, 336, -1, 336, -1, -1, -1, -1, -1, -1, -1, 312, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 29] - [-1, -1, -1, -1, 336, -1, 336, -1, -1, -1, -1, -1, -1, -1, 312, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 29]
- [15, 15, 15, 15, 15, -1, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 325, -1, -1, 325, 325, 15, 15, 15, 15, 15, 15, 15] - [15, 15, 15, 15, 15, -1, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 325, -1, -1, 325, 325, 15, 15, 15, 15, 15, 15, 15]
# Enemies in this room # Enemigos en esta habitación
enemies: enemies:
- animation: matatunos.yaml - animation: matatunos.yaml
position: {x: 6, y: 5} position: {x: 6, y: 5}
velocity: {x: 18.0, y: 0} velocity: {x: 18.0, y: 0}
boundaries: boundaries:
x1: 5 position1: {x: 5, y: 5}
y1: 5 position2: {x: 10, y: 5}
x2: 10
y2: 5
color: bright_green color: bright_green
- animation: tuno.yaml - animation: tuno.yaml
position: {x: 21, y: 2} position: {x: 21, y: 2}
velocity: {x: 0, y: 24.0} velocity: {x: 0, y: 24.0}
boundaries: boundaries:
x1: 21 position1: {x: 21, y: 2}
y1: 2 position2: {x: 21, y: 13}
x2: 21
y2: 13
color: red color: red
- animation: tuno.yaml - animation: tuno.yaml
position: {x: 28, y: 6} position: {x: 28, y: 6}
velocity: {x: 0, y: -24.0} velocity: {x: 0, y: -24.0}
boundaries: boundaries:
x1: 28 position1: {x: 28, y: 2}
y1: 2 position2: {x: 28, y: 13}
x2: 28
y2: 13
color: magenta color: magenta
# Items in this room # Objetos en esta habitación
items: items:
- tileSetFile: items.gif - tileSetFile: items.gif
tile: 53 tile: 53

View File

@@ -1,27 +1,27 @@
# NOW THIS IS THE BATCAVE! # NOW THIS IS THE BATCAVE!
room: room:
number: "15" name_en: "NOW THIS IS THE BATCAVE!"
name: "NOW THIS IS THE BATCAVE!" name_ca: "ESTA SI QUE ES LA BATCOVA!"
bgColor: black bgColor: black
border: black border: black
tileSetFile: standard.gif tileSetFile: standard.gif
# Room connections (null for no connection) # Conexiones de la habitación (null = sin conexión)
connections: connections:
up: "14" up: 14.yaml
down: "06" down: 06.yaml
left: null left: null
right: null right: null
# Item display colors # Colores de los objetos
itemColor1: yellow itemColor1: yellow
itemColor2: red itemColor2: red
# Conveyor belt direction: left (-1), none (0), right (1) # Dirección de la cinta transportadora: left, none, right
autoSurface: 0 conveyorBelt: none
# Tilemap: 16 rows × 32 columns (256×192 pixels @ 8px/tile) # Tilemap: 16 filas × 32 columnas (256×192 píxeles @ 8px/tile)
# Values are 0-based tile indices (0 = empty) # Índices de tiles (-1 = vacío)
tilemap: tilemap:
- [15, 15, 15, 15, 15, -1, 15, 15, 15, 15, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 301, -1, -1, 301, 301, 15, 15, 15, 15, 15, 15, 15] - [15, 15, 15, 15, 15, -1, 15, 15, 15, 15, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 301, -1, -1, 301, 301, 15, 15, 15, 15, 15, 15, 15]
- [15, 15, 301, -1, -1, -1, -1, 348, 15, 348, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 301, 15, 15] - [15, 15, 301, -1, -1, -1, -1, 348, 15, 348, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 301, 15, 15]
@@ -40,16 +40,14 @@ tilemap:
- [15, 15, -1, -1, -1, -1, -1, -1, -1, -1, -1, 554, -1, -1, -1, -1, -1, -1, -1, -1, 554, -1, -1, -1, -1, -1, -1, 288, -1, -1, 15, 15] - [15, 15, -1, -1, -1, -1, -1, -1, -1, -1, -1, 554, -1, -1, -1, -1, -1, -1, -1, -1, 554, -1, -1, -1, -1, -1, -1, 288, -1, -1, 15, 15]
- [15, 348, 348, 348, 348, -1, -1, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 15] - [15, 348, 348, 348, 348, -1, -1, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 15]
# Enemies in this room # Enemigos en esta habitación
enemies: enemies:
- animation: batman.yaml - animation: batman.yaml
position: {x: 17, y: 13} position: {x: 17, y: 13}
velocity: {x: 48.0, y: 0} velocity: {x: 48.0, y: 0}
boundaries: boundaries:
x1: 7 position1: {x: 7, y: 13}
y1: 13 position2: {x: 29, y: 13}
x2: 29
y2: 13
color: white color: white
flip: true flip: true
@@ -57,33 +55,27 @@ enemies:
position: {x: 14, y: 2} position: {x: 14, y: 2}
velocity: {x: 30.0, y: 0} velocity: {x: 30.0, y: 0}
boundaries: boundaries:
x1: 9 position1: {x: 9, y: 2}
y1: 2 position2: {x: 30, y: 2}
x2: 30
y2: 2
color: bright_blue color: bright_blue
- animation: bat.yaml - animation: bat.yaml
position: {x: 10, y: 10} position: {x: 10, y: 10}
velocity: {x: 30.0, y: 0} velocity: {x: 30.0, y: 0}
boundaries: boundaries:
x1: 1 position1: {x: 1, y: 10}
y1: 10 position2: {x: 30, y: 10}
x2: 30
y2: 10
color: cyan color: cyan
- animation: bat.yaml - animation: bat.yaml
position: {x: 15, y: 1} position: {x: 15, y: 1}
velocity: {x: 0, y: 42.0} velocity: {x: 0, y: 42.0}
boundaries: boundaries:
x1: 15 position1: {x: 15, y: 1}
y1: 1 position2: {x: 15, y: 11}
x2: 15
y2: 11
color: red color: red
# Items in this room # Objetos en esta habitación
items: items:
- tileSetFile: items.gif - tileSetFile: items.gif
tile: 0 tile: 0

View File

@@ -1,27 +1,27 @@
# THE FRIDGE # THE FRIDGE
room: room:
number: "16" name_en: "THE FRIDGE"
name: "THE FRIDGE" name_ca: "EL FRIGO"
bgColor: blue bgColor: blue
border: blue border: blue
tileSetFile: standard.gif tileSetFile: standard.gif
# Room connections (null for no connection) # Conexiones de la habitación (null = sin conexión)
connections: connections:
up: "44" up: 44.yaml
down: null down: null
left: "17" left: 17.yaml
right: "08" right: 08.yaml
# Item display colors # Colores de los objetos
itemColor1: bright_cyan itemColor1: bright_cyan
itemColor2: yellow itemColor2: yellow
# Conveyor belt direction: left (-1), none (0), right (1) # Dirección de la cinta transportadora: left, none, right
autoSurface: 0 conveyorBelt: none
# Tilemap: 16 rows × 32 columns (256×192 pixels @ 8px/tile) # Tilemap: 16 filas × 32 columnas (256×192 píxeles @ 8px/tile)
# Values are 0-based tile indices (0 = empty) # Índices de tiles (-1 = vacío)
tilemap: tilemap:
- [28, 296, 296, 296, 296, 296, 296, 296, 296, 296, 296, 296, 296, 296, 416, -1, -1, 416, 296, 296, 296, 296, 296, 296, 296, 296, 296, 296, 296, 296, 296, 28] - [28, 296, 296, 296, 296, 296, 296, 296, 296, 296, 296, 296, 296, 296, 416, -1, -1, 416, 296, 296, 296, 296, 296, 296, 296, 296, 296, 296, 296, 296, 296, 28]
- [28, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 28] - [28, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 28]
@@ -40,39 +40,33 @@ tilemap:
- [-1, -1, -1, -1, -1, -1, 344, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 552, -1, -1, -1, -1, -1, -1, 552, -1, -1, -1, -1, -1, -1] - [-1, -1, -1, -1, -1, -1, 344, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 552, -1, -1, -1, -1, -1, -1, 552, -1, -1, -1, -1, -1, -1]
- [28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28] - [28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28]
# Enemies in this room # Enemigos en esta habitación
enemies: enemies:
- animation: chip.yaml - animation: chip.yaml
position: {x: 7, y: 3} position: {x: 7, y: 3}
velocity: {x: 60.0, y: 0} velocity: {x: 60.0, y: 0}
boundaries: boundaries:
x1: 2 position1: {x: 2, y: 3}
y1: 3 position2: {x: 13, y: 3}
x2: 13
y2: 3
color: magenta color: magenta
- animation: chip.yaml - animation: chip.yaml
position: {x: 30, y: 7} position: {x: 30, y: 7}
velocity: {x: -48.0, y: 0} velocity: {x: -48.0, y: 0}
boundaries: boundaries:
x1: 10 position1: {x: 10, y: 7}
y1: 7 position2: {x: 30, y: 7}
x2: 30
y2: 7
color: bright_white color: bright_white
- animation: wave.yaml - animation: wave.yaml
position: {x: 15, y: 12} position: {x: 15, y: 12}
velocity: {x: 30.0, y: 0} velocity: {x: 30.0, y: 0}
boundaries: boundaries:
x1: 15 position1: {x: 15, y: 12}
y1: 12 position2: {x: 30, y: 12}
x2: 30
y2: 12
color: bright_magenta color: bright_magenta
# Items in this room # Objetos en esta habitación
items: items:
- tileSetFile: items.gif - tileSetFile: items.gif
tile: 6 tile: 6

View File

@@ -1,27 +1,27 @@
# I DID NOT COPY THIS ONE # I DID NOT COPY THIS ONE
room: room:
number: "17" name_en: "I DID NOT COPY THIS ONE"
name: "I DID NOT COPY THIS ONE" name_ca: "ESTA NO LA HE COPIADA"
bgColor: black bgColor: black
border: magenta border: magenta
tileSetFile: standard.gif tileSetFile: standard.gif
# Room connections (null for no connection) # Conexiones de la habitación (null = sin conexión)
connections: connections:
up: null up: null
down: "18" down: 18.yaml
left: "49" left: 49.yaml
right: "16" right: 16.yaml
# Item display colors # Colores de los objetos
itemColor1: yellow itemColor1: yellow
itemColor2: red itemColor2: red
# Conveyor belt direction: left (-1), none (0), right (1) # Dirección de la cinta transportadora: left, none, right
autoSurface: 0 conveyorBelt: none
# Tilemap: 16 rows × 32 columns (256×192 pixels @ 8px/tile) # Tilemap: 16 filas × 32 columnas (256×192 píxeles @ 8px/tile)
# Values are 0-based tile indices (0 = empty) # Índices de tiles (-1 = vacío)
tilemap: tilemap:
- [87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87] - [87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87]
- [87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87] - [87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87, 87]
@@ -40,39 +40,33 @@ tilemap:
- [-1, -1, -1, -1, -1, -1, -1, 554, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 554, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1] - [-1, -1, -1, -1, -1, -1, -1, 554, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 554, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1]
- [362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, -1, -1, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362] - [362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, -1, -1, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362]
# Enemies in this room # Enemigos en esta habitación
enemies: enemies:
- animation: floppy.yaml - animation: floppy.yaml
position: {x: 5, y: 6} position: {x: 5, y: 6}
velocity: {x: 0, y: 24.0} velocity: {x: 0, y: 24.0}
boundaries: boundaries:
x1: 5 position1: {x: 5, y: 4}
y1: 4 position2: {x: 5, y: 10}
x2: 5
y2: 10
color: green color: green
- animation: floppy.yaml - animation: floppy.yaml
position: {x: 12, y: 3} position: {x: 12, y: 3}
velocity: {x: 0, y: 24.0} velocity: {x: 0, y: 24.0}
boundaries: boundaries:
x1: 12 position1: {x: 12, y: 2}
y1: 2 position2: {x: 12, y: 9}
x2: 12
y2: 9
color: cyan color: cyan
- animation: chip.yaml - animation: chip.yaml
position: {x: 8, y: 13} position: {x: 8, y: 13}
velocity: {x: 24.0, y: 0} velocity: {x: 24.0, y: 0}
boundaries: boundaries:
x1: 8 position1: {x: 8, y: 13}
y1: 13 position2: {x: 18, y: 13}
x2: 18
y2: 13
color: yellow color: yellow
# Items in this room # Objetos en esta habitación
items: items:
- tileSetFile: items.gif - tileSetFile: items.gif
tile: 21 tile: 21

View File

@@ -1,27 +1,27 @@
# MAKE MONEY # MAKE MONEY
room: room:
number: "18" name_en: "MAKE MONEY"
name: "MAKE MONEY" name_ca: "INHERITEDS!"
bgColor: black bgColor: black
border: yellow border: yellow
tileSetFile: standard.gif tileSetFile: standard.gif
# Room connections (null for no connection) # Conexiones de la habitación (null = sin conexión)
connections: connections:
up: "17" up: 17.yaml
down: "54" down: 54.yaml
left: "19" left: 19.yaml
right: null right: null
# Item display colors # Colores de los objetos
itemColor1: bright_green itemColor1: bright_green
itemColor2: bright_yellow itemColor2: bright_yellow
# Conveyor belt direction: left (-1), none (0), right (1) # Dirección de la cinta transportadora: left, none, right
autoSurface: -1 conveyorBelt: left
# Tilemap: 16 rows × 32 columns (256×192 pixels @ 8px/tile) # Tilemap: 16 filas × 32 columnas (256×192 píxeles @ 8px/tile)
# Values are 0-based tile indices (0 = empty) # Índices de tiles (-1 = vacío)
tilemap: tilemap:
- [4, 4, 4, 4, 4, 4, 4, 4, -1, -1, -1, -1, -1, -1, 505, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4] - [4, 4, 4, 4, 4, 4, 4, 4, -1, -1, -1, -1, -1, -1, 505, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4]
- [4, 4, 4, 4, 4, 4, 4, -1, -1, -1, -1, -1, -1, 505, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 4, 4] - [4, 4, 4, 4, 4, 4, 4, -1, -1, -1, -1, -1, -1, 505, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 4, 4]
@@ -40,36 +40,30 @@ tilemap:
- [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 342, -1, -1, -1, -1, -1, -1, -1, -1, 554, -1, -1, -1, -1, -1, 4, 4] - [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 342, -1, -1, -1, -1, -1, -1, -1, -1, 554, -1, -1, -1, -1, -1, 4, 4]
- [61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, -1, -1, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61] - [61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, -1, -1, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61]
# Enemies in this room # Enemigos en esta habitación
enemies: enemies:
- animation: code.yaml - animation: code.yaml
position: {x: 19, y: 6} position: {x: 19, y: 6}
velocity: {x: 24.0, y: 0} velocity: {x: 24.0, y: 0}
boundaries: boundaries:
x1: 18 position1: {x: 18, y: 6}
y1: 6 position2: {x: 29, y: 6}
x2: 29
y2: 6
color: magenta color: magenta
- animation: spider.yaml - animation: spider.yaml
position: {x: 14, y: 10} position: {x: 14, y: 10}
velocity: {x: 36.0, y: 0} velocity: {x: 36.0, y: 0}
boundaries: boundaries:
x1: 14 position1: {x: 14, y: 10}
y1: 10 position2: {x: 28, y: 10}
x2: 28
y2: 10
color: yellow color: yellow
- animation: spider.yaml - animation: spider.yaml
position: {x: 23, y: 12} position: {x: 23, y: 12}
velocity: {x: 36.0, y: 0} velocity: {x: 36.0, y: 0}
boundaries: boundaries:
x1: 23 position1: {x: 23, y: 12}
y1: 12 position2: {x: 28, y: 12}
x2: 28
y2: 12
color: magenta color: magenta
mirror: true mirror: true
@@ -77,23 +71,19 @@ enemies:
position: {x: 19, y: 1} position: {x: 19, y: 1}
velocity: {x: 0, y: 0} velocity: {x: 0, y: 0}
boundaries: boundaries:
x1: 19 position1: {x: 19, y: 1}
y1: 1 position2: {x: 19, y: 1}
x2: 19
y2: 1
color: yellow color: yellow
- animation: lamp.yaml - animation: lamp.yaml
position: {x: 26, y: 1} position: {x: 26, y: 1}
velocity: {x: 0, y: 0} velocity: {x: 0, y: 0}
boundaries: boundaries:
x1: 26 position1: {x: 26, y: 1}
y1: 1 position2: {x: 26, y: 1}
x2: 26
y2: 1
color: yellow color: yellow
# Items in this room # Objetos en esta habitación
items: items:
- tileSetFile: items.gif - tileSetFile: items.gif
tile: 14 tile: 14

View File

@@ -1,27 +1,27 @@
# THIS CAN'T BE THE BATCAVE # THIS CAN'T BE THE BATCAVE
room: room:
number: "19" name_en: "THIS CAN'T BE THE BATCAVE"
name: "THIS CAN'T BE THE BATCAVE" name_ca: "ESTA NO POT SER LA BATCOVA"
bgColor: black bgColor: black
border: cyan border: cyan
tileSetFile: standard.gif tileSetFile: standard.gif
# Room connections (null for no connection) # Conexiones de la habitación (null = sin conexión)
connections: connections:
up: null up: null
down: null down: null
left: "20" left: 20.yaml
right: "18" right: 18.yaml
# Item display colors # Colores de los objetos
itemColor1: cyan itemColor1: cyan
itemColor2: blue itemColor2: blue
# Conveyor belt direction: left (-1), none (0), right (1) # Dirección de la cinta transportadora: left, none, right
autoSurface: 0 conveyorBelt: none
# Tilemap: 16 rows × 32 columns (256×192 pixels @ 8px/tile) # Tilemap: 16 filas × 32 columnas (256×192 píxeles @ 8px/tile)
# Values are 0-based tile indices (0 = empty) # Índices de tiles (-1 = vacío)
tilemap: tilemap:
- [348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348] - [348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348]
- [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 187] - [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 187]
@@ -40,16 +40,14 @@ tilemap:
- [-1, -1, -1, -1, 37, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 37, -1, -1, -1, -1] - [-1, -1, -1, -1, 37, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 37, -1, -1, -1, -1]
- [37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37] - [37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37]
# Enemies in this room # Enemigos en esta habitación
enemies: enemies:
- animation: batman.yaml - animation: batman.yaml
position: {x: 10, y: 13} position: {x: 10, y: 13}
velocity: {x: 48.0, y: 0} velocity: {x: 48.0, y: 0}
boundaries: boundaries:
x1: 5 position1: {x: 5, y: 13}
y1: 13 position2: {x: 26, y: 13}
x2: 26
y2: 13
color: bright_cyan color: bright_cyan
flip: true flip: true
@@ -57,14 +55,12 @@ enemies:
position: {x: 0, y: 1} position: {x: 0, y: 1}
velocity: {x: 36.0, y: 0} velocity: {x: 36.0, y: 0}
boundaries: boundaries:
x1: 1 position1: {x: 1, y: 1}
y1: 1 position2: {x: 31, y: 1}
x2: 31
y2: 1
color: cyan color: cyan
mirror: true mirror: true
# Items in this room # Objetos en esta habitación
items: items:
- tileSetFile: items.gif - tileSetFile: items.gif
tile: 34 tile: 34

View File

@@ -1,27 +1,27 @@
# ENTRANCE TO THE VALLEY # ENTRANCE TO THE VALLEY
room: room:
number: "20" name_en: "ENTRANCE TO THE VALLEY"
name: "ENTRANCE TO THE VALLEY" name_ca: "ENTRADA A LA VALL"
bgColor: black bgColor: black
border: red border: red
tileSetFile: standard.gif tileSetFile: standard.gif
# Room connections (null for no connection) # Conexiones de la habitación (null = sin conexión)
connections: connections:
up: null up: null
down: null down: null
left: "21" left: 21.yaml
right: "19" right: 19.yaml
# Item display colors # Colores de los objetos
itemColor1: magenta itemColor1: magenta
itemColor2: green itemColor2: green
# Conveyor belt direction: left (-1), none (0), right (1) # Dirección de la cinta transportadora: left, none, right
autoSurface: 0 conveyorBelt: none
# Tilemap: 16 rows × 32 columns (256×192 pixels @ 8px/tile) # Tilemap: 16 filas × 32 columnas (256×192 píxeles @ 8px/tile)
# Values are 0-based tile indices (0 = empty) # Índices de tiles (-1 = vacío)
tilemap: tilemap:
- [20, 20, 20, 20, 20, 20, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1] - [20, 20, 20, 20, 20, 20, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1]
- [20, 20, 20, 306, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1] - [20, 20, 20, 306, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1]
@@ -40,29 +40,25 @@ tilemap:
- [-1, -1, -1, -1, -1, -1, -1, 555, -1, -1, -1, -1, -1, -1, 555, -1, -1, -1, -1, -1, -1, -1, -1, -1, 555, -1, -1, -1, -1, -1, -1, -1] - [-1, -1, -1, -1, -1, -1, -1, 555, -1, -1, -1, -1, -1, -1, 555, -1, -1, -1, -1, -1, -1, -1, -1, -1, 555, -1, -1, -1, -1, -1, -1, -1]
- [20, 20, 20, 20, 20, 20, 20, 20, 155, 155, 155, 155, 155, 155, 155, 155, 155, 155, 155, 155, 155, 155, 155, 155, 155, 155, 155, 155, 155, 155, 155, 155] - [20, 20, 20, 20, 20, 20, 20, 20, 155, 155, 155, 155, 155, 155, 155, 155, 155, 155, 155, 155, 155, 155, 155, 155, 155, 155, 155, 155, 155, 155, 155, 155]
# Enemies in this room # Enemigos en esta habitación
enemies: enemies:
- animation: bin.yaml - animation: bin.yaml
position: {x: 8, y: 12} position: {x: 8, y: 12}
velocity: {x: 60.0, y: 0} velocity: {x: 60.0, y: 0}
boundaries: boundaries:
x1: 8 position1: {x: 8, y: 12}
y1: 12 position2: {x: 24, y: 12}
x2: 24
y2: 12
color: green color: green
- animation: code.yaml - animation: code.yaml
position: {x: 13, y: 2} position: {x: 13, y: 2}
velocity: {x: 0, y: 30.0} velocity: {x: 0, y: 30.0}
boundaries: boundaries:
x1: 13 position1: {x: 13, y: 2}
y1: 2 position2: {x: 13, y: 9}
x2: 13
y2: 9
color: yellow color: yellow
# Items in this room # Objetos en esta habitación
items: items:
- tileSetFile: items.gif - tileSetFile: items.gif
tile: 19 tile: 19

View File

@@ -1,27 +1,27 @@
# ENTER PAKU SIMBEL # ENTER PAKU SIMBEL
room: room:
number: "21" name_en: "ENTER PAKU SIMBEL"
name: "ENTER PAKU SIMBEL" name_ca: "ACCEDINT A PAKU SIMBEL"
bgColor: bright_black bgColor: bright_black
border: yellow border: yellow
tileSetFile: standard.gif tileSetFile: standard.gif
# Room connections (null for no connection) # Conexiones de la habitación (null = sin conexión)
connections: connections:
up: "23" up: 23.yaml
down: null down: null
left: "22" left: 22.yaml
right: "20" right: 20.yaml
# Item display colors # Colores de los objetos
itemColor1: magenta itemColor1: magenta
itemColor2: yellow itemColor2: yellow
# Conveyor belt direction: left (-1), none (0), right (1) # Dirección de la cinta transportadora: left, none, right
autoSurface: 0 conveyorBelt: none
# Tilemap: 16 rows × 32 columns (256×192 pixels @ 8px/tile) # Tilemap: 16 filas × 32 columnas (256×192 píxeles @ 8px/tile)
# Values are 0-based tile indices (0 = empty) # Índices de tiles (-1 = vacío)
tilemap: tilemap:
- [20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 529, -1, -1, -1, -1, 20, 20, 20, 20, 20] - [20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 529, -1, -1, -1, -1, 20, 20, 20, 20, 20]
- [20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, -1, -1, 529, -1, -1, -1, -1, -1, 306, 20, 20] - [20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, -1, -1, 529, -1, -1, -1, -1, -1, 306, 20, 20]
@@ -40,16 +40,14 @@ tilemap:
- [-1, -1, -1, -1, -1, -1, -1, -1, 555, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 555, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1] - [-1, -1, -1, -1, -1, -1, -1, -1, 555, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 555, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1]
- [20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20] - [20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20]
# Enemies in this room # Enemigos en esta habitación
enemies: enemies:
- animation: mummy.yaml - animation: mummy.yaml
position: {x: 13, y: 13} position: {x: 13, y: 13}
velocity: {x: 18.0, y: 0} velocity: {x: 18.0, y: 0}
boundaries: boundaries:
x1: 9 position1: {x: 9, y: 13}
y1: 13 position2: {x: 18, y: 13}
x2: 18
y2: 13
color: yellow color: yellow
flip: true flip: true
@@ -57,14 +55,12 @@ enemies:
position: {x: 13, y: 9} position: {x: 13, y: 9}
velocity: {x: 36.0, y: 0} velocity: {x: 36.0, y: 0}
boundaries: boundaries:
x1: 4 position1: {x: 4, y: 9}
y1: 9 position2: {x: 21, y: 9}
x2: 21
y2: 9
color: bright_green color: bright_green
flip: true flip: true
# Items in this room # Objetos en esta habitación
items: items:
- tileSetFile: items.gif - tileSetFile: items.gif
tile: 36 tile: 36

View File

@@ -1,27 +1,27 @@
# AEE REMAKE, PLEASE # AEE REMAKE, PLEASE
room: room:
number: "22" name_en: "AEE REMAKE, PLEASE"
name: "AEE REMAKE, PLEASE" name_ca: "AEE REMAKE, PERFAPLIS"
bgColor: bright_black bgColor: bright_black
border: yellow border: yellow
tileSetFile: standard.gif tileSetFile: standard.gif
# Room connections (null for no connection) # Conexiones de la habitación (null = sin conexión)
connections: connections:
up: null up: null
down: null down: null
left: null left: null
right: "21" right: 21.yaml
# Item display colors # Colores de los objetos
itemColor1: yellow itemColor1: yellow
itemColor2: magenta itemColor2: magenta
# Conveyor belt direction: left (-1), none (0), right (1) # Dirección de la cinta transportadora: left, none, right
autoSurface: 0 conveyorBelt: none
# Tilemap: 16 rows × 32 columns (256×192 pixels @ 8px/tile) # Tilemap: 16 filas × 32 columnas (256×192 píxeles @ 8px/tile)
# Values are 0-based tile indices (0 = empty) # Índices de tiles (-1 = vacío)
tilemap: tilemap:
- [20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 22, 23, 20] - [20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 22, 23, 20]
- [20, 20, 20, 20, 22, 23, 20, 22, 23, 20, 22, 23, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 46, 47, 20] - [20, 20, 20, 20, 22, 23, 20, 22, 23, 20, 22, 23, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 46, 47, 20]
@@ -40,16 +40,14 @@ tilemap:
- [20, -1, -1, 505, -1, -1, -1, -1, -1, -1, -1, 555, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 555, -1, -1, -1, -1, -1, -1, -1, -1, -1] - [20, -1, -1, 505, -1, -1, -1, -1, -1, -1, -1, 555, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 555, -1, -1, -1, -1, -1, -1, -1, -1, -1]
- [20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20] - [20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20]
# Enemies in this room # Enemigos en esta habitación
enemies: enemies:
- animation: mummy.yaml - animation: mummy.yaml
position: {x: 15, y: 13} position: {x: 15, y: 13}
velocity: {x: 18.0, y: 0} velocity: {x: 18.0, y: 0}
boundaries: boundaries:
x1: 12 position1: {x: 12, y: 13}
y1: 13 position2: {x: 21, y: 13}
x2: 21
y2: 13
color: yellow color: yellow
flip: true flip: true
@@ -57,10 +55,8 @@ enemies:
position: {x: 13, y: 8} position: {x: 13, y: 8}
velocity: {x: 18.0, y: 0} velocity: {x: 18.0, y: 0}
boundaries: boundaries:
x1: 13 position1: {x: 13, y: 8}
y1: 8 position2: {x: 19, y: 8}
x2: 19
y2: 8
color: bright_yellow color: bright_yellow
flip: true flip: true
@@ -68,14 +64,12 @@ enemies:
position: {x: 22, y: 8} position: {x: 22, y: 8}
velocity: {x: 24.0, y: 0} velocity: {x: 24.0, y: 0}
boundaries: boundaries:
x1: 22 position1: {x: 22, y: 8}
y1: 8 position2: {x: 28, y: 8}
x2: 28
y2: 8
color: bright_yellow color: bright_yellow
flip: true flip: true
# Items in this room # Objetos en esta habitación
items: items:
- tileSetFile: items.gif - tileSetFile: items.gif
tile: 37 tile: 37

View File

@@ -1,27 +1,27 @@
# INNER CHAMBER # INNER CHAMBER
room: room:
number: "23" name_en: "INNER CHAMBER"
name: "INNER CHAMBER" name_ca: "CAMBRA INTERIOR"
bgColor: black bgColor: black
border: bright_yellow border: bright_yellow
tileSetFile: standard.gif tileSetFile: standard.gif
# Room connections (null for no connection) # Conexiones de la habitación (null = sin conexión)
connections: connections:
up: null up: null
down: "21" down: 21.yaml
left: "24" left: 24.yaml
right: null right: null
# Item display colors # Colores de los objetos
itemColor1: yellow itemColor1: yellow
itemColor2: magenta itemColor2: magenta
# Conveyor belt direction: left (-1), none (0), right (1) # Dirección de la cinta transportadora: left, none, right
autoSurface: 0 conveyorBelt: none
# Tilemap: 16 rows × 32 columns (256×192 pixels @ 8px/tile) # Tilemap: 16 filas × 32 columnas (256×192 píxeles @ 8px/tile)
# Values are 0-based tile indices (0 = empty) # Índices de tiles (-1 = vacío)
tilemap: tilemap:
- [20, 20, 20, 20, 20, 22, 23, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20] - [20, 20, 20, 20, 20, 22, 23, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20]
- [20, 20, 20, 20, 20, 46, 47, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20] - [20, 20, 20, 20, 20, 46, 47, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20]
@@ -40,39 +40,33 @@ tilemap:
- [-1, -1, -1, -1, -1, 555, -1, -1, -1, 518, 20, 20, 20, 46, 47, 20, 20, 20, 542, -1, -1, -1, -1, -1, -1, -1, -1, -1, 20, 46, 47, 20] - [-1, -1, -1, -1, -1, 555, -1, -1, -1, 518, 20, 20, 20, 46, 47, 20, 20, 20, 542, -1, -1, -1, -1, -1, -1, -1, -1, -1, 20, 46, 47, 20]
- [21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, -1, -1, 21, 21, 21, 21, 21] - [21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, -1, -1, 21, 21, 21, 21, 21]
# Enemies in this room # Enemigos en esta habitación
enemies: enemies:
- animation: shock.yaml - animation: shock.yaml
position: {x: 7, y: 7} position: {x: 7, y: 7}
velocity: {x: 0, y: 48.0} velocity: {x: 0, y: 48.0}
boundaries: boundaries:
x1: 7 position1: {x: 7, y: 3}
y1: 3 position2: {x: 7, y: 14}
x2: 7
y2: 14
color: magenta color: magenta
- animation: shock.yaml - animation: shock.yaml
position: {x: 20, y: 10} position: {x: 20, y: 10}
velocity: {x: 0, y: 48.0} velocity: {x: 0, y: 48.0}
boundaries: boundaries:
x1: 20 position1: {x: 20, y: 3}
y1: 3 position2: {x: 20, y: 14}
x2: 20
y2: 14
color: magenta color: magenta
- animation: shock.yaml - animation: shock.yaml
position: {x: 27, y: 10} position: {x: 27, y: 10}
velocity: {x: 0, y: -48.0} velocity: {x: 0, y: -48.0}
boundaries: boundaries:
x1: 27 position1: {x: 27, y: 3}
y1: 3 position2: {x: 27, y: 14}
x2: 27
y2: 14
color: magenta color: magenta
# Items in this room # Objetos en esta habitación
items: items:
- tileSetFile: items.gif - tileSetFile: items.gif
tile: 38 tile: 38

View File

@@ -1,27 +1,27 @@
# PLAY IT AGAIN, SAM # PLAY IT AGAIN, SAM
room: room:
number: "24" name_en: "PLAY IT AGAIN, SAM"
name: "PLAY IT AGAIN, SAM" name_ca: "TORNA-LA A TOCAR, SAM"
bgColor: black bgColor: black
border: bright_yellow border: bright_yellow
tileSetFile: standard.gif tileSetFile: standard.gif
# Room connections (null for no connection) # Conexiones de la habitación (null = sin conexión)
connections: connections:
up: null up: null
down: null down: null
left: null left: null
right: "23" right: 23.yaml
# Item display colors # Colores de los objetos
itemColor1: yellow itemColor1: yellow
itemColor2: magenta itemColor2: magenta
# Conveyor belt direction: left (-1), none (0), right (1) # Dirección de la cinta transportadora: left, none, right
autoSurface: 0 conveyorBelt: none
# Tilemap: 16 rows × 32 columns (256×192 pixels @ 8px/tile) # Tilemap: 16 filas × 32 columnas (256×192 píxeles @ 8px/tile)
# Values are 0-based tile indices (0 = empty) # Índices de tiles (-1 = vacío)
tilemap: tilemap:
- [21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21] - [21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21]
- [19, 19, 19, 19, 19, 19, 19, -1, -1, -1, -1, 306, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 306, -1, -1, -1, -1, 20, 20, 20, 20] - [19, 19, 19, 19, 19, 19, 19, -1, -1, -1, -1, 306, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 306, -1, -1, -1, -1, 20, 20, 20, 20]
@@ -40,39 +40,33 @@ tilemap:
- [19, 19, -1, -1, -1, -1, -1, 518, 19, 19, 19, 19, 46, 47, 46, 47, 46, 47, 19, 19, 19, 19, 542, -1, -1, 555, -1, -1, -1, -1, -1, -1] - [19, 19, -1, -1, -1, -1, -1, 518, 19, 19, 19, 19, 46, 47, 46, 47, 46, 47, 19, 19, 19, 19, 542, -1, -1, 555, -1, -1, -1, -1, -1, -1]
- [21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21] - [21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21]
# Enemies in this room # Enemigos en esta habitación
enemies: enemies:
- animation: sam.yaml - animation: sam.yaml
position: {x: 4, y: 2} position: {x: 4, y: 2}
velocity: {x: 0, y: 0} velocity: {x: 0, y: 0}
boundaries: boundaries:
x1: 4 position1: {x: 4, y: 2}
y1: 2 position2: {x: 4, y: 2}
x2: 4
y2: 2
color: white color: white
- animation: shock.yaml - animation: shock.yaml
position: {x: 5, y: 11} position: {x: 5, y: 11}
velocity: {x: 0, y: 30.0} velocity: {x: 0, y: 30.0}
boundaries: boundaries:
x1: 5 position1: {x: 5, y: 11}
y1: 11 position2: {x: 5, y: 14}
x2: 5
y2: 14
color: bright_green color: bright_green
- animation: spider.yaml - animation: spider.yaml
position: {x: 25, y: 1} position: {x: 25, y: 1}
velocity: {x: 0, y: 30.0} velocity: {x: 0, y: 30.0}
boundaries: boundaries:
x1: 25 position1: {x: 25, y: 1}
y1: 1 position2: {x: 25, y: 10}
x2: 25
y2: 10
color: bright_green color: bright_green
# Items in this room # Objetos en esta habitación
items: items:
- tileSetFile: items.gif - tileSetFile: items.gif
tile: 31 tile: 31

View File

@@ -1,27 +1,27 @@
# THE CHAPPEL # THE CHAPPEL
room: room:
number: "25" name_en: "THE CHAPPEL"
name: "THE CHAPPEL" name_ca: "LA CAPELLA"
bgColor: blue bgColor: blue
border: yellow border: yellow
tileSetFile: standard.gif tileSetFile: standard.gif
# Room connections (null for no connection) # Conexiones de la habitación (null = sin conexión)
connections: connections:
up: null up: null
down: null down: null
left: "06" left: 06.yaml
right: "26" right: 26.yaml
# Item display colors # Colores de los objetos
itemColor1: yellow itemColor1: yellow
itemColor2: cyan itemColor2: cyan
# Conveyor belt direction: left (-1), none (0), right (1) # Dirección de la cinta transportadora: left, none, right
autoSurface: 0 conveyorBelt: none
# Tilemap: 16 rows × 32 columns (256×192 pixels @ 8px/tile) # Tilemap: 16 filas × 32 columnas (256×192 píxeles @ 8px/tile)
# Values are 0-based tile indices (0 = empty) # Índices de tiles (-1 = vacío)
tilemap: tilemap:
- [66, 67, 66, 67, 66, 67, 66, 67, 66, 67, 66, 67, 66, 67, 66, 67, 66, 67, 66, 67, 66, 67, 66, 67, 66, 67, 66, 67, 66, 67, 66, 67] - [66, 67, 66, 67, 66, 67, 66, 67, 66, 67, 66, 67, 66, 67, 66, 67, 66, 67, 66, 67, 66, 67, 66, 67, 66, 67, 66, 67, 66, 67, 66, 67]
- [90, 91, 90, 91, 90, 91, 90, 91, 90, 91, 90, 91, 90, 91, 90, 91, 90, 91, 90, 91, 90, 91, 90, 91, 90, 91, 90, 91, 90, 91, 90, 91] - [90, 91, 90, 91, 90, 91, 90, 91, 90, 91, 90, 91, 90, 91, 90, 91, 90, 91, 90, 91, 90, 91, 90, 91, 90, 91, 90, 91, 90, 91, 90, 91]
@@ -40,69 +40,57 @@ tilemap:
- [-1, -1, -1, -1, -1, -1, -1, 555, -1, -1, -1, -1, -1, 88, 93, 140, 555, -1, -1, -1, -1, -1, -1, -1, -1, 88, 93, 134, -1, -1, 31, 88] - [-1, -1, -1, -1, -1, -1, -1, 555, -1, -1, -1, -1, -1, 88, 93, 140, 555, -1, -1, -1, -1, -1, -1, -1, -1, 88, 93, 134, -1, -1, 31, 88]
- [88, 89, 88, 89, 88, 89, 88, 89, 88, 89, 88, 89, 88, 89, 88, 89, 88, 89, 88, 89, 88, 89, 88, 89, 88, 89, 88, 89, 88, 89, 88, 89] - [88, 89, 88, 89, 88, 89, 88, 89, 88, 89, 88, 89, 88, 89, 88, 89, 88, 89, 88, 89, 88, 89, 88, 89, 88, 89, 88, 89, 88, 89, 88, 89]
# Enemies in this room # Enemigos en esta habitación
enemies: enemies:
- animation: batman_bell.yaml - animation: batman_bell.yaml
position: {x: 28, y: 13} position: {x: 28, y: 13}
velocity: {x: 0, y: 0} velocity: {x: 0, y: 0}
boundaries: boundaries:
x1: 28 position1: {x: 28, y: 13}
y1: 13 position2: {x: 28, y: 13}
x2: 28
y2: 13
color: cyan color: cyan
- animation: bell.yaml - animation: bell.yaml
position: {x: 28, y: 10} position: {x: 28, y: 10}
velocity: {x: 0, y: 0} velocity: {x: 0, y: 0}
boundaries: boundaries:
x1: 28 position1: {x: 28, y: 10}
y1: 10 position2: {x: 28, y: 10}
x2: 28
y2: 10
color: cyan color: cyan
- animation: bell.yaml - animation: bell.yaml
position: {x: 6, y: 2} position: {x: 6, y: 2}
velocity: {x: 0, y: 0} velocity: {x: 0, y: 0}
boundaries: boundaries:
x1: 6 position1: {x: 6, y: 2}
y1: 2 position2: {x: 6, y: 2}
x2: 6
y2: 2
color: cyan color: cyan
- animation: dong.yaml - animation: dong.yaml
position: {x: 6, y: 4} position: {x: 6, y: 4}
velocity: {x: 0, y: 24.0} velocity: {x: 0, y: 24.0}
boundaries: boundaries:
x1: 6 position1: {x: 6, y: 4}
y1: 4 position2: {x: 6, y: 13}
x2: 6
y2: 13
color: cyan color: cyan
- animation: bell.yaml - animation: bell.yaml
position: {x: 20, y: 2} position: {x: 20, y: 2}
velocity: {x: 0, y: 0} velocity: {x: 0, y: 0}
boundaries: boundaries:
x1: 20 position1: {x: 20, y: 2}
y1: 2 position2: {x: 20, y: 2}
x2: 20
y2: 2
color: cyan color: cyan
- animation: dong.yaml - animation: dong.yaml
position: {x: 20, y: 13} position: {x: 20, y: 13}
velocity: {x: 0, y: -30.0} velocity: {x: 0, y: -30.0}
boundaries: boundaries:
x1: 20 position1: {x: 20, y: 4}
y1: 4 position2: {x: 20, y: 13}
x2: 20
y2: 13
color: cyan color: cyan
# Items in this room # Objetos en esta habitación
items: items:
- tileSetFile: items.gif - tileSetFile: items.gif
tile: 48 tile: 48

View File

@@ -1,27 +1,27 @@
# JINGLE BELLS # JINGLE BELLS
room: room:
number: "26" name_en: "JINGLE BELLS"
name: "JINGLE BELLS" name_ca: "CAMPANETES"
bgColor: blue bgColor: blue
border: yellow border: yellow
tileSetFile: standard.gif tileSetFile: standard.gif
# Room connections (null for no connection) # Conexiones de la habitación (null = sin conexión)
connections: connections:
up: null up: null
down: null down: null
left: "25" left: 25.yaml
right: "27" right: 27.yaml
# Item display colors # Colores de los objetos
itemColor1: magenta itemColor1: magenta
itemColor2: red itemColor2: red
# Conveyor belt direction: left (-1), none (0), right (1) # Dirección de la cinta transportadora: left, none, right
autoSurface: 0 conveyorBelt: none
# Tilemap: 16 rows × 32 columns (256×192 pixels @ 8px/tile) # Tilemap: 16 filas × 32 columnas (256×192 píxeles @ 8px/tile)
# Values are 0-based tile indices (0 = empty) # Índices de tiles (-1 = vacío)
tilemap: tilemap:
- [66, 67, 66, 67, 66, 67, 66, 67, 66, 67, 66, 67, 66, 67, 66, 67, 66, 67, 66, 67, 66, 67, 66, 67, 66, 67, 66, 67, 66, 67, 66, 67] - [66, 67, 66, 67, 66, 67, 66, 67, 66, 67, 66, 67, 66, 67, 66, 67, 66, 67, 66, 67, 66, 67, 66, 67, 66, 67, 66, 67, 66, 67, 66, 67]
- [90, 226, 225, 226, 225, 226, 225, 226, 225, 226, 225, 226, 225, 226, 225, 226, 225, 226, 225, 226, 225, 226, 225, 226, 225, 226, 225, 226, 225, 226, 225, 91] - [90, 226, 225, 226, 225, 226, 225, 226, 225, 226, 225, 226, 225, 226, 225, 226, 225, 226, 225, 226, 225, 226, 225, 226, 225, 226, 225, 226, 225, 226, 225, 91]
@@ -40,89 +40,73 @@ tilemap:
- [140, -1, -1, 140, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 525, 427, 549, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 140, -1, -1, 140] - [140, -1, -1, 140, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 525, 427, 549, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 140, -1, -1, 140]
- [88, 89, 88, 89, 88, 89, 88, 89, 88, 89, 88, 89, 88, 89, 88, 89, 88, 89, 88, 89, 88, 89, 88, 89, 88, 89, 88, 89, 88, 89, 88, 89] - [88, 89, 88, 89, 88, 89, 88, 89, 88, 89, 88, 89, 88, 89, 88, 89, 88, 89, 88, 89, 88, 89, 88, 89, 88, 89, 88, 89, 88, 89, 88, 89]
# Enemies in this room # Enemigos en esta habitación
enemies: enemies:
- animation: batman_bell.yaml - animation: batman_bell.yaml
position: {x: 1, y: 13} position: {x: 1, y: 13}
velocity: {x: 0, y: 0} velocity: {x: 0, y: 0}
boundaries: boundaries:
x1: 1 position1: {x: 1, y: 13}
y1: 13 position2: {x: 1, y: 13}
x2: 1
y2: 13
color: cyan color: cyan
- animation: abad_bell.yaml - animation: abad_bell.yaml
position: {x: 29, y: 13} position: {x: 29, y: 13}
velocity: {x: 0, y: 0} velocity: {x: 0, y: 0}
boundaries: boundaries:
x1: 29 position1: {x: 29, y: 13}
y1: 13 position2: {x: 29, y: 13}
x2: 29
y2: 13
color: cyan color: cyan
- animation: bell.yaml - animation: bell.yaml
position: {x: 1, y: 4} position: {x: 1, y: 4}
velocity: {x: 36.0, y: 0} velocity: {x: 36.0, y: 0}
boundaries: boundaries:
x1: 1 position1: {x: 1, y: 4}
y1: 4 position2: {x: 29, y: 4}
x2: 29
y2: 4
color: yellow color: yellow
- animation: dong.yaml - animation: dong.yaml
position: {x: 1, y: 2} position: {x: 1, y: 2}
velocity: {x: 0, y: 0} velocity: {x: 0, y: 0}
boundaries: boundaries:
x1: 1 position1: {x: 1, y: 2}
y1: 2 position2: {x: 1, y: 2}
x2: 1
y2: 2
color: yellow color: yellow
- animation: bell.yaml - animation: bell.yaml
position: {x: 26, y: 7} position: {x: 26, y: 7}
velocity: {x: -36.0, y: 0} velocity: {x: -36.0, y: 0}
boundaries: boundaries:
x1: 1 position1: {x: 1, y: 7}
y1: 7 position2: {x: 29, y: 7}
x2: 29
y2: 7
color: yellow color: yellow
- animation: dong.yaml - animation: dong.yaml
position: {x: 28, y: 2} position: {x: 28, y: 2}
velocity: {x: -0, y: 0} velocity: {x: -0, y: 0}
boundaries: boundaries:
x1: 28 position1: {x: 28, y: 2}
y1: 2 position2: {x: 28, y: 2}
x2: 28
y2: 2
color: yellow color: yellow
- animation: bell.yaml - animation: bell.yaml
position: {x: 1, y: 10} position: {x: 1, y: 10}
velocity: {x: 36.0, y: 0} velocity: {x: 36.0, y: 0}
boundaries: boundaries:
x1: 1 position1: {x: 1, y: 10}
y1: 10 position2: {x: 29, y: 10}
x2: 29
y2: 10
color: yellow color: yellow
- animation: bell.yaml - animation: bell.yaml
position: {x: 26, y: 13} position: {x: 26, y: 13}
velocity: {x: -36.0, y: 0} velocity: {x: -36.0, y: 0}
boundaries: boundaries:
x1: 4 position1: {x: 4, y: 13}
y1: 13 position2: {x: 26, y: 13}
x2: 26
y2: 13
color: yellow color: yellow
# Items in this room # Objetos en esta habitación
items: items:
- tileSetFile: items.gif - tileSetFile: items.gif
tile: 60 tile: 60

View File

@@ -1,27 +1,27 @@
# THE BACKYARD # THE BACKYARD
room: room:
number: "27" name_en: "THE BACKYARD"
name: "THE BACKYARD" name_ca: "EL PATI DE DARRERE"
bgColor: blue bgColor: blue
border: cyan border: cyan
tileSetFile: standard.gif tileSetFile: standard.gif
# Room connections (null for no connection) # Conexiones de la habitación (null = sin conexión)
connections: connections:
up: "28" up: 28.yaml
down: "29" down: 29.yaml
left: "26" left: 26.yaml
right: null right: null
# Item display colors # Colores de los objetos
itemColor1: yellow itemColor1: yellow
itemColor2: magenta itemColor2: magenta
# Conveyor belt direction: left (-1), none (0), right (1) # Dirección de la cinta transportadora: left, none, right
autoSurface: 0 conveyorBelt: none
# Tilemap: 16 rows × 32 columns (256×192 pixels @ 8px/tile) # Tilemap: 16 filas × 32 columnas (256×192 píxeles @ 8px/tile)
# Values are 0-based tile indices (0 = empty) # Índices de tiles (-1 = vacío)
tilemap: tilemap:
- [66, 67, 66, 67, 66, 67, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 16] - [66, 67, 66, 67, 66, 67, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 16]
- [90, 91, 90, 91, 90, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 16] - [90, 91, 90, 91, 90, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 16]
@@ -43,7 +43,7 @@ tilemap:
# No enemies in this room # No enemies in this room
enemies: [] enemies: []
# Items in this room # Objetos en esta habitación
items: items:
- tileSetFile: items.gif - tileSetFile: items.gif
tile: 28 tile: 28

View File

@@ -1,27 +1,27 @@
# YOU SHALL NOT PASS # YOU SHALL NOT PASS
room: room:
number: "28" name_en: "YOU SHALL NOT PASS"
name: "YOU SHALL NOT PASS" name_ca: "NO PASSARAS"
bgColor: bright_black bgColor: bright_black
border: black border: black
tileSetFile: standard.gif tileSetFile: standard.gif
# Room connections (null for no connection) # Conexiones de la habitación (null = sin conexión)
connections: connections:
up: "32" up: 32.yaml
down: "27" down: 27.yaml
left: null left: null
right: "31" right: 31.yaml
# Item display colors # Colores de los objetos
itemColor1: bright_magenta itemColor1: bright_magenta
itemColor2: bright_green itemColor2: bright_green
# Conveyor belt direction: left (-1), none (0), right (1) # Dirección de la cinta transportadora: left, none, right
autoSurface: 0 conveyorBelt: none
# Tilemap: 16 rows × 32 columns (256×192 pixels @ 8px/tile) # Tilemap: 16 filas × 32 columnas (256×192 píxeles @ 8px/tile)
# Values are 0-based tile indices (0 = empty) # Índices de tiles (-1 = vacío)
tilemap: tilemap:
- [89, 88, 93, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 88, 93, 40, 234, 234, -1, -1, 234, 234, 40, 88, 89, 88] - [89, 88, 93, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 88, 93, 40, 234, 234, -1, -1, 234, 234, 40, 88, 89, 88]
- [88, 93, 214, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 213, 214, -1, -1, -1, -1, -1, -1, -1, -1, 213, 88, 89] - [88, 93, 214, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 213, 214, -1, -1, -1, -1, -1, -1, -1, -1, 213, 88, 89]
@@ -40,19 +40,17 @@ tilemap:
- [66, 67, 66, 67, 66, 67, 66, 67, 66, 67, 66, 67, 88, 93, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1] - [66, 67, 66, 67, 66, 67, 66, 67, 66, 67, 66, 67, 88, 93, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1]
- [90, 91, 90, 91, 90, 91, 90, 91, 90, 91, 90, 91, 66, 67, 88, 93, 428, 428, 428, 428, 428, 428, 428, 428, -1, 428, 428, 428, 428, 428, 428, 428] - [90, 91, 90, 91, 90, 91, 90, 91, 90, 91, 90, 91, 66, 67, 88, 93, 428, 428, 428, 428, 428, 428, 428, 428, -1, 428, 428, 428, 428, 428, 428, 428]
# Enemies in this room # Enemigos en esta habitación
enemies: enemies:
- animation: lord_abad.yaml - animation: lord_abad.yaml
position: {x: 0, y: 5} position: {x: 0, y: 5}
velocity: {x: 0, y: 0} velocity: {x: 0, y: 0}
boundaries: boundaries:
x1: 0 position1: {x: 0, y: 5}
y1: 5 position2: {x: 0, y: 5}
x2: 0
y2: 5
color: yellow color: yellow
# Items in this room # Objetos en esta habitación
items: items:
- tileSetFile: items.gif - tileSetFile: items.gif
tile: 58 tile: 58

View File

@@ -1,27 +1,27 @@
# QUO VOIDIS # QUO VOIDIS
room: room:
number: "29" name_en: "QUO VOIDIS"
name: "QUO VOIDIS" name_ca: "QUO VOIDIS"
bgColor: blue bgColor: blue
border: bright_black border: bright_black
tileSetFile: standard.gif tileSetFile: standard.gif
# Room connections (null for no connection) # Conexiones de la habitación (null = sin conexión)
connections: connections:
up: "27" up: 27.yaml
down: null down: null
left: "30" left: 30.yaml
right: null right: null
# Item display colors # Colores de los objetos
itemColor1: green itemColor1: green
itemColor2: magenta itemColor2: magenta
# Conveyor belt direction: left (-1), none (0), right (1) # Dirección de la cinta transportadora: left, none, right
autoSurface: 0 conveyorBelt: none
# Tilemap: 16 rows × 32 columns (256×192 pixels @ 8px/tile) # Tilemap: 16 filas × 32 columnas (256×192 píxeles @ 8px/tile)
# Values are 0-based tile indices (0 = empty) # Índices de tiles (-1 = vacío)
tilemap: tilemap:
- [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 504, 132] - [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 504, 132]
- [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 504, -1, 132] - [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 504, -1, 132]
@@ -40,49 +40,41 @@ tilemap:
- [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 132] - [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 132]
- [132, 132, 132, 132, 132, 132, 132, 128, 128, 132, 132, 132, 129, 129, 132, 132, 132, 129, 129, 132, 132, 132, 128, 128, 132, 132, 132, 132, 132, 132, 132, 132] - [132, 132, 132, 132, 132, 132, 132, 128, 128, 132, 132, 132, 129, 129, 132, 132, 132, 129, 129, 132, 132, 132, 128, 128, 132, 132, 132, 132, 132, 132, 132, 132]
# Enemies in this room # Enemigos en esta habitación
enemies: enemies:
- animation: qvoid.yaml - animation: qvoid.yaml
position: {x: 7, y: 1} position: {x: 7, y: 1}
velocity: {x: 0, y: 48.0} velocity: {x: 0, y: 48.0}
boundaries: boundaries:
x1: 7 position1: {x: 7, y: 1}
y1: 1 position2: {x: 7, y: 13}
x2: 7
y2: 13
color: magenta color: magenta
- animation: qvoid.yaml - animation: qvoid.yaml
position: {x: 12, y: 6} position: {x: 12, y: 6}
velocity: {x: 0, y: 36.0} velocity: {x: 0, y: 36.0}
boundaries: boundaries:
x1: 12 position1: {x: 12, y: 1}
y1: 1 position2: {x: 12, y: 13}
x2: 12
y2: 13
color: green color: green
- animation: qvoid.yaml - animation: qvoid.yaml
position: {x: 17, y: 8} position: {x: 17, y: 8}
velocity: {x: 0, y: 54.0} velocity: {x: 0, y: 54.0}
boundaries: boundaries:
x1: 17 position1: {x: 17, y: 1}
y1: 1 position2: {x: 17, y: 13}
x2: 17
y2: 13
color: green color: green
- animation: qvoid.yaml - animation: qvoid.yaml
position: {x: 22, y: 10} position: {x: 22, y: 10}
velocity: {x: 0, y: 42.0} velocity: {x: 0, y: 42.0}
boundaries: boundaries:
x1: 22 position1: {x: 22, y: 1}
y1: 1 position2: {x: 22, y: 13}
x2: 22
y2: 13
color: magenta color: magenta
# Items in this room # Objetos en esta habitación
items: items:
- tileSetFile: items.gif - tileSetFile: items.gif
tile: 20 tile: 20

View File

@@ -1,27 +1,27 @@
# QVOID IS A JAILGAME! # QVOID IS A JAILGAME!
room: room:
number: "30" name_en: "QVOID IS A JAILGAME!"
name: "QVOID IS A JAILGAME!" name_ca: "QVOID ES UN JAILGAME!"
bgColor: blue bgColor: blue
border: bright_black border: bright_black
tileSetFile: standard.gif tileSetFile: standard.gif
# Room connections (null for no connection) # Conexiones de la habitación (null = sin conexión)
connections: connections:
up: null up: null
down: null down: null
left: null left: null
right: "29" right: 29.yaml
# Item display colors # Colores de los objetos
itemColor1: yellow itemColor1: yellow
itemColor2: magenta itemColor2: magenta
# Conveyor belt direction: left (-1), none (0), right (1) # Dirección de la cinta transportadora: left, none, right
autoSurface: 0 conveyorBelt: none
# Tilemap: 16 rows × 32 columns (256×192 pixels @ 8px/tile) # Tilemap: 16 filas × 32 columnas (256×192 píxeles @ 8px/tile)
# Values are 0-based tile indices (0 = empty) # Índices de tiles (-1 = vacío)
tilemap: tilemap:
- [126, 127, 128, 129, 130, 131, 132, 126, 127, 128, 129, 130, 131, 132, 126, 127, 128, 129, 130, 131, 132, 126, 127, 128, 129, 130, 131, 132, 126, 127, 128, 129] - [126, 127, 128, 129, 130, 131, 132, 126, 127, 128, 129, 130, 131, 132, 126, 127, 128, 129, 130, 131, 132, 126, 127, 128, 129, 130, 131, 132, 126, 127, 128, 129]
- [131, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 131, 127] - [131, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 131, 127]
@@ -40,16 +40,14 @@ tilemap:
- [131, -1, -1, -1, -1, 547, -1, -1, -1, -1, -1, 554, -1, -1, -1, -1, -1, -1, -1, -1, -1, 554, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1] - [131, -1, -1, -1, -1, 547, -1, -1, -1, -1, -1, 554, -1, -1, -1, -1, -1, -1, -1, -1, -1, 554, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1]
- [132, 554, 554, 554, 554, 554, 126, 127, 128, 129, 130, 131, 484, 484, 484, 484, 484, 484, 484, 484, 484, 127, 128, 129, 130, 131, 132, 126, 127, 128, 129, 130] - [132, 554, 554, 554, 554, 554, 126, 127, 128, 129, 130, 131, 484, 484, 484, 484, 484, 484, 484, 484, 484, 127, 128, 129, 130, 131, 132, 126, 127, 128, 129, 130]
# Enemies in this room # Enemigos en esta habitación
enemies: enemies:
- animation: qvoid.yaml - animation: qvoid.yaml
position: {x: 1, y: 1} position: {x: 1, y: 1}
velocity: {x: 42.0, y: 0} velocity: {x: 42.0, y: 0}
boundaries: boundaries:
x1: 1 position1: {x: 1, y: 1}
y1: 1 position2: {x: 29, y: 1}
x2: 29
y2: 1
color: white color: white
flip: true flip: true
@@ -57,10 +55,8 @@ enemies:
position: {x: 29, y: 1} position: {x: 29, y: 1}
velocity: {x: -42.0, y: 0} velocity: {x: -42.0, y: 0}
boundaries: boundaries:
x1: 1 position1: {x: 1, y: 1}
y1: 1 position2: {x: 29, y: 1}
x2: 29
y2: 1
color: red color: red
flip: true flip: true
@@ -68,14 +64,12 @@ enemies:
position: {x: 6, y: 7} position: {x: 6, y: 7}
velocity: {x: -30.0, y: 0} velocity: {x: -30.0, y: 0}
boundaries: boundaries:
x1: 1 position1: {x: 1, y: 7}
y1: 7 position2: {x: 27, y: 7}
x2: 27
y2: 7
color: green color: green
flip: true flip: true
# Items in this room # Objetos en esta habitación
items: items:
- tileSetFile: items.gif - tileSetFile: items.gif
tile: 20 tile: 20

View File

@@ -1,27 +1,27 @@
# 256 COLORS # 256 COLORS
room: room:
number: "31" name_en: "256 COLORS"
name: "256 COLORS" name_ca: "256 COLORS"
bgColor: black bgColor: black
border: bright_magenta border: bright_magenta
tileSetFile: standard.gif tileSetFile: standard.gif
# Room connections (null for no connection) # Conexiones de la habitación (null = sin conexión)
connections: connections:
up: null up: null
down: null down: null
left: "28" left: 28.yaml
right: null right: null
# Item display colors # Colores de los objetos
itemColor1: bright_red itemColor1: bright_red
itemColor2: bright_cyan itemColor2: bright_cyan
# Conveyor belt direction: left (-1), none (0), right (1) # Dirección de la cinta transportadora: left, none, right
autoSurface: -1 conveyorBelt: left
# Tilemap: 16 rows × 32 columns (256×192 pixels @ 8px/tile) # Tilemap: 16 filas × 32 columnas (256×192 píxeles @ 8px/tile)
# Values are 0-based tile indices (0 = empty) # Índices de tiles (-1 = vacío)
tilemap: tilemap:
- [192, 197, 192, 193, 195, 201, 199, 194, 196, 200, 199, 193, 193, 195, 198, 193, 195, 193, 193, 201, 199, 196, 195, 193, 192, 201, 193, 202, 192, 196, 203, 195] - [192, 197, 192, 193, 195, 201, 199, 194, 196, 200, 199, 193, 193, 195, 198, 193, 195, 193, 193, 201, 199, 196, 195, 193, 192, 201, 193, 202, 192, 196, 203, 195]
- [192, 200, 194, 203, 194, 196, 199, 193, 202, 197, 197, 195, 196, 201, 199, 194, 193, 198, 200, 194, 195, 193, 198, 194, 197, 200, 193, 194, 198, 193, 201, 193] - [192, 200, 194, 203, 194, 196, 199, 193, 202, 197, 197, 195, 196, 201, 199, 194, 193, 198, 200, 194, 195, 193, 198, 194, 197, 200, 193, 194, 198, 193, 201, 193]
@@ -40,49 +40,41 @@ tilemap:
- [-1, -1, -1, -1, -1, -1, 555, -1, -1, -1, -1, 559, -1, -1, -1, 555, -1, -1, -1, -1, 559, -1, 513, 195, 203, 197, 200, 195, 197, 193, 194, 197] - [-1, -1, -1, -1, -1, -1, 555, -1, -1, -1, -1, 559, -1, -1, -1, 555, -1, -1, -1, -1, 559, -1, 513, 195, 203, 197, 200, 195, 197, 193, 194, 197]
- [192, 193, 194, 198, 197, 195, 203, 199, 197, 202, 198, 197, 194, 201, 201, 199, 200, 197, 199, 198, 192, 196, 194, 196, 198, 194, 195, 196, 193, 199, 194, 192] - [192, 193, 194, 198, 197, 195, 203, 199, 197, 202, 198, 197, 194, 201, 201, 199, 200, 197, 199, 198, 192, 196, 194, 196, 198, 194, 195, 196, 193, 199, 194, 192]
# Enemies in this room # Enemigos en esta habitación
enemies: enemies:
- animation: guitar.yaml - animation: guitar.yaml
position: {x: 13, y: 5} position: {x: 13, y: 5}
velocity: {x: 0, y: 36.0} velocity: {x: 0, y: 36.0}
boundaries: boundaries:
x1: 13 position1: {x: 13, y: 5}
y1: 5 position2: {x: 13, y: 13}
x2: 13
y2: 13
color: magenta color: magenta
- animation: sigmasua.yaml - animation: sigmasua.yaml
position: {x: 24, y: 2} position: {x: 24, y: 2}
velocity: {x: 0, y: 36.0} velocity: {x: 0, y: 36.0}
boundaries: boundaries:
x1: 24 position1: {x: 24, y: 2}
y1: 2 position2: {x: 24, y: 9}
x2: 24
y2: 9
color: red color: red
- animation: paco.yaml - animation: paco.yaml
position: {x: 6, y: 2} position: {x: 6, y: 2}
velocity: {x: 0, y: 36.0} velocity: {x: 0, y: 36.0}
boundaries: boundaries:
x1: 6 position1: {x: 6, y: 2}
y1: 2 position2: {x: 6, y: 8}
x2: 6
y2: 8
color: yellow color: yellow
- animation: chip.yaml - animation: chip.yaml
position: {x: 15, y: 9} position: {x: 15, y: 9}
velocity: {x: 36.0, y: 0} velocity: {x: 36.0, y: 0}
boundaries: boundaries:
x1: 15 position1: {x: 15, y: 9}
y1: 9 position2: {x: 23, y: 9}
x2: 23
y2: 9
color: green color: green
# Items in this room # Objetos en esta habitación
items: items:
- tileSetFile: items.gif - tileSetFile: items.gif
tile: 61 tile: 61

View File

@@ -1,27 +1,27 @@
# ...? # ...?
room: room:
number: "32" name_en: "...?"
name: "...?" name_ca: "...?"
bgColor: black bgColor: black
border: cyan border: cyan
tileSetFile: standard.gif tileSetFile: standard.gif
# Room connections (null for no connection) # Conexiones de la habitación (null = sin conexión)
connections: connections:
up: "34" up: 34.yaml
down: "28" down: 28.yaml
left: null left: null
right: "33" right: 33.yaml
# Item display colors # Colores de los objetos
itemColor1: yellow itemColor1: yellow
itemColor2: magenta itemColor2: magenta
# Conveyor belt direction: left (-1), none (0), right (1) # Dirección de la cinta transportadora: left, none, right
autoSurface: 0 conveyorBelt: none
# Tilemap: 16 rows × 32 columns (256×192 pixels @ 8px/tile) # Tilemap: 16 filas × 32 columnas (256×192 píxeles @ 8px/tile)
# Values are 0-based tile indices (0 = empty) # Índices de tiles (-1 = vacío)
tilemap: tilemap:
- [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 40, 234, 234, -1, -1, 234, 234, 40, -1, -1, -1] - [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 40, 234, 234, -1, -1, 234, 234, 40, -1, -1, -1]
- [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 40, -1, -1, -1, -1, -1, -1, 40, -1, -1, -1] - [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 40, -1, -1, -1, -1, -1, -1, 40, -1, -1, -1]
@@ -40,26 +40,22 @@ tilemap:
- [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 380, -1, 40, -1, -1, -1, -1, -1, -1, 40, -1, -1, -1] - [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 380, -1, 40, -1, -1, -1, -1, -1, -1, 40, -1, -1, -1]
- [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 234, 234, 234, 40, 234, 234, -1, -1, 234, 234, 40, 234, 187, 187] - [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 234, 234, 234, 40, 234, 234, -1, -1, 234, 234, 40, 234, 187, 187]
# Enemies in this room # Enemigos en esta habitación
enemies: enemies:
- animation: tree_thing.yaml - animation: tree_thing.yaml
position: {x: 23, y: 4} position: {x: 23, y: 4}
velocity: {x: 0, y: 24.0} velocity: {x: 0, y: 24.0}
boundaries: boundaries:
x1: 23 position1: {x: 23, y: 4}
y1: 4 position2: {x: 23, y: 13}
x2: 23
y2: 13
color: yellow color: yellow
- animation: shooting_star.yaml - animation: shooting_star.yaml
position: {x: 10, y: 2} position: {x: 10, y: 2}
velocity: {x: 0, y: 0} velocity: {x: 0, y: 0}
boundaries: boundaries:
x1: 10 position1: {x: 10, y: 2}
y1: 2 position2: {x: 10, y: 2}
x2: 10
y2: 2
color: white color: white
frame: 0 frame: 0

View File

@@ -1,27 +1,27 @@
# } WE ALL LOVE JAILGAMES } # } WE ALL LOVE JAILGAMES }
room: room:
number: "33" name_en: "ä WE ALL LOVE JAILGAMES ä"
name: "} WE ALL LOVE JAILGAMES }" name_ca: "ä AMOR PELS JAILGAMES ä"
bgColor: black bgColor: black
border: bright_black border: bright_black
tileSetFile: standard.gif tileSetFile: standard.gif
# Room connections (null for no connection) # Conexiones de la habitación (null = sin conexión)
connections: connections:
up: null up: null
down: null down: null
left: "32" left: 32.yaml
right: null right: null
# Item display colors # Colores de los objetos
itemColor1: bright_red itemColor1: bright_red
itemColor2: bright_yellow itemColor2: bright_yellow
# Conveyor belt direction: left (-1), none (0), right (1) # Dirección de la cinta transportadora: left, none, right
autoSurface: 0 conveyorBelt: none
# Tilemap: 16 rows × 32 columns (256×192 pixels @ 8px/tile) # Tilemap: 16 filas × 32 columnas (256×192 píxeles @ 8px/tile)
# Values are 0-based tile indices (0 = empty) # Índices de tiles (-1 = vacío)
tilemap: tilemap:
- [-1, -1, -1, -1, -1, -1, -1, -1, -1, 141, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1] - [-1, -1, -1, -1, -1, -1, -1, -1, -1, 141, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1]
- [-1, -1, 70, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 141, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 71, -1] - [-1, -1, 70, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 141, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 71, -1]
@@ -40,39 +40,33 @@ tilemap:
- [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1] - [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1]
- [155, 155, 155, 155, 155, 155, 155, 155, 155, 155, 155, 155, 155, 155, 155, 155, 155, 155, 164, 562, 562, 562, 562, 562, 562, 562, 562, 562, 562, 562, 562, 562] - [155, 155, 155, 155, 155, 155, 155, 155, 155, 155, 155, 155, 155, 155, 155, 155, 155, 155, 164, 562, 562, 562, 562, 562, 562, 562, 562, 562, 562, 562, 562, 562]
# Enemies in this room # Enemigos en esta habitación
enemies: enemies:
- animation: pepe_rosita_job.yaml - animation: pepe_rosita_job.yaml
position: {x: 2, y: 2} position: {x: 2, y: 2}
velocity: {x: 0, y: 3.0} velocity: {x: 0, y: 3.0}
boundaries: boundaries:
x1: 2 position1: {x: 2, y: 2}
y1: 2 position2: {x: 2, y: 3}
x2: 2
y2: 3
color: white color: white
- animation: aerojailer.yaml - animation: aerojailer.yaml
position: {x: 14, y: 5} position: {x: 14, y: 5}
velocity: {x: 0, y: -2.4} velocity: {x: 0, y: -2.4}
boundaries: boundaries:
x1: 14 position1: {x: 14, y: 4}
y1: 4 position2: {x: 14, y: 6}
x2: 14
y2: 6
color: white color: white
- animation: arounder.yaml - animation: arounder.yaml
position: {x: 22, y: 5} position: {x: 22, y: 5}
velocity: {x: 0, y: 1.8} velocity: {x: 0, y: 1.8}
boundaries: boundaries:
x1: 22 position1: {x: 22, y: 5}
y1: 5 position2: {x: 22, y: 6}
x2: 22
y2: 6
color: white color: white
# Items in this room # Objetos en esta habitación
items: items:
- tileSetFile: items.gif - tileSetFile: items.gif
tile: 62 tile: 62

View File

@@ -1,27 +1,27 @@
# ULA HOP! # ULA HOP!
room: room:
number: "34" name_en: "ULA HOP!"
name: "ULA HOP!" name_ca: "ULA HOP!"
bgColor: black bgColor: black
border: cyan border: cyan
tileSetFile: standard.gif tileSetFile: standard.gif
# Room connections (null for no connection) # Conexiones de la habitación (null = sin conexión)
connections: connections:
up: null up: null
down: "32" down: 32.yaml
left: "35" left: 35.yaml
right: null right: null
# Item display colors # Colores de los objetos
itemColor1: green itemColor1: green
itemColor2: red itemColor2: red
# Conveyor belt direction: left (-1), none (0), right (1) # Dirección de la cinta transportadora: left, none, right
autoSurface: 0 conveyorBelt: none
# Tilemap: 16 rows × 32 columns (256×192 pixels @ 8px/tile) # Tilemap: 16 filas × 32 columnas (256×192 píxeles @ 8px/tile)
# Values are 0-based tile indices (0 = empty) # Índices de tiles (-1 = vacío)
tilemap: tilemap:
- [113, 114, 113, 114, 113, 114, 113, 114, 113, 114, 113, 114, 113, 114, 113, 114, 113, 114, 113, 114, 113, 114, 113, 114, 113, 114, 113, 114, 113, 114, 113, 114] - [113, 114, 113, 114, 113, 114, 113, 114, 113, 114, 113, 114, 113, 114, 113, 114, 113, 114, 113, 114, 113, 114, 113, 114, 113, 114, 113, 114, 113, 114, 113, 114]
- [115, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 139, 115] - [115, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 139, 115]
@@ -40,36 +40,30 @@ tilemap:
- [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 113, 114, 113, 114, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 115, 139] - [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 113, 114, 113, 114, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 115, 139]
- [113, 114, 113, 114, 113, 114, 113, 114, 113, 114, 113, 114, 113, 114, 113, 114, 113, 114, 113, 114, 113, 114, 113, 114, -1, -1, 113, 114, 113, 114, 113, 114] - [113, 114, 113, 114, 113, 114, 113, 114, 113, 114, 113, 114, 113, 114, 113, 114, 113, 114, 113, 114, 113, 114, 113, 114, -1, -1, 113, 114, 113, 114, 113, 114]
# Enemies in this room # Enemigos en esta habitación
enemies: enemies:
- animation: floppy.yaml - animation: floppy.yaml
position: {x: 20, y: 1} position: {x: 20, y: 1}
velocity: {x: 0, y: 48.0} velocity: {x: 0, y: 48.0}
boundaries: boundaries:
x1: 20 position1: {x: 20, y: 1}
y1: 1 position2: {x: 20, y: 13}
x2: 20
y2: 13
color: cyan color: cyan
- animation: spark.yaml - animation: spark.yaml
position: {x: 11, y: 4} position: {x: 11, y: 4}
velocity: {x: 30.0, y: 0} velocity: {x: 30.0, y: 0}
boundaries: boundaries:
x1: 11 position1: {x: 11, y: 4}
y1: 4 position2: {x: 18, y: 4}
x2: 18
y2: 4
color: cyan color: cyan
- animation: spark.yaml - animation: spark.yaml
position: {x: 1, y: 1} position: {x: 1, y: 1}
velocity: {x: 60.0, y: 0} velocity: {x: 60.0, y: 0}
boundaries: boundaries:
x1: 1 position1: {x: 1, y: 1}
y1: 1 position2: {x: 29, y: 1}
x2: 29
y2: 1
color: yellow color: yellow
mirror: true mirror: true
@@ -77,23 +71,19 @@ enemies:
position: {x: 1, y: 6} position: {x: 1, y: 6}
velocity: {x: 30.0, y: 0} velocity: {x: 30.0, y: 0}
boundaries: boundaries:
x1: 1 position1: {x: 1, y: 6}
y1: 6 position2: {x: 10, y: 6}
x2: 10
y2: 6
color: yellow color: yellow
- animation: wave.yaml - animation: wave.yaml
position: {x: 17, y: 8} position: {x: 17, y: 8}
velocity: {x: 54.0, y: 0} velocity: {x: 54.0, y: 0}
boundaries: boundaries:
x1: 17 position1: {x: 17, y: 8}
y1: 8 position2: {x: 29, y: 8}
x2: 29
y2: 8
color: yellow color: yellow
# Items in this room # Objetos en esta habitación
items: items:
- tileSetFile: items.gif - tileSetFile: items.gif
tile: 66 tile: 66

View File

@@ -1,27 +1,27 @@
# SILICON BOOBS # SILICON BOOBS
room: room:
number: "35" name_en: "SILICON BOOBS"
name: "SILICON BOOBS" name_ca: "MAMELLES DE SILICI"
bgColor: black bgColor: black
border: bright_green border: bright_green
tileSetFile: standard.gif tileSetFile: standard.gif
# Room connections (null for no connection) # Conexiones de la habitación (null = sin conexión)
connections: connections:
up: null up: null
down: null down: null
left: "36" left: 36.yaml
right: "34" right: 34.yaml
# Item display colors # Colores de los objetos
itemColor1: green itemColor1: green
itemColor2: red itemColor2: red
# Conveyor belt direction: left (-1), none (0), right (1) # Dirección de la cinta transportadora: left, none, right
autoSurface: -1 conveyorBelt: left
# Tilemap: 16 rows × 32 columns (256×192 pixels @ 8px/tile) # Tilemap: 16 filas × 32 columnas (256×192 píxeles @ 8px/tile)
# Values are 0-based tile indices (0 = empty) # Índices de tiles (-1 = vacío)
tilemap: tilemap:
- [117, 118, 113, 114, 117, 118, 113, 114, 113, 114, 113, 114, 117, 118, 113, 114, 113, 114, 113, 114, 117, 118, 113, 114, 113, 114, 113, 114, 113, 114, 113, 114] - [117, 118, 113, 114, 117, 118, 113, 114, 113, 114, 113, 114, 117, 118, 113, 114, 113, 114, 113, 114, 117, 118, 113, 114, 113, 114, 113, 114, 113, 114, 113, 114]
- [114, 117, 118, 113, 114, 113, 114, 117, 118, 113, 114, 113, 114, 113, 114, 113, 114, 117, 118, 113, 114, 113, 114, 113, 114, 113, 114, 117, 118, 113, 114, 113] - [114, 117, 118, 113, 114, 113, 114, 117, 118, 113, 114, 113, 114, 113, 114, 113, 114, 117, 118, 113, 114, 113, 114, 113, 114, 113, 114, 117, 118, 113, 114, 113]
@@ -40,16 +40,14 @@ tilemap:
- [114, 113, 114, 113, 540, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1] - [114, 113, 114, 113, 540, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1]
- [117, 118, 113, 114, 117, 118, 113, 114, 117, 118, 113, 114, 117, 118, 113, 114, 117, 118, 113, 114, 117, 118, 113, 114, 117, 118, 113, 114, 117, 118, 113, 114] - [117, 118, 113, 114, 117, 118, 113, 114, 117, 118, 113, 114, 117, 118, 113, 114, 117, 118, 113, 114, 117, 118, 113, 114, 117, 118, 113, 114, 117, 118, 113, 114]
# Enemies in this room # Enemigos en esta habitación
enemies: enemies:
- animation: jeannine.yaml - animation: jeannine.yaml
position: {x: 6, y: 13} position: {x: 6, y: 13}
velocity: {x: 30.0, y: 0} velocity: {x: 30.0, y: 0}
boundaries: boundaries:
x1: 6 position1: {x: 6, y: 13}
y1: 13 position2: {x: 14, y: 13}
x2: 14
y2: 13
color: yellow color: yellow
flip: true flip: true
@@ -57,10 +55,8 @@ enemies:
position: {x: 16, y: 13} position: {x: 16, y: 13}
velocity: {x: 24.0, y: 0} velocity: {x: 24.0, y: 0}
boundaries: boundaries:
x1: 16 position1: {x: 16, y: 13}
y1: 13 position2: {x: 28, y: 13}
x2: 28
y2: 13
color: cyan color: cyan
flip: true flip: true
@@ -68,10 +64,8 @@ enemies:
position: {x: 7, y: 9} position: {x: 7, y: 9}
velocity: {x: 36.0, y: 0} velocity: {x: 36.0, y: 0}
boundaries: boundaries:
x1: 7 position1: {x: 7, y: 9}
y1: 9 position2: {x: 15, y: 9}
x2: 15
y2: 9
color: red color: red
flip: true flip: true
@@ -79,10 +73,8 @@ enemies:
position: {x: 16, y: 9} position: {x: 16, y: 9}
velocity: {x: 24.0, y: 0} velocity: {x: 24.0, y: 0}
boundaries: boundaries:
x1: 16 position1: {x: 16, y: 9}
y1: 9 position2: {x: 27, y: 9}
x2: 27
y2: 9
color: white color: white
flip: true flip: true
@@ -90,10 +82,8 @@ enemies:
position: {x: 5, y: 5} position: {x: 5, y: 5}
velocity: {x: 30.0, y: 0} velocity: {x: 30.0, y: 0}
boundaries: boundaries:
x1: 5 position1: {x: 5, y: 5}
y1: 5 position2: {x: 12, y: 5}
x2: 12
y2: 5
color: green color: green
flip: true flip: true
@@ -101,14 +91,12 @@ enemies:
position: {x: 16, y: 5} position: {x: 16, y: 5}
velocity: {x: 24.0, y: 0} velocity: {x: 24.0, y: 0}
boundaries: boundaries:
x1: 16 position1: {x: 16, y: 5}
y1: 5 position2: {x: 26, y: 5}
x2: 26
y2: 5
color: yellow color: yellow
flip: true flip: true
# Items in this room # Objetos en esta habitación
items: items:
- tileSetFile: items.gif - tileSetFile: items.gif
tile: 57 tile: 57

View File

@@ -1,27 +1,27 @@
# BE CAREFUL WITH THE FUSE # BE CAREFUL WITH THE FUSE
room: room:
number: "36" name_en: "BE CAREFUL WITH THE FUSE"
name: "BE CAREFUL WITH THE FUSE" name_ca: "COMPTE AMB EL FUSIBLE"
bgColor: black bgColor: black
border: bright_cyan border: bright_cyan
tileSetFile: standard.gif tileSetFile: standard.gif
# Room connections (null for no connection) # Conexiones de la habitación (null = sin conexión)
connections: connections:
up: null up: null
down: null down: null
left: "37" left: 37.yaml
right: "35" right: 35.yaml
# Item display colors # Colores de los objetos
itemColor1: green itemColor1: green
itemColor2: red itemColor2: red
# Conveyor belt direction: left (-1), none (0), right (1) # Dirección de la cinta transportadora: left, none, right
autoSurface: 0 conveyorBelt: none
# Tilemap: 16 rows × 32 columns (256×192 pixels @ 8px/tile) # Tilemap: 16 filas × 32 columnas (256×192 píxeles @ 8px/tile)
# Values are 0-based tile indices (0 = empty) # Índices de tiles (-1 = vacío)
tilemap: tilemap:
- [117, 118, 117, 118, 117, 118, 117, 118, 117, 118, 117, 118, 117, 118, 117, 118, 117, 118, 117, 118, 117, 118, 117, 118, 117, 118, 117, 118, 117, 118, 117, 118] - [117, 118, 117, 118, 117, 118, 117, 118, 117, 118, 117, 118, 117, 118, 117, 118, 117, 118, 117, 118, 117, 118, 117, 118, 117, 118, 117, 118, 117, 118, 117, 118]
- [118, 117, 118, 117, 118, 117, 118, 117, 118, 117, 118, 117, 118, 117, 118, 117, 118, 117, 118, 117, 118, 117, 118, 117, 118, 117, 118, 117, 118, 117, 118, 117] - [118, 117, 118, 117, 118, 117, 118, 117, 118, 117, 118, 117, 118, 117, 118, 117, 118, 117, 118, 117, 118, 117, 118, 117, 118, 117, 118, 117, 118, 117, 118, 117]
@@ -40,36 +40,30 @@ tilemap:
- [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 353, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 143] - [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 353, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 143]
- [117, 118, 117, 118, 117, 118, 117, 118, 117, 118, 117, 118, 117, 118, 117, 118, 117, 118, 117, 118, 117, 118, 117, 118, 117, 118, 117, 118, 117, 118, 117, 118] - [117, 118, 117, 118, 117, 118, 117, 118, 117, 118, 117, 118, 117, 118, 117, 118, 117, 118, 117, 118, 117, 118, 117, 118, 117, 118, 117, 118, 117, 118, 117, 118]
# Enemies in this room # Enemigos en esta habitación
enemies: enemies:
- animation: spark.yaml - animation: spark.yaml
position: {x: 6, y: 13} position: {x: 6, y: 13}
velocity: {x: 24.0, y: 0} velocity: {x: 24.0, y: 0}
boundaries: boundaries:
x1: 2 position1: {x: 2, y: 13}
y1: 13 position2: {x: 14, y: 13}
x2: 14
y2: 13
color: yellow color: yellow
- animation: spark.yaml - animation: spark.yaml
position: {x: 21, y: 13} position: {x: 21, y: 13}
velocity: {x: 24.0, y: 0} velocity: {x: 24.0, y: 0}
boundaries: boundaries:
x1: 17 position1: {x: 17, y: 13}
y1: 13 position2: {x: 29, y: 13}
x2: 29
y2: 13
color: yellow color: yellow
- animation: spark.yaml - animation: spark.yaml
position: {x: 2, y: 10} position: {x: 2, y: 10}
velocity: {x: 24.0, y: 0} velocity: {x: 24.0, y: 0}
boundaries: boundaries:
x1: 2 position1: {x: 2, y: 10}
y1: 10 position2: {x: 14, y: 10}
x2: 14
y2: 10
color: yellow color: yellow
mirror: true mirror: true
@@ -77,10 +71,8 @@ enemies:
position: {x: 17, y: 10} position: {x: 17, y: 10}
velocity: {x: 24.0, y: 0} velocity: {x: 24.0, y: 0}
boundaries: boundaries:
x1: 17 position1: {x: 17, y: 10}
y1: 10 position2: {x: 29, y: 10}
x2: 29
y2: 10
color: yellow color: yellow
mirror: true mirror: true
@@ -88,63 +80,51 @@ enemies:
position: {x: 13, y: 2} position: {x: 13, y: 2}
velocity: {x: 0, y: 24.0} velocity: {x: 0, y: 24.0}
boundaries: boundaries:
x1: 13 position1: {x: 13, y: 2}
y1: 2 position2: {x: 13, y: 7}
x2: 13
y2: 7
color: bright_yellow color: bright_yellow
- animation: shock.yaml - animation: shock.yaml
position: {x: 10, y: 4} position: {x: 10, y: 4}
velocity: {x: 0, y: 30.0} velocity: {x: 0, y: 30.0}
boundaries: boundaries:
x1: 10 position1: {x: 10, y: 2}
y1: 2 position2: {x: 10, y: 7}
x2: 10
y2: 7
color: bright_yellow color: bright_yellow
- animation: shock.yaml - animation: shock.yaml
position: {x: 7, y: 6} position: {x: 7, y: 6}
velocity: {x: 0, y: 36.0} velocity: {x: 0, y: 36.0}
boundaries: boundaries:
x1: 7 position1: {x: 7, y: 2}
y1: 2 position2: {x: 7, y: 7}
x2: 7
y2: 7
color: bright_yellow color: bright_yellow
- animation: shock.yaml - animation: shock.yaml
position: {x: 24, y: 2} position: {x: 24, y: 2}
velocity: {x: 0, y: 24.0} velocity: {x: 0, y: 24.0}
boundaries: boundaries:
x1: 24 position1: {x: 24, y: 2}
y1: 2 position2: {x: 24, y: 7}
x2: 24
y2: 7
color: bright_yellow color: bright_yellow
- animation: shock.yaml - animation: shock.yaml
position: {x: 21, y: 4} position: {x: 21, y: 4}
velocity: {x: 0, y: 30.0} velocity: {x: 0, y: 30.0}
boundaries: boundaries:
x1: 21 position1: {x: 21, y: 2}
y1: 2 position2: {x: 21, y: 7}
x2: 21
y2: 7
color: bright_yellow color: bright_yellow
- animation: shock.yaml - animation: shock.yaml
position: {x: 18, y: 6} position: {x: 18, y: 6}
velocity: {x: 0, y: 36.0} velocity: {x: 0, y: 36.0}
boundaries: boundaries:
x1: 18 position1: {x: 18, y: 2}
y1: 2 position2: {x: 18, y: 7}
x2: 18
y2: 7
color: bright_yellow color: bright_yellow
# Items in this room # Objetos en esta habitación
items: items:
- tileSetFile: items.gif - tileSetFile: items.gif
tile: 57 tile: 57

View File

@@ -1,27 +1,27 @@
# CHIP'N CHIP # CHIP'N CHIP
room: room:
number: "37" name_en: "CHIP'N CHIP"
name: "CHIP'N CHIP" name_ca: "CHIP'N CHIP"
bgColor: black bgColor: black
border: bright_green border: bright_green
tileSetFile: standard.gif tileSetFile: standard.gif
# Room connections (null for no connection) # Conexiones de la habitación (null = sin conexión)
connections: connections:
up: null up: null
down: null down: null
left: "38" left: 38.yaml
right: "36" right: 36.yaml
# Item display colors # Colores de los objetos
itemColor1: green itemColor1: green
itemColor2: red itemColor2: red
# Conveyor belt direction: left (-1), none (0), right (1) # Dirección de la cinta transportadora: left, none, right
autoSurface: 0 conveyorBelt: none
# Tilemap: 16 rows × 32 columns (256×192 pixels @ 8px/tile) # Tilemap: 16 filas × 32 columnas (256×192 píxeles @ 8px/tile)
# Values are 0-based tile indices (0 = empty) # Índices de tiles (-1 = vacío)
tilemap: tilemap:
- [113, 114, 113, 114, 113, 114, 113, 114, 113, 114, 113, 114, 113, 114, 113, 114, 113, 114, 113, 114, 113, 114, 113, 114, 113, 114, 113, 114, 113, 114, 113, 114] - [113, 114, 113, 114, 113, 114, 113, 114, 113, 114, 113, 114, 113, 114, 113, 114, 113, 114, 113, 114, 113, 114, 113, 114, 113, 114, 113, 114, 113, 114, 113, 114]
- [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1] - [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1]
@@ -40,59 +40,49 @@ tilemap:
- [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 139, 554, 554, 554, 554, 139, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1] - [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 139, 554, 554, 554, 554, 139, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1]
- [113, 114, 113, 114, 113, 114, 113, 114, 113, 114, 113, 114, 113, 114, 113, 114, 113, 114, 113, 114, 113, 114, 113, 114, 113, 114, 113, 114, 113, 114, 113, 114] - [113, 114, 113, 114, 113, 114, 113, 114, 113, 114, 113, 114, 113, 114, 113, 114, 113, 114, 113, 114, 113, 114, 113, 114, 113, 114, 113, 114, 113, 114, 113, 114]
# Enemies in this room # Enemigos en esta habitación
enemies: enemies:
- animation: z80.yaml - animation: z80.yaml
position: {x: 15, y: 1} position: {x: 15, y: 1}
velocity: {x: 0, y: 18.0} velocity: {x: 0, y: 18.0}
boundaries: boundaries:
x1: 15 position1: {x: 15, y: 1}
y1: 1 position2: {x: 15, y: 10}
x2: 15
y2: 10
color: bright_green color: bright_green
- animation: chip.yaml - animation: chip.yaml
position: {x: 1, y: 8} position: {x: 1, y: 8}
velocity: {x: 18.0, y: 0} velocity: {x: 18.0, y: 0}
boundaries: boundaries:
x1: 1 position1: {x: 1, y: 8}
y1: 8 position2: {x: 6, y: 8}
x2: 6
y2: 8
color: bright_green color: bright_green
- animation: chip.yaml - animation: chip.yaml
position: {x: 28, y: 8} position: {x: 28, y: 8}
velocity: {x: 18.0, y: 0} velocity: {x: 18.0, y: 0}
boundaries: boundaries:
x1: 25 position1: {x: 25, y: 8}
y1: 8 position2: {x: 30, y: 8}
x2: 30
y2: 8
color: bright_green color: bright_green
- animation: shock.yaml - animation: shock.yaml
position: {x: 8, y: 1} position: {x: 8, y: 1}
velocity: {x: 0, y: 60.0} velocity: {x: 0, y: 60.0}
boundaries: boundaries:
x1: 8 position1: {x: 8, y: 1}
y1: 1 position2: {x: 8, y: 14}
x2: 8
y2: 14
color: bright_green color: bright_green
- animation: shock.yaml - animation: shock.yaml
position: {x: 23, y: 7} position: {x: 23, y: 7}
velocity: {x: 0, y: 60.0} velocity: {x: 0, y: 60.0}
boundaries: boundaries:
x1: 23 position1: {x: 23, y: 1}
y1: 1 position2: {x: 23, y: 14}
x2: 23
y2: 14
color: bright_green color: bright_green
# Items in this room # Objetos en esta habitación
items: items:
- tileSetFile: items.gif - tileSetFile: items.gif
tile: 57 tile: 57

View File

@@ -1,27 +1,27 @@
# THE FINAL CROSSOVER # THE FINAL CROSSOVER
room: room:
number: "38" name_en: "THE FINAL CROSSOVER"
name: "THE FINAL CROSSOVER" name_ca: "EL CROSSOVER DEFINITIU"
bgColor: bright_black bgColor: bright_black
border: yellow border: yellow
tileSetFile: standard.gif tileSetFile: standard.gif
# Room connections (null for no connection) # Conexiones de la habitación (null = sin conexión)
connections: connections:
up: null up: null
down: null down: null
left: "39" left: 39.yaml
right: "37" right: 37.yaml
# Item display colors # Colores de los objetos
itemColor1: yellow itemColor1: yellow
itemColor2: magenta itemColor2: magenta
# Conveyor belt direction: left (-1), none (0), right (1) # Dirección de la cinta transportadora: left, none, right
autoSurface: 0 conveyorBelt: none
# Tilemap: 16 rows × 32 columns (256×192 pixels @ 8px/tile) # Tilemap: 16 filas × 32 columnas (256×192 píxeles @ 8px/tile)
# Values are 0-based tile indices (0 = empty) # Índices de tiles (-1 = vacío)
tilemap: tilemap:
- [20, 20, 20, 20, 20, 20, 20, 22, 23, -1, -1, 20, 20, 20, 20, 20, 20, 22, 23, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20] - [20, 20, 20, 20, 20, 20, 20, 22, 23, -1, -1, 20, 20, 20, 20, 20, 20, 22, 23, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20]
- [20, 20, -1, -1, -1, 20, 20, 46, 47, -1, -1, -1, -1, -1, -1, -1, -1, 46, 47, 20, 20, 20, -1, -1, -1, 20, 20, 20, 20, 20, -1, -1] - [20, 20, -1, -1, -1, 20, 20, 46, 47, -1, -1, -1, -1, -1, -1, -1, -1, 46, 47, 20, 20, 20, -1, -1, -1, 20, 20, 20, 20, 20, -1, -1]
@@ -40,36 +40,30 @@ tilemap:
- [-1, -1, -1, -1, -1, 555, -1, -1, 311, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 311, -1, 555, -1, -1, -1, -1, -1, 310, -1, -1, -1] - [-1, -1, -1, -1, -1, 555, -1, -1, 311, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 311, -1, 555, -1, -1, -1, -1, -1, 310, -1, -1, -1]
- [217, 217, 217, 218, 20, 20, 20, 20, 20, 20, 556, 556, 556, 556, 556, 556, 556, 556, 20, 20, 20, 20, 20, 20, 20, 219, 220, 220, 220, 220, 220, 221] - [217, 217, 217, 218, 20, 20, 20, 20, 20, 20, 556, 556, 556, 556, 556, 556, 556, 556, 20, 20, 20, 20, 20, 20, 20, 219, 220, 220, 220, 220, 220, 221]
# Enemies in this room # Enemigos en esta habitación
enemies: enemies:
- animation: stopped_arounder.yaml - animation: stopped_arounder.yaml
position: {x: 9, y: 11} position: {x: 9, y: 11}
velocity: {x: 0, y: 0} velocity: {x: 0, y: 0}
boundaries: boundaries:
x1: 9 position1: {x: 9, y: 11}
y1: 11 position2: {x: 9, y: 11}
x2: 9
y2: 11
color: white color: white
- animation: stopped_arounder.yaml - animation: stopped_arounder.yaml
position: {x: 18, y: 11} position: {x: 18, y: 11}
velocity: {x: 0, y: 0} velocity: {x: 0, y: 0}
boundaries: boundaries:
x1: 18 position1: {x: 18, y: 11}
y1: 11 position2: {x: 18, y: 11}
x2: 18
y2: 11
color: white color: white
- animation: walking_arounder.yaml - animation: walking_arounder.yaml
position: {x: 12, y: 1} position: {x: 12, y: 1}
velocity: {x: 30.0, y: 0} velocity: {x: 30.0, y: 0}
boundaries: boundaries:
x1: 11 position1: {x: 11, y: 1}
y1: 1 position2: {x: 16, y: 1}
x2: 16
y2: 1
color: white color: white
flip: true flip: true
@@ -77,10 +71,8 @@ enemies:
position: {x: 9, y: 0} position: {x: 9, y: 0}
velocity: {x: 0, y: 0} velocity: {x: 0, y: 0}
boundaries: boundaries:
x1: 9 position1: {x: 9, y: 0}
y1: 0 position2: {x: 9, y: 0}
x2: 9
y2: 0
color: yellow color: yellow
flip: true flip: true
@@ -88,10 +80,8 @@ enemies:
position: {x: 3, y: 1} position: {x: 3, y: 1}
velocity: {x: 0, y: 42.0} velocity: {x: 0, y: 42.0}
boundaries: boundaries:
x1: 3 position1: {x: 3, y: 1}
y1: 1 position2: {x: 3, y: 9}
x2: 3
y2: 9
color: white color: white
flip: true flip: true
@@ -99,14 +89,12 @@ enemies:
position: {x: 12, y: 10} position: {x: 12, y: 10}
velocity: {x: 12.0, y: 0} velocity: {x: 12.0, y: 0}
boundaries: boundaries:
x1: 10 position1: {x: 10, y: 10}
y1: 10 position2: {x: 17, y: 10}
x2: 17
y2: 10
color: bright_yellow color: bright_yellow
flip: true flip: true
# Items in this room # Objetos en esta habitación
items: items:
- tileSetFile: items.gif - tileSetFile: items.gif
tile: 37 tile: 37

View File

@@ -1,27 +1,27 @@
# YOU'LL BELIEVE AROUNDER CAN FLY # YOU'LL BELIEVE AROUNDER CAN FLY
room: room:
number: "39" name_en: "YOU'LL BELIEVE AROUNDER CAN FLY"
name: "YOU'LL BELIEVE AROUNDER CAN FLY" name_ca: "CREURAS QUE ELS AROUNDERS VOLEN"
bgColor: black bgColor: black
border: cyan border: cyan
tileSetFile: standard.gif tileSetFile: standard.gif
# Room connections (null for no connection) # Conexiones de la habitación (null = sin conexión)
connections: connections:
up: null up: null
down: null down: null
left: "40" left: 40.yaml
right: "38" right: 38.yaml
# Item display colors # Colores de los objetos
itemColor1: magenta itemColor1: magenta
itemColor2: cyan itemColor2: cyan
# Conveyor belt direction: left (-1), none (0), right (1) # Dirección de la cinta transportadora: left, none, right
autoSurface: 0 conveyorBelt: none
# Tilemap: 16 rows × 32 columns (256×192 pixels @ 8px/tile) # Tilemap: 16 filas × 32 columnas (256×192 píxeles @ 8px/tile)
# Values are 0-based tile indices (0 = empty) # Índices de tiles (-1 = vacío)
tilemap: tilemap:
- [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1] - [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1]
- [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1] - [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1]
@@ -40,26 +40,22 @@ tilemap:
- [-1, -1, -1, -1, 311, -1, -1, -1, -1, -1, -1, -1, -1, 311, -1, -1, -1, 311, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1] - [-1, -1, -1, -1, 311, -1, -1, -1, -1, -1, -1, -1, -1, 311, -1, -1, -1, 311, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1]
- [556, 556, 216, 217, 217, 217, 217, 218, 556, 556, 556, 556, 216, 217, 217, 217, 217, 217, 218, 556, 556, 556, 216, 217, 217, 217, 217, 217, 217, 217, 217, 217] - [556, 556, 216, 217, 217, 217, 217, 218, 556, 556, 556, 556, 216, 217, 217, 217, 217, 217, 218, 556, 556, 556, 216, 217, 217, 217, 217, 217, 217, 217, 217, 217]
# Enemies in this room # Enemigos en esta habitación
enemies: enemies:
- animation: arounders_door.yaml - animation: arounders_door.yaml
position: {x: 3, y: 1} position: {x: 3, y: 1}
velocity: {x: 0, y: 0} velocity: {x: 0, y: 0}
boundaries: boundaries:
x1: 3 position1: {x: 3, y: 1}
y1: 1 position2: {x: 3, y: 1}
x2: 3
y2: 1
color: white color: white
- animation: flying_arounder.yaml - animation: flying_arounder.yaml
position: {x: 9, y: 1} position: {x: 9, y: 1}
velocity: {x: 0, y: 42.0} velocity: {x: 0, y: 42.0}
boundaries: boundaries:
x1: 9 position1: {x: 9, y: 1}
y1: 1 position2: {x: 9, y: 10}
x2: 9
y2: 10
color: white color: white
flip: true flip: true
@@ -67,10 +63,8 @@ enemies:
position: {x: 15, y: 0} position: {x: 15, y: 0}
velocity: {x: 0, y: 42.0} velocity: {x: 0, y: 42.0}
boundaries: boundaries:
x1: 15 position1: {x: 15, y: 0}
y1: 0 position2: {x: 15, y: 14}
x2: 15
y2: 14
color: white color: white
flip: true flip: true
@@ -78,10 +72,8 @@ enemies:
position: {x: 22, y: 10} position: {x: 22, y: 10}
velocity: {x: 0, y: 42.0} velocity: {x: 0, y: 42.0}
boundaries: boundaries:
x1: 22 position1: {x: 22, y: 0}
y1: 0 position2: {x: 22, y: 14}
x2: 22
y2: 14
color: white color: white
flip: true flip: true
@@ -89,14 +81,12 @@ enemies:
position: {x: 16, y: 5} position: {x: 16, y: 5}
velocity: {x: 0, y: 42.0} velocity: {x: 0, y: 42.0}
boundaries: boundaries:
x1: 16 position1: {x: 16, y: 0}
y1: 0 position2: {x: 16, y: 10}
x2: 16
y2: 10
color: white color: white
flip: true flip: true
# Items in this room # Objetos en esta habitación
items: items:
- tileSetFile: items.gif - tileSetFile: items.gif
tile: 47 tile: 47

View File

@@ -1,27 +1,27 @@
# PREVENT THE CRISIS # PREVENT THE CRISIS
room: room:
number: "40" name_en: "PREVENT THE CRISIS"
name: "PREVENT THE CRISIS" name_ca: "EVITA LA CRISI"
bgColor: black bgColor: black
border: bright_magenta border: bright_magenta
tileSetFile: standard.gif tileSetFile: standard.gif
# Room connections (null for no connection) # Conexiones de la habitación (null = sin conexión)
connections: connections:
up: null up: null
down: null down: null
left: "41" left: 41.yaml
right: "39" right: 39.yaml
# Item display colors # Colores de los objetos
itemColor1: yellow itemColor1: yellow
itemColor2: magenta itemColor2: magenta
# Conveyor belt direction: left (-1), none (0), right (1) # Dirección de la cinta transportadora: left, none, right
autoSurface: 0 conveyorBelt: none
# Tilemap: 16 rows × 32 columns (256×192 pixels @ 8px/tile) # Tilemap: 16 filas × 32 columnas (256×192 píxeles @ 8px/tile)
# Values are 0-based tile indices (0 = empty) # Índices de tiles (-1 = vacío)
tilemap: tilemap:
- [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1] - [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1]
- [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1] - [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1]
@@ -40,26 +40,22 @@ tilemap:
- [-1, -1, -1, -1, 334, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 334, -1, -1, -1, -1, -1] - [-1, -1, -1, -1, 334, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 334, -1, -1, -1, -1, -1]
- [556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556] - [556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556]
# Enemies in this room # Enemigos en esta habitación
enemies: enemies:
- animation: arounders_machine.yaml - animation: arounders_machine.yaml
position: {x: 7, y: 1} position: {x: 7, y: 1}
velocity: {x: 0, y: 0} velocity: {x: 0, y: 0}
boundaries: boundaries:
x1: 7 position1: {x: 7, y: 1}
y1: 1 position2: {x: 7, y: 1}
x2: 7
y2: 1
color: red color: red
- animation: walking_arounder.yaml - animation: walking_arounder.yaml
position: {x: 10, y: 12} position: {x: 10, y: 12}
velocity: {x: 24.0, y: 0} velocity: {x: 24.0, y: 0}
boundaries: boundaries:
x1: 7 position1: {x: 7, y: 12}
y1: 12 position2: {x: 26, y: 12}
x2: 26
y2: 12
color: white color: white
flip: true flip: true
@@ -67,10 +63,8 @@ enemies:
position: {x: 15, y: 12} position: {x: 15, y: 12}
velocity: {x: 24.0, y: 0} velocity: {x: 24.0, y: 0}
boundaries: boundaries:
x1: 7 position1: {x: 7, y: 12}
y1: 12 position2: {x: 26, y: 12}
x2: 26
y2: 12
color: green color: green
flip: true flip: true
@@ -78,10 +72,8 @@ enemies:
position: {x: 20, y: 12} position: {x: 20, y: 12}
velocity: {x: 24.0, y: 0} velocity: {x: 24.0, y: 0}
boundaries: boundaries:
x1: 7 position1: {x: 7, y: 12}
y1: 12 position2: {x: 26, y: 12}
x2: 26
y2: 12
color: yellow color: yellow
flip: true flip: true
@@ -89,14 +81,12 @@ enemies:
position: {x: 14, y: 2} position: {x: 14, y: 2}
velocity: {x: 24.0, y: 0} velocity: {x: 24.0, y: 0}
boundaries: boundaries:
x1: 11 position1: {x: 11, y: 2}
y1: 2 position2: {x: 18, y: 2}
x2: 18
y2: 2
color: cyan color: cyan
flip: true flip: true
# Items in this room # Objetos en esta habitación
items: items:
- tileSetFile: items.gif - tileSetFile: items.gif
tile: 5 tile: 5

View File

@@ -1,27 +1,27 @@
# AROUND WITH ME # AROUND WITH ME
room: room:
number: "41" name_en: "AROUND WITH ME"
name: "AROUND WITH ME" name_ca: "AROUNDA AMB MI"
bgColor: black bgColor: black
border: blue border: blue
tileSetFile: standard.gif tileSetFile: standard.gif
# Room connections (null for no connection) # Conexiones de la habitación (null = sin conexión)
connections: connections:
up: null up: null
down: null down: null
left: "42" left: 42.yaml
right: "40" right: 40.yaml
# Item display colors # Colores de los objetos
itemColor1: yellow itemColor1: yellow
itemColor2: magenta itemColor2: magenta
# Conveyor belt direction: left (-1), none (0), right (1) # Dirección de la cinta transportadora: left, none, right
autoSurface: 0 conveyorBelt: none
# Tilemap: 16 rows × 32 columns (256×192 pixels @ 8px/tile) # Tilemap: 16 filas × 32 columnas (256×192 píxeles @ 8px/tile)
# Values are 0-based tile indices (0 = empty) # Índices de tiles (-1 = vacío)
tilemap: tilemap:
- [187, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1] - [187, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1]
- [187, -1, -1, -1, -1, 263, -1, -1, -1, -1, -1, -1, -1, 263, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1] - [187, -1, -1, -1, -1, 263, -1, -1, -1, -1, -1, -1, -1, 263, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1]
@@ -40,56 +40,46 @@ tilemap:
- [-1, -1, -1, -1, -1, -1, 263, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 263, -1, -1, -1, -1, -1] - [-1, -1, -1, -1, -1, -1, 263, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 263, -1, -1, -1, -1, -1]
- [43, 43, 43, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556] - [43, 43, 43, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556]
# Enemies in this room # Enemigos en esta habitación
enemies: enemies:
- animation: arounders_door.yaml - animation: arounders_door.yaml
position: {x: 6, y: 2} position: {x: 6, y: 2}
velocity: {x: 0, y: 0} velocity: {x: 0, y: 0}
boundaries: boundaries:
x1: 6 position1: {x: 6, y: 2}
y1: 2 position2: {x: 6, y: 2}
x2: 6
y2: 2
color: bright_cyan color: bright_cyan
- animation: stopped_arounder.yaml - animation: stopped_arounder.yaml
position: {x: 8, y: 12} position: {x: 8, y: 12}
velocity: {x: 0, y: 0} velocity: {x: 0, y: 0}
boundaries: boundaries:
x1: 8 position1: {x: 8, y: 12}
y1: 12 position2: {x: 8, y: 12}
x2: 8
y2: 12
color: bright_cyan color: bright_cyan
- animation: stopped_arounder.yaml - animation: stopped_arounder.yaml
position: {x: 11, y: 3} position: {x: 11, y: 3}
velocity: {x: 0, y: 0} velocity: {x: 0, y: 0}
boundaries: boundaries:
x1: 11 position1: {x: 11, y: 3}
y1: 3 position2: {x: 11, y: 3}
x2: 11
y2: 3
color: bright_cyan color: bright_cyan
- animation: stopped_arounder.yaml - animation: stopped_arounder.yaml
position: {x: 24, y: 12} position: {x: 24, y: 12}
velocity: {x: 0, y: 0} velocity: {x: 0, y: 0}
boundaries: boundaries:
x1: 24 position1: {x: 24, y: 12}
y1: 12 position2: {x: 24, y: 12}
x2: 24
y2: 12
color: bright_cyan color: bright_cyan
- animation: walking_arounder.yaml - animation: walking_arounder.yaml
position: {x: 12, y: 12} position: {x: 12, y: 12}
velocity: {x: 18.0, y: 0} velocity: {x: 18.0, y: 0}
boundaries: boundaries:
x1: 9 position1: {x: 9, y: 12}
y1: 12 position2: {x: 23, y: 12}
x2: 23
y2: 12
color: bright_cyan color: bright_cyan
flip: true flip: true
@@ -97,10 +87,8 @@ enemies:
position: {x: 14, y: 12} position: {x: 14, y: 12}
velocity: {x: -24.0, y: 0} velocity: {x: -24.0, y: 0}
boundaries: boundaries:
x1: 9 position1: {x: 9, y: 12}
y1: 12 position2: {x: 23, y: 12}
x2: 23
y2: 12
color: bright_cyan color: bright_cyan
flip: true flip: true
@@ -108,14 +96,12 @@ enemies:
position: {x: 14, y: 6} position: {x: 14, y: 6}
velocity: {x: -24.0, y: 0} velocity: {x: -24.0, y: 0}
boundaries: boundaries:
x1: 12 position1: {x: 12, y: 6}
y1: 6 position2: {x: 20, y: 6}
x2: 20
y2: 6
color: bright_cyan color: bright_cyan
flip: true flip: true
# Items in this room # Objetos en esta habitación
items: items:
- tileSetFile: items.gif - tileSetFile: items.gif
tile: 46 tile: 46

View File

@@ -1,27 +1,27 @@
# P.A.C.O. ON THE GO # P.A.C.O. ON THE GO
room: room:
number: "42" name_en: "P.A.C.O. ON THE GO"
name: "P.A.C.O. ON THE GO" name_ca: "P.A.C.O. EN MARXA"
bgColor: black bgColor: black
border: blue border: blue
tileSetFile: standard.gif tileSetFile: standard.gif
# Room connections (null for no connection) # Conexiones de la habitación (null = sin conexión)
connections: connections:
up: null up: null
down: "43" down: 43.yaml
left: "53" left: 53.yaml
right: "41" right: 41.yaml
# Item display colors # Colores de los objetos
itemColor1: magenta itemColor1: magenta
itemColor2: red itemColor2: red
# Conveyor belt direction: left (-1), none (0), right (1) # Dirección de la cinta transportadora: left, none, right
autoSurface: 0 conveyorBelt: none
# Tilemap: 16 rows × 32 columns (256×192 pixels @ 8px/tile) # Tilemap: 16 filas × 32 columnas (256×192 píxeles @ 8px/tile)
# Values are 0-based tile indices (0 = empty) # Índices de tiles (-1 = vacío)
tilemap: tilemap:
- [35, 35, 35, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 61] - [35, 35, 35, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 61]
- [35, 35, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 61] - [35, 35, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 61]
@@ -40,30 +40,26 @@ tilemap:
- [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 506, -1, -1, -1, -1, 530, -1, -1, -1, -1, -1, -1] - [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 506, -1, -1, -1, -1, 530, -1, -1, -1, -1, -1, -1]
- [43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 25, -1, -1, 422, 384, -1, -1, 25, 43, 43, 43, 43, 43] - [43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 25, -1, -1, 422, 384, -1, -1, 25, 43, 43, 43, 43, 43]
# Enemies in this room # Enemigos en esta habitación
enemies: enemies:
- animation: paco.yaml - animation: paco.yaml
position: {x: 10, y: 2} position: {x: 10, y: 2}
velocity: {x: 0, y: 30.0} velocity: {x: 0, y: 30.0}
boundaries: boundaries:
x1: 10 position1: {x: 10, y: 2}
y1: 2 position2: {x: 10, y: 11}
x2: 10
y2: 11
color: magenta color: magenta
- animation: abad.yaml - animation: abad.yaml
position: {x: 15, y: 13} position: {x: 15, y: 13}
velocity: {x: 48.0, y: 0} velocity: {x: 48.0, y: 0}
boundaries: boundaries:
x1: 4 position1: {x: 4, y: 13}
y1: 13 position2: {x: 19, y: 13}
x2: 19
y2: 13
color: bright_cyan color: bright_cyan
flip: true flip: true
# Items in this room # Objetos en esta habitación
items: items:
- tileSetFile: items.gif - tileSetFile: items.gif
tile: 41 tile: 41

View File

@@ -1,27 +1,27 @@
# THE TUBE # THE TUBE
room: room:
number: "43" name_en: "THE TUBE"
name: "THE TUBE" name_ca: "EL TUB"
bgColor: black bgColor: black
border: blue border: blue
tileSetFile: standard.gif tileSetFile: standard.gif
# Room connections (null for no connection) # Conexiones de la habitación (null = sin conexión)
connections: connections:
up: "42" up: 42.yaml
down: "44" down: 44.yaml
left: null left: null
right: null right: null
# Item display colors # Colores de los objetos
itemColor1: yellow itemColor1: yellow
itemColor2: red itemColor2: red
# Conveyor belt direction: left (-1), none (0), right (1) # Dirección de la cinta transportadora: left, none, right
autoSurface: 0 conveyorBelt: none
# Tilemap: 16 rows × 32 columns (256×192 pixels @ 8px/tile) # Tilemap: 16 filas × 32 columnas (256×192 píxeles @ 8px/tile)
# Values are 0-based tile indices (0 = empty) # Índices de tiles (-1 = vacío)
tilemap: tilemap:
- [43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 25, -1, -1, -1, -1, -1, -1, 25, 43, 43, 43, 43, 43] - [43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 25, -1, -1, -1, -1, -1, -1, 25, 43, 43, 43, 43, 43]
- [43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 25, -1, -1, -1, -1, -1, -1, 25, 43, 43, 43, 43, 43] - [43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 25, -1, -1, -1, -1, -1, -1, 25, 43, 43, 43, 43, 43]
@@ -40,29 +40,25 @@ tilemap:
- [43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 25, -1, -1, -1, -1, 384, 384, 25, 43, 43, 43, 43, 43] - [43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 25, -1, -1, -1, -1, 384, 384, 25, 43, 43, 43, 43, 43]
- [43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 25, 422, 384, 422, 384, -1, -1, 25, 43, 43, 43, 43, 43] - [43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 25, 422, 384, 422, 384, -1, -1, 25, 43, 43, 43, 43, 43]
# Enemies in this room # Enemigos en esta habitación
enemies: enemies:
- animation: spider.yaml - animation: spider.yaml
position: {x: 20, y: 5} position: {x: 20, y: 5}
velocity: {x: 18.0, y: 0} velocity: {x: 18.0, y: 0}
boundaries: boundaries:
x1: 20 position1: {x: 20, y: 5}
y1: 5 position2: {x: 23, y: 5}
x2: 23
y2: 5
color: cyan color: cyan
- animation: spider.yaml - animation: spider.yaml
position: {x: 22, y: 11} position: {x: 22, y: 11}
velocity: {x: 18.0, y: 0} velocity: {x: 18.0, y: 0}
boundaries: boundaries:
x1: 20 position1: {x: 20, y: 11}
y1: 11 position2: {x: 23, y: 11}
x2: 23
y2: 11
color: green color: green
# Items in this room # Objetos en esta habitación
items: items:
- tileSetFile: items.gif - tileSetFile: items.gif
tile: 8 tile: 8

View File

@@ -1,27 +1,27 @@
# SANDWITCH AND COUNTER # SANDWITCH AND COUNTER
room: room:
number: "44" name_en: "SANDWITCH AND COUNTER"
name: "SANDWITCH AND COUNTER" name_ca: "SANDVITX I COUNTER STRIKE"
bgColor: black bgColor: black
border: cyan border: cyan
tileSetFile: standard.gif tileSetFile: standard.gif
# Room connections (null for no connection) # Conexiones de la habitación (null = sin conexión)
connections: connections:
up: "43" up: 43.yaml
down: "16" down: 16.yaml
left: null left: null
right: null right: null
# Item display colors # Colores de los objetos
itemColor1: white itemColor1: white
itemColor2: red itemColor2: red
# Conveyor belt direction: left (-1), none (0), right (1) # Dirección de la cinta transportadora: left, none, right
autoSurface: 0 conveyorBelt: right
# Tilemap: 16 rows × 32 columns (256×192 pixels @ 8px/tile) # Tilemap: 16 filas × 32 columnas (256×192 píxeles @ 8px/tile)
# Values are 0-based tile indices (0 = empty) # Índices de tiles (-1 = vacío)
tilemap: tilemap:
- [43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 25, -1, -1, -1, -1, -1, -1, 25, 43, 43, 43, 43, 43] - [43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 25, -1, -1, -1, -1, -1, -1, 25, 43, 43, 43, 43, 43]
- [36, 36, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 344, 36, 36, -1, -1, -1, -1, -1, -1, -1, -1, 36, 36, 36, 36] - [36, 36, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 344, 36, 36, -1, -1, -1, -1, -1, -1, -1, -1, 36, 36, 36, 36]
@@ -40,16 +40,14 @@ tilemap:
- [36, 36, 36, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 344, -1, -1, -1, -1, 342, -1, -1, -1, -1, -1, 36, 36, 36, 36] - [36, 36, 36, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 344, -1, -1, -1, -1, 342, -1, -1, -1, -1, -1, 36, 36, 36, 36]
- [37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 416, -1, -1, 416, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37] - [37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 416, -1, -1, 416, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37]
# Enemies in this room # Enemigos en esta habitación
enemies: enemies:
- animation: congo.yaml - animation: congo.yaml
position: {x: 2, y: 4} position: {x: 2, y: 4}
velocity: {x: 30.0, y: 0} velocity: {x: 30.0, y: 0}
boundaries: boundaries:
x1: 2 position1: {x: 2, y: 4}
y1: 4 position2: {x: 14, y: 4}
x2: 14
y2: 4
color: green color: green
flip: true flip: true
@@ -57,13 +55,11 @@ enemies:
position: {x: 23, y: 4} position: {x: 23, y: 4}
velocity: {x: 0, y: 48.0} velocity: {x: 0, y: 48.0}
boundaries: boundaries:
x1: 23 position1: {x: 23, y: 4}
y1: 4 position2: {x: 23, y: 13}
x2: 23
y2: 13
color: yellow color: yellow
# Items in this room # Objetos en esta habitación
items: items:
- tileSetFile: items.gif - tileSetFile: items.gif
tile: 8 tile: 8

View File

@@ -1,27 +1,27 @@
# FEEL THE PRESSURE # FEEL THE PRESSURE
room: room:
number: "45" name_en: "FEEL THE PRESSURE"
name: "FEEL THE PRESSURE" name_ca: "NOTA LA PRESSIO"
bgColor: bright_black bgColor: bright_black
border: bright_yellow border: bright_yellow
tileSetFile: standard.gif tileSetFile: standard.gif
# Room connections (null for no connection) # Conexiones de la habitación (null = sin conexión)
connections: connections:
up: null up: null
down: null down: null
left: "14" left: 14.yaml
right: "46" right: 46.yaml
# Item display colors # Colores de los objetos
itemColor1: yellow itemColor1: yellow
itemColor2: green itemColor2: green
# Conveyor belt direction: left (-1), none (0), right (1) # Dirección de la cinta transportadora: left, none, right
autoSurface: 0 conveyorBelt: none
# Tilemap: 16 rows × 32 columns (256×192 pixels @ 8px/tile) # Tilemap: 16 filas × 32 columnas (256×192 píxeles @ 8px/tile)
# Values are 0-based tile indices (0 = empty) # Índices de tiles (-1 = vacío)
tilemap: tilemap:
- [29, 29, 29, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1] - [29, 29, 29, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1]
- [29, 29, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1] - [29, 29, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1]
@@ -40,39 +40,33 @@ tilemap:
- [29, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 394, 394, 394, -1, -1, -1, 394, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1] - [29, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 394, 394, 394, -1, -1, -1, 394, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1]
- [29, 569, 569, 569, 569, 569, 569, 569, 569, 569, 569, 569, 569, 569, 569, 569, 569, 569, 569, 569, 569, 569, 569, 569, 569, 569, 569, 569, 569, 569, 569, 569] - [29, 569, 569, 569, 569, 569, 569, 569, 569, 569, 569, 569, 569, 569, 569, 569, 569, 569, 569, 569, 569, 569, 569, 569, 569, 569, 569, 569, 569, 569, 569, 569]
# Enemies in this room # Enemigos en esta habitación
enemies: enemies:
- animation: chip.yaml - animation: chip.yaml
position: {x: 4, y: 5} position: {x: 4, y: 5}
velocity: {x: 0, y: 60.0} velocity: {x: 0, y: 60.0}
boundaries: boundaries:
x1: 4 position1: {x: 4, y: 2}
y1: 2 position2: {x: 4, y: 13}
x2: 4
y2: 13
color: green color: green
- animation: chip.yaml - animation: chip.yaml
position: {x: 10, y: 4} position: {x: 10, y: 4}
velocity: {x: 0, y: 60.0} velocity: {x: 0, y: 60.0}
boundaries: boundaries:
x1: 10 position1: {x: 10, y: 2}
y1: 2 position2: {x: 10, y: 13}
x2: 10
y2: 13
color: bright_blue color: bright_blue
- animation: chip.yaml - animation: chip.yaml
position: {x: 16, y: 3} position: {x: 16, y: 3}
velocity: {x: 0, y: 60.0} velocity: {x: 0, y: 60.0}
boundaries: boundaries:
x1: 16 position1: {x: 16, y: 2}
y1: 2 position2: {x: 16, y: 13}
x2: 16
y2: 13
color: magenta color: magenta
# Items in this room # Objetos en esta habitación
items: items:
- tileSetFile: items.gif - tileSetFile: items.gif
tile: 54 tile: 54

View File

@@ -1,27 +1,27 @@
# FEEL THE HEAT # FEEL THE HEAT
room: room:
number: "46" name_en: "FEEL THE HEAT"
name: "FEEL THE HEAT" name_ca: "NOTA EL CALORET"
bgColor: bright_black bgColor: bright_black
border: bright_yellow border: bright_yellow
tileSetFile: standard.gif tileSetFile: standard.gif
# Room connections (null for no connection) # Conexiones de la habitación (null = sin conexión)
connections: connections:
up: null up: null
down: null down: null
left: "45" left: 45.yaml
right: null right: null
# Item display colors # Colores de los objetos
itemColor1: red itemColor1: red
itemColor2: magenta itemColor2: magenta
# Conveyor belt direction: left (-1), none (0), right (1) # Dirección de la cinta transportadora: left, none, right
autoSurface: -1 conveyorBelt: left
# Tilemap: 16 rows × 32 columns (256×192 pixels @ 8px/tile) # Tilemap: 16 filas × 32 columnas (256×192 píxeles @ 8px/tile)
# Values are 0-based tile indices (0 = empty) # Índices de tiles (-1 = vacío)
tilemap: tilemap:
- [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1] - [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1]
- [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1] - [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1]
@@ -40,16 +40,14 @@ tilemap:
- [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 134] - [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 134]
- [480, 480, 480, 480, 480, 480, 480, 480, 480, 480, 480, 480, 480, 480, 480, 480, 480, 480, 480, 480, 480, 480, 480, 480, 480, 480, 480, 480, 480, 480, 480, 134] - [480, 480, 480, 480, 480, 480, 480, 480, 480, 480, 480, 480, 480, 480, 480, 480, 480, 480, 480, 480, 480, 480, 480, 480, 480, 480, 480, 480, 480, 480, 480, 134]
# Enemies in this room # Enemigos en esta habitación
enemies: enemies:
- animation: batman_fire.yaml - animation: batman_fire.yaml
position: {x: 10, y: 13} position: {x: 10, y: 13}
velocity: {x: 78.0, y: 0} velocity: {x: 78.0, y: 0}
boundaries: boundaries:
x1: 0 position1: {x: 0, y: 13}
y1: 13 position2: {x: 29, y: 13}
x2: 29
y2: 13
color: cyan color: cyan
flip: true flip: true
@@ -57,23 +55,19 @@ enemies:
position: {x: 11, y: 7} position: {x: 11, y: 7}
velocity: {x: 0, y: 30.0} velocity: {x: 0, y: 30.0}
boundaries: boundaries:
x1: 11 position1: {x: 11, y: 1}
y1: 1 position2: {x: 11, y: 12}
x2: 11
y2: 12
color: green color: green
- animation: heavy.yaml - animation: heavy.yaml
position: {x: 18, y: 2} position: {x: 18, y: 2}
velocity: {x: 0, y: 48.0} velocity: {x: 0, y: 48.0}
boundaries: boundaries:
x1: 18 position1: {x: 18, y: 1}
y1: 1 position2: {x: 18, y: 12}
x2: 18
y2: 12
color: green color: green
# Items in this room # Objetos en esta habitación
items: items:
- tileSetFile: items.gif - tileSetFile: items.gif
tile: 28 tile: 28

View File

@@ -1,27 +1,27 @@
# THE BATTLE NEVER ENDS # THE BATTLE NEVER ENDS
room: room:
number: "47" name_en: "THE BATTLE NEVER ENDS"
name: "THE BATTLE NEVER ENDS" name_ca: "LA BATALLA MAI ACABA"
bgColor: black bgColor: black
border: white border: white
tileSetFile: standard.gif tileSetFile: standard.gif
# Room connections (null for no connection) # Conexiones de la habitación (null = sin conexión)
connections: connections:
up: "51" up: 51.yaml
down: null down: null
left: "48" left: 48.yaml
right: null right: null
# Item display colors # Colores de los objetos
itemColor1: red itemColor1: red
itemColor2: yellow itemColor2: yellow
# Conveyor belt direction: left (-1), none (0), right (1) # Dirección de la cinta transportadora: left, none, right
autoSurface: 0 conveyorBelt: none
# Tilemap: 16 rows × 32 columns (256×192 pixels @ 8px/tile) # Tilemap: 16 filas × 32 columnas (256×192 píxeles @ 8px/tile)
# Values are 0-based tile indices (0 = empty) # Índices de tiles (-1 = vacío)
tilemap: tilemap:
- [27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, -1, -1, -1, -1, -1, 504, 27, 27, 27, 85, 85] - [27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, -1, -1, -1, -1, -1, 504, 27, 27, 27, 85, 85]
- [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 504, -1, -1, -1, -1, 85, 85] - [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 504, -1, -1, -1, -1, 85, 85]
@@ -40,16 +40,14 @@ tilemap:
- [27, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 85, 85] - [27, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 85, 85]
- [27, 27, 27, 27, 27, 388, 388, 388, 27, 27, 27, 27, 27, 388, 388, 388, 27, 27, 27, 27, 27, 388, 388, 27, 388, 27, 27, 27, 27, 27, 85, 85] - [27, 27, 27, 27, 27, 388, 388, 388, 27, 27, 27, 27, 27, 388, 388, 388, 27, 27, 27, 27, 27, 388, 388, 27, 388, 27, 27, 27, 27, 27, 85, 85]
# Enemies in this room # Enemigos en esta habitación
enemies: enemies:
- animation: jailbattle_alien.yaml - animation: jailbattle_alien.yaml
position: {x: 10, y: 3} position: {x: 10, y: 3}
velocity: {x: 48.0, y: 0} velocity: {x: 48.0, y: 0}
boundaries: boundaries:
x1: 3 position1: {x: 3, y: 3}
y1: 3 position2: {x: 27, y: 3}
x2: 27
y2: 3
color: green color: green
flip: true flip: true
@@ -57,10 +55,8 @@ enemies:
position: {x: 25, y: 4} position: {x: 25, y: 4}
velocity: {x: 0, y: 48.0} velocity: {x: 0, y: 48.0}
boundaries: boundaries:
x1: 25 position1: {x: 25, y: 4}
y1: 4 position2: {x: 25, y: 10}
x2: 25
y2: 10
color: yellow color: yellow
flip: true flip: true
@@ -68,10 +64,8 @@ enemies:
position: {x: 7, y: 6} position: {x: 7, y: 6}
velocity: {x: 0, y: 30.0} velocity: {x: 0, y: 30.0}
boundaries: boundaries:
x1: 7 position1: {x: 7, y: 6}
y1: 6 position2: {x: 7, y: 13}
x2: 7
y2: 13
color: red color: red
flip: true flip: true
@@ -79,14 +73,12 @@ enemies:
position: {x: 18, y: 13} position: {x: 18, y: 13}
velocity: {x: 30.0, y: 0} velocity: {x: 30.0, y: 0}
boundaries: boundaries:
x1: 15 position1: {x: 15, y: 13}
y1: 13 position2: {x: 27, y: 13}
x2: 27
y2: 13
color: cyan color: cyan
flip: true flip: true
# Items in this room # Objetos en esta habitación
items: items:
- tileSetFile: items.gif - tileSetFile: items.gif
tile: 19 tile: 19

View File

@@ -1,27 +1,27 @@
# WELCOME TO THE JAILBATTLE # WELCOME TO THE JAILBATTLE
room: room:
number: "48" name_en: "WELCOME TO THE JAILBATTLE"
name: "WELCOME TO THE JAILBATTLE" name_ca: "BENVINGUTS A JAILBATTLE"
bgColor: green bgColor: green
border: bright_green border: bright_green
tileSetFile: standard.gif tileSetFile: standard.gif
# Room connections (null for no connection) # Conexiones de la habitación (null = sin conexión)
connections: connections:
up: null up: null
down: "49" down: 49.yaml
left: null left: null
right: "47" right: 47.yaml
# Item display colors # Colores de los objetos
itemColor1: white itemColor1: white
itemColor2: green itemColor2: green
# Conveyor belt direction: left (-1), none (0), right (1) # Dirección de la cinta transportadora: left, none, right
autoSurface: 0 conveyorBelt: none
# Tilemap: 16 rows × 32 columns (256×192 pixels @ 8px/tile) # Tilemap: 16 filas × 32 columnas (256×192 píxeles @ 8px/tile)
# Values are 0-based tile indices (0 = empty) # Índices de tiles (-1 = vacío)
tilemap: tilemap:
- [32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32] - [32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32]
- [32, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1] - [32, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1]
@@ -40,16 +40,14 @@ tilemap:
- [32, -1, -1, 504, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 32] - [32, -1, -1, 504, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 32]
- [32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, -1, -1, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32] - [32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, -1, -1, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32]
# Enemies in this room # Enemigos en esta habitación
enemies: enemies:
- animation: jailbattle_human.yaml - animation: jailbattle_human.yaml
position: {x: 17, y: 6} position: {x: 17, y: 6}
velocity: {x: 30.0, y: 0} velocity: {x: 30.0, y: 0}
boundaries: boundaries:
x1: 12 position1: {x: 12, y: 6}
y1: 6 position2: {x: 27, y: 6}
x2: 27
y2: 6
color: white color: white
flip: true flip: true
@@ -57,10 +55,8 @@ enemies:
position: {x: 2, y: 13} position: {x: 2, y: 13}
velocity: {x: 36.0, y: 0} velocity: {x: 36.0, y: 0}
boundaries: boundaries:
x1: 2 position1: {x: 2, y: 13}
y1: 13 position2: {x: 16, y: 13}
x2: 16
y2: 13
color: white color: white
flip: true flip: true
@@ -68,14 +64,12 @@ enemies:
position: {x: 24, y: 10} position: {x: 24, y: 10}
velocity: {x: 0, y: 30.0} velocity: {x: 0, y: 30.0}
boundaries: boundaries:
x1: 24 position1: {x: 24, y: 9}
y1: 9 position2: {x: 24, y: 13}
x2: 24
y2: 13
color: white color: white
flip: true flip: true
# Items in this room # Objetos en esta habitación
items: items:
- tileSetFile: items.gif - tileSetFile: items.gif
tile: 19 tile: 19

View File

@@ -1,27 +1,27 @@
# WE NEED A ROBOT # WE NEED A ROBOT
room: room:
number: "49" name_en: "WE NEED A JAILROBOT"
name: "WE NEED A ROBOT" name_ca: "NECESSITEM UN JAILROBOT"
bgColor: black bgColor: black
border: red border: red
tileSetFile: standard.gif tileSetFile: standard.gif
# Room connections (null for no connection) # Conexiones de la habitación (null = sin conexión)
connections: connections:
up: "48" up: 48.yaml
down: null down: null
left: "50" left: 50.yaml
right: "17" right: 17.yaml
# Item display colors # Colores de los objetos
itemColor1: yellow itemColor1: yellow
itemColor2: magenta itemColor2: magenta
# Conveyor belt direction: left (-1), none (0), right (1) # Dirección de la cinta transportadora: left, none, right
autoSurface: 0 conveyorBelt: none
# Tilemap: 16 rows × 32 columns (256×192 pixels @ 8px/tile) # Tilemap: 16 filas × 32 columnas (256×192 píxeles @ 8px/tile)
# Values are 0-based tile indices (0 = empty) # Índices de tiles (-1 = vacío)
tilemap: tilemap:
- [38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, -1, -1, -1, -1, 522, 38, 38, 38, 38, 38, 38, 38, 38] - [38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, -1, -1, -1, -1, 522, 38, 38, 38, 38, 38, 38, 38, 38]
- [38, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 522, -1, -1, -1, -1, -1, -1, -1, -1, 38] - [38, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 522, -1, -1, -1, -1, -1, -1, -1, -1, 38]
@@ -40,16 +40,14 @@ tilemap:
- [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 522, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1] - [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 522, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1]
- [38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38] - [38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38]
# Enemies in this room # Enemigos en esta habitación
enemies: enemies:
- animation: robot.yaml - animation: robot.yaml
position: {x: 10, y: 8} position: {x: 10, y: 8}
velocity: {x: 42.0, y: 0} velocity: {x: 42.0, y: 0}
boundaries: boundaries:
x1: 1 position1: {x: 1, y: 8}
y1: 8 position2: {x: 29, y: 8}
x2: 29
y2: 8
color: yellow color: yellow
flip: true flip: true

View File

@@ -1,27 +1,27 @@
# STORED JAILGAMES # STORED JAILGAMES
room: room:
number: "50" name_en: "STORED JAILGAMES"
name: "STORED JAILGAMES" name_ca: "EL MAGATZEM DE JAILGAMES"
bgColor: black bgColor: black
border: blue border: blue
tileSetFile: standard.gif tileSetFile: standard.gif
# Room connections (null for no connection) # Conexiones de la habitación (null = sin conexión)
connections: connections:
up: null up: null
down: null down: null
left: null left: null
right: "49" right: 49.yaml
# Item display colors # Colores de los objetos
itemColor1: yellow itemColor1: yellow
itemColor2: magenta itemColor2: magenta
# Conveyor belt direction: left (-1), none (0), right (1) # Dirección de la cinta transportadora: left, none, right
autoSurface: 0 conveyorBelt: right
# Tilemap: 16 rows × 32 columns (256×192 pixels @ 8px/tile) # Tilemap: 16 filas × 32 columnas (256×192 píxeles @ 8px/tile)
# Values are 0-based tile indices (0 = empty) # Índices de tiles (-1 = vacío)
tilemap: tilemap:
- [41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41] - [41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41]
- [41, 41, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 41, 41] - [41, 41, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 41, 41]
@@ -40,29 +40,25 @@ tilemap:
- [41, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 340, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1] - [41, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 340, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1]
- [41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41] - [41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41]
# Enemies in this room # Enemigos en esta habitación
enemies: enemies:
- animation: floppy.yaml - animation: floppy.yaml
position: {x: 7, y: 2} position: {x: 7, y: 2}
velocity: {x: 0, y: 30.0} velocity: {x: 0, y: 30.0}
boundaries: boundaries:
x1: 7 position1: {x: 7, y: 2}
y1: 2 position2: {x: 7, y: 12}
x2: 7
y2: 12
color: magenta color: magenta
- animation: floppy.yaml - animation: floppy.yaml
position: {x: 20, y: 6} position: {x: 20, y: 6}
velocity: {x: 0, y: 30.0} velocity: {x: 0, y: 30.0}
boundaries: boundaries:
x1: 20 position1: {x: 20, y: 2}
y1: 2 position2: {x: 20, y: 12}
x2: 20
y2: 12
color: yellow color: yellow
# Items in this room # Objetos en esta habitación
items: items:
- tileSetFile: items.gif - tileSetFile: items.gif
tile: 1 tile: 1

View File

@@ -1,27 +1,27 @@
# MINI ASCII # MINI ASCII
room: room:
number: "51" name_en: "MINI ASCII"
name: "MINI ASCII" name_ca: "MINI ASCII"
bgColor: black bgColor: black
border: black border: black
tileSetFile: standard.gif tileSetFile: standard.gif
# Room connections (null for no connection) # Conexiones de la habitación (null = sin conexión)
connections: connections:
up: "53" up: 53.yaml
down: "47" down: 47.yaml
left: "52" left: 52.yaml
right: null right: null
# Item display colors # Colores de los objetos
itemColor1: bright_white itemColor1: bright_white
itemColor2: black itemColor2: black
# Conveyor belt direction: left (-1), none (0), right (1) # Dirección de la cinta transportadora: left, none, right
autoSurface: 0 conveyorBelt: none
# Tilemap: 16 rows × 32 columns (256×192 pixels @ 8px/tile) # Tilemap: 16 filas × 32 columnas (256×192 píxeles @ 8px/tile)
# Values are 0-based tile indices (0 = empty) # Índices de tiles (-1 = vacío)
tilemap: tilemap:
- [186, 183, 183, 183, 183, 183, 183, 183, 183, 183, 183, 183, 183, 183, 183, 183, 183, 183, 183, 183, 183, 183, 183, 294, -1, -1, 183, 183, 183, 183, 183, 182] - [186, 183, 183, 183, 183, 183, 183, 183, 183, 183, 183, 183, 183, 183, 183, 183, 183, 183, 183, 183, 183, 183, 183, 294, -1, -1, 183, 183, 183, 183, 183, 182]
- [186, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 182] - [186, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 182]
@@ -40,39 +40,33 @@ tilemap:
- [-1, -1, -1, 181, 181, 181, 181, 181, 290, 181, 181, 181, 181, 181, 181, 181, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 182] - [-1, -1, -1, 181, 181, 181, 181, 181, 290, 181, 181, 181, 181, 181, 181, 181, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 182]
- [184, 184, 184, 184, 184, 296, 296, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 180, 180, -1, -1, 180, 180, 180, 180, 180, 180, 180, 182] - [184, 184, 184, 184, 184, 296, 296, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 180, 180, -1, -1, 180, 180, 180, 180, 180, 180, 180, 182]
# Enemies in this room # Enemigos en esta habitación
enemies: enemies:
- animation: amstrad_cs.yaml - animation: amstrad_cs.yaml
position: {x: 1, y: 6} position: {x: 1, y: 6}
velocity: {x: 72.0, y: 0} velocity: {x: 72.0, y: 0}
boundaries: boundaries:
x1: 1 position1: {x: 1, y: 6}
y1: 6 position2: {x: 30, y: 6}
x2: 30
y2: 6
color: white color: white
- animation: amstrad_cs.yaml - animation: amstrad_cs.yaml
position: {x: 19, y: 1} position: {x: 19, y: 1}
velocity: {x: 0, y: 72.0} velocity: {x: 0, y: 72.0}
boundaries: boundaries:
x1: 19 position1: {x: 19, y: 1}
y1: 1 position2: {x: 19, y: 14}
x2: 19
y2: 14
color: yellow color: yellow
- animation: amstrad_cs.yaml - animation: amstrad_cs.yaml
position: {x: 5, y: 6} position: {x: 5, y: 6}
velocity: {x: 0, y: 72.0} velocity: {x: 0, y: 72.0}
boundaries: boundaries:
x1: 5 position1: {x: 5, y: 1}
y1: 1 position2: {x: 5, y: 12}
x2: 5
y2: 12
color: green color: green
# Items in this room # Objetos en esta habitación
items: items:
- tileSetFile: items.gif - tileSetFile: items.gif
tile: 39 tile: 39

View File

@@ -1,27 +1,27 @@
# BREAKOUT.LUA # BREAKOUT.LUA
room: room:
number: "52" name_en: "BREAKOUT.LUA"
name: "BREAKOUT.LUA" name_ca: "BREAKOUT.LUA"
bgColor: black bgColor: black
border: black border: black
tileSetFile: standard.gif tileSetFile: standard.gif
# Room connections (null for no connection) # Conexiones de la habitación (null = sin conexión)
connections: connections:
up: null up: null
down: null down: null
left: null left: null
right: "51" right: 51.yaml
# Item display colors # Colores de los objetos
itemColor1: bright_white itemColor1: bright_white
itemColor2: black itemColor2: black
# Conveyor belt direction: left (-1), none (0), right (1) # Dirección de la cinta transportadora: left, none, right
autoSurface: 0 conveyorBelt: none
# Tilemap: 16 rows × 32 columns (256×192 pixels @ 8px/tile) # Tilemap: 16 filas × 32 columnas (256×192 píxeles @ 8px/tile)
# Values are 0-based tile indices (0 = empty) # Índices de tiles (-1 = vacío)
tilemap: tilemap:
- [183, 181, 181, 181, 181, 181, 181, 181, 290, 290, 181, 181, 186, 186, 186, 186, 186, 186, 309, 186, 186, 186, 186, 186, 186, 186, 184, 184, 184, 184, 296, 296] - [183, 181, 181, 181, 181, 181, 181, 181, 290, 290, 181, 181, 186, 186, 186, 186, 186, 186, 309, 186, 186, 186, 186, 186, 186, 186, 184, 184, 184, 184, 296, 296]
- [183, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 288] - [183, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 288]
@@ -40,19 +40,17 @@ tilemap:
- [185, 181, 181, 290, 181, 181, 181, 181, 183, 183, 183, 183, 294, 183, 183, 183, 183, 185, 185, 298, 185, 185, 185, 185, 185, 185, -1, -1, -1, -1, -1, -1] - [185, 181, 181, 290, 181, 181, 181, 181, 183, 183, 183, 183, 294, 183, 183, 183, 183, 185, 185, 298, 185, 185, 185, 185, 185, 185, -1, -1, -1, -1, -1, -1]
- [182, 182, 182, 182, 182, 292, 288, 180, 180, 180, 180, 180, 180, 180, 180, 180, 180, 180, 180, 180, 180, 180, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184] - [182, 182, 182, 182, 182, 292, 288, 180, 180, 180, 180, 180, 180, 180, 180, 180, 180, 180, 180, 180, 180, 180, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184]
# Enemies in this room # Enemigos en esta habitación
enemies: enemies:
- animation: breakout.yaml - animation: breakout.yaml
position: {x: 1, y: 6} position: {x: 1, y: 6}
velocity: {x: 132.0, y: 0} velocity: {x: 132.0, y: 0}
boundaries: boundaries:
x1: 1 position1: {x: 1, y: 6}
y1: 6 position2: {x: 22, y: 6}
x2: 22
y2: 6
color: white color: white
# Items in this room # Objetos en esta habitación
items: items:
- tileSetFile: items.gif - tileSetFile: items.gif
tile: 39 tile: 39

View File

@@ -1,27 +1,27 @@
# P.A.C.O. WORKSHOP # P.A.C.O. WORKSHOP
room: room:
number: "53" name_en: "P.A.C.O. WORKSHOP"
name: "P.A.C.O. WORKSHOP" name_ca: "EL TALLER DE P.A.C.O."
bgColor: black bgColor: black
border: yellow border: yellow
tileSetFile: standard.gif tileSetFile: standard.gif
# Room connections (null for no connection) # Conexiones de la habitación (null = sin conexión)
connections: connections:
up: null up: null
down: "51" down: 51.yaml
left: null left: null
right: "42" right: 42.yaml
# Item display colors # Colores de los objetos
itemColor1: magenta itemColor1: magenta
itemColor2: red itemColor2: red
# Conveyor belt direction: left (-1), none (0), right (1) # Dirección de la cinta transportadora: left, none, right
autoSurface: 0 conveyorBelt: right
# Tilemap: 16 rows × 32 columns (256×192 pixels @ 8px/tile) # Tilemap: 16 filas × 32 columnas (256×192 píxeles @ 8px/tile)
# Values are 0-based tile indices (0 = empty) # Índices de tiles (-1 = vacío)
tilemap: tilemap:
- [35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35] - [35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35]
- [35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35] - [35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35]
@@ -40,49 +40,41 @@ tilemap:
- [134, -1, -1, -1, -1, -1, -1, 314, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1] - [134, -1, -1, -1, -1, -1, -1, 314, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1]
- [35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, -1, -1, 35, 35, 35, 35, 35, 35] - [35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, -1, -1, 35, 35, 35, 35, 35, 35]
# Enemies in this room # Enemigos en esta habitación
enemies: enemies:
- animation: paco.yaml - animation: paco.yaml
position: {x: 6, y: 6} position: {x: 6, y: 6}
velocity: {x: 18.0, y: 0} velocity: {x: 18.0, y: 0}
boundaries: boundaries:
x1: 6 position1: {x: 6, y: 6}
y1: 6 position2: {x: 13, y: 6}
x2: 13
y2: 6
color: yellow color: yellow
- animation: paco.yaml - animation: paco.yaml
position: {x: 16, y: 2} position: {x: 16, y: 2}
velocity: {x: 0, y: 48.0} velocity: {x: 0, y: 48.0}
boundaries: boundaries:
x1: 16 position1: {x: 16, y: 2}
y1: 2 position2: {x: 16, y: 13}
x2: 16
y2: 13
color: bright_red color: bright_red
- animation: wave.yaml - animation: wave.yaml
position: {x: 1, y: 10} position: {x: 1, y: 10}
velocity: {x: 24.0, y: 0} velocity: {x: 24.0, y: 0}
boundaries: boundaries:
x1: 1 position1: {x: 1, y: 10}
y1: 10 position2: {x: 14, y: 10}
x2: 14
y2: 10
color: bright_yellow color: bright_yellow
- animation: lamp.yaml - animation: lamp.yaml
position: {x: 22, y: 2} position: {x: 22, y: 2}
velocity: {x: 0, y: 0} velocity: {x: 0, y: 0}
boundaries: boundaries:
x1: 22 position1: {x: 22, y: 2}
y1: 2 position2: {x: 22, y: 2}
x2: 22
y2: 2
color: bright_yellow color: bright_yellow
# Items in this room # Objetos en esta habitación
items: items:
- tileSetFile: items.gif - tileSetFile: items.gif
tile: 40 tile: 40

View File

@@ -1,27 +1,27 @@
# THE BASEMENT # THE BASEMENT
room: room:
number: "54" name_en: "THE BASEMENT"
name: "THE BASEMENT" name_ca: "EL SOTAN"
bgColor: black bgColor: black
border: blue border: blue
tileSetFile: standard.gif tileSetFile: standard.gif
# Room connections (null for no connection) # Conexiones de la habitación (null = sin conexión)
connections: connections:
up: "18" up: 18.yaml
down: null down: null
left: null left: null
right: "55" right: 55.yaml
# Item display colors # Colores de los objetos
itemColor1: yellow itemColor1: yellow
itemColor2: blue itemColor2: blue
# Conveyor belt direction: left (-1), none (0), right (1) # Dirección de la cinta transportadora: left, none, right
autoSurface: 0 conveyorBelt: none
# Tilemap: 16 rows × 32 columns (256×192 pixels @ 8px/tile) # Tilemap: 16 filas × 32 columnas (256×192 píxeles @ 8px/tile)
# Values are 0-based tile indices (0 = empty) # Índices de tiles (-1 = vacío)
tilemap: tilemap:
- [15, 15, 15, 15, 15, 15, 15, 15, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, -1, -1, -1, -1, 518, 348, 348, 348, 15, 15, 15, 15, 15, 15] - [15, 15, 15, 15, 15, 15, 15, 15, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, -1, -1, -1, -1, 518, 348, 348, 348, 15, 15, 15, 15, 15, 15]
- [15, 15, 15, 15, 15, 301, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 518, -1, -1, -1, -1, -1, -1, 301, 15, 15, 15] - [15, 15, 15, 15, 15, 301, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 518, -1, -1, -1, -1, -1, -1, 301, 15, 15, 15]
@@ -40,39 +40,33 @@ tilemap:
- [31, -1, -1, -1, -1, -1, -1, -1, -1, -1, 336, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 518, 31, 31, 15, 133, 15, 133, 15, 15, 15, 15] - [31, -1, -1, -1, -1, -1, -1, -1, -1, -1, 336, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 518, 31, 31, 15, 133, 15, 133, 15, 15, 15, 15]
- [31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348] - [31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348]
# Enemies in this room # Enemigos en esta habitación
enemies: enemies:
- animation: spider.yaml - animation: spider.yaml
position: {x: 2, y: 14} position: {x: 2, y: 14}
velocity: {x: 30.0, y: 0} velocity: {x: 30.0, y: 0}
boundaries: boundaries:
x1: 2 position1: {x: 2, y: 14}
y1: 14 position2: {x: 18, y: 14}
x2: 18
y2: 14
color: magenta color: magenta
- animation: spider.yaml - animation: spider.yaml
position: {x: 10, y: 1} position: {x: 10, y: 1}
velocity: {x: 0, y: 60.0} velocity: {x: 0, y: 60.0}
boundaries: boundaries:
x1: 10 position1: {x: 10, y: 1}
y1: 1 position2: {x: 10, y: 6}
x2: 10
y2: 6
color: yellow color: yellow
- animation: spider.yaml - animation: spider.yaml
position: {x: 7, y: 11} position: {x: 7, y: 11}
velocity: {x: 18.0, y: 0} velocity: {x: 18.0, y: 0}
boundaries: boundaries:
x1: 7 position1: {x: 7, y: 11}
y1: 11 position2: {x: 14, y: 11}
x2: 14
y2: 11
color: cyan color: cyan
# Items in this room # Objetos en esta habitación
items: items:
- tileSetFile: items.gif - tileSetFile: items.gif
tile: 35 tile: 35

View File

@@ -1,27 +1,27 @@
# THAT'S A GUITAR # THAT'S A GUITAR
room: room:
number: "55" name_en: "THAT'S A GUITAR"
name: "THAT'S A GUITAR" name_ca: "AIXO ES UNA GUITARRA"
bgColor: black bgColor: black
border: black border: black
tileSetFile: standard.gif tileSetFile: standard.gif
# Room connections (null for no connection) # Conexiones de la habitación (null = sin conexión)
connections: connections:
up: null up: null
down: null down: null
left: "54" left: 54.yaml
right: "56" right: 56.yaml
# Item display colors # Colores de los objetos
itemColor1: magenta itemColor1: magenta
itemColor2: red itemColor2: red
# Conveyor belt direction: left (-1), none (0), right (1) # Dirección de la cinta transportadora: left, none, right
autoSurface: -1 conveyorBelt: left
# Tilemap: 16 rows × 32 columns (256×192 pixels @ 8px/tile) # Tilemap: 16 filas × 32 columnas (256×192 píxeles @ 8px/tile)
# Values are 0-based tile indices (0 = empty) # Índices de tiles (-1 = vacío)
tilemap: tilemap:
- [15, 15, 15, -1, -1, -1, -1, 301, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15] - [15, 15, 15, -1, -1, -1, -1, 301, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15]
- [15, 301, -1, -1, -1, -1, -1, -1, 301, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 15, 15, 15, 15, 15, 15, 15, 15] - [15, 301, -1, -1, -1, -1, -1, -1, 301, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 15, 15, 15, 15, 15, 15, 15, 15]
@@ -40,29 +40,25 @@ tilemap:
- [15, 15, 15, 15, 15, 15, 537, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1] - [15, 15, 15, 15, 15, 15, 537, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1]
- [348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348] - [348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348, 348]
# Enemies in this room # Enemigos en esta habitación
enemies: enemies:
- animation: dimallas.yaml - animation: dimallas.yaml
position: {x: 15, y: 13} position: {x: 15, y: 13}
velocity: {x: 36.0, y: 0} velocity: {x: 36.0, y: 0}
boundaries: boundaries:
x1: 9 position1: {x: 9, y: 13}
y1: 13 position2: {x: 25, y: 13}
x2: 25
y2: 13
color: cyan color: cyan
- animation: guitar.yaml - animation: guitar.yaml
position: {x: 16, y: 4} position: {x: 16, y: 4}
velocity: {x: 0, y: 18.0} velocity: {x: 0, y: 18.0}
boundaries: boundaries:
x1: 16 position1: {x: 16, y: 4}
y1: 4 position2: {x: 16, y: 10}
x2: 16
y2: 10
color: red color: red
# Items in this room # Objetos en esta habitación
items: items:
- tileSetFile: items.gif - tileSetFile: items.gif
tile: 25 tile: 25

View File

@@ -1,27 +1,27 @@
# HEAVY DEMONS ON LEGGINS # HEAVY DEMONS ON LEGGINS
room: room:
number: "56" name_en: "HEAVY DEMONS ON LEGGINS"
name: "HEAVY DEMONS ON LEGGINS" name_ca: "DIMONIS HEAVIES AMB MALLES"
bgColor: black bgColor: black
border: black border: black
tileSetFile: standard.gif tileSetFile: standard.gif
# Room connections (null for no connection) # Conexiones de la habitación (null = sin conexión)
connections: connections:
up: null up: null
down: null down: null
left: "55" left: 55.yaml
right: "57" right: 57.yaml
# Item display colors # Colores de los objetos
itemColor1: bright_red itemColor1: bright_red
itemColor2: green itemColor2: green
# Conveyor belt direction: left (-1), none (0), right (1) # Dirección de la cinta transportadora: left, none, right
autoSurface: -1 conveyorBelt: left
# Tilemap: 16 rows × 32 columns (256×192 pixels @ 8px/tile) # Tilemap: 16 filas × 32 columnas (256×192 píxeles @ 8px/tile)
# Values are 0-based tile indices (0 = empty) # Índices de tiles (-1 = vacío)
tilemap: tilemap:
- [-1, -1, -1, 302, 302, 302, 302, -1, 302, 302, 302, 302, 302, -1, 302, 302, 302, 302, 302, 302, 302, 302, 302, -1, -1, 302, 302, 302, 302, -1, -1, -1] - [-1, -1, -1, 302, 302, 302, 302, -1, 302, 302, 302, 302, 302, -1, 302, 302, 302, 302, 302, 302, 302, 302, 302, -1, -1, 302, 302, 302, 302, -1, -1, -1]
- [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1] - [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1]
@@ -40,29 +40,25 @@ tilemap:
- [-1, -1, -1, -1, -1, 519, -1, 562, 562, 562, 562, 562, 562, 562, 562, 562, 562, 562, 562, 562, 562, 562, 562, 562, 562, -1, 543, -1, -1, -1, 514, 17] - [-1, -1, -1, -1, -1, 519, -1, 562, 562, 562, 562, 562, 562, 562, 562, 562, 562, 562, 562, 562, 562, 562, 562, 562, 562, -1, 543, -1, -1, -1, 514, 17]
- [17, 17, 17, 17, 17, 17, 17, 492, 492, 492, 492, 492, 492, 492, 492, 492, 492, 492, 492, 492, 492, 492, 492, 492, 492, 17, 17, 17, 17, 17, 17, 17] - [17, 17, 17, 17, 17, 17, 17, 492, 492, 492, 492, 492, 492, 492, 492, 492, 492, 492, 492, 492, 492, 492, 492, 492, 492, 17, 17, 17, 17, 17, 17, 17]
# Enemies in this room # Enemigos en esta habitación
enemies: enemies:
- animation: demon.yaml - animation: demon.yaml
position: {x: 12, y: 3} position: {x: 12, y: 3}
velocity: {x: 0, y: 30.0} velocity: {x: 0, y: 30.0}
boundaries: boundaries:
x1: 12 position1: {x: 12, y: 3}
y1: 3 position2: {x: 12, y: 12}
x2: 12
y2: 12
color: red color: red
- animation: demon.yaml - animation: demon.yaml
position: {x: 18, y: 5} position: {x: 18, y: 5}
velocity: {x: 0, y: 30.0} velocity: {x: 0, y: 30.0}
boundaries: boundaries:
x1: 18 position1: {x: 18, y: 3}
y1: 3 position2: {x: 18, y: 12}
x2: 18
y2: 12
color: red color: red
# Items in this room # Objetos en esta habitación
items: items:
- tileSetFile: items.gif - tileSetFile: items.gif
tile: 28 tile: 28

View File

@@ -1,27 +1,27 @@
# JAILGAMES GO TO HELL # JAILGAMES GO TO HELL
room: room:
number: "57" name_en: "JAILGAMES GO TO HELL"
name: "JAILGAMES GO TO HELL" name_ca: "JAILGAMES A L'INFERN"
bgColor: red bgColor: red
border: bright_red border: bright_red
tileSetFile: standard.gif tileSetFile: standard.gif
# Room connections (null for no connection) # Conexiones de la habitación (null = sin conexión)
connections: connections:
up: null up: null
down: null down: null
left: "56" left: 56.yaml
right: "58" right: 58.yaml
# Item display colors # Colores de los objetos
itemColor1: yellow itemColor1: yellow
itemColor2: green itemColor2: green
# Conveyor belt direction: left (-1), none (0), right (1) # Dirección de la cinta transportadora: left, none, right
autoSurface: -1 conveyorBelt: left
# Tilemap: 16 rows × 32 columns (256×192 pixels @ 8px/tile) # Tilemap: 16 filas × 32 columnas (256×192 píxeles @ 8px/tile)
# Values are 0-based tile indices (0 = empty) # Índices de tiles (-1 = vacío)
tilemap: tilemap:
- [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1] - [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1]
- [18, -1, -1, -1, -1, -1, -1, 18, -1, -1, -1, -1, -1, -1, 18, -1, -1, -1, -1, -1, -1, 18, -1, -1, -1, -1, -1, -1, -1, -1, -1, 18] - [18, -1, -1, -1, -1, -1, -1, 18, -1, -1, -1, -1, -1, -1, 18, -1, -1, -1, -1, -1, -1, 18, -1, -1, -1, -1, -1, -1, -1, -1, -1, 18]
@@ -40,39 +40,33 @@ tilemap:
- [18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18] - [18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18]
- [492, 492, 492, 492, 492, 492, 492, 492, 492, 492, 492, 492, 492, 492, 492, 492, 492, 492, 492, 492, 492, 492, 492, 492, 492, 492, 492, 492, 492, 492, 492, 492] - [492, 492, 492, 492, 492, 492, 492, 492, 492, 492, 492, 492, 492, 492, 492, 492, 492, 492, 492, 492, 492, 492, 492, 492, 492, 492, 492, 492, 492, 492, 492, 492]
# Enemies in this room # Enemigos en esta habitación
enemies: enemies:
- animation: dimallas.yaml - animation: dimallas.yaml
position: {x: 13, y: 12} position: {x: 13, y: 12}
velocity: {x: 54.0, y: 0} velocity: {x: 54.0, y: 0}
boundaries: boundaries:
x1: 4 position1: {x: 4, y: 12}
y1: 12 position2: {x: 21, y: 12}
x2: 21
y2: 12
color: green color: green
- animation: heavy.yaml - animation: heavy.yaml
position: {x: 17, y: 5} position: {x: 17, y: 5}
velocity: {x: 0, y: 36.0} velocity: {x: 0, y: 36.0}
boundaries: boundaries:
x1: 17 position1: {x: 17, y: 2}
y1: 2 position2: {x: 17, y: 10}
x2: 17
y2: 10
color: white color: white
- animation: heavy.yaml - animation: heavy.yaml
position: {x: 10, y: 8} position: {x: 10, y: 8}
velocity: {x: 0, y: 36.0} velocity: {x: 0, y: 36.0}
boundaries: boundaries:
x1: 10 position1: {x: 10, y: 2}
y1: 2 position2: {x: 10, y: 10}
x2: 10
y2: 10
color: yellow color: yellow
# Items in this room # Objetos en esta habitación
items: items:
- tileSetFile: items.gif - tileSetFile: items.gif
tile: 32 tile: 32

View File

@@ -1,27 +1,27 @@
# CHIRPING # CHIRPING
room: room:
number: "58" name_en: "CHIRPING"
name: "CHIRPING" name_ca: "CHIRPING"
bgColor: black bgColor: black
border: magenta border: magenta
tileSetFile: standard.gif tileSetFile: standard.gif
# Room connections (null for no connection) # Conexiones de la habitación (null = sin conexión)
connections: connections:
up: null up: null
down: null down: null
left: "57" left: 57.yaml
right: "59" right: 59.yaml
# Item display colors # Colores de los objetos
itemColor1: yellow itemColor1: yellow
itemColor2: magenta itemColor2: magenta
# Conveyor belt direction: left (-1), none (0), right (1) # Dirección de la cinta transportadora: left, none, right
autoSurface: 0 conveyorBelt: none
# Tilemap: 16 rows × 32 columns (256×192 pixels @ 8px/tile) # Tilemap: 16 filas × 32 columnas (256×192 píxeles @ 8px/tile)
# Values are 0-based tile indices (0 = empty) # Índices de tiles (-1 = vacío)
tilemap: tilemap:
- [36, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 36] - [36, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 36]
- [36, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 36] - [36, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 36]
@@ -40,39 +40,33 @@ tilemap:
- [36, 536, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 544, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1] - [36, 536, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 544, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1]
- [36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36] - [36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36]
# Enemies in this room # Enemigos en esta habitación
enemies: enemies:
- animation: bird.yaml - animation: bird.yaml
position: {x: 4, y: 2} position: {x: 4, y: 2}
velocity: {x: 0, y: 30.0} velocity: {x: 0, y: 30.0}
boundaries: boundaries:
x1: 4 position1: {x: 4, y: 2}
y1: 2 position2: {x: 4, y: 12}
x2: 4
y2: 12
color: yellow color: yellow
- animation: bird.yaml - animation: bird.yaml
position: {x: 9, y: 11} position: {x: 9, y: 11}
velocity: {x: 0, y: -30.0} velocity: {x: 0, y: -30.0}
boundaries: boundaries:
x1: 9 position1: {x: 9, y: 0}
y1: 0 position2: {x: 9, y: 10}
x2: 9
y2: 10
color: green color: green
- animation: bird.yaml - animation: bird.yaml
position: {x: 26, y: 5} position: {x: 26, y: 5}
velocity: {x: 0, y: -30.0} velocity: {x: 0, y: -30.0}
boundaries: boundaries:
x1: 26 position1: {x: 26, y: 2}
y1: 2 position2: {x: 26, y: 12}
x2: 26
y2: 12
color: white color: white
# Items in this room # Objetos en esta habitación
items: items:
- tileSetFile: items.gif - tileSetFile: items.gif
tile: 10 tile: 10

View File

@@ -1,27 +1,27 @@
# STATIC # STATIC
room: room:
number: "59" name_en: "STATIC"
name: "STATIC" name_ca: "ESTATICA"
bgColor: black bgColor: black
border: bright_magenta border: bright_magenta
tileSetFile: standard.gif tileSetFile: standard.gif
# Room connections (null for no connection) # Conexiones de la habitación (null = sin conexión)
connections: connections:
up: "60" up: 60.yaml
down: null down: null
left: "58" left: 58.yaml
right: null right: null
# Item display colors # Colores de los objetos
itemColor1: yellow itemColor1: yellow
itemColor2: magenta itemColor2: magenta
# Conveyor belt direction: left (-1), none (0), right (1) # Dirección de la cinta transportadora: left, none, right
autoSurface: 0 conveyorBelt: none
# Tilemap: 16 rows × 32 columns (256×192 pixels @ 8px/tile) # Tilemap: 16 filas × 32 columnas (256×192 píxeles @ 8px/tile)
# Values are 0-based tile indices (0 = empty) # Índices de tiles (-1 = vacío)
tilemap: tilemap:
- [63, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 505, -1, 63] - [63, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 505, -1, 63]
- [63, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 505, -1, -1, 63] - [63, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 505, -1, -1, 63]
@@ -40,39 +40,33 @@ tilemap:
- [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 505, -1, -1, -1, -1, -1, -1, -1, 63] - [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 505, -1, -1, -1, -1, -1, -1, -1, 63]
- [63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63] - [63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63]
# Enemies in this room # Enemigos en esta habitación
enemies: enemies:
- animation: wave.yaml - animation: wave.yaml
position: {x: 1, y: 10} position: {x: 1, y: 10}
velocity: {x: 48.0, y: 0} velocity: {x: 48.0, y: 0}
boundaries: boundaries:
x1: 1 position1: {x: 1, y: 10}
y1: 10 position2: {x: 30, y: 10}
x2: 30
y2: 10
color: magenta color: magenta
- animation: wave.yaml - animation: wave.yaml
position: {x: 30, y: 4} position: {x: 30, y: 4}
velocity: {x: -48.0, y: 0} velocity: {x: -48.0, y: 0}
boundaries: boundaries:
x1: 1 position1: {x: 1, y: 4}
y1: 4 position2: {x: 30, y: 4}
x2: 30
y2: 4
color: cyan color: cyan
- animation: wave.yaml - animation: wave.yaml
position: {x: 15, y: 14} position: {x: 15, y: 14}
velocity: {x: -24.0, y: 0} velocity: {x: -24.0, y: 0}
boundaries: boundaries:
x1: 3 position1: {x: 3, y: 14}
y1: 14 position2: {x: 30, y: 14}
x2: 30
y2: 14
color: green color: green
# Items in this room # Objetos en esta habitación
items: items:
- tileSetFile: items.gif - tileSetFile: items.gif
tile: 24 tile: 24

View File

@@ -1,27 +1,27 @@
# MAGNETIC FIELDS # MAGNETIC FIELDS
room: room:
number: "60" name_en: "MAGNETIC FIELDS"
name: "MAGNETIC FIELDS" name_ca: "CAMPS MAGNETICS"
bgColor: black bgColor: black
border: bright_red border: bright_red
tileSetFile: standard.gif tileSetFile: standard.gif
# Room connections (null for no connection) # Conexiones de la habitación (null = sin conexión)
connections: connections:
up: "05" up: 05.yaml
down: "59" down: 59.yaml
left: null left: null
right: null right: null
# Item display colors # Colores de los objetos
itemColor1: red itemColor1: red
itemColor2: green itemColor2: green
# Conveyor belt direction: left (-1), none (0), right (1) # Dirección de la cinta transportadora: left, none, right
autoSurface: 0 conveyorBelt: none
# Tilemap: 16 rows × 32 columns (256×192 pixels @ 8px/tile) # Tilemap: 16 filas × 32 columnas (256×192 píxeles @ 8px/tile)
# Values are 0-based tile indices (0 = empty) # Índices de tiles (-1 = vacío)
tilemap: tilemap:
- [168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 410, -1, -1, 410, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168] - [168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 410, -1, -1, 410, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168]
- [168, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 168] - [168, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 168]
@@ -40,29 +40,25 @@ tilemap:
- [168, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 168] - [168, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 168]
- [168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, -1, -1, 168, 168, 168, 168] - [168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, -1, -1, 168, 168, 168, 168]
# Enemies in this room # Enemigos en esta habitación
enemies: enemies:
- animation: shock.yaml - animation: shock.yaml
position: {x: 7, y: 2} position: {x: 7, y: 2}
velocity: {x: 0, y: 90.0} velocity: {x: 0, y: 90.0}
boundaries: boundaries:
x1: 7 position1: {x: 7, y: 1}
y1: 1 position2: {x: 7, y: 14}
x2: 7
y2: 14
color: yellow color: yellow
- animation: shock.yaml - animation: shock.yaml
position: {x: 24, y: 6} position: {x: 24, y: 6}
velocity: {x: 0, y: -90.0} velocity: {x: 0, y: -90.0}
boundaries: boundaries:
x1: 24 position1: {x: 24, y: 1}
y1: 1 position2: {x: 24, y: 14}
x2: 24
y2: 14
color: yellow color: yellow
# Items in this room # Objetos en esta habitación
items: items:
- tileSetFile: items.gif - tileSetFile: items.gif
tile: 1 tile: 1

View File

@@ -0,0 +1,152 @@
#version 450
// Vulkan GLSL fragment shader — CRT-Pi PostFX
// Algoritmo de scanlines continuas con pesos gaussianos, bloom y máscara de fósforo.
// Basado en el shader CRT-Pi original (GLSL 3.3), portado a GLSL 4.50 con parámetros uniformes.
//
// Compile: glslc -fshader-stage=frag --target-env=vulkan1.0 crtpi_frag.glsl -o crtpi_frag.spv
// xxd -i crtpi_frag.spv > ../../source/core/rendering/sdl3gpu/crtpi_frag_spv.h
layout(location = 0) in vec2 v_uv;
layout(location = 0) out vec4 out_color;
layout(set = 2, binding = 0) uniform sampler2D Texture;
layout(set = 3, binding = 0) uniform CrtPiBlock {
// vec4 #0
float scanline_weight; // Ajuste gaussiano de scanlines (default 6.0)
float scanline_gap_brightness; // Brillo mínimo entre scanlines (default 0.12)
float bloom_factor; // Factor de brillo en zonas iluminadas (default 3.5)
float input_gamma; // Gamma de entrada — linealización (default 2.4)
// vec4 #1
float output_gamma; // Gamma de salida — codificación (default 2.2)
float mask_brightness; // Brillo sub-píxeles de la máscara (default 0.80)
float curvature_x; // Distorsión barrel eje X (default 0.05)
float curvature_y; // Distorsión barrel eje Y (default 0.10)
// vec4 #2
int mask_type; // 0=ninguna, 1=verde/magenta, 2=RGB fósforo
int enable_scanlines; // 0 = off, 1 = on
int enable_multisample; // 0 = off, 1 = on (antialiasing analítico de scanlines)
int enable_gamma; // 0 = off, 1 = on
// vec4 #3
int enable_curvature; // 0 = off, 1 = on
int enable_sharper; // 0 = off, 1 = on
float texture_width; // Ancho del canvas lógico en píxeles
float texture_height; // Alto del canvas lógico en píxeles
} u;
// Distorsión barrel CRT
vec2 distort(vec2 coord, vec2 screen_scale) {
vec2 curvature = vec2(u.curvature_x, u.curvature_y);
vec2 barrel_scale = 1.0 - (0.23 * curvature);
coord *= screen_scale;
coord -= vec2(0.5);
float rsq = coord.x * coord.x + coord.y * coord.y;
coord += coord * (curvature * rsq);
coord *= barrel_scale;
if (abs(coord.x) >= 0.5 || abs(coord.y) >= 0.5) {
return vec2(-1.0); // fuera de pantalla
}
coord += vec2(0.5);
coord /= screen_scale;
return coord;
}
float calcScanLineWeight(float dist) {
return max(1.0 - dist * dist * u.scanline_weight, u.scanline_gap_brightness);
}
float calcScanLine(float dy, float filter_width) {
float weight = calcScanLineWeight(dy);
if (u.enable_multisample != 0) {
weight += calcScanLineWeight(dy - filter_width);
weight += calcScanLineWeight(dy + filter_width);
weight *= 0.3333333;
}
return weight;
}
void main() {
vec2 tex_size = vec2(u.texture_width, u.texture_height);
// filterWidth: equivalente al original (768.0 / TextureSize.y) / 3.0
float filter_width = (768.0 / u.texture_height) / 3.0;
vec2 texcoord = v_uv;
// Curvatura barrel opcional
if (u.enable_curvature != 0) {
texcoord = distort(texcoord, vec2(1.0, 1.0));
if (texcoord.x < 0.0) {
out_color = vec4(0.0, 0.0, 0.0, 1.0);
return;
}
}
vec2 texcoord_in_pixels = texcoord * tex_size;
vec2 tc;
float scan_line_weight;
if (u.enable_sharper != 0) {
// Modo SHARPER: filtrado bicúbico-like con subpixel sharpen
vec2 temp_coord = floor(texcoord_in_pixels) + 0.5;
tc = temp_coord / tex_size;
vec2 deltas = texcoord_in_pixels - temp_coord;
scan_line_weight = calcScanLine(deltas.y, filter_width);
vec2 signs = sign(deltas);
deltas.x *= 2.0;
deltas = deltas * deltas;
deltas.y = deltas.y * deltas.y;
deltas.x *= 0.5;
deltas.y *= 8.0;
deltas /= tex_size;
deltas *= signs;
tc = tc + deltas;
} else {
// Modo estándar
float temp_y = floor(texcoord_in_pixels.y) + 0.5;
float y_coord = temp_y / tex_size.y;
float dy = texcoord_in_pixels.y - temp_y;
scan_line_weight = calcScanLine(dy, filter_width);
float sign_y = sign(dy);
dy = dy * dy;
dy = dy * dy;
dy *= 8.0;
dy /= tex_size.y;
dy *= sign_y;
tc = vec2(texcoord.x, y_coord + dy);
}
vec3 colour = texture(Texture, tc).rgb;
if (u.enable_scanlines != 0) {
if (u.enable_gamma != 0) {
colour = pow(colour, vec3(u.input_gamma));
}
colour *= scan_line_weight * u.bloom_factor;
if (u.enable_gamma != 0) {
colour = pow(colour, vec3(1.0 / u.output_gamma));
}
}
// Máscara de fósforo
if (u.mask_type == 1) {
float which_mask = fract(gl_FragCoord.x * 0.5);
vec3 mask = (which_mask < 0.5)
? vec3(u.mask_brightness, 1.0, u.mask_brightness)
: vec3(1.0, u.mask_brightness, 1.0);
colour *= mask;
} else if (u.mask_type == 2) {
float which_mask = fract(gl_FragCoord.x * 0.3333333);
vec3 mask = vec3(u.mask_brightness);
if (which_mask < 0.3333333)
mask.x = 1.0;
else if (which_mask < 0.6666666)
mask.y = 1.0;
else
mask.z = 1.0;
colour *= mask;
}
out_color = vec4(colour, 1.0);
}

BIN
data/shaders/crtpi_frag.spv Normal file

Binary file not shown.

Some files were not shown because too many files have changed in this diff Show More