Compare commits
207 Commits
6a18d880f2
...
main
| Author | SHA1 | Date | |
|---|---|---|---|
| 3c3e012386 | |||
| 44b6f6830d | |||
| 0d12591925 | |||
| 22d6ac2fbf | |||
| acaf434e5c | |||
| 5f25562d52 | |||
| fc28586940 | |||
| 273d9304dc | |||
| 3a5b16346b | |||
| 0e61b94848 | |||
| eca5a55d3c | |||
| dccd0d41e4 | |||
| 20bac58814 | |||
| a6fae7b001 | |||
| b31346830f | |||
| b6fec3eba7 | |||
| 606388227c | |||
| a2caf95005 | |||
| 0bfb535d4d | |||
| 405f2248ec | |||
| 93b1cd80b7 | |||
| b53bf87730 | |||
| 015a9cc4e1 | |||
| 3bd13b72cd | |||
| c94adf39af | |||
| 950eeffb07 | |||
| b37b62ef1e | |||
| 0c8aa5fe50 | |||
| fe520dd341 | |||
| ec9a9aff81 | |||
| f9c1c4843d | |||
| a804ad1368 | |||
| c689507982 | |||
| 417643018f | |||
| 2ed7316948 | |||
| 2228153d59 | |||
| 7315032ff2 | |||
| 3fc6795593 | |||
| 16924cf503 | |||
| 705a9fc7cd | |||
| b164c11ba7 | |||
| 1817d00881 | |||
| 8dcf473f31 | |||
| 8f191f02fa | |||
| 1077c13fd0 | |||
| d5a4caa86e | |||
| f3bad9f4ed | |||
| 32f22c99db | |||
| cd14ae22c5 | |||
| 1fdc29e9d2 | |||
| 0a740a5be2 | |||
| 9e1b2b8960 | |||
| ed3724193e | |||
| 98f01a6dde | |||
| e13a28f69a | |||
| 301e0145fb | |||
| 3b233f0e12 | |||
| fd9be2066d | |||
| 7551115912 | |||
| b986778bb4 | |||
| fd2e2f1014 | |||
| 77b844065e | |||
| 2fe79de1d8 | |||
| d6ecadfd3a | |||
| ad467847b9 | |||
| 1bb2142d19 | |||
| f5a82229fe | |||
| 145bab037f | |||
| 754ad2de49 | |||
| a9b7c3f025 | |||
| 4db92d423c | |||
| 6717c1e307 | |||
| 9282d661aa | |||
| a21f530dd4 | |||
| 7483bf63c8 | |||
| 268763f162 | |||
| 71c7b8e553 | |||
| 854a5f04b2 | |||
| ed21a47f92 | |||
| 637df23bc7 | |||
| ea421b4e17 | |||
| 3a5ff06dab | |||
| dfb0d2134f | |||
| b459e2106f | |||
| 065f66d40e | |||
| f15658a767 | |||
| 21c8d1e8ca | |||
| a06eb8c8e9 | |||
| 6b73a76d31 | |||
| 348a76090b | |||
| 02c1bf647e | |||
| a7f0a18e6d | |||
| 8355c266a6 | |||
| 7bad27d686 | |||
| d39622c7e2 | |||
| 4910d201f9 | |||
| e85800c5ed | |||
| f25ee18329 | |||
| 3712f0c8d9 | |||
| c063488e8e | |||
| deb0a8677f | |||
| c5a7c9e70d | |||
| 92453a6104 | |||
| 7aff3e2109 | |||
| 8d213e7b3e | |||
| c6d409c303 | |||
| 6914f7df93 | |||
| 1dbfff2c17 | |||
| 3493636954 | |||
| 8ff1073e4a | |||
| 6497e26202 | |||
| e0e37204d7 | |||
| 6595b28790 | |||
| 0ddb6c85e1 | |||
| f84007902e | |||
| 49ae2ae41f | |||
| c701421a8f | |||
| 1ecb427106 | |||
| c87779cc09 | |||
| 24594fa89a | |||
| 030779794e | |||
| 495c23a3d2 | |||
| 911ee7a13e | |||
| b876ccbb09 | |||
| 94684e8758 | |||
| 0c116665bc | |||
| d0ed49d192 | |||
| 5e013a8414 | |||
| 0cdbeb768d | |||
| cd0477cc4c | |||
| c6e2779429 | |||
| 9b7abc7725 | |||
| c87d682508 | |||
| 366c00fd22 | |||
| 55b58ded70 | |||
| d946ab7943 | |||
| 167797a7b2 | |||
| 7ec869a6d4 | |||
| 82603c1e41 | |||
| 3a2015256a | |||
| 9df3f1b929 | |||
| 43a6cc2d7a | |||
| aa292dcd92 | |||
| 06457654f4 | |||
| e9fc2e8fa0 | |||
| 23863c02a6 | |||
| 6996b3a82a | |||
| 2b2eb31c67 | |||
| 8aad52f33f | |||
| 4e2393f4d5 | |||
| d9ada12ee0 | |||
| a7d04d2bbc | |||
| c80dffe957 | |||
| 31bbaf997f | |||
| c4d4a3b930 | |||
| d027216dc6 | |||
| 483fe7251d | |||
| 852cda1984 | |||
| 8d9c838be2 | |||
| 9ebf259525 | |||
| f2e45940d5 | |||
| 2ae8fc7440 | |||
| e7860c697e | |||
| a8240a5d82 | |||
| 723ab3d800 | |||
| fda8ff3f65 | |||
| 9ef7f4274d | |||
| bd011a0ebb | |||
| 6052be0c38 | |||
| ec3cc49710 | |||
| 2e1738c20c | |||
| 7479231110 | |||
| 4fc5947ba7 | |||
| a21e6f8bb5 | |||
| d27f978c62 | |||
| 2fd101674e | |||
| e36fa95762 | |||
| 88ce6cd570 | |||
| d011a41d5a | |||
| 039eb20c06 | |||
| 959a513651 | |||
| 1fed8f63bd | |||
| b475c4d818 | |||
| 972d23f178 | |||
| 83d4d0b954 | |||
| ea43880d59 | |||
| 6bf26f7470 | |||
| 0fb986d7c4 | |||
| 9aa86cd531 | |||
| 34840a64cf | |||
| 7d962ae752 | |||
| 28f11a42b7 | |||
| 5337e3b4e5 | |||
| 35ef99cf7c | |||
| cbe71b5af4 | |||
| e73f573e9a | |||
| fa9723dafc | |||
| ceb2b71331 | |||
| 0a5594b9a8 | |||
| 932de53609 | |||
| b7db34cdf7 | |||
| 4477cc4bbc | |||
| 435358ef1e | |||
| fff77e47cf | |||
| 3550f26c45 | |||
| c0905adc62 | |||
| f9b8edc23c |
@@ -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
|
||||||
|
|||||||
@@ -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:
|
||||||
|
|||||||
@@ -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
@@ -1,5 +1,6 @@
|
|||||||
.vscode/
|
.cache/
|
||||||
*data/config/config.txt
|
|
||||||
|
*data/config/config.yaml
|
||||||
*stats.txt
|
*stats.txt
|
||||||
*.DS_Store
|
*.DS_Store
|
||||||
thumbs.db
|
thumbs.db
|
||||||
@@ -20,3 +21,8 @@ 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
|
||||||
|
|||||||
3
.vscode/settings.json
vendored
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
{
|
||||||
|
"C_Cpp.default.compileCommands": "${workspaceFolder}/build/compile_commands.json"
|
||||||
|
}
|
||||||
78
BUILDING.md
Normal 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`
|
||||||
170
CHANGELOG.md
Normal file
@@ -0,0 +1,170 @@
|
|||||||
|
# Changelog
|
||||||
|
|
||||||
|
All notable changes to JailDoctor's Dilemma are documented here.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## [v1.12] - 2026-04-02
|
||||||
|
|
||||||
|
### Novedades
|
||||||
|
- **Color del jugador configurable:** se puede cambiar desde la consola (persistente), con comprobación automática para evitar que coincida con el color de fondo
|
||||||
|
- **Skins de enemigos para el jugador:** posibilidad de usar skins de enemigos en el jugador, con cambio en caliente en el marcador
|
||||||
|
- **Indicador de trucos mejorado:** ya no usa el color del jugador, ahora se muestra en el marcador
|
||||||
|
- **Shader presets por nombre:** se puede establecer un shader preset directamente por nombre desde la consola, con autocompletado
|
||||||
|
- **Comandos externos en consola:** la consola lee los comandos desde un fichero externo
|
||||||
|
- **Gestión de paletas mejorada:**
|
||||||
|
- Nuevas paletas añadidas
|
||||||
|
- Restaurado el orden original de las paletas
|
||||||
|
- Opción de reordenar paletas automáticamente por luminosidad o parecido a la paleta de Spectrum
|
||||||
|
- Nombres "pretty" para las paletas (cambia los `-` por ` `)
|
||||||
|
- Eliminadas responsabilidades de `Options` sobre las paletas
|
||||||
|
- Nueva herramienta en Python para reordenar paletas
|
||||||
|
- **Aceleración hardware configurable:** posibilidad de desactivar la aceleración hardware desde el fichero de configuración; si no hay aceleración, se deshabilitan teclas y comandos de shaders
|
||||||
|
- **Autocompletado mejorado:** shader preset y palette autocompletan con la lista de nombres
|
||||||
|
- Reestructuración de comandos de consola
|
||||||
|
- Reestructuración del apartado de vídeo en `config.yaml`
|
||||||
|
- Optimizaciones en `Surface`
|
||||||
|
|
||||||
|
### Correcciones
|
||||||
|
- Fix: entrar y salir del modo debug mantiene el estado previo del jugador
|
||||||
|
- Corregido Makefile: migración completa a cmake, detección automática de SO para release
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## [v1.11] - 2026-03-31
|
||||||
|
|
||||||
|
### Novedades
|
||||||
|
- **PaletteManager:** refactorización de `Screen`, responsabilidades de gestión de paletas extraídas a clase propia
|
||||||
|
- **Consola 2.1:** la consola puede cambiar de paleta por nombre (`Screen` devuelve lista de paletas)
|
||||||
|
- **Zoom configurable:** `Screen` permite establecer el nivel de zoom directamente desde consola
|
||||||
|
- **Autocompletar en consola:** autocompletado de comandos con Tab (incluyendo soporte para armadura de lagarto)
|
||||||
|
- Generación automática de tabla de tab-completions en la consola
|
||||||
|
|
||||||
|
### Correcciones
|
||||||
|
- Fix: al entrar a GAME con la consola abierta, el jugador no tenía los inputs deshabilitados
|
||||||
|
- Fix: al hacer restart con la música del attract mode sonando, la música no paraba al ir al logo
|
||||||
|
- Fix: en modo debug, protección para que el jugador no caiga infinitamente si sale de pantalla
|
||||||
|
- Corregido el case en algunas respuestas de la consola
|
||||||
|
- Corregido Makefile
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## [v1.10] - 2026-03-30
|
||||||
|
|
||||||
|
### Novedades
|
||||||
|
- **Consola 2.0:** rediseño completo de la consola de desarrollador
|
||||||
|
- Efecto typewriter al mostrar texto
|
||||||
|
- Separación de líneas automática
|
||||||
|
- Cambio de skin
|
||||||
|
- Historial y navegación mejorada
|
||||||
|
- Comandos para cheats, control de escena, debug, audio y shaders
|
||||||
|
- Teclas de función operativas con la consola abierta
|
||||||
|
- Límite de caracteres ampliado
|
||||||
|
- La consola ya no pausa al jugador
|
||||||
|
- Reorganización del sistema de comandos y aliases (`show info`, `hide info`, etc.)
|
||||||
|
- **RenderInfo:** nueva clase con animación para mostrar info de renderizado en pantalla
|
||||||
|
- **Soporte multi-shader:** comandos y teclas para manejar el nuevo diseño de shaders (SPIRV/SPIR-V)
|
||||||
|
- **Modo kiosko:** defaults y restricciones de comandos para modo kiosk
|
||||||
|
- **Supersampling Lanczos:** implementación de escalado Lanczos en el supersampling
|
||||||
|
- **Driver GPU configurable:** permite elegir driver de GPU o ninguno desde consola
|
||||||
|
- Cheats accesibles desde la consola
|
||||||
|
- Cambio y reinicio de escena desde la consola
|
||||||
|
- Posición e habitación inicial de debug configurables desde consola y fichero
|
||||||
|
- `Debug` carga posición e habitación inicial desde fichero
|
||||||
|
- Comandos de audio configurables desde consola
|
||||||
|
- Renderizado del dispositivo GPU en info_debug
|
||||||
|
- `Screen` optimizado (`textureToRenderer()`)
|
||||||
|
- Eliminado soporte para argumentos de línea de comandos
|
||||||
|
- Eliminado `Options::console`
|
||||||
|
- Help de consola organizado
|
||||||
|
|
||||||
|
### Correcciones
|
||||||
|
- Fix: vsync off no funcionaba en Wayland
|
||||||
|
- Fix: en TITLE, la consola no bloqueaba la pulsación del 1 al 4 y entraba a opciones
|
||||||
|
- Fix: dos logs de consola con formato incorrecto
|
||||||
|
- Fix: lógica para abrir y entrar a la jail (ahora usa número de habitación, no nombre)
|
||||||
|
- Corregido `compile_spirv.cmake` y la `system_folder` para shaders
|
||||||
|
- Corregido carácter de caret que se había perdido
|
||||||
|
- Eliminados acentos en títulos de habitaciones que causaban problemas con fuentes
|
||||||
|
- Revisadas y corregidas traducciones
|
||||||
|
- Corregidos ficheros `.fnt`
|
||||||
|
- Corrección en `Screen` para `std::setprecision()` (faltaba `#include <iomanip>`)
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## [v1.09] - 2025-03-01
|
||||||
|
|
||||||
|
### Novedades
|
||||||
|
- **Refactorización a singletons:** `Screen`, `Input`, `Audio`, `Resource::Cache`, `Resource::List`, `Director`, `Cheevos`, `Debug` convertidos a singletons thread-safe
|
||||||
|
- **Smart pointers:** uso de `std::shared_ptr` y `std::unique_ptr` para gestión de recursos y sprites
|
||||||
|
- **Surfaces 8-bit indexadas:** nuevo sistema de renderizado con color indexado y paletas intercambiables
|
||||||
|
- **Sistema de notificaciones rediseñado:** nuevo engine de notificaciones con control de offset
|
||||||
|
- **Modos de vídeo mejorados:** la ventana mantiene posición al cambiar tamaño o activar borde; puede crecer según el escritorio
|
||||||
|
- **ItemTracker:** nuevo singleton para rastrear ítems recogidos
|
||||||
|
- **globalEvents:** nuevo sistema de eventos globales SDL
|
||||||
|
- **Barra de progreso en carga de recursos** (actualización cada 5 ítems para mayor rendimiento con vsync)
|
||||||
|
- **Métodos show/hide ventana:** métodos para mostrar u ocultar la ventana
|
||||||
|
- Afinada la clase `Options`
|
||||||
|
- Actualizada a la última versión de `jail_audio`
|
||||||
|
- Implementados shaders
|
||||||
|
- Nueva tipografía añadida
|
||||||
|
- Parametros de ficheros `.ani` migrados a snake_case
|
||||||
|
- Música de Title y attract mode restaurada
|
||||||
|
- Eliminado sistema online completo
|
||||||
|
|
||||||
|
### Correcciones
|
||||||
|
- Fix: notificaciones ya no ensucian la pantalla de carga
|
||||||
|
- Fix: no pintaba el efecto de carga del borde en `LoadingScreen`
|
||||||
|
- Fix: bug con el puntero a `ScoreboardData`
|
||||||
|
- Fix: carga de opciones y recursos corregida
|
||||||
|
- Eliminados acentos problemáticos
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## [v1.08] - 2024-02-22
|
||||||
|
|
||||||
|
### Novedades
|
||||||
|
- Posibilidad de saltar la pantalla de carga ya completada desde el menú de título
|
||||||
|
- El `gamestate_title` puede empezar en diferentes estados
|
||||||
|
- Pantalla de carga con fade de paleta
|
||||||
|
- GIF loader: dibujado correcto de GIFs en pantalla
|
||||||
|
- Añadida `paleta.cpp`/`.h` y `gif.c`
|
||||||
|
|
||||||
|
### Correcciones
|
||||||
|
- Corregido bug en el fade de paleta (el canal azul no se propagaba)
|
||||||
|
- Arreglada la separación entre el título y el fade
|
||||||
|
- Online deshabilitado por defecto al crear el fichero de configuración
|
||||||
|
- Tiempo de la pantalla de carga aumentado
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## [v1.07] - 2022-12-02
|
||||||
|
|
||||||
|
### Novedades
|
||||||
|
- El nombre de la habitación se pinta a partir de una textura
|
||||||
|
- Añadido Batman a FEEL THE HEAT
|
||||||
|
- Cielo de la Jail actualizado
|
||||||
|
- Retocada la pantalla de título
|
||||||
|
- Sprite de PACO modificado
|
||||||
|
- Nombre del enemigo diskette cambiado a floppy
|
||||||
|
- Cambios cosméticos en algunas habitaciones (BE CAREFUL WITH THE FUSE renombrado)
|
||||||
|
- El color de fondo de la habitación se pinta en la textura del mapa
|
||||||
|
- Optimizaciones en intro y title
|
||||||
|
- Preparación para compatibilidad con consolas
|
||||||
|
- Actualizado `jail_audio` a la última versión
|
||||||
|
- Eliminados la mayor parte de accesos a `vector::at()`
|
||||||
|
|
||||||
|
### Correcciones
|
||||||
|
- Corregido bug: en la jail se rellenaban las vidas mientras estaba activa la pausa
|
||||||
|
- Corregido memory leak en `texture.cpp`
|
||||||
|
- Corregido bug en apertura de la Jail
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## [v1.0] - 2022-11-13
|
||||||
|
|
||||||
|
Versión de lanzamiento inicial.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
*El formato de este changelog sigue [Keep a Changelog](https://keepachangelog.com/).*
|
||||||
310
CLAUDE.md
@@ -53,7 +53,42 @@ cmake --build build --clean-first
|
|||||||
./jaildoctors_dilemma
|
./jaildoctors_dilemma
|
||||||
```
|
```
|
||||||
|
|
||||||
**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 `build/` relative to the project root 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 xvfb-run directly (RECOMMENDED)**
|
||||||
|
```bash
|
||||||
|
xvfb-run -a ./jaildoctors_dilemma
|
||||||
|
```
|
||||||
|
|
||||||
|
**Option 2: 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)
|
||||||
|
|
||||||
@@ -198,26 +233,39 @@ The architecture follows a **layered, modular design** with clear separation of
|
|||||||
source/
|
source/
|
||||||
├── core/ # Core engine systems
|
├── core/ # Core engine systems
|
||||||
│ ├── audio/ # Audio management
|
│ ├── audio/ # Audio management
|
||||||
│ │ └── audio.hpp/cpp # Audio singleton (music, sounds, volumes)
|
│ │ ├── audio.hpp/cpp # Audio singleton (music, sounds, volumes)
|
||||||
|
│ │ └── jail_audio.hpp # Custom jail_audio library wrapper
|
||||||
│ ├── input/ # Input handling
|
│ ├── input/ # Input handling
|
||||||
│ │ ├── input.hpp/cpp # Input manager (keyboard, gamepad)
|
│ │ ├── input.hpp/cpp # Input manager (keyboard, gamepad)
|
||||||
|
│ │ ├── input_types.hpp # Input type definitions
|
||||||
│ │ ├── global_inputs.hpp # Global input state
|
│ │ ├── global_inputs.hpp # Global input state
|
||||||
│ │ └── mouse.hpp # Mouse input
|
│ │ └── mouse.hpp # Mouse input
|
||||||
|
│ ├── locale/ # Localization
|
||||||
|
│ │ └── locale.hpp # Locale/language support
|
||||||
│ ├── rendering/ # Graphics rendering
|
│ ├── rendering/ # Graphics rendering
|
||||||
│ │ ├── screen.hpp/cpp # Screen/window singleton, SDL renderer
|
│ │ ├── screen.hpp/cpp # Screen/window singleton, SDL renderer
|
||||||
│ │ ├── surface.hpp/cpp # 8-bit indexed color surface abstraction
|
│ │ ├── surface.hpp/cpp # 8-bit indexed color surface abstraction
|
||||||
│ │ ├── surface_sprite.hpp # Static sprite rendering
|
│ │ ├── sprite/ # Sprite rendering classes
|
||||||
│ │ ├── surface_animated_sprite.hpp # Animated sprite with frame data
|
│ │ │ ├── sprite.hpp # Static sprite rendering
|
||||||
│ │ ├── surface_moving_sprite.hpp # Moving sprite with velocity
|
│ │ │ ├── animated_sprite.hpp # Animated sprite with frame data
|
||||||
│ │ ├── texture.hpp/cpp # SDL texture wrapper
|
│ │ │ ├── moving_sprite.hpp # Moving sprite with velocity
|
||||||
|
│ │ │ └── dissolve_sprite.hpp # Dissolve transition sprite
|
||||||
│ │ ├── text.hpp/cpp # Text rendering system
|
│ │ ├── text.hpp/cpp # Text rendering system
|
||||||
│ │ ├── gif.hpp/cpp # GIF image loader
|
│ │ ├── gif.hpp/cpp # GIF image loader
|
||||||
│ │ ├── opengl/ # OpenGL shader backend
|
│ │ ├── pixel_reveal.hpp # Pixel reveal effect
|
||||||
│ │ │ └── opengl_shader.hpp/cpp # CRT shader effects
|
│ │ ├── render_info.hpp # Render information data
|
||||||
|
│ │ ├── palette_manager.hpp # Palette management
|
||||||
|
│ │ ├── sdl3gpu/ # SDL3 GPU shader backend
|
||||||
|
│ │ │ ├── sdl3gpu_shader.hpp/cpp # CRT/post-processing shader effects
|
||||||
|
│ │ │ └── *_spv.h # Pre-compiled SPIR-V shader headers
|
||||||
│ │ └── shader_backend.hpp # Abstract shader interface
|
│ │ └── shader_backend.hpp # Abstract shader interface
|
||||||
│ ├── resources/ # Asset & Resource management
|
│ ├── resources/ # Asset & Resource management
|
||||||
│ │ ├── asset.hpp/cpp # Asset registry (file path mapping)
|
│ │ ├── resource_list.hpp # Asset path registry (O(1) lookups)
|
||||||
│ │ └── resource.hpp/cpp # Resource singleton (loads/caches assets)
|
│ │ ├── resource_cache.hpp # Resource caching singleton
|
||||||
|
│ │ ├── resource_loader.hpp # Asset loading logic
|
||||||
|
│ │ ├── resource_pack.hpp # Resource pack handling
|
||||||
|
│ │ ├── resource_helper.hpp # Resource utility functions
|
||||||
|
│ │ └── resource_types.hpp # Resource type definitions
|
||||||
│ └── system/ # System management
|
│ └── system/ # System management
|
||||||
│ ├── director.hpp/cpp # Main application controller
|
│ ├── director.hpp/cpp # Main application controller
|
||||||
│ ├── debug.hpp/cpp # Debug info overlay
|
│ ├── debug.hpp/cpp # Debug info overlay
|
||||||
@@ -228,8 +276,13 @@ source/
|
|||||||
│ │ ├── enemy.hpp/cpp # Enemy entities
|
│ │ ├── enemy.hpp/cpp # Enemy entities
|
||||||
│ │ └── item.hpp/cpp # Collectible items
|
│ │ └── item.hpp/cpp # Collectible items
|
||||||
│ ├── gameplay/ # Core gameplay systems
|
│ ├── gameplay/ # Core gameplay systems
|
||||||
│ │ ├── room.hpp/cpp # Room/level logic, tilemap, collision
|
│ │ ├── room.hpp/cpp # Room/level logic, collision
|
||||||
|
│ │ ├── room_loader.hpp/cpp # Room loading from YAML files
|
||||||
│ │ ├── room_tracker.hpp/cpp # Tracks visited rooms
|
│ │ ├── room_tracker.hpp/cpp # Tracks visited rooms
|
||||||
|
│ │ ├── collision_map.hpp/cpp # Collision map data
|
||||||
|
│ │ ├── tilemap_renderer.hpp/cpp # Tilemap rendering
|
||||||
|
│ │ ├── enemy_manager.hpp/cpp # Enemy lifecycle management
|
||||||
|
│ │ ├── item_manager.hpp/cpp # Item lifecycle management
|
||||||
│ │ ├── scoreboard.hpp/cpp # Score display & data
|
│ │ ├── scoreboard.hpp/cpp # Score display & data
|
||||||
│ │ ├── item_tracker.hpp/cpp # Tracks collected items
|
│ │ ├── item_tracker.hpp/cpp # Tracks collected items
|
||||||
│ │ ├── stats.hpp/cpp # Game statistics
|
│ │ ├── stats.hpp/cpp # Game statistics
|
||||||
@@ -244,24 +297,26 @@ source/
|
|||||||
│ │ ├── ending2.hpp/cpp # Ending sequence 2
|
│ │ ├── ending2.hpp/cpp # Ending sequence 2
|
||||||
│ │ └── credits.hpp/cpp # Credits screen
|
│ │ └── credits.hpp/cpp # Credits screen
|
||||||
│ ├── ui/ # User interface
|
│ ├── ui/ # User interface
|
||||||
│ │ └── notifier.hpp/cpp # Achievement/notification display
|
│ │ ├── notifier.hpp/cpp # Achievement/notification display
|
||||||
|
│ │ ├── console.hpp/cpp # In-game debug console
|
||||||
|
│ │ └── console_commands.hpp/cpp # Console command definitions
|
||||||
│ ├── options.hpp/cpp # Game configuration/options
|
│ ├── options.hpp/cpp # Game configuration/options
|
||||||
|
│ ├── game_control.hpp # Game control logic
|
||||||
│ ├── scene_manager.hpp # Scene flow state machine
|
│ ├── scene_manager.hpp # Scene flow state machine
|
||||||
│ ├── defaults.hpp # Game defaults constants
|
│ └── defaults.hpp # Game defaults constants
|
||||||
│ └── gameplay.hpp # Gameplay constants
|
|
||||||
├── external/ # Third-party libraries
|
├── external/ # Third-party libraries
|
||||||
│ ├── jail_audio.hpp/cpp # Custom audio library
|
│ ├── fkyaml_node.hpp # YAML parsing library
|
||||||
│ ├── jail_audio.h # C interface for jail_audio
|
|
||||||
│ ├── stb_image.h # Image loading library
|
│ ├── stb_image.h # Image loading library
|
||||||
│ └── stb_vorbis.h # OGG Vorbis audio decoding
|
│ └── stb_vorbis.h # OGG Vorbis audio decoding
|
||||||
├── utils/ # Utility code
|
├── utils/ # Utility code
|
||||||
│ ├── delta_timer.hpp/cpp # Frame-rate independent timing
|
│ ├── delta_timer.hpp/cpp # Frame-rate independent timing
|
||||||
|
│ ├── easing_functions.hpp # Easing/interpolation functions
|
||||||
│ ├── defines.hpp # Game constants (resolutions, block sizes)
|
│ ├── defines.hpp # Game constants (resolutions, block sizes)
|
||||||
│ └── utils.hpp/cpp # Helper functions (colors, math)
|
│ └── utils.hpp/cpp # Helper functions (colors, math)
|
||||||
└── 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 +361,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
|
||||||
@@ -320,7 +375,7 @@ The game uses a scene manager to control application flow:
|
|||||||
// namespace SceneManager
|
// namespace SceneManager
|
||||||
enum class Scene {
|
enum class Scene {
|
||||||
LOGO, LOADING_SCREEN, TITLE, CREDITS, GAME, DEMO,
|
LOGO, LOADING_SCREEN, TITLE, CREDITS, GAME, DEMO,
|
||||||
GAME_OVER, ENDING, ENDING2, QUIT
|
GAME_OVER, ENDING, ENDING2, RESTART_CURRENT, QUIT
|
||||||
};
|
};
|
||||||
|
|
||||||
inline Scene current = Scene::LOGO; // Global scene state
|
inline Scene current = Scene::LOGO; // Global scene state
|
||||||
@@ -357,9 +412,10 @@ Display
|
|||||||
|
|
||||||
**Key Components:**
|
**Key Components:**
|
||||||
- `Surface` - 8-bit indexed pixel buffer with palette support
|
- `Surface` - 8-bit indexed pixel buffer with palette support
|
||||||
- `SurfaceSprite` - Renders a fixed region of a surface
|
- `Sprite` - Renders a fixed region of a surface
|
||||||
- `SurfaceAnimatedSprite` - Frame-based animation on top of sprite
|
- `AnimatedSprite` - Frame-based animation on top of sprite
|
||||||
- `SurfaceMovingSprite` - Adds velocity/position to animated sprite
|
- `MovingSprite` - Adds velocity/position to animated sprite
|
||||||
|
- `DissolveSprite` - Dissolve transition effect sprite
|
||||||
- Supports color replacement, palette swapping, and shader effects (CRT)
|
- Supports color replacement, palette swapping, and shader effects (CRT)
|
||||||
|
|
||||||
### 3.5 Tile-Based Collision System
|
### 3.5 Tile-Based Collision System
|
||||||
@@ -399,8 +455,8 @@ struct AnimationData {
|
|||||||
int counter;
|
int counter;
|
||||||
};
|
};
|
||||||
|
|
||||||
// Loaded from .ani files (list of animation names)
|
// Loaded from .yaml animation definition files
|
||||||
// Rendered with SurfaceAnimatedSprite
|
// Rendered with AnimatedSprite
|
||||||
```
|
```
|
||||||
|
|
||||||
---
|
---
|
||||||
@@ -413,12 +469,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 via Resource::List (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 +491,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 +526,27 @@ Game::run() {
|
|||||||
|
|
||||||
```
|
```
|
||||||
Director::setFileList()
|
Director::setFileList()
|
||||||
├─ Asset::loadFromFile(config_path, PREFIX, system_folder_)
|
└─ Resource::List::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
|
||||||
@@ -525,7 +586,7 @@ Game code
|
|||||||
|
|
||||||
**Classes:**
|
**Classes:**
|
||||||
- `PascalCase` for classes: `Player`, `Room`, `Screen`, `Director`
|
- `PascalCase` for classes: `Player`, `Room`, `Screen`, `Director`
|
||||||
- Suffix `Sprite` for sprite classes: `SurfaceSprite`, `SurfaceAnimatedSprite`
|
- Suffix `Sprite` for sprite classes: `Sprite`, `AnimatedSprite`, `MovingSprite`
|
||||||
|
|
||||||
**Methods:**
|
**Methods:**
|
||||||
- `get*()` for getters: `getWidth()`, `getRect()`
|
- `get*()` for getters: `getWidth()`, `getRect()`
|
||||||
@@ -568,8 +629,9 @@ Provides **time scaling** for slow-motion effects.
|
|||||||
### 5.4 Palette System
|
### 5.4 Palette System
|
||||||
|
|
||||||
- 8-bit indexed color (256 colors per palette)
|
- 8-bit indexed color (256 colors per palette)
|
||||||
- Multiple palettes can be loaded and swapped
|
- Multiple palettes can be loaded and swapped via `PaletteManager`
|
||||||
- `Surface::setPalette()` changes rendering colors
|
- `Screen::setPaletteByName()` changes the active palette
|
||||||
|
- Supports palette sort modes (by luminosity, similarity to Spectrum palette, etc.)
|
||||||
- Supports color replacement per-render: `renderWithColorReplace()`
|
- Supports color replacement per-render: `renderWithColorReplace()`
|
||||||
- CRT shader effects can modify colors in real-time
|
- CRT shader effects can modify colors in real-time
|
||||||
|
|
||||||
@@ -587,7 +649,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
|
||||||
```
|
```
|
||||||
|
|
||||||
@@ -619,7 +681,7 @@ Achievements trigger notifications on unlock.
|
|||||||
| Component | Technology | Version | Role |
|
| Component | Technology | Version | Role |
|
||||||
|-----------|-----------|---------|------|
|
|-----------|-----------|---------|------|
|
||||||
| **Graphics** | SDL3 | Latest | Window, rendering, input |
|
| **Graphics** | SDL3 | Latest | Window, rendering, input |
|
||||||
| **GPU Rendering** | OpenGL | 3.2+ | Shader effects (CRT) |
|
| **GPU Rendering** | SDL3 GPU | Latest | Shader effects (CRT, post-processing via SPIR-V) |
|
||||||
| **Audio** | SDL3 Audio | Latest | Audio device, mixing |
|
| **Audio** | SDL3 Audio | Latest | Audio device, mixing |
|
||||||
| **Audio Decoding** | jail_audio (custom) | 1.x | OGG/WAV playback |
|
| **Audio Decoding** | jail_audio (custom) | 1.x | OGG/WAV playback |
|
||||||
| **Image Loading** | stb_image | v2.x | PNG/GIF image loading |
|
| **Image Loading** | stb_image | v2.x | PNG/GIF image loading |
|
||||||
@@ -653,8 +715,9 @@ 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 |
|
||||||
|
| `PaletteManager` | Palette loading, switching, and sorting | Managed by Screen |
|
||||||
| `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 |
|
||||||
|
|
||||||
@@ -664,7 +727,12 @@ Achievements trigger notifications on unlock.
|
|||||||
|-------|---------|
|
|-------|---------|
|
||||||
| `Game` | Main gameplay scene, orchestrates update/render |
|
| `Game` | Main gameplay scene, orchestrates update/render |
|
||||||
| `Player` | Player entity with physics and animation |
|
| `Player` | Player entity with physics and animation |
|
||||||
| `Room` | Level data, collision detection, tilemap rendering |
|
| `Room` | Level data, collision detection |
|
||||||
|
| `RoomLoader` | Room loading from YAML files |
|
||||||
|
| `TilemapRenderer` | Tilemap rendering |
|
||||||
|
| `CollisionMap` | Collision map data |
|
||||||
|
| `EnemyManager` | Enemy lifecycle management |
|
||||||
|
| `ItemManager` | Item lifecycle management |
|
||||||
| `Enemy` | Enemy entity behavior and rendering |
|
| `Enemy` | Enemy entity behavior and rendering |
|
||||||
| `Item` | Collectible items |
|
| `Item` | Collectible items |
|
||||||
| `Scoreboard` | HUD display data |
|
| `Scoreboard` | HUD display data |
|
||||||
@@ -677,17 +745,20 @@ Achievements trigger notifications on unlock.
|
|||||||
| Class | Purpose |
|
| Class | Purpose |
|
||||||
|-------|---------|
|
|-------|---------|
|
||||||
| `Surface` | 8-bit indexed color pixel buffer with palette |
|
| `Surface` | 8-bit indexed color pixel buffer with palette |
|
||||||
| `SurfaceSprite` | Renders a sprite region |
|
| `Sprite` | Renders a sprite region |
|
||||||
| `SurfaceAnimatedSprite` | Frame-based animation rendering |
|
| `AnimatedSprite` | Frame-based animation rendering |
|
||||||
| `SurfaceMovingSprite` | Sprite with velocity/position |
|
| `MovingSprite` | Sprite with velocity/position |
|
||||||
|
| `DissolveSprite` | Dissolve transition sprite |
|
||||||
| `Text` | Text rendering system |
|
| `Text` | Text rendering system |
|
||||||
| `OpenGLShader` | Shader compilation and effects |
|
| `Sdl3gpuShader` | SDL3 GPU shader compilation and effects |
|
||||||
|
| `PaletteManager` | Palette loading and management |
|
||||||
|
|
||||||
### Utility Classes
|
### Utility Classes
|
||||||
|
|
||||||
| Class | Purpose |
|
| Class/Header | Purpose |
|
||||||
|-------|---------|
|
|-------|---------|
|
||||||
| `DeltaTimer` | Frame-rate independent timing |
|
| `DeltaTimer` | Frame-rate independent timing |
|
||||||
|
| `easing_functions.hpp` | Easing/interpolation functions for animations |
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
@@ -717,16 +788,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,57 +862,82 @@ 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.fnt
|
||||||
|
|
||||||
|
# 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
|
||||||
|
|
||||||
### Animation Files (.ani)
|
### Animation Files (.yaml)
|
||||||
List of animation names, one per line:
|
YAML-based animation definitions with frame data:
|
||||||
```
|
```yaml
|
||||||
default
|
animations:
|
||||||
jump
|
- name: default
|
||||||
run
|
frameWidth: 16
|
||||||
fall
|
frameHeight: 16
|
||||||
|
speed: 100
|
||||||
|
loop: 0
|
||||||
|
frames: [...]
|
||||||
```
|
```
|
||||||
|
|
||||||
### Room Data Files (.room)
|
### Room Data Files (.yaml)
|
||||||
Key-value pairs defining room properties:
|
YAML-based room definitions:
|
||||||
```
|
```yaml
|
||||||
number=01
|
room:
|
||||||
name=Starting Room
|
name_en: Starting Room
|
||||||
bg_color=0x000000
|
bgColor: 0x000000
|
||||||
border_color=0xFF00FF
|
connections: [...]
|
||||||
...
|
tilemap: [...]
|
||||||
```
|
```
|
||||||
|
|
||||||
### Tilemap Files (.tmx)
|
### Tilemap Files (.tmx)
|
||||||
@@ -847,7 +952,8 @@ Binary 256-color palette format (256 × 4 bytes RGBA).
|
|||||||
|
|
||||||
### For Graphics Issues
|
### For Graphics Issues
|
||||||
- `Screen::render()` - Main rendering method
|
- `Screen::render()` - Main rendering method
|
||||||
- `Screen::setPalete()` - Palette application
|
- `Screen::setPaletteByName()` - Palette switching
|
||||||
|
- `PaletteManager` - Palette loading and sorting
|
||||||
- `Surface` class - Pixel buffer operations
|
- `Surface` class - Pixel buffer operations
|
||||||
|
|
||||||
### For Input Issues
|
### For Input Issues
|
||||||
@@ -865,11 +971,11 @@ 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
|
- `Resource::List::loadFromFile()` - Loads asset registry 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::Cache` - Asset loading and caching
|
||||||
- `Director::setFileList()` - Calls `Asset::loadFromFile()` with PREFIX and system_folder
|
- `Director::setFileList()` - Calls `Resource::List::loadFromFile()` with PREFIX and system_folder
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
@@ -909,6 +1015,6 @@ Binary 256-color palette format (256 × 4 bytes RGBA).
|
|||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
**Last Updated:** November 2022 (per README)
|
**Last Updated:** April 2026
|
||||||
**Original Author:** JailDesigner
|
**Original Author:** JailDesigner
|
||||||
**Repository:** Gitea (internal)
|
**Repository:** Gitea (internal)
|
||||||
|
|||||||
235
CMakeLists.txt
@@ -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)
|
||||||
@@ -41,26 +34,32 @@ set(APP_SOURCES
|
|||||||
|
|
||||||
# Core - Input
|
# Core - Input
|
||||||
source/core/input/global_inputs.cpp
|
source/core/input/global_inputs.cpp
|
||||||
source/core/input/input.cpp
|
|
||||||
source/core/input/input_types.cpp
|
source/core/input/input_types.cpp
|
||||||
|
source/core/input/input.cpp
|
||||||
source/core/input/mouse.cpp
|
source/core/input/mouse.cpp
|
||||||
|
|
||||||
# Core - Rendering
|
# Core - Rendering
|
||||||
source/core/rendering/gif.cpp
|
source/core/rendering/gif.cpp
|
||||||
|
source/core/rendering/palette_manager.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/sprite/animated_sprite.cpp
|
||||||
|
source/core/rendering/sprite/dissolve_sprite.cpp
|
||||||
|
source/core/rendering/sprite/moving_sprite.cpp
|
||||||
|
source/core/rendering/sprite/sprite.cpp
|
||||||
source/core/rendering/surface.cpp
|
source/core/rendering/surface.cpp
|
||||||
source/core/rendering/surface_animated_sprite.cpp
|
|
||||||
source/core/rendering/surface_moving_sprite.cpp
|
|
||||||
source/core/rendering/surface_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_cache.cpp
|
source/core/resources/resource_cache.cpp
|
||||||
source/core/resources/resource_pack.cpp
|
|
||||||
source/core/resources/resource_loader.cpp
|
|
||||||
source/core/resources/resource_helper.cpp
|
source/core/resources/resource_helper.cpp
|
||||||
|
source/core/resources/resource_list.cpp
|
||||||
|
source/core/resources/resource_loader.cpp
|
||||||
|
source/core/resources/resource_pack.cpp
|
||||||
|
|
||||||
# Core - System
|
# Core - System
|
||||||
source/core/system/director.cpp
|
source/core/system/director.cpp
|
||||||
@@ -80,9 +79,9 @@ set(APP_SOURCES
|
|||||||
source/game/gameplay/enemy_manager.cpp
|
source/game/gameplay/enemy_manager.cpp
|
||||||
source/game/gameplay/item_manager.cpp
|
source/game/gameplay/item_manager.cpp
|
||||||
source/game/gameplay/item_tracker.cpp
|
source/game/gameplay/item_tracker.cpp
|
||||||
source/game/gameplay/room.cpp
|
|
||||||
source/game/gameplay/room_loader.cpp
|
source/game/gameplay/room_loader.cpp
|
||||||
source/game/gameplay/room_tracker.cpp
|
source/game/gameplay/room_tracker.cpp
|
||||||
|
source/game/gameplay/room.cpp
|
||||||
source/game/gameplay/scoreboard.cpp
|
source/game/gameplay/scoreboard.cpp
|
||||||
source/game/gameplay/stats.cpp
|
source/game/gameplay/stats.cpp
|
||||||
source/game/gameplay/tilemap_renderer.cpp
|
source/game/gameplay/tilemap_renderer.cpp
|
||||||
@@ -91,13 +90,21 @@ set(APP_SOURCES
|
|||||||
source/game/scenes/credits.cpp
|
source/game/scenes/credits.cpp
|
||||||
source/game/scenes/ending.cpp
|
source/game/scenes/ending.cpp
|
||||||
source/game/scenes/ending2.cpp
|
source/game/scenes/ending2.cpp
|
||||||
source/game/scenes/game.cpp
|
|
||||||
source/game/scenes/game_over.cpp
|
source/game/scenes/game_over.cpp
|
||||||
|
source/game/scenes/game.cpp
|
||||||
source/game/scenes/loading_screen.cpp
|
source/game/scenes/loading_screen.cpp
|
||||||
source/game/scenes/logo.cpp
|
source/game/scenes/logo.cpp
|
||||||
source/game/scenes/title.cpp
|
source/game/scenes/title.cpp
|
||||||
|
|
||||||
|
# Game - Editor (debug only, guarded by #ifdef _DEBUG in source)
|
||||||
|
source/game/editor/map_editor.cpp
|
||||||
|
source/game/editor/editor_statusbar.cpp
|
||||||
|
source/game/editor/room_saver.cpp
|
||||||
|
source/game/editor/tile_picker.cpp
|
||||||
|
|
||||||
# Game - UI
|
# Game - UI
|
||||||
|
source/game/ui/console.cpp
|
||||||
|
source/game/ui/console_commands.cpp
|
||||||
source/game/ui/notifier.cpp
|
source/game/ui/notifier.cpp
|
||||||
|
|
||||||
# Utils
|
# Utils
|
||||||
@@ -108,9 +115,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 +129,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,31 +220,123 @@ 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)
|
||||||
set(CMAKE_OSX_ARCHITECTURES "arm64")
|
if(NOT CMAKE_OSX_ARCHITECTURES)
|
||||||
|
set(CMAKE_OSX_ARCHITECTURES "arm64")
|
||||||
|
endif()
|
||||||
|
if(MACOS_BUNDLE)
|
||||||
|
target_compile_definitions(${PROJECT_NAME} PRIVATE MACOS_BUNDLE)
|
||||||
|
target_link_options(${PROJECT_NAME} PRIVATE
|
||||||
|
-framework SDL3
|
||||||
|
-F ${CMAKE_SOURCE_DIR}/release/macos/frameworks/SDL3.xcframework/macos-arm64_x86_64
|
||||||
|
-rpath @executable_path/../Frameworks/
|
||||||
|
)
|
||||||
|
endif()
|
||||||
elseif(UNIX AND NOT APPLE)
|
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)
|
||||||
|
|||||||
2
LICENSE
@@ -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.
|
||||||
|
|
||||||
|
|||||||
344
Makefile
@@ -12,30 +12,40 @@ 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
|
# TOOLS
|
||||||
# ==============================================================================
|
# ==============================================================================
|
||||||
|
DIR_PACK_TOOL := $(DIR_TOOLS)pack_resources
|
||||||
|
SHADER_SCRIPT := $(DIR_ROOT)tools/shaders/compile_spirv.sh
|
||||||
|
SHADER_CMAKE := $(DIR_ROOT)tools/shaders/compile_spirv.cmake
|
||||||
|
SHADERS_DIR := $(DIR_ROOT)data/shaders
|
||||||
|
HEADERS_DIR := $(DIR_ROOT)source/core/rendering/sdl3gpu
|
||||||
ifeq ($(OS),Windows_NT)
|
ifeq ($(OS),Windows_NT)
|
||||||
PACK_TOOL := $(DIR_TOOLS)pack_resources/pack_resources.exe
|
GLSLC := $(shell where glslc 2>NUL)
|
||||||
PACK_CXX := $(CXX)
|
|
||||||
else
|
else
|
||||||
PACK_TOOL := $(DIR_TOOLS)pack_resources/pack_resources
|
GLSLC := $(shell command -v glslc 2>/dev/null)
|
||||||
PACK_CXX := $(CXX)
|
|
||||||
endif
|
endif
|
||||||
PACK_SOURCES := $(DIR_TOOLS)pack_resources/pack_resources.cpp source/core/resources/resource_pack.cpp
|
|
||||||
PACK_INCLUDES := -Isource
|
|
||||||
|
|
||||||
# ==============================================================================
|
# ==============================================================================
|
||||||
# VERSION (automatic based on date)
|
# 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
|
||||||
|
|
||||||
|
# ==============================================================================
|
||||||
|
# SHELL (Windows usa cmd.exe para que las recetas con powershell funcionen igual
|
||||||
|
# desde cualquier terminal: PowerShell, cmd o git-bash)
|
||||||
|
# ==============================================================================
|
||||||
|
ifeq ($(OS),Windows_NT)
|
||||||
|
SHELL := cmd.exe
|
||||||
endif
|
endif
|
||||||
|
|
||||||
# ==============================================================================
|
# ==============================================================================
|
||||||
@@ -52,204 +62,120 @@ 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
|
# PLATAFORMA
|
||||||
# ==============================================================================
|
# ==============================================================================
|
||||||
APP_SOURCES := \
|
|
||||||
source/main.cpp \
|
|
||||||
source/core/audio/audio.cpp \
|
|
||||||
source/core/input/input.cpp \
|
|
||||||
source/core/input/input_types.cpp \
|
|
||||||
source/core/input/mouse.cpp \
|
|
||||||
source/core/input/global_inputs.cpp \
|
|
||||||
source/core/rendering/screen.cpp \
|
|
||||||
source/core/rendering/surface.cpp \
|
|
||||||
source/core/rendering/surface_sprite.cpp \
|
|
||||||
source/core/rendering/surface_animated_sprite.cpp \
|
|
||||||
source/core/rendering/surface_moving_sprite.cpp \
|
|
||||||
source/core/rendering/text.cpp \
|
|
||||||
source/core/rendering/texture.cpp \
|
|
||||||
source/core/rendering/gif.cpp \
|
|
||||||
source/core/rendering/opengl/opengl_shader.cpp \
|
|
||||||
source/core/resources/resource_list.cpp \
|
|
||||||
source/core/resources/resource_cache.cpp \
|
|
||||||
source/core/resources/resource_helper.cpp \
|
|
||||||
source/core/resources/resource_loader.cpp \
|
|
||||||
source/core/resources/resource_pack.cpp \
|
|
||||||
source/core/system/director.cpp \
|
|
||||||
source/core/system/debug.cpp \
|
|
||||||
source/core/system/global_events.cpp \
|
|
||||||
source/game/options.cpp \
|
|
||||||
source/game/entities/player.cpp \
|
|
||||||
source/game/entities/enemy.cpp \
|
|
||||||
source/game/entities/item.cpp \
|
|
||||||
source/game/gameplay/room.cpp \
|
|
||||||
source/game/gameplay/collision_map.cpp \
|
|
||||||
source/game/gameplay/enemy_manager.cpp \
|
|
||||||
source/game/gameplay/item_manager.cpp \
|
|
||||||
source/game/gameplay/room_loader.cpp \
|
|
||||||
source/game/gameplay/tilemap_renderer.cpp \
|
|
||||||
source/game/gameplay/scoreboard.cpp \
|
|
||||||
source/game/gameplay/cheevos.cpp \
|
|
||||||
source/game/gameplay/item_tracker.cpp \
|
|
||||||
source/game/gameplay/room_tracker.cpp \
|
|
||||||
source/game/gameplay/stats.cpp \
|
|
||||||
source/game/scenes/logo.cpp \
|
|
||||||
source/game/scenes/loading_screen.cpp \
|
|
||||||
source/game/scenes/title.cpp \
|
|
||||||
source/game/scenes/game.cpp \
|
|
||||||
source/game/scenes/game_over.cpp \
|
|
||||||
source/game/scenes/ending.cpp \
|
|
||||||
source/game/scenes/ending2.cpp \
|
|
||||||
source/game/scenes/credits.cpp \
|
|
||||||
source/game/ui/notifier.cpp \
|
|
||||||
source/utils/utils.cpp \
|
|
||||||
source/utils/delta_timer.cpp
|
|
||||||
|
|
||||||
# All sources combined
|
|
||||||
ALL_SOURCES := $(APP_SOURCES)
|
|
||||||
|
|
||||||
# ==============================================================================
|
|
||||||
# INCLUDES
|
|
||||||
# ==============================================================================
|
|
||||||
INCLUDES := -Isource
|
|
||||||
|
|
||||||
# ==============================================================================
|
|
||||||
# COMPILER FLAGS (OS-specific)
|
|
||||||
# ==============================================================================
|
|
||||||
CPP_STANDARD := c++20
|
|
||||||
|
|
||||||
ifeq ($(OS),Windows_NT)
|
ifeq ($(OS),Windows_NT)
|
||||||
FixPath = $(subst /,\\,$1)
|
FixPath = $(subst /,\\,$1)
|
||||||
CXXFLAGS := -std=$(CPP_STANDARD) -Wall -Os -ffunction-sections -fdata-sections \
|
|
||||||
-Wl,--gc-sections -static-libstdc++ -static-libgcc \
|
|
||||||
-Wl,-subsystem,windows -DWINDOWS_BUILD
|
|
||||||
CXXFLAGS_DEBUG := -std=$(CPP_STANDARD) -Wall -g -D_DEBUG -DWINDOWS_BUILD
|
|
||||||
LDFLAGS := -lmingw32 -lws2_32 -lSDL3 -lopengl32
|
|
||||||
RM := del /Q
|
RM := del /Q
|
||||||
MKDIR := mkdir
|
MKDIR := mkdir
|
||||||
else
|
else
|
||||||
FixPath = $1
|
FixPath = $1
|
||||||
CXXFLAGS := -std=$(CPP_STANDARD) -Wall -Os -ffunction-sections -fdata-sections
|
|
||||||
CXXFLAGS_DEBUG := -std=$(CPP_STANDARD) -Wall -g -D_DEBUG
|
|
||||||
LDFLAGS := -lSDL3
|
|
||||||
RMFILE := rm -f
|
RMFILE := rm -f
|
||||||
RMDIR := rm -rdf
|
RMDIR := rm -rdf
|
||||||
MKDIR := mkdir -p
|
MKDIR := mkdir -p
|
||||||
UNAME_S := $(shell uname -s)
|
UNAME_S := $(shell uname -s)
|
||||||
ifeq ($(UNAME_S),Linux)
|
endif
|
||||||
CXXFLAGS += -DLINUX_BUILD
|
|
||||||
LDFLAGS += -lGL
|
# ==============================================================================
|
||||||
endif
|
# COMPILACIÓN CON CMAKE
|
||||||
ifeq ($(UNAME_S),Darwin)
|
# ==============================================================================
|
||||||
CXXFLAGS += -Wno-deprecated -DMACOS_BUILD
|
all:
|
||||||
CXXFLAGS_DEBUG += -Wno-deprecated -DMACOS_BUILD
|
@cmake -S . -B build -DCMAKE_BUILD_TYPE=Release
|
||||||
LDFLAGS += -framework OpenGL
|
@cmake --build build
|
||||||
# Configurar arquitectura (por defecto arm64)
|
|
||||||
CXXFLAGS += -arch arm64
|
debug:
|
||||||
CXXFLAGS_DEBUG += -arch arm64
|
@cmake -S . -B build -DCMAKE_BUILD_TYPE=Debug
|
||||||
endif
|
@cmake --build build
|
||||||
|
|
||||||
|
# ==============================================================================
|
||||||
|
# RELEASE AUTOMÁTICO (detecta SO)
|
||||||
|
# ==============================================================================
|
||||||
|
release:
|
||||||
|
ifeq ($(OS),Windows_NT)
|
||||||
|
@"$(MAKE)" windows_release
|
||||||
|
else
|
||||||
|
ifeq ($(UNAME_S),Darwin)
|
||||||
|
@$(MAKE) macos_release
|
||||||
|
else
|
||||||
|
@$(MAKE) linux_release
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
|
||||||
|
# ==============================================================================
|
||||||
|
# REGLAS PARA COMPILACIÓN DE SHADERS (multiplataforma via cmake)
|
||||||
|
# ==============================================================================
|
||||||
|
compile_shaders:
|
||||||
|
ifdef GLSLC
|
||||||
|
@cmake -D GLSLC=$(GLSLC) -D SHADERS_DIR=$(SHADERS_DIR) -D HEADERS_DIR=$(HEADERS_DIR) -P $(SHADER_CMAKE)
|
||||||
|
else
|
||||||
|
@echo "glslc no encontrado - asegurate de que los headers SPIR-V precompilados existen"
|
||||||
endif
|
endif
|
||||||
|
|
||||||
# ==============================================================================
|
# ==============================================================================
|
||||||
# REGLAS PARA HERRAMIENTA DE EMPAQUETADO Y RESOURCES.PACK
|
# REGLAS PARA HERRAMIENTA DE EMPAQUETADO Y RESOURCES.PACK
|
||||||
# ==============================================================================
|
# ==============================================================================
|
||||||
$(PACK_TOOL): FORCE
|
pack_tool:
|
||||||
@echo "Compilando herramienta de empaquetado..."
|
@$(MAKE) -C $(DIR_PACK_TOOL)
|
||||||
$(PACK_CXX) -std=$(CPP_STANDARD) -Wall -Os $(PACK_INCLUDES) $(PACK_SOURCES) -o $(PACK_TOOL)
|
|
||||||
@echo "✓ Herramienta de empaquetado lista: $(PACK_TOOL)"
|
|
||||||
|
|
||||||
pack_tool: $(PACK_TOOL)
|
resources.pack: pack_tool
|
||||||
|
@$(MAKE) -C $(DIR_PACK_TOOL) pack
|
||||||
resources.pack: $(PACK_TOOL)
|
|
||||||
@echo "Generando resources.pack desde directorio data/..."
|
|
||||||
$(PACK_TOOL) data resources.pack
|
|
||||||
@echo "✓ resources.pack generado exitosamente"
|
|
||||||
|
|
||||||
# ==============================================================================
|
# ==============================================================================
|
||||||
# COMPILACIÓN PARA WINDOWS
|
# COMPILACIÓN PARA WINDOWS (RELEASE)
|
||||||
# ==============================================================================
|
# ==============================================================================
|
||||||
windows:
|
|
||||||
@echo off
|
|
||||||
@echo Compilando para Windows con nombre: "$(WIN_TARGET_FILE).exe"
|
|
||||||
windres release/jdd.rc -O coff -o $(RESOURCE_FILE)
|
|
||||||
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
|
|
||||||
|
|
||||||
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) resources.pack
|
|
||||||
@echo off
|
@echo off
|
||||||
@echo Creando release para Windows - Version: $(VERSION)
|
@echo Creando release para Windows - Version: $(VERSION)
|
||||||
|
|
||||||
# Generate version.h from version.h.in
|
# Compila con cmake (genera shaders, resources.pack y ejecutable)
|
||||||
@echo "Generando version.h..."
|
@cmake -S . -B build -DCMAKE_BUILD_TYPE=Release
|
||||||
@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"
|
@cmake --build build
|
||||||
|
|
||||||
# Crea carpeta temporal 'RELEASE_FOLDER'
|
# Crea carpeta de distribución y carpeta temporal 'RELEASE_FOLDER'
|
||||||
powershell if (Test-Path "$(RELEASE_FOLDER)") {Remove-Item "$(RELEASE_FOLDER)" -Recurse -Force}
|
@powershell -Command "if (-not (Test-Path '$(DIST_DIR)')) {New-Item '$(DIST_DIR)' -ItemType Directory}"
|
||||||
powershell if (-not (Test-Path "$(RELEASE_FOLDER)")) {New-Item "$(RELEASE_FOLDER)" -ItemType Directory}
|
@powershell -Command "if (Test-Path '$(RELEASE_FOLDER)') {Remove-Item '$(RELEASE_FOLDER)' -Recurse -Force}"
|
||||||
|
@powershell -Command "if (-not (Test-Path '$(RELEASE_FOLDER)')) {New-Item '$(RELEASE_FOLDER)' -ItemType Directory}"
|
||||||
|
|
||||||
# Copia el archivo 'resources.pack'
|
# Copia ficheros
|
||||||
powershell Copy-Item -Path "resources.pack" -Destination "$(RELEASE_FOLDER)"
|
@powershell -Command "Copy-Item -Path 'resources.pack' -Destination '$(RELEASE_FOLDER)'"
|
||||||
|
@powershell -Command "Copy-Item 'LICENSE' -Destination '$(RELEASE_FOLDER)'"
|
||||||
# Copia los ficheros que están en la raíz del proyecto
|
@powershell -Command "Copy-Item 'README.md' -Destination '$(RELEASE_FOLDER)'"
|
||||||
powershell Copy-Item "LICENSE" -Destination "$(RELEASE_FOLDER)"
|
@powershell -Command "Copy-Item 'gamecontrollerdb.txt' -Destination '$(RELEASE_FOLDER)'"
|
||||||
powershell Copy-Item "README.md" -Destination "$(RELEASE_FOLDER)"
|
@powershell -Command "Copy-Item 'release\windows\dll\*.dll' -Destination '$(RELEASE_FOLDER)'"
|
||||||
powershell Copy-Item "gamecontrollerdb.txt" -Destination "$(RELEASE_FOLDER)"
|
@powershell -Command "Copy-Item -Path '$(TARGET_FILE)' -Destination '\"$(WIN_RELEASE_FILE).exe\"'"
|
||||||
powershell Copy-Item "release\*.dll" -Destination "$(RELEASE_FOLDER)"
|
|
||||||
|
|
||||||
# Compila (con icono)
|
|
||||||
windres release/jdd.rc -O coff -o $(RESOURCE_FILE)
|
|
||||||
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
|
||||||
|
|
||||||
# Crea el fichero .zip
|
# Crea el fichero .zip
|
||||||
powershell if (Test-Path "$(WINDOWS_RELEASE)") {Remove-Item "$(WINDOWS_RELEASE)"}
|
@powershell -Command "if (Test-Path '$(WINDOWS_RELEASE)') {Remove-Item '$(WINDOWS_RELEASE)'}"
|
||||||
powershell Compress-Archive -Path "$(RELEASE_FOLDER)"/* -DestinationPath "$(WINDOWS_RELEASE)"
|
@powershell -Command "Compress-Archive -Path '$(RELEASE_FOLDER)/*' -DestinationPath '$(WINDOWS_RELEASE)'"
|
||||||
@echo Release creado: $(WINDOWS_RELEASE)
|
@echo Release creado: $(WINDOWS_RELEASE)
|
||||||
|
|
||||||
# Elimina la carpeta temporal 'RELEASE_FOLDER'
|
# Elimina la carpeta temporal 'RELEASE_FOLDER'
|
||||||
powershell if (Test-Path "$(RELEASE_FOLDER)") {Remove-Item "$(RELEASE_FOLDER)" -Recurse -Force}
|
@powershell -Command "if (Test-Path '$(RELEASE_FOLDER)') {Remove-Item '$(RELEASE_FOLDER)' -Recurse -Force}"
|
||||||
|
|
||||||
# ==============================================================================
|
# ==============================================================================
|
||||||
# COMPILACIÓN PARA MACOS
|
# COMPILACIÓN PARA MACOS (RELEASE)
|
||||||
# ==============================================================================
|
# ==============================================================================
|
||||||
macos:
|
|
||||||
@echo "Compilando para macOS: $(TARGET_NAME)"
|
|
||||||
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) resources.pack
|
|
||||||
@echo "Creando release para macOS - Version: $(VERSION)"
|
@echo "Creando release para macOS - Version: $(VERSION)"
|
||||||
|
|
||||||
# Verificar e instalar create-dmg si es necesario
|
# Verificar e instalar create-dmg si es necesario
|
||||||
@which create-dmg > /dev/null || (echo "Instalando create-dmg..." && brew install create-dmg)
|
@which create-dmg > /dev/null || (echo "Instalando create-dmg..." && brew install create-dmg)
|
||||||
|
|
||||||
# Generate version.h from version.h.in
|
# Compila la versión para procesadores Intel con cmake (genera shaders y resources.pack)
|
||||||
@echo "Generando version.h..."
|
@cmake -S . -B build/intel -DCMAKE_BUILD_TYPE=Release -DCMAKE_OSX_ARCHITECTURES=x86_64 -DCMAKE_OSX_DEPLOYMENT_TARGET=10.15 -DMACOS_BUNDLE=ON
|
||||||
@GIT_HASH=$$(git rev-parse --short=7 HEAD 2>/dev/null || echo "unknown"); \
|
@cmake --build build/intel
|
||||||
sed "s/@GIT_HASH@/$$GIT_HASH/g" source/version.h.in > source/version.h
|
|
||||||
|
|
||||||
# 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) "$(DIST_DIR)"/rw.*
|
||||||
$(RMFILE) "$(MACOS_INTEL_RELEASE)"
|
$(RMFILE) "$(MACOS_INTEL_RELEASE)"
|
||||||
$(RMFILE) "$(MACOS_APPLE_SILICON_RELEASE)"
|
$(RMFILE) "$(MACOS_APPLE_SILICON_RELEASE)"
|
||||||
|
|
||||||
@@ -257,20 +183,24 @@ macos_release:
|
|||||||
$(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)"
|
||||||
|
|
||||||
# Compila la versión para procesadores Intel
|
# Actualiza versión en Info.plist
|
||||||
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
|
@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"
|
||||||
|
|
||||||
|
# Copia el ejecutable Intel al bundle
|
||||||
|
cp "$(TARGET_FILE)" "$(RELEASE_FOLDER)/$(APP_NAME).app/Contents/MacOS/$(TARGET_NAME)"
|
||||||
|
|
||||||
# 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"
|
||||||
@@ -292,8 +222,10 @@ macos_release:
|
|||||||
"$(RELEASE_FOLDER)" || true
|
"$(RELEASE_FOLDER)" || true
|
||||||
@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 con cmake
|
||||||
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
|
@cmake -S . -B build/arm -DCMAKE_BUILD_TYPE=Release -DCMAKE_OSX_ARCHITECTURES=arm64 -DCMAKE_OSX_DEPLOYMENT_TARGET=11.0 -DMACOS_BUNDLE=ON
|
||||||
|
@cmake --build build/arm
|
||||||
|
cp "$(TARGET_FILE)" "$(RELEASE_FOLDER)/$(APP_NAME).app/Contents/MacOS/$(TARGET_NAME)"
|
||||||
|
|
||||||
# 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,35 +248,23 @@ 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)"
|
||||||
|
$(RMDIR) build/intel
|
||||||
|
$(RMDIR) build/arm
|
||||||
|
$(RMFILE) "$(DIST_DIR)"/rw.*
|
||||||
|
|
||||||
# ==============================================================================
|
# ==============================================================================
|
||||||
# COMPILACIÓN PARA LINUX
|
# COMPILACIÓN PARA LINUX (RELEASE)
|
||||||
# ==============================================================================
|
# ==============================================================================
|
||||||
linux:
|
|
||||||
@echo "Compilando para Linux: $(TARGET_NAME)"
|
|
||||||
g++ $(ALL_SOURCES) $(INCLUDES) $(CXXFLAGS) $(LDFLAGS) -o "$(TARGET_FILE)"
|
|
||||||
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) resources.pack
|
|
||||||
@echo "Creando release para Linux - Version: $(VERSION)"
|
@echo "Creando release para Linux - Version: $(VERSION)"
|
||||||
|
|
||||||
# Generate version.h from version.h.in
|
# Compila con cmake (genera shaders, resources.pack y ejecutable)
|
||||||
@echo "Generando version.h..."
|
@cmake -S . -B build -DCMAKE_BUILD_TYPE=Release
|
||||||
@GIT_HASH=$$(git rev-parse --short=7 HEAD 2>/dev/null || echo "unknown"); \
|
@cmake --build build
|
||||||
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
|
||||||
@@ -352,9 +272,7 @@ linux_release:
|
|||||||
cp LICENSE "$(RELEASE_FOLDER)"
|
cp LICENSE "$(RELEASE_FOLDER)"
|
||||||
cp README.md "$(RELEASE_FOLDER)"
|
cp README.md "$(RELEASE_FOLDER)"
|
||||||
cp gamecontrollerdb.txt "$(RELEASE_FOLDER)"
|
cp gamecontrollerdb.txt "$(RELEASE_FOLDER)"
|
||||||
|
cp "$(TARGET_FILE)" "$(RELEASE_FILE)"
|
||||||
# Compila
|
|
||||||
g++ $(ALL_SOURCES) $(INCLUDES) -DRELEASE_BUILD $(CXXFLAGS) $(LDFLAGS) -o "$(RELEASE_FILE)"
|
|
||||||
strip -s -R .comment -R .gnu.version "$(RELEASE_FILE)" --strip-unneeded
|
strip -s -R .comment -R .gnu.version "$(RELEASE_FILE)" --strip-unneeded
|
||||||
|
|
||||||
# Empaqueta ficheros
|
# Empaqueta ficheros
|
||||||
@@ -376,20 +294,24 @@ show_version:
|
|||||||
help:
|
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 ""
|
||||||
@echo " windows_debug - Compilar debug para Windows"
|
@echo " Compilacion:"
|
||||||
@echo " windows_release - Crear release completo para Windows"
|
@echo " make - Compilar con cmake (Release)"
|
||||||
@echo " linux - Compilar para Linux"
|
@echo " make debug - Compilar con cmake (Debug)"
|
||||||
@echo " linux_debug - Compilar debug para Linux"
|
@echo ""
|
||||||
@echo " linux_release - Crear release completo para Linux"
|
@echo " Release:"
|
||||||
@echo " macos - Compilar para macOS"
|
@echo " make release - Crear release (detecta SO automaticamente)"
|
||||||
@echo " macos_debug - Compilar debug para macOS"
|
@echo " make windows_release - Crear release para Windows"
|
||||||
@echo " macos_release - Crear release completo para macOS"
|
@echo " make linux_release - Crear release para Linux"
|
||||||
@echo " pack_tool - Compilar herramienta de empaquetado"
|
@echo " make macos_release - Crear release para macOS"
|
||||||
@echo " resources.pack - Generar pack de recursos desde data/"
|
@echo ""
|
||||||
@echo " show_version - Mostrar version actual ($(VERSION))"
|
@echo " Herramientas:"
|
||||||
@echo " help - Mostrar esta ayuda"
|
@echo " make compile_shaders - Compilar shaders SPIR-V"
|
||||||
|
@echo " make pack_tool - Compilar herramienta de empaquetado"
|
||||||
|
@echo " make resources.pack - Generar pack de recursos desde data/"
|
||||||
|
@echo ""
|
||||||
|
@echo " Otros:"
|
||||||
|
@echo " make show_version - Mostrar version actual ($(VERSION))"
|
||||||
|
@echo " make help - Mostrar esta ayuda"
|
||||||
|
|
||||||
FORCE:
|
.PHONY: all debug release windows_release macos_release linux_release compile_shaders pack_tool resources.pack show_version help
|
||||||
|
|
||||||
.PHONY: windows windows_debug windows_release macos macos_debug macos_release linux linux_debug linux_release pack_tool resources.pack show_version help
|
|
||||||
|
|||||||
36
README.md
@@ -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.
|
|
||||||
|
|
||||||

|

|
||||||
|
|
||||||
@@ -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.
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
|||||||
@@ -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
|
|
||||||
627
config/assets.yaml
Normal file
@@ -0,0 +1,627 @@
|
|||||||
|
# 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.pal
|
||||||
|
- type: PALETTE
|
||||||
|
path: ${PREFIX}/data/palette/island-joy.pal
|
||||||
|
- type: PALETTE
|
||||||
|
path: ${PREFIX}/data/palette/lost-century.pal
|
||||||
|
- type: PALETTE
|
||||||
|
path: ${PREFIX}/data/palette/na.pal
|
||||||
|
- type: PALETTE
|
||||||
|
path: ${PREFIX}/data/palette/steam-lords.pal
|
||||||
|
- type: PALETTE
|
||||||
|
path: ${PREFIX}/data/palette/winds-seed-pc98.pal
|
||||||
|
- type: PALETTE
|
||||||
|
path: ${PREFIX}/data/palette/psychic-fibre.pal
|
||||||
|
- type: PALETTE
|
||||||
|
path: ${PREFIX}/data/palette/shido-cyberneon.pal
|
||||||
|
- type: PALETTE
|
||||||
|
path: ${PREFIX}/data/palette/darkseed.pal
|
||||||
|
- type: PALETTE
|
||||||
|
path: ${PREFIX}/data/palette/antiquity.pal
|
||||||
|
- type: PALETTE
|
||||||
|
path: ${PREFIX}/data/palette/bubblegum.pal
|
||||||
|
- type: PALETTE
|
||||||
|
path: ${PREFIX}/data/palette/vanilla-milkshake.pal
|
||||||
|
- type: PALETTE
|
||||||
|
path: ${PREFIX}/data/palette/aged-terracotta.pal
|
||||||
|
- type: PALETTE
|
||||||
|
path: ${PREFIX}/data/palette/h16da.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}/editor.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
|
||||||
|
|
||||||
|
# CONSOLE
|
||||||
|
console:
|
||||||
|
- type: DATA
|
||||||
|
path: ${PREFIX}/data/console/commands.yaml
|
||||||
|
|
||||||
|
# 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
|
||||||
266
data/console/commands.yaml
Normal file
@@ -0,0 +1,266 @@
|
|||||||
|
# JailDoctor's Dilemma - Console Commands
|
||||||
|
# Metadata for the in-game console command system.
|
||||||
|
# Execution logic stays in C++; this file defines metadata only.
|
||||||
|
#
|
||||||
|
# Fields:
|
||||||
|
# keyword - Command name (uppercase)
|
||||||
|
# handler - C++ handler function identifier
|
||||||
|
# description - Short description for help output
|
||||||
|
# usage - Full usage string for terminal help
|
||||||
|
# instant - (optional) Skip typewriter effect (default: false)
|
||||||
|
# hidden - (optional) Hide from TAB completion (default: false)
|
||||||
|
# debug_only - (optional) Only available in debug builds (default: false)
|
||||||
|
# help_hidden - (optional) Don't show in help output (default: false)
|
||||||
|
# dynamic_completions - (optional) Completions generated at runtime (default: false)
|
||||||
|
# completions - (optional) Static TAB completion tree
|
||||||
|
# debug_extras - (optional) Overrides applied in debug builds
|
||||||
|
|
||||||
|
categories:
|
||||||
|
- name: VIDEO
|
||||||
|
commands:
|
||||||
|
- keyword: SS
|
||||||
|
handler: cmd_ss
|
||||||
|
description: Supersampling
|
||||||
|
usage: "SS [ON|OFF|SIZE|UPSCALE [NEAREST|LINEAR]|DOWNSCALE [BILINEAR|LANCZOS2|LANCZOS3]]"
|
||||||
|
completions:
|
||||||
|
SS: [ON, OFF, SIZE, UPSCALE, DOWNSCALE]
|
||||||
|
SS UPSCALE: [NEAREST, LINEAR]
|
||||||
|
SS DOWNSCALE: [BILINEAR, LANCZOS2, LANCZOS3]
|
||||||
|
|
||||||
|
- keyword: SHADER
|
||||||
|
handler: cmd_shader
|
||||||
|
description: "Toggle/select shader (F4)"
|
||||||
|
usage: "SHADER [ON|OFF|NEXT|POSTFX|CRTPI|PRESET [NEXT|PREV|<name>]]"
|
||||||
|
completions:
|
||||||
|
SHADER: [ON, OFF, NEXT, POSTFX, CRTPI, PRESET]
|
||||||
|
dynamic_completions: true
|
||||||
|
|
||||||
|
- keyword: BORDER
|
||||||
|
handler: cmd_border
|
||||||
|
description: "Decorative border (B)"
|
||||||
|
usage: "BORDER [ON|OFF]"
|
||||||
|
completions:
|
||||||
|
BORDER: [ON, OFF]
|
||||||
|
|
||||||
|
- keyword: FULLSCREEN
|
||||||
|
handler: cmd_fullscreen
|
||||||
|
description: "Fullscreen mode (F3)"
|
||||||
|
usage: "FULLSCREEN [ON|OFF]"
|
||||||
|
completions:
|
||||||
|
FULLSCREEN: [ON, OFF]
|
||||||
|
|
||||||
|
- keyword: ZOOM
|
||||||
|
handler: cmd_zoom
|
||||||
|
description: "Window zoom (F1/F2)"
|
||||||
|
usage: "ZOOM [UP|DOWN|<1-N>]"
|
||||||
|
completions:
|
||||||
|
ZOOM: [UP, DOWN]
|
||||||
|
|
||||||
|
- keyword: INTSCALE
|
||||||
|
handler: cmd_intscale
|
||||||
|
description: "Integer scaling (F7)"
|
||||||
|
usage: "INTSCALE [ON|OFF]"
|
||||||
|
completions:
|
||||||
|
INTSCALE: [ON, OFF]
|
||||||
|
|
||||||
|
- keyword: VSYNC
|
||||||
|
handler: cmd_vsync
|
||||||
|
description: "Vertical sync"
|
||||||
|
usage: "VSYNC [ON|OFF]"
|
||||||
|
completions:
|
||||||
|
VSYNC: [ON, OFF]
|
||||||
|
|
||||||
|
- keyword: DRIVER
|
||||||
|
handler: cmd_driver
|
||||||
|
description: "GPU driver (restart to apply)"
|
||||||
|
usage: "DRIVER [LIST|AUTO|NONE|<name>]"
|
||||||
|
completions:
|
||||||
|
DRIVER: [LIST, AUTO, NONE]
|
||||||
|
|
||||||
|
- keyword: PALETTE
|
||||||
|
handler: cmd_palette
|
||||||
|
description: "Color palette (F5/F6)"
|
||||||
|
usage: "PALETTE [NEXT|PREV|SORT [ORIGINAL|LUMINANCE|SPECTRUM]|DEFAULT|<name>]"
|
||||||
|
completions:
|
||||||
|
PALETTE SORT: [ORIGINAL, LUMINANCE, SPECTRUM]
|
||||||
|
dynamic_completions: true
|
||||||
|
|
||||||
|
- name: AUDIO
|
||||||
|
commands:
|
||||||
|
- keyword: AUDIO
|
||||||
|
handler: cmd_audio
|
||||||
|
description: Audio master
|
||||||
|
usage: "AUDIO [ON|OFF|VOL <0-100>]"
|
||||||
|
completions:
|
||||||
|
AUDIO: [ON, OFF, VOL]
|
||||||
|
|
||||||
|
- keyword: MUSIC
|
||||||
|
handler: cmd_music
|
||||||
|
description: Music volume
|
||||||
|
usage: "MUSIC [ON|OFF|VOL <0-100>]"
|
||||||
|
completions:
|
||||||
|
MUSIC: [ON, OFF, VOL]
|
||||||
|
|
||||||
|
- keyword: SOUND
|
||||||
|
handler: cmd_sound
|
||||||
|
description: Sound volume
|
||||||
|
usage: "SOUND [ON|OFF|VOL <0-100>]"
|
||||||
|
completions:
|
||||||
|
SOUND: [ON, OFF, VOL]
|
||||||
|
|
||||||
|
- name: GAME
|
||||||
|
commands:
|
||||||
|
- keyword: PLAYER
|
||||||
|
handler: cmd_player
|
||||||
|
description: "Player skin and color"
|
||||||
|
usage: "PLAYER SKIN <name> | PLAYER COLOR <0-15>|DEFAULT"
|
||||||
|
completions:
|
||||||
|
PLAYER: [SKIN, COLOR]
|
||||||
|
PLAYER SKIN: [DEFAULT, ABAD, BATMAN, CHIP, CONGO, JEANNINE, MUMMY, UPV_STUDENT]
|
||||||
|
PLAYER COLOR: [DEFAULT]
|
||||||
|
|
||||||
|
- keyword: RESTART
|
||||||
|
handler: cmd_restart
|
||||||
|
description: Restart from the beginning
|
||||||
|
usage: RESTART
|
||||||
|
instant: true
|
||||||
|
|
||||||
|
- keyword: KIOSK
|
||||||
|
handler: cmd_kiosk
|
||||||
|
description: Enable kiosk mode
|
||||||
|
usage: "KIOSK [ON]"
|
||||||
|
completions:
|
||||||
|
KIOSK: [ON]
|
||||||
|
|
||||||
|
- keyword: EXIT
|
||||||
|
handler: cmd_exit
|
||||||
|
description: Quit application
|
||||||
|
usage: EXIT
|
||||||
|
instant: true
|
||||||
|
|
||||||
|
- keyword: QUIT
|
||||||
|
handler: cmd_quit
|
||||||
|
description: Quit application
|
||||||
|
usage: QUIT
|
||||||
|
instant: true
|
||||||
|
help_hidden: true
|
||||||
|
|
||||||
|
- name: INFO
|
||||||
|
commands:
|
||||||
|
- keyword: SHOW
|
||||||
|
handler: cmd_show
|
||||||
|
description: Show info overlay
|
||||||
|
usage: "SHOW [INFO]"
|
||||||
|
completions:
|
||||||
|
SHOW: [INFO]
|
||||||
|
debug_extras:
|
||||||
|
description: "Show overlay/test notification"
|
||||||
|
usage: "SHOW [INFO|NOTIFICATION|CHEEVO]"
|
||||||
|
completions:
|
||||||
|
SHOW: [INFO, NOTIFICATION, CHEEVO]
|
||||||
|
|
||||||
|
- keyword: HIDE
|
||||||
|
handler: cmd_hide
|
||||||
|
description: Hide info overlay
|
||||||
|
usage: "HIDE [INFO]"
|
||||||
|
completions:
|
||||||
|
HIDE: [INFO]
|
||||||
|
|
||||||
|
- keyword: SIZE
|
||||||
|
handler: cmd_size
|
||||||
|
description: Window size in pixels
|
||||||
|
usage: SIZE
|
||||||
|
|
||||||
|
- keyword: HELP
|
||||||
|
handler: cmd_help
|
||||||
|
description: "Show this help"
|
||||||
|
usage: "HELP / ?"
|
||||||
|
|
||||||
|
- keyword: "?"
|
||||||
|
handler: cmd_help
|
||||||
|
help_hidden: true
|
||||||
|
|
||||||
|
- name: DEBUG
|
||||||
|
debug_only: true
|
||||||
|
commands:
|
||||||
|
- keyword: DEBUG
|
||||||
|
handler: cmd_debug
|
||||||
|
description: "Debug mode and start options (F12)"
|
||||||
|
usage: "DEBUG [MODE [ON|OFF]|START [HERE|ROOM|POS|SCENE <name>]]"
|
||||||
|
completions:
|
||||||
|
DEBUG: [MODE, START]
|
||||||
|
DEBUG MODE: [ON, OFF]
|
||||||
|
DEBUG START: [HERE, ROOM, POS, SCENE]
|
||||||
|
DEBUG START SCENE: [LOGO, LOADING, TITLE, CREDITS, GAME, ENDING, ENDING2]
|
||||||
|
|
||||||
|
- keyword: ITEMS
|
||||||
|
handler: cmd_items
|
||||||
|
description: "Set item count (GAME only)"
|
||||||
|
usage: "ITEMS <0-200>"
|
||||||
|
|
||||||
|
- keyword: ROOM
|
||||||
|
handler: cmd_room
|
||||||
|
description: "Change to room number (GAME only)"
|
||||||
|
usage: "ROOM <1-60>|NEXT|PREV|LEFT|RIGHT|UP|DOWN"
|
||||||
|
completions:
|
||||||
|
ROOM: [NEXT, PREV, LEFT, RIGHT, UP, DOWN]
|
||||||
|
|
||||||
|
- keyword: SCENE
|
||||||
|
handler: cmd_scene
|
||||||
|
description: Change scene
|
||||||
|
usage: "SCENE [LOGO|LOADING|TITLE|CREDITS|GAME|ENDING|ENDING2|RESTART]"
|
||||||
|
completions:
|
||||||
|
SCENE: [LOGO, LOADING, TITLE, CREDITS, GAME, ENDING, ENDING2, RESTART]
|
||||||
|
|
||||||
|
- keyword: EDIT
|
||||||
|
handler: cmd_edit
|
||||||
|
description: "Map editor mode (GAME only)"
|
||||||
|
usage: "EDIT [ON|OFF|REVERT|SHOW|HIDE] [INFO|GRID]"
|
||||||
|
completions:
|
||||||
|
EDIT: [ON, OFF, REVERT, SHOW, HIDE]
|
||||||
|
EDIT SHOW: [INFO, GRID]
|
||||||
|
EDIT HIDE: [INFO, GRID]
|
||||||
|
|
||||||
|
- keyword: ENEMY
|
||||||
|
handler: cmd_enemy
|
||||||
|
description: "Add, delete or duplicate enemy (editor)"
|
||||||
|
usage: "ENEMY <ADD|DELETE|DUPLICATE>"
|
||||||
|
completions:
|
||||||
|
ENEMY: [ADD, DELETE, DUPLICATE]
|
||||||
|
|
||||||
|
- keyword: ITEM
|
||||||
|
handler: cmd_item
|
||||||
|
description: "Add, delete or duplicate item (editor)"
|
||||||
|
usage: "ITEM <ADD|DELETE|DUPLICATE>"
|
||||||
|
completions:
|
||||||
|
ITEM: [ADD, DELETE, DUPLICATE]
|
||||||
|
|
||||||
|
- keyword: SET
|
||||||
|
handler: cmd_set
|
||||||
|
description: "Set property (enemy or room, editor mode)"
|
||||||
|
usage: "SET <property> <value>"
|
||||||
|
dynamic_completions: true
|
||||||
|
completions:
|
||||||
|
SET: [ANIMATION, COLOR, VX, VY, FLIP, MIRROR, BGCOLOR, BORDER, ITEMCOLOR1, ITEMCOLOR2, CONVEYOR, TILESET, UP, DOWN, LEFT, RIGHT, TILE, COUNTER]
|
||||||
|
SET FLIP: [ON, OFF]
|
||||||
|
SET MIRROR: [ON, OFF]
|
||||||
|
SET CONVEYOR: [LEFT, NONE, RIGHT]
|
||||||
|
|
||||||
|
- name: CHEATS
|
||||||
|
commands:
|
||||||
|
- keyword: CHEAT
|
||||||
|
handler: cmd_cheat
|
||||||
|
description: "Game cheats (GAME only)"
|
||||||
|
usage: "CHEAT [INFINITE LIVES|INVINCIBILITY|OPEN THE JAIL|CLOSE THE JAIL]"
|
||||||
|
hidden: true
|
||||||
|
completions:
|
||||||
|
CHEAT: [INFINITE, INVINCIBILITY, OPEN, CLOSE]
|
||||||
|
CHEAT INFINITE: [LIVES]
|
||||||
|
CHEAT INFINITE LIVES: [ON, OFF]
|
||||||
|
CHEAT INVINCIBILITY: [ON, OFF]
|
||||||
|
CHEAT OPEN: [THE]
|
||||||
|
CHEAT OPEN THE: [JAIL]
|
||||||
|
CHEAT CLOSE: [THE]
|
||||||
|
CHEAT CLOSE THE: [JAIL]
|
||||||
|
debug_extras:
|
||||||
|
hidden: false
|
||||||
|
Before Width: | Height: | Size: 2.9 KiB After Width: | Height: | Size: 2.9 KiB |
|
Before Width: | Height: | Size: 224 B After Width: | Height: | Size: 224 B |
@@ -1,5 +1,5 @@
|
|||||||
# jailer_#3 animation
|
# jailer1 animation
|
||||||
tileSetFile: jailer_#3.gif
|
tileSetFile: jailer1.gif
|
||||||
frameWidth: 16
|
frameWidth: 16
|
||||||
frameHeight: 16
|
frameHeight: 16
|
||||||
|
|
||||||
|
Before Width: | Height: | Size: 280 B After Width: | Height: | Size: 280 B |
@@ -1,5 +1,5 @@
|
|||||||
# jailer_#2 animation
|
# jailer2 animation
|
||||||
tileSetFile: jailer_#2.gif
|
tileSetFile: jailer2.gif
|
||||||
frameWidth: 16
|
frameWidth: 16
|
||||||
frameHeight: 16
|
frameHeight: 16
|
||||||
|
|
||||||
|
Before Width: | Height: | Size: 226 B After Width: | Height: | Size: 226 B |
@@ -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
@@ -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 # ·
|
||||||
|
Before Width: | Height: | Size: 680 B After Width: | Height: | Size: 837 B |
@@ -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
@@ -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 # ·
|
||||||
|
Before Width: | Height: | Size: 640 B After Width: | Height: | Size: 3.9 KiB |
@@ -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
@@ -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 # ·
|
||||||
|
Before Width: | Height: | Size: 810 B After Width: | Height: | Size: 959 B |
@@ -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
@@ -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)
|
||||||
|
Before Width: | Height: | Size: 798 B After Width: | Height: | Size: 1001 B |
@@ -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
@@ -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 # ·
|
||||||
|
Before Width: | Height: | Size: 540 B After Width: | Height: | Size: 648 B |
@@ -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
|
|
||||||
145
data/locale/ca.yaml
Normal file
@@ -0,0 +1,145 @@
|
|||||||
|
# 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"
|
||||||
|
palette_sort: "ORDENACIÓ 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"
|
||||||
|
cheat_infinite_lives: "vides inf"
|
||||||
|
cheat_invincibility: "inv"
|
||||||
|
|
||||||
|
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"
|
||||||
|
editor_enabled: "EDITOR ACTIVAT"
|
||||||
|
editor_disabled: "EDITOR DESACTIVAT"
|
||||||
145
data/locale/en.yaml
Normal file
@@ -0,0 +1,145 @@
|
|||||||
|
# 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"
|
||||||
|
palette_sort: "PALETTE SORT"
|
||||||
|
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"
|
||||||
|
cheat_infinite_lives: "inf lives"
|
||||||
|
cheat_invincibility: "inv"
|
||||||
|
|
||||||
|
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"
|
||||||
|
editor_enabled: "EDITOR ENABLED"
|
||||||
|
editor_disabled: "EDITOR DISABLED"
|
||||||
19
data/palette/aged-terracotta.pal
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
JASC-PAL
|
||||||
|
0100
|
||||||
|
16
|
||||||
|
52 49 40
|
||||||
|
80 73 57
|
||||||
|
92 104 82
|
||||||
|
108 116 76
|
||||||
|
125 130 73
|
||||||
|
163 158 85
|
||||||
|
202 181 103
|
||||||
|
119 63 53
|
||||||
|
132 86 64
|
||||||
|
160 119 84
|
||||||
|
188 153 120
|
||||||
|
214 193 157
|
||||||
|
234 220 193
|
||||||
|
247 240 221
|
||||||
|
255 251 237
|
||||||
|
255 255 255
|
||||||
19
data/palette/antiquity.pal
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
JASC-PAL
|
||||||
|
0100
|
||||||
|
16
|
||||||
|
32 32 32
|
||||||
|
45 33 30
|
||||||
|
69 41 35
|
||||||
|
109 61 41
|
||||||
|
177 107 74
|
||||||
|
232 159 110
|
||||||
|
232 190 130
|
||||||
|
93 117 87
|
||||||
|
142 146 87
|
||||||
|
112 123 136
|
||||||
|
138 167 172
|
||||||
|
229 93 77
|
||||||
|
241 134 108
|
||||||
|
210 103 48
|
||||||
|
222 154 40
|
||||||
|
232 216 165
|
||||||
19
data/palette/bubblegum.pal
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
JASC-PAL
|
||||||
|
0100
|
||||||
|
16
|
||||||
|
22 23 26
|
||||||
|
127 6 34
|
||||||
|
214 36 17
|
||||||
|
255 132 38
|
||||||
|
255 209 0
|
||||||
|
250 253 255
|
||||||
|
255 128 164
|
||||||
|
255 38 116
|
||||||
|
148 33 106
|
||||||
|
67 0 103
|
||||||
|
35 73 117
|
||||||
|
104 174 212
|
||||||
|
191 255 60
|
||||||
|
16 210 117
|
||||||
|
0 120 153
|
||||||
|
0 40 89
|
||||||
19
data/palette/darkseed.pal
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
JASC-PAL
|
||||||
|
0100
|
||||||
|
16
|
||||||
|
0 0 0
|
||||||
|
0 20 24
|
||||||
|
0 32 36
|
||||||
|
0 44 56
|
||||||
|
20 52 68
|
||||||
|
68 52 68
|
||||||
|
88 60 72
|
||||||
|
108 76 68
|
||||||
|
128 96 88
|
||||||
|
108 112 108
|
||||||
|
136 128 120
|
||||||
|
164 148 132
|
||||||
|
196 172 156
|
||||||
|
216 176 168
|
||||||
|
236 212 208
|
||||||
|
252 252 252
|
||||||
19
data/palette/h16da.pal
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
JASC-PAL
|
||||||
|
0100
|
||||||
|
16
|
||||||
|
226 217 228
|
||||||
|
108 154 154
|
||||||
|
82 103 93
|
||||||
|
55 64 59
|
||||||
|
243 200 147
|
||||||
|
229 152 125
|
||||||
|
203 94 92
|
||||||
|
114 51 76
|
||||||
|
192 165 169
|
||||||
|
191 125 133
|
||||||
|
128 77 83
|
||||||
|
64 48 56
|
||||||
|
124 143 178
|
||||||
|
76 82 116
|
||||||
|
46 51 77
|
||||||
|
31 32 37
|
||||||
19
data/palette/psychic-fibre.pal
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
JASC-PAL
|
||||||
|
0100
|
||||||
|
16
|
||||||
|
10 8 25
|
||||||
|
49 50 67
|
||||||
|
69 59 70
|
||||||
|
87 84 117
|
||||||
|
130 105 128
|
||||||
|
164 111 114
|
||||||
|
185 115 113
|
||||||
|
205 95 105
|
||||||
|
229 76 81
|
||||||
|
201 55 73
|
||||||
|
144 161 168
|
||||||
|
140 147 137
|
||||||
|
195 150 145
|
||||||
|
236 151 134
|
||||||
|
235 171 145
|
||||||
|
219 182 167
|
||||||
19
data/palette/shido-cyberneon.pal
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
JASC-PAL
|
||||||
|
0100
|
||||||
|
16
|
||||||
|
0 3 60
|
||||||
|
0 82 96
|
||||||
|
0 157 74
|
||||||
|
10 255 82
|
||||||
|
0 56 132
|
||||||
|
0 138 197
|
||||||
|
0 247 255
|
||||||
|
255 92 255
|
||||||
|
172 41 206
|
||||||
|
96 0 136
|
||||||
|
177 5 133
|
||||||
|
255 0 78
|
||||||
|
42 46 121
|
||||||
|
78 110 168
|
||||||
|
173 212 250
|
||||||
|
255 255 255
|
||||||
@@ -1,19 +0,0 @@
|
|||||||
JASC-PAL
|
|
||||||
0100
|
|
||||||
16
|
|
||||||
26 28 44
|
|
||||||
93 39 93
|
|
||||||
177 62 83
|
|
||||||
239 125 87
|
|
||||||
255 205 117
|
|
||||||
167 240 112
|
|
||||||
56 183 100
|
|
||||||
37 113 121
|
|
||||||
41 54 111
|
|
||||||
59 93 201
|
|
||||||
65 166 246
|
|
||||||
115 239 247
|
|
||||||
244 244 244
|
|
||||||
148 176 194
|
|
||||||
86 108 134
|
|
||||||
51 60 87
|
|
||||||
@@ -2,18 +2,18 @@ JASC-PAL
|
|||||||
0100
|
0100
|
||||||
16
|
16
|
||||||
26 28 44
|
26 28 44
|
||||||
41 54 111
|
|
||||||
51 60 87
|
|
||||||
86 108 134
|
|
||||||
59 93 201
|
|
||||||
37 113 121
|
|
||||||
93 39 93
|
93 39 93
|
||||||
177 62 83
|
177 62 83
|
||||||
56 183 100
|
|
||||||
167 240 112
|
|
||||||
65 166 246
|
|
||||||
115 239 247
|
|
||||||
239 125 87
|
239 125 87
|
||||||
255 205 117
|
255 205 117
|
||||||
148 176 194
|
167 240 112
|
||||||
|
56 183 100
|
||||||
|
37 113 121
|
||||||
|
41 54 111
|
||||||
|
59 93 201
|
||||||
|
65 166 246
|
||||||
|
115 239 247
|
||||||
244 244 244
|
244 244 244
|
||||||
|
148 176 194
|
||||||
|
86 108 134
|
||||||
|
51 60 87
|
||||||
19
data/palette/vanilla-milkshake.pal
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
JASC-PAL
|
||||||
|
0100
|
||||||
|
16
|
||||||
|
40 40 46
|
||||||
|
108 86 113
|
||||||
|
217 200 191
|
||||||
|
249 130 132
|
||||||
|
176 169 228
|
||||||
|
172 204 228
|
||||||
|
179 227 218
|
||||||
|
254 170 228
|
||||||
|
135 168 137
|
||||||
|
176 235 147
|
||||||
|
233 245 157
|
||||||
|
255 230 198
|
||||||
|
222 163 139
|
||||||
|
255 195 132
|
||||||
|
255 247 160
|
||||||
|
255 247 228
|
||||||
19
data/palette/winds-seed-pc98.pal
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
JASC-PAL
|
||||||
|
0100
|
||||||
|
16
|
||||||
|
0 0 0
|
||||||
|
50 1 50
|
||||||
|
84 1 103
|
||||||
|
118 50 118
|
||||||
|
50 50 171
|
||||||
|
35 103 239
|
||||||
|
152 186 220
|
||||||
|
253 253 253
|
||||||
|
1 186 152
|
||||||
|
1 137 84
|
||||||
|
254 239 69
|
||||||
|
119 70 2
|
||||||
|
186 118 84
|
||||||
|
254 1 69
|
||||||
|
239 152 152
|
||||||
|
254 205 205
|
||||||
@@ -4,17 +4,7 @@ frameWidth: 8
|
|||||||
frameHeight: 16
|
frameHeight: 16
|
||||||
|
|
||||||
animations:
|
animations:
|
||||||
- name: stand
|
- name: default
|
||||||
speed: 0.1333
|
|
||||||
loop: 0
|
|
||||||
frames: [0]
|
|
||||||
|
|
||||||
- name: walk
|
|
||||||
speed: 0.1333
|
speed: 0.1333
|
||||||
loop: 0
|
loop: 0
|
||||||
frames: [0, 1, 2, 3]
|
frames: [0, 1, 2, 3]
|
||||||
|
|
||||||
- name: walk_menu
|
|
||||||
speed: 0.0
|
|
||||||
loop: 0
|
|
||||||
frames: [0, 1, 2, 3]
|
|
||||||
|
|||||||
@@ -4,17 +4,7 @@ frameWidth: 8
|
|||||||
frameHeight: 16
|
frameHeight: 16
|
||||||
|
|
||||||
animations:
|
animations:
|
||||||
- name: stand
|
- name: default
|
||||||
speed: 0.1333
|
|
||||||
loop: 0
|
|
||||||
frames: [0]
|
|
||||||
|
|
||||||
- name: walk
|
|
||||||
speed: 0.1333
|
speed: 0.1333
|
||||||
loop: 0
|
loop: 0
|
||||||
frames: [0, 1, 2, 3, 4, 5, 6, 7]
|
frames: [0, 1, 2, 3, 4, 5, 6, 7]
|
||||||
|
|
||||||
- name: walk_menu
|
|
||||||
speed: 0.0
|
|
||||||
loop: 0
|
|
||||||
frames: [0, 1, 2, 3, 4, 5, 6, 7]
|
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||