Compare commits

1238 Commits

Author SHA1 Message Date
3c2a5c9b37 arreglos en namespaces de defaults 2026-03-23 21:15:01 +01:00
270cd1d487 eliminades referencies a opengl 2026-03-23 17:04:21 +01:00
58512840a4 eliminats fitxers glsl 2026-03-23 17:04:12 +01:00
2f3161d701 primera implementacio de postfx 2026-03-23 13:18:36 +01:00
99cc803f21 fix config yaml 2026-03-23 12:18:09 +01:00
d42b1753d0 migrada configuracio a yaml 2026-03-23 12:14:25 +01:00
a1d17ccf99 clang-tidy (amb el fuck de que no feien bona parella el clang de macos i el tidy de llvm) 2026-03-23 12:03:07 +01:00
3ca744ee46 clang-format 2026-03-23 08:58:31 +01:00
302b86ddb4 lo mateix de antes 2026-03-23 08:37:50 +01:00
81daf725d5 arreglada la carpeta tools
eliminat frameworks sobrants (reduix prou el executable de macos)
2026-03-23 08:37:40 +01:00
d80c673882 actualitzat makefile 2026-03-23 08:20:25 +01:00
4ac123abb0 normailzada la carpeta release 2026-03-23 08:20:01 +01:00
cb22ff321f normalitzat caption de la finestra 2026-03-22 23:10:33 +01:00
c35889a840 RW2026 - Abans d'anar li vaig dir a Claude que arreglara coses de input i game pq pareixia que al disparar es perdien inputs 2026-03-22 23:04:45 +01:00
c610065fe0 Actualizar README.md 2025-11-01 20:09:34 +01:00
d2be113c4e corregit makefile 2025-10-25 09:29:01 +02:00
052bb063df Corregit resource_helper i millora DMG amb create-dmg 2025-10-25 00:20:35 +02:00
9d974438b3 millorat makefile per a que el dmg es veja millor 2025-10-24 23:31:30 +02:00
b9fe376f2a eliminat el fallback a disc en les versions de release 2025-10-24 23:21:27 +02:00
0c05f6d5b6 corregida la versio release de macos per a funcionar correctament amb resources.pack 2025-10-24 23:11:48 +02:00
39125ee57c nou icon 2025-10-24 21:17:29 +02:00
7ebeeebaaf arreglat include en pack_resources.cpp 2025-10-24 18:38:02 +02:00
c6c7b63f6d ultim linter 2025-10-24 18:36:00 +02:00
7959baeed9 linter 2025-10-24 18:22:15 +02:00
5d1c6c6d99 linter 2025-10-24 18:11:51 +02:00
145d1e3fc0 canvis en run_clang-tidy.sh 2025-10-24 17:58:53 +02:00
4679255d60 linter 2025-10-24 17:50:31 +02:00
3cfb65320c linter: opengl_shader.cpp 2025-10-24 17:21:17 +02:00
636e4d932a linter: varios 2025-10-24 17:12:57 +02:00
9979f31b4a linter: manage_hiscore_table 2025-10-24 14:10:38 +02:00
6190b35349 integrat jail_audio en la carrega de resources.pack 2025-10-24 13:59:03 +02:00
fd4136a882 linter: varios 2025-10-24 13:45:56 +02:00
5362c5b022 linter; manage_hiscore i resource_loader 2025-10-24 12:06:53 +02:00
357b5d5977 linter: renombrar variables 2025-10-24 10:33:18 +02:00
f50ad68f10 linter: resource_pack 2025-10-24 10:27:56 +02:00
155a7d038d ajustades constants en credits.cpp 2025-10-24 10:13:10 +02:00
4b732c189c migrat correctament a delta_time credits.cpp i eliminat un bug que feia que si no pasaves a ma el final, no acabara mai 2025-10-24 10:10:55 +02:00
1c3d59d678 migrat hiscore_table a delta_time de manera correcta
corregida deformació subpixel de la textura en instructions i hiscore_table
2025-10-24 08:49:09 +02:00
1acbe1d097 migrat instructions a delta_time pur 2025-10-23 18:59:37 +02:00
245524c021 fix: detecta fitxers de puntuació corruptes 2025-10-23 18:47:38 +02:00
b4624a9223 arreglos en makefiles i cmakes 2025-10-23 18:32:17 +02:00
28e3e1ee0a style: si ja havies posat nom, el carrusel apareix directament en el caracter d'acabar 2025-10-23 17:46:06 +02:00
e250ca048f calibrats els pulsos al gust 2025-10-23 14:56:33 +02:00
5bf96b9aba afegit "pulsos" a scoreboard 2025-10-23 14:44:51 +02:00
ac6f521288 fix: la logica de Rects dels credits 2025-10-22 21:02:09 +02:00
5a5c06efd1 fix: si vas a posar nom i el nom ja està ple, ja aplica les restriccions i posa el carrusel com toca 2025-10-22 19:58:47 +02:00
ef1a514c9b style: ja pots mouret pel carrusel de posar nom mantenint la direccio apretada (ja no vas lletra a lletra) 2025-10-22 19:55:02 +02:00
ce54b10abb afegida classe Cooldown 2025-10-22 19:54:27 +02:00
40538eaa28 el carrusel ja s'anima supersucosetment cap al OK de manera automática 2025-10-22 18:56:59 +02:00
88d814f371 Visualment, el carrusel ja salta al ultim caracter (instantani)
Si no hi ha lletres per a borrar, no fa roidet
2025-10-22 18:47:42 +02:00
b933ceee63 Traslladada logica de clavar nom de game a player
Si no caben mes lletres, salta a l'ultim caracter i bloqueja el carrusel
2025-10-22 18:36:32 +02:00
75ccddbaa1 style: ja hi ha un caracter per acabar de posar el nom 2025-10-22 18:17:58 +02:00
fde77affdf fix: ja no s'escolta el time stopper al passar-se el joc
style: ja no ix el lletrero de gameover al passar-se el joc
2025-10-22 17:05:38 +02:00
52a387463d fix: Fade Type::FULLSCREEN no iniciava correctament i el primer frame de un fade_in mostrava el contingut 2025-10-22 15:40:17 +02:00
5a0fc9330d fix: splash.png corregit 2025-10-22 15:25:57 +02:00
66661036a4 fix: en Player::handleRecoverMovement() es reproduía voice_recover.wav constantment 2025-10-22 15:17:05 +02:00
bb132aade2 afegit caracter de acabar de posar el nom (no en us encara)
corregida la logica de animacio i desplaçament del carrusel de posar nom
2025-10-22 15:05:57 +02:00
d4e09e1e88 gameplay: canviat text de SuperPoder per Automatic 2025-10-22 13:03:16 +02:00
866f464d37 gameplay: la maquina de café ja no tapa els globos (al reves) 2025-10-22 12:58:53 +02:00
da9f3c1e02 refeta la classe Fade perque nomes havia un tipo de fade migrat a time based. ara ja estan tots correctes 2025-10-21 21:12:29 +02:00
9b8fdf289f animacions noves per al jugador2,
cada jugador te el seu fitxer d'animacions per separat
2025-10-21 20:42:17 +02:00
bf12c1664a fix: nou metode per ordenar i dibuixar els jugadors ordenats en l'eix Z
codi: eliminat tot el codi mort de Hit
2025-10-21 09:30:31 +02:00
d7836eedd7 canvi de pc (treballant en el z-order dels jugadors per evitar reordenar el vector) 2025-10-20 21:41:23 +02:00
4bac816e37 style: meeees retocs a la pantalla de càrrega 2025-10-20 21:07:22 +02:00
67f9103b96 fix: updateAlphaColorTexture() en Background class per a utilitzar delta_time 2025-10-20 20:54:34 +02:00
8ddee66304 fix: el cicle de color de credits.cpp 2025-10-20 20:36:33 +02:00
4fb6a9999f animacions noves dels jugadors per al final 2025-10-20 20:06:32 +02:00
794dcf83f6 style: toquejant mes la pantalla de carrega 2025-10-20 18:11:39 +02:00
9fe73ed8e4 style: toquejant la pantalla de càrrega 2025-10-20 14:07:14 +02:00
e99b2abd7d style: canviat un ifndef per un pragma once 2025-10-20 13:18:09 +02:00
b128b285ed fix: alguns logs de consola
fix: alguns .h s'havien canviat a .hpp per error
2025-10-20 12:43:43 +02:00
c8bf9640cf corregits bugs de toquetechar vectors i merdes i passats a lists 2025-10-20 12:29:37 +02:00
2b4523d644 linter 2025-10-19 22:01:31 +02:00
16306f2325 els items començen a parpadejar quan ja estan quets a terra 2025-10-19 19:51:07 +02:00
d7c3ea7f69 corregit el pixelart dels logos de JAILGAMES 2025-10-19 18:25:00 +02:00
413c3c30a6 afegit el namespace Logger 2025-10-19 18:10:55 +02:00
df6e7e5155 eliminat el cadaver que havia de jail_shader.cpp per ahi 2025-10-17 21:58:12 +02:00
46974ef2eb renombrades extensions .h a .hpp 2025-10-17 21:45:19 +02:00
50ccb2ccc2 commit pollós 2025-10-17 21:09:08 +02:00
9b966a260c fix: el fitxer de config el trobava i despres deia que no el trobava 2025-10-17 20:48:47 +02:00
49ea56f5e2 fix: WARNING: Parámetro desconocido: game.item_size 2025-10-17 20:33:02 +02:00
300edc90b5 PathSprite: ja permet createPath amb temps o frames 2025-10-17 14:02:40 +02:00
5ff33ca6ca fix: ja es mou la herbeta 2025-10-16 20:43:48 +02:00
6dc6d8fc24 fix: Dejar que SDL elija OpenGL automáticamente en Linux
- Windows: opengl + 3.3 Core Profile explícito
- Linux: opengl sin atributos, SDL elige:
  * Desktop 3.3 en PC con GPU normal
  * ES 3.0 en RPi automáticamente

Resuelve problema de colores invertidos (azul->naranja) causado
por forzar opengles2.
2025-10-02 22:05:18 +02:00
8d94ed516c fix: Renderizar textura antes de inicializar shaders
En constructor: SDL_RenderTexture() antes de initShaders()
Esto asegura que la textura tiene contenido válido.

Revertido lazy initialization que no funcionaba.
Vuelta a la solución original que sí funcionaba.
2025-10-02 22:00:30 +02:00
ba0b0930b0 fix: Mejorar obtención de texture ID en OpenGL ES
- Probar SDL_PROP_TEXTURE_OPENGLES2_TEXTURE_NUMBER para ES
- Probar SDL_PROP_TEXTURE_OPENGL_TEXTURE_NUMBER para Desktop
- Añadir logs detallados para debug
- No intentar bind si texture_id es 0 (prevenir GL_INVALID_ENUM)

Refs: Error 0x500 en glBindTexture en RPi
2025-10-02 21:55:49 +02:00
29e76b1ddd feat: Forzar OpenGL ES en Linux/RPi mediante SDL hint
- Windows: hint 'opengl' + OpenGL 3.3 Core Profile
- Linux/RPi: hint 'opengles2,opengl' (intenta ES, fallback a Desktop)
- SDL_WINDOW_OPENGL flag es genérico, funciona con ambos

También lazy initialization de shaders para evitar textura vacía.
2025-10-02 21:48:57 +02:00
54ceaa3042 debug: Añadir logs en inicialización de shaders
Para debuggear problema de pantalla negra en RPi al iniciar con shaders activos.
Logs muestran tamaños de ventana/textura y configuración de uniforms.
2025-10-02 21:40:12 +02:00
dcc223d287 fix: Cambiar shaders ES de 3.1 a 3.0 para Raspberry Pi
RPi 5 solo soporta OpenGL ES 3.0, no 3.1.
Cambiada versión de #version 310 es a #version 300 es
2025-10-02 21:22:14 +02:00
7187412a45 feat: Soporte OpenGL ES 3.1 para Raspberry Pi
- Creados shaders GLSL ES 3.1 (crtpi_*_es.glsl)
- Detección automática: intenta cargar ES primero, fallback a Desktop
- Windows: pide OpenGL 3.3 Core Profile explícitamente
- Linux/RPi: deja que SDL elija (usará OpenGL ES si está disponible)
- assets.txt actualizado con shaders ES como opcionales

Resuelve problema en RPi 5 donde OpenGL 3.3 Core no está soportado
pero OpenGL ES 3.1 sí lo está mediante drivers Mesa/VideoCore.
2025-10-02 21:12:08 +02:00
ff7aef827c migracio a OpenGL 3.3 Core Profile completada 2025-10-02 18:24:18 +02:00
6ff7ccf69a migrat a OpenGL 3.3 Core Profile 2025-10-02 18:15:39 +02:00
e347e04d33 fix: arreglat bug en jail_shader.cpp que no aplicava be el tamany de la textura amb filtros al canviar el tamany de la finestra si arrancaves el joc sense filtros activats 2025-10-02 17:24:40 +02:00
7946ea54a6 unificats els shaders glsl en un sol fitxer
corregida la inicialització de opengl i shaders
2025-10-02 17:11:38 +02:00
79033346c0 migrat fitxer de config a v2 2025-10-02 16:35:11 +02:00
62b73d6f41 bug fix: si desapareixia la maquina de cafe, ja no eixia mes 2025-10-02 12:04:17 +02:00
218ddabb5e bug fix: no eixien pacos 2025-10-02 08:28:15 +02:00
427f40632a scoreboard.cpp: animació de SCORE a ENTER_NAME 2025-10-01 21:31:42 +02:00
a29b4d4379 scoreboard.cpp: modificada la easing function de desplaçament vertical a easeInOutSine 2025-10-01 20:10:42 +02:00
d851cdd2fe scoreboard.cpp: afegit un setMode() com deu mana 2025-10-01 20:06:08 +02:00
3354d00814 Transició acabada, encara que hi ha un desfase de 1 pixel 2025-10-01 19:34:23 +02:00
7bd7ba84e0 scoreboard.cpp: treballant en transicio de ENTER_NAME a SHOW_NAME 2025-10-01 19:11:58 +02:00
6ad34eaf57 finalitzada la implementació del carrusel 2025-10-01 18:49:11 +02:00
b4f2251508 animacio al pixel del carrusel feta, falla el color que no transiciona 2025-10-01 18:36:14 +02:00
473a52f986 treballant en la animacio alpixel del carrusel 2025-10-01 18:05:00 +02:00
bcdd48d622 carrusel funcional i acabat 2025-10-01 17:49:29 +02:00
6985569573 el carrusel ara es mou amb esquerra i dreta en lloc de amb amunt i avall 2025-10-01 17:13:52 +02:00
5db43e674d Color: afegit metode LERP() 2025-10-01 14:11:32 +02:00
34baa3c97d treballan en el carrusel per a posar el nom 2025-10-01 14:00:56 +02:00
bddb790fe2 creat bullet_manager.cpp 2025-09-30 20:41:35 +02:00
6fae12ba02 fix: la ultima tarjeta de la intro no tenia temps de repos 2025-09-30 19:59:38 +02:00
4e083a8cdb item.cpp: afegida rotació 2025-09-30 14:16:25 +02:00
cbe4315701 moving_sprite.cpp: afegit umbral a stopRotate() 2025-09-30 14:11:58 +02:00
49d561b583 moving_sprite.cpp: afegida funcio per a escalar la velocitat de rotacio 2025-09-30 13:59:13 +02:00
6e56a6fd79 moving_sprite.cpp: afegits nous metodes per controlar la rotació 2025-09-30 13:47:48 +02:00
267d9647e0 moving_sprite.cpp: la variable rotate.speed ja no es gastava 2025-09-30 13:38:06 +02:00
13b3702d00 eliminat param.game.item_size 2025-09-30 13:23:50 +02:00
4500845dcd muguda la logica de demo de utils.cpp a demo.cpp 2025-09-30 12:58:32 +02:00
a4abc02f88 nou: modificat el valor de velocitat en la creació dels globos verds. i tornat a deixar com estava 2025-09-30 12:42:38 +02:00
a0fb6934b0 corregit: en el mode demo no calculava correctament el estat del fondo 2025-09-30 09:56:32 +02:00
19645445b2 corregit: els fills dels globos verds eixien taronja 2025-09-30 08:47:49 +02:00
efe8628a3c corregit: el log de CREATING PLAYER TEXTURES en resource.cpp 2025-09-29 14:22:44 +02:00
c98cb0d29f repensada la forma d'asignar fitxers de demo als jugadors
refets els fitxers de demo i afegit un tercer fitxer
2025-09-29 14:00:10 +02:00
c16fc1bae5 corregit: el mode demo ja funciona correctament 2025-09-29 12:47:13 +02:00
fa0af1179a corregit: no trobava version.h 2025-09-29 07:54:46 +02:00
d1e4a5eb07 eliminat tot el define NO_AUDIO del codi 2025-09-27 00:33:05 +02:00
e18d1b186a player.h: eliminat codi mort 2025-09-27 00:22:46 +02:00
d056a5e336 nou: afegida versió de git en la pantalla de carrega 2025-09-27 00:20:46 +02:00
b9e26aa755 corregit: flags estatics en credits.cpp i title.cpp 2025-09-26 23:48:08 +02:00
b2afef2226 corregit: flags estatics en hiscore_tale.cpp 2025-09-26 23:40:37 +02:00
c400aa96c0 corregit: flags estatics en game.cpp 2025-09-26 23:36:49 +02:00
8818954dcd afegit define rapidet per a renderer metal basic en macos 2025-09-26 22:45:14 +02:00
b92e5df98b nou: sonidos de bala diferent per a cada jugador 2025-09-26 20:48:22 +02:00
83871273ec nou: bales de colors diferents per a cada jugador 2025-09-26 20:37:00 +02:00
0459b39366 screen.cpp: getDisplayInfo()
resource.cpp: afegida info del display en la pantalla de carrega
2025-09-26 19:42:39 +02:00
5bb0ff19bc corregit: asset::checkFile() fallava desde fora del directori 2025-09-26 19:16:25 +02:00
a867b3cf4d integrat empaquetador de recursos en el makefile 2025-09-26 18:16:48 +02:00
8a6ce8e66d organitzat player.h 2025-09-26 17:37:29 +02:00
a40f04a739 nou: musiqueta i veu per al game over i timings ajustats 2025-09-26 17:20:35 +02:00
0c670fd344 novetat: canvi de color de les bales quan queda poc powerUp 2025-09-26 14:13:52 +02:00
35f4bf690c corregit: bug en Audio::fadeOutMusic quan la musica no es reproduia en bucle 2025-09-25 21:21:39 +02:00
abeaf47f96 corregit: timing de les celebracions del final 2025-09-25 19:48:58 +02:00
6498c35628 corregit audio i timing del game over 2025-09-25 19:36:40 +02:00
d1c6af02db corregit: la musica del joc soles sonava la primera volta 2025-09-25 19:19:46 +02:00
5edef17d84 nou: musica al completar el joc 2025-09-25 19:10:46 +02:00
e4532fcef2 nou: ruidet per a quan acabes de posar el nom 2025-09-25 18:18:39 +02:00
7a8d66c29d nou: quan arribes a la maxima puntuació, posa un lletreret 2025-09-25 17:52:49 +02:00
54292c9f8f fix: warning de override 2025-09-25 16:58:01 +02:00
3897553704 eliminat el vector precalculat en tiled_bg per al moviment circular 2025-09-25 08:08:29 +02:00
308f5c20fb corregit en background.cpp la desaceleració final, millorada amb funció de suavitzat i arreglades les velocitats dels nuvols que no variaven amb el pas del joc 2025-09-24 21:54:38 +02:00
987dcd0205 fix: el audio del logo.cpp soles sonava la primera volta 2025-09-24 20:54:45 +02:00
d56f23544c corregit menu_renderer.cpp, de vegades es modificava el ample del menu al canviar les opcions 2025-09-24 20:46:07 +02:00
c79a846b29 migrat service_menu.cpp a deltaTime 2025-09-24 19:34:08 +02:00
ad39d55e79 style: static auto *const SCREEN = Screen::get(); 2025-09-24 18:57:10 +02:00
853ef426f0 corregit el START PROMPT en title.cpp que no resetejava el contador de parpadeig 2025-09-24 18:51:36 +02:00
cadf7de3d8 tiled_bg.cpp, afegit changeSpeedTo() 2025-09-24 18:44:37 +02:00
ec65ff9acb corregit audio de timeStopItem 2025-09-24 18:26:39 +02:00
d077374883 migrat a deltaTime screen.cpp i notifier.cpp 2025-09-24 18:08:50 +02:00
40a2b2cc00 afegit TODO per al proxim dia 2025-09-24 14:02:30 +02:00
b3f3f151da corregits alguns parametres de ms a s 2025-09-24 13:56:12 +02:00
3fdd61655a corregit throwCoffee() i el rolling del jugador 2025-09-24 13:24:05 +02:00
504727b95f corregit del delay entre formacions 2025-09-24 13:09:54 +02:00
ff5446fcdf corregit createItemText() 2025-09-24 12:41:41 +02:00
545eb70082 corregida la creacio de globos 2025-09-24 12:37:21 +02:00
232a23a5dd corregida velocitat_y en createChild() 2025-09-24 11:42:48 +02:00
c9a29e26dd revisant la seccio game: bales, items e inici 2025-09-24 11:37:23 +02:00
2977869ab5 revisat tabe.cpp, item.cpp i game.cpp 2025-09-24 09:37:23 +02:00
6a223b68ba revisant title.cpp (falla el jugador) 2025-09-23 14:13:48 +02:00
3fafff026b revisat balloon_formationc.cpp i credits.cpp 2025-09-23 14:03:07 +02:00
159528adc9 revisat credits.cpp, player.cpp, balloon.cpp i balloon_manager.cpp 2025-09-23 13:42:09 +02:00
6c8f231b34 revisat instructions.cpp 2025-09-23 12:10:16 +02:00
c5d6d77ebf revisat hiscore_table.cpp 2025-09-23 11:24:29 +02:00
5e73327b2f revisat intro.cpp, path_sprite i writer.cpp 2025-09-23 11:13:15 +02:00
720d286dcf revisat logo.cpp 2025-09-23 09:11:29 +02:00
dd13a2bd7c revisat background, game_logo, smart sprite, tiled_bg 2025-09-23 09:00:00 +02:00
1a6ef79466 revisat moving i animated sprite 2025-09-23 08:29:29 +02:00
8f83a1d13e magic numbers: moving_sprite.cpp i game_logo.cpp 2025-09-22 13:57:58 +02:00
9edfe6877f magic numbers: item.cpp 2025-09-22 13:14:23 +02:00
91b26631c6 magic numbers: bullet.cpp 2025-09-22 12:14:09 +02:00
331a690b78 fix: balloon_manager.cpp conflicto al crear los globos y detener el tiempo 2025-09-22 10:13:12 +02:00
5e3946e28b fix: no inicialitzava be animated_sprite 2025-09-22 10:03:38 +02:00
d4a0189dc8 arreglant balloon.cpp per a deltaTime pur 2025-09-19 14:15:44 +02:00
568b941990 eliminats metodes frame-based obsolets 2025-09-19 09:56:25 +02:00
49a3989ecf magic numbers: game.cpp 2025-09-19 09:11:10 +02:00
af7cb01ead magic numbers: game.cpp 2025-09-19 07:33:27 +02:00
5c82916650 magic numbers: game.cpp i player.cpp 2025-09-18 14:17:54 +02:00
0c0518adac magic numbers: game.cpp i player.cpp (en progres) 2025-09-18 13:15:43 +02:00
cb7b290818 magic numbers: game.cpp 2025-09-17 14:20:13 +02:00
ae30c9b34f magic numbers: title.cpp 2025-09-17 13:53:31 +02:00
9acd9aa631 magic numbers: intro.cpp 2025-09-17 13:25:16 +02:00
577510ff8c magic numbers: logo.cpp 2025-09-17 13:01:43 +02:00
66566913f6 delta-time: game.cpp (funciona pero va un poc massa ràpid) 2025-09-16 22:56:00 +02:00
3e6cc9dfab delta-time: explosions.cpp 2025-09-16 22:43:16 +02:00
a15e29344f delta-time: balloon.cpp
delta-time: balloon_manager.cpp
delta-time: credits.cpp
2025-09-16 22:38:48 +02:00
a96a17e11b delta-time: tabe.cpp 2025-09-16 20:29:35 +02:00
e0f6a424a9 delta-time: bullet.cpp 2025-09-16 20:26:22 +02:00
49e30f947a delta-time: title.cpp 2025-09-16 20:23:10 +02:00
470a07d28c delta-time: player.cpp 2025-09-16 19:21:44 +02:00
65716fce20 delta-time: tiled_bg.cpp 2025-09-16 17:35:03 +02:00
dfa66b0e95 delta-time: game_logo.cpp
delta-time: smart_sprite.cpp
2025-09-16 17:19:05 +02:00
3d9ffe356e Elimina .claude 2025-09-16 17:18:39 +02:00
19768cb72b delta-time: animated_sprite.cpp 2025-09-16 16:51:31 +02:00
26e0fd7247 delta-time: moving_sprite.cpp 2025-09-16 16:37:39 +02:00
e2fd470ad3 migració a delta time 2025-09-16 12:23:02 +02:00
a72ae0a5fc migració a delta time 2025-09-16 12:06:49 +02:00
7579594c22 migració a delta time 2025-09-16 10:48:22 +02:00
6c702e7e23 Logo: convertit per a usar delta time 2025-09-16 08:40:41 +02:00
fb9c78eb49 warning: balloon_manager.cpp varios ordres de inicialització mal 2025-08-27 10:27:18 +02:00
62f65cbd5a warning: balloon_manager.cpp varios ordres de inicialització mal 2025-08-27 10:19:30 +02:00
057d3dcfee bug fix: en la tabla de puntuacions, no apareix la estreleta al completar el joc amb 1CC
bug fix: posant nom al completar el joc, si "passes" el mostrar el nom, mata al jugador en lloc de fer que se'n vaja

Resol #92 i #98
2025-08-26 08:21:33 +02:00
c85336a4d0 fix: el tabe podia spawnejar-se en la seqüencia final.
Resol #89
2025-08-24 18:54:20 +02:00
e4702e4e24 bug fix: Audio::fadeOutMusic no ha de fer fade si la musica no sona 2025-08-24 17:39:07 +02:00
928335576c corregida la llista de inicialització en clang-format
creat Balloon::Config per a inicialitzar globos
2025-08-24 17:16:49 +02:00
fe950e6f17 bug fix: en el modo demo la powerball feia ruido.
Resol #84
2025-08-24 14:57:08 +02:00
6e81b6e60c Merge branch 'main' of https://gitea.sustancia.synology.me/jaildesigner/coffee_crisis_arcade_edition 2025-08-24 14:37:32 +02:00
74f6fe3501 Afegit outline al text 2x
corregit el marcador durant el Player::State::RECOVER
2025-08-24 14:37:30 +02:00
dfdb679054 Merge branch 'main' of https://gitea.sustancia.synology.me/JailDesigner/coffee_crisis_arcade_edition 2025-08-24 10:51:10 +02:00
26ed479306 delete 2025-08-24 10:51:07 +02:00
32e9da55ef Afegit so de service_menu_back
Retocats els audios de service menu
Afegit so a ENTER NAME
Arreglos visuals a ENTER NAME
2025-08-23 21:06:20 +02:00
610083578e style: eliminat soroll de drop item amb maquina de café
Quan ix una maquina de café ja no se sent el so de drop item
per a millorar l'experiència sonora del joc.

Resol #91
2025-08-23 20:05:16 +02:00
7250073d60 actualitzat LICENSE 2025-08-19 16:45:00 +02:00
dfa06870e4 actualitzat makefile per a linux 2025-08-19 16:42:40 +02:00
81f3a25143 afegit makefile per a macos 2025-08-19 16:39:39 +02:00
5aca95f3d2 neteja de temporals al acabar 2025-08-19 16:29:52 +02:00
7b193605e6 refet makefile i eliminades *.dll 2025-08-19 14:09:11 +02:00
089a5b15d7 actualitzat Makefile per a windows 2025-08-19 14:01:32 +02:00
e6a14ca57d eliminat el log del codi 2025-08-19 13:55:22 +02:00
467d609c28 debug 2025-08-19 13:50:11 +02:00
e03c798000 afegits logs peer a la carrega de musica i sons 2025-08-19 13:46:07 +02:00
52d76b7338 arreglos pa NO integrar jail_audio en ResourceHelper 2025-08-19 13:36:03 +02:00
83ee9c2649 integrat animated_sprite amb ResourceHelper 2025-08-19 13:25:12 +02:00
43788bb01a faltaven mes integracions de texture amb ResourceHelper 2025-08-19 13:22:38 +02:00
58cf78e1e3 integracions de texture.cpp amb ResourceHelper 2025-08-19 13:13:27 +02:00
6bf8490776 integrades mes clases amb ResourceHelper
mogudes les dades de la demo a resource.pack
2025-08-19 13:08:37 +02:00
8cfe28922c integrat Text amb ResourceHelper 2025-08-19 12:45:53 +02:00
63990c75c2 modificat texture.cpp per a gastar ResourceHelper 2025-08-19 12:41:08 +02:00
94dca528ab fix assets.txt 2025-08-19 10:13:12 +02:00
4b6b89ceb2 integrat Asset amb ResourceHelper 2025-08-19 10:06:52 +02:00
ed077c1da5 treballant en resources.pack 2025-08-19 09:46:19 +02:00
2819b3628e el fitxer de parametres es guarda en options/config.txt 2025-08-17 21:42:26 +02:00
1e9e664012 creat param_red.txt
afegides guardes en setParams
2025-08-17 21:29:49 +02:00
0c8b39cee7 els items ja no tenen vel_x = 0 2025-08-17 20:42:55 +02:00
d7b3af5ab8 en el modo demo asignava cafes al jugador que no jugava i eixia saludant amb la camisa que no toca 2025-08-17 20:22:53 +02:00
5e5227305f arreglat bug en el estat pre del fade 2025-08-17 20:17:55 +02:00
3fc15a9512 afegit el fade RANDOM_SQAURE2
canviat els timings del fade a milisegons
2025-08-17 19:34:48 +02:00
e774e0e8ad modificat el efecte de invulnerabilitat per a que vaja menguant 2025-08-17 17:21:03 +02:00
a95776e6c7 retocat el audio de recover 2025-08-17 17:01:49 +02:00
0428ff26d5 options.h ara gasta defaults.h 2025-08-17 16:28:30 +02:00
fc3e2deb1f Item fix: alguns items es quedaven engantxats en la part de dalt 2025-08-17 16:18:48 +02:00
65ca17f938 afegit i parametritzat outline per als textos dels items 2025-08-17 16:07:16 +02:00
ff2a51a507 noves coses chules en la clase text 2025-08-17 14:25:17 +02:00
fe0083abd4 afagit a param el color de la camiseta per defecte 2025-08-17 13:25:10 +02:00
1c058694fd afegit a param el color de outline dels jugadors 2025-08-17 12:58:20 +02:00
cb0c3266d5 proposta 1 de versio RC2 2025-08-17 10:54:45 +02:00
8ddc5d94f1 clang-tidy 2025-08-17 10:20:41 +02:00
b359a73d50 He tornat a deixar el progres del fondo que fa tope en la ultima fase, no en el final del joc 2025-08-17 08:20:38 +02:00
142603db71 hi_score_table: faltava posar el fondo en modo manual
game: redefinides les prioritats de dibuixat -> jugadors altra volta al front
2025-08-17 08:08:48 +02:00
1ec272f017 . 2025-08-17 01:10:57 +02:00
327987447d passant linters a vore si trobe variables sense inicialitzar 2025-08-17 00:23:59 +02:00
ada5025c65 claude: arreglos d'estil 2025-08-16 19:48:32 +02:00
1ced698093 ja guarda la configuració del mando amb els boto-triggers 2025-08-16 18:13:55 +02:00
2a4c47a6ca ja permet mapejar botons tipo trigger 2025-08-16 18:03:32 +02:00
6102504d32 parametrizats els colors de les camisetes dels jugadors quan pillen café 2025-08-16 13:12:22 +02:00
a123b3aa93 afegit window_message a param 2025-08-16 11:24:28 +02:00
81d486f2d3 afegit defaults.h amb els valors per defecte de Param 2025-08-16 10:29:30 +02:00
0c10898bdc Tabe: afegit a Param 2025-08-16 09:54:34 +02:00
a3cd404545 retocs en els fitxers de configuració 2025-08-16 09:44:06 +02:00
5c708fc60a eliminat codi mort 2025-08-16 09:33:40 +02:00
960ee367df fix: els globos apareixien un frame mal situats al crearse desde un pare 2025-08-15 13:09:07 +02:00
a7519fc372 afegit AnimatedSprite::getCurrentAnimationFrame()
fix: player2.gif faltava el outline
noves veus i arreglo d'altres
style: fitxer de config
2025-08-15 11:09:17 +02:00
a983269080 animacions noves de recuperació per als jugadors 2025-08-15 06:38:52 +02:00
3964503f1c game fix: la velocitat dels globos dins de la fase actual muntava al primer globo explotat
game fix: al trencar una powerball ja no eixien mes globos
style: renombrades variables i funcions
2025-08-14 20:41:44 +02:00
8fcb7d1eb5 eliminat un warning en systemes unix 2025-08-14 18:05:36 +02:00
3e68afa4be game.cpp: llevat codi comentat mort de feia temps 2025-08-14 13:58:24 +02:00
ca6edcccc0 Afegida animacioneta pa quan continues 2025-08-14 12:55:29 +02:00
a388005968 Afegit lletreret de "gracies" al continuar 2025-08-14 12:37:39 +02:00
ea7628259a la IA havia trencat el recorregut de la lluna 2025-08-14 12:20:34 +02:00
a13e024934 fix: la IA havia trencat el indicador de fases restants 2025-08-14 11:36:29 +02:00
4cc5102d70 Stage ja carrega desde fitxer la informació de les fases 2025-08-14 11:14:54 +02:00
b2139d8e06 treballant en Background i Stage 2025-08-14 09:53:01 +02:00
ea3e704d34 posant ordre en Stage i Background 2025-08-13 14:04:24 +02:00
d5ab5748a7 actualitzat makefile per a linux desktop 2025-08-11 21:39:43 +02:00
e950eb335d YE! ACTUALIZAT MAKEFILE PA WINDOWS ALTRA VOLTA. PUTA IA 2025-08-11 20:30:59 +02:00
e667063767 actualitzat makefile per a linux 2025-08-11 20:28:16 +02:00
3534e4cc54 actualitzat makefile per a windows 2025-08-11 20:27:40 +02:00
685b04c840 afegits nous iconos per a la aplicació
afegit script en python per a crear els iconos
2025-08-11 19:12:17 +02:00
2bc28d47cd fix shutdown.cpp per a macos (altra volta) 2025-08-11 08:31:30 +02:00
214a4045f0 fix shutdown.cpp per a macos 2025-08-11 08:21:09 +02:00
3df13fdfa6 creat shutdown.h i system_utils.h
fix: arreglants uns includes per a windows
2025-08-11 08:15:54 +02:00
6011365330 actualitzat Director::shutdownSystem() 2025-08-10 22:56:42 +02:00
03db5b4b0a actualitzat makefile per a linux_release 2025-08-10 22:56:19 +02:00
b1d4c8af07 actualitzat gitignore 2025-08-10 22:56:04 +02:00
45919eabab actualitzat makefile per a macos
director fix: nom de variable en MACOS_BUNDLE
actualitzat info.plist
2025-08-10 22:35:34 +02:00
98cd87e2f0 actualitzat frameworks 2025-08-10 22:21:50 +02:00
aabbb964e1 actualitzat makefile 2025-08-10 22:18:09 +02:00
41e3fd1d8d iwyu
clang-tidy
clang-format
2025-08-10 22:01:18 +02:00
659a4ced44 fix: el nom apareixia duplicat en la tabla de records 2025-08-10 20:36:13 +02:00
0fc709f6d5 fix: el jugador saludant no es pintava si apareixia el lletrero de game over 2025-08-10 20:05:55 +02:00
4695f14de6 canviada la tecla de servei a F12 2025-08-10 19:53:30 +02:00
6eb35a6194 actualitzat readme.md 2025-08-10 19:45:21 +02:00
645862ecb5 precarrega les textures del jugador amb variants de paleta 2025-08-10 19:36:10 +02:00
72e606f6d3 fix: Game no es desregistrava de ServiceMenu al destruirse 2025-08-10 16:00:43 +02:00
cadd8fd293 Afegit sistema de carrega de recursos on_demand 2025-08-10 15:58:56 +02:00
8da2db9686 clang-format 2025-08-10 14:49:49 +02:00
d21a474754 afegida Player::computeAnimation() i soluciona algunes animacions incorrectes que havia 2025-08-10 14:42:22 +02:00
c727cb6541 clang-tidy 2025-08-10 14:13:11 +02:00
0204a8896a afegit callback a service menu per a posar pausa en el joc 2025-08-10 13:36:28 +02:00
d90f247bdd afegit pause_manager 2025-08-10 13:17:36 +02:00
983eb7ee6f Ja es poden conectar i desconectar mandos en calent, que tot el mon s'entera 2025-08-10 11:02:20 +02:00
8eb8e07e0a GamepadManager::swapPlayers() ja notifica als jugadors 2025-08-10 09:35:12 +02:00
3f34f80661 ServiceMenu fix: refresc visual al canviar els mandos dels jugadors 2025-08-10 08:52:29 +02:00
2b35ac0187 ServiceMenu: afegida animació de apertura/tancament 2025-08-09 20:44:56 +02:00
5a02518de3 Asset: passat a unordered_map i carrega desde fitxer 2025-08-09 14:30:59 +02:00
c7f5fed797 GamepadManager::saveToFile() no guarda el nom del mando si no existeix 2025-08-08 21:20:40 +02:00
0fc83cf9c1 merdes varies 2025-08-08 21:06:28 +02:00
98f34c0a09 arreglos en globalInputs i Lang 2025-08-08 19:14:34 +02:00
6f120dd4d2 GlobalInputs: ja es pot eixir del joc mentre redefinixes botons 2025-08-08 18:55:18 +02:00
3b07b2e130 define_buttons: modificada logica de final per a poder mostrar la animació d'eixida 2025-08-08 17:32:30 +02:00
a191a296f8 window_message: animació d'entrada i eixida de la finestra 2025-08-08 14:05:46 +02:00
add9f8df7a Ja es por canviar el jugador que maneja el teclat "en calent" desde el service menu 2025-08-08 13:21:14 +02:00
de5e99c932 eliminat un warning 2025-08-07 22:53:38 +02:00
fdfc976749 Varios arreglos a tot lo de definir botons dins del service menu i lo de triar mando 2025-08-07 21:11:05 +02:00
d8a37c555f Title: arreglat que es veia la polseta abans de lo que tocava 2025-08-07 13:50:29 +02:00
8d2c24deb9 window_message: provant el redimensionat i les animacions 2025-08-07 13:31:49 +02:00
100b7265d5 Text: revisada la classe
window_message: correcions
2025-08-07 12:40:24 +02:00
49145905e3 claude: acabat de posar tot lo que deia i reventa. Debuggar 2025-08-06 20:31:47 +02:00
6d36291f51 claude: treballant en el nou define_buttons 2025-08-06 14:12:29 +02:00
1224af2a9b Pasaeta de linters 2025-08-06 13:05:04 +02:00
8ed2dbcd4f canvi de pc 2025-08-05 22:28:56 +02:00
bc370c3b7d Afegides traduccions per a elements nous de service menu 2025-08-05 14:05:21 +02:00
3bb5e5d604 Service Menu: afegides opcions per als mandos 2025-08-05 13:12:48 +02:00
12e3226f17 migrant input: controllers.json guarda ara el path
migrant input: define_buttons no agarra inputs del mando que no toca
falta: Options ha de comprovar que el gamepad que te en la configuracio estiga o no estiga conectat
2025-08-04 22:16:16 +02:00
f2d827daa4 GamepadManager::swapPlayers() no swapava el path 2025-08-04 20:59:32 +02:00
5d760fc97c migrant input: guarda el path del mando per a poder distingir mandos amb el mateix nom 2025-08-04 20:47:47 +02:00
8301ca0aef Titlr: arreglat showControllers() 2025-08-04 20:34:27 +02:00
4fd78d216a migrant input: ja mapeja be tots els botons desde el fitxer de configuració 2025-08-04 19:58:10 +02:00
adf21086e5 migrant input: ja es poden redefinir els botons. Falta rebindar les accions a accions 2025-08-04 13:55:58 +02:00
cde6ad4b71 Options: moguda la normalització de variables a set() 2025-08-04 12:50:24 +02:00
64ee4727ce migrant input: corregit GamepadManager.swapPlayers() 2025-08-04 12:42:55 +02:00
450edbd8b0 Resource: deixada la barra de progres a un color 2025-08-04 12:35:46 +02:00
cd457d0db9 migrant input: ja carrega la configuració y asigna mandos correctament 2025-08-04 12:16:03 +02:00
050b6716bf migrant input: commit abans que gemini destroçe algo 2025-08-04 11:37:46 +02:00
90c080f3e3 desacoplament de Player i Options
Player: canviat id de int a enum
migrant input: eliminat Device, keyboard separat de la llista de mandos, llig i guarda configuracions de mandos
falta: definir botons, asignar mandos a jugadors i guardar la asignació
2025-08-03 22:49:28 +02:00
de9fb5aa4b actualitzat gamecontrollerdb.txt a la ultima versió 2025-08-01 13:00:03 +02:00
c066cc32d3 migrant input: ja guarda i llig configuracions de gamepad en fitxer 2025-08-01 12:51:24 +02:00
6385e413da canvi de pc 2025-08-01 09:20:22 +02:00
fe818d6a10 migrant input: ja funcionen coses, pero encara queda 2025-07-31 13:55:14 +02:00
89a0638a89 migrant input: ja compila, ja no peta... falta descomentar mig codi 2025-07-31 12:02:16 +02:00
2d9a6e744e commit mañanero de canvi de pc 2025-07-31 07:17:14 +02:00
dbecd9a22b canvi de pc 2025-07-30 14:03:44 +02:00
12ec55308e input: commit abans de clavar ma 2025-07-30 11:39:38 +02:00
69ee847575 input: treballant en la nova estructura per als controladors 2025-07-30 10:16:44 +02:00
989f081a25 Input: mogudes structs, enums i consts a la part publica 2025-07-30 08:53:57 +02:00
677feb3afe . 2025-07-29 11:27:47 +02:00
dce9213699 eliminada la merda de slowmotion i hit 2025-07-29 11:27:25 +02:00
bb2d6e5d0b commit pa borrar lo del slowdown 2025-07-27 19:51:02 +02:00
5dc46dda5a fix: llevar una constant del modo debug 2025-07-26 08:22:38 +02:00
e995cde573 fix: el tamany del jugador no s'havia muntat de 30 a 32
fix: al aumentar el tamany del jugador, ja no eixia rodant pels aires perque estava "estacat en terra"
fix: arreglats els estats dels jugadors per a que quan reentres a la partida, entre desde la vora com al principi
fix: pensava que en enviar jugadors DAVANT en el eix Z sobrava, pero també necesite poder enviarlos DARRERE
2025-07-26 00:31:34 +02:00
19fcebcdfd canvi de pc 2025-07-25 22:38:17 +02:00
03a7bbc6d1 Player: afegides animacions per al estat WAITING
Player: si tires a jugar desde el estat WAITING passes al ENTERING_SCREEN i despres sempre tens inmunitat, fins i tot la primera volta (al començar el joc)
falta: arregñar el z-order per al estat WAITING
2025-07-25 20:54:00 +02:00
b165484e03 afegit efecte de "colp" quan el jugador es "alcanssat" per un globo 2025-07-25 13:45:55 +02:00
f001e433e0 corregit Game::updateGameStateShowingGetReadyMessage() 2025-07-24 20:07:40 +02:00
9eb97fd61c jail_audio: actualitzat a la ultima versió (ara sense threads) 2025-07-24 20:04:02 +02:00
91730def9a fix: arreglats mil mini bugs d'estes ultimes coses que he estat fent. El cas es que el joc es veu igual pero porte dos matins aci fent el mongol. 2025-07-24 16:25:09 +02:00
1233b27eb6 balloon_formation: posat ORDEN en el CAOS de tipos, structs i noms de variables que aci ningú sabia ja qui feia que. De paso llevades coses que sobraven i fetes les coses com toca. Este codi era del CC encara
balloon_formation: els pools de formacions es carreguen ara desde fitxer i ja no hi ha ni llimit de pools ni llimit de formacions per pool
falta: revisar les formacions i els pools que algo no quadra
2025-07-24 15:58:04 +02:00
2932664b9f balloon: millor empaquetada la estructura BounceEffect 2025-07-24 14:16:16 +02:00
c23e779b9c Merge branch 'main' of https://gitea.sustancia.synology.me/JailDesigner/coffee_crisis_arcade_edition 2025-07-24 14:02:51 +02:00
fa6fbeb09c ja s'ha liat la cosa per no fer pull, ostia 2025-07-24 14:00:05 +02:00
0f8a4b988f fent improvements a balloon (canvi de pc) 2025-07-24 12:58:16 +02:00
55d5957ff0 estandaritzats els globos a 0, 1, 2 i 3 (en lloc del mix que havia antes amb altres coses a 1, 2, 3 i 4)
balloon: passant const i enum a la part publica
2025-07-23 23:03:17 +02:00
ec008ef5dd iwyu
clang-format
2025-07-23 20:55:50 +02:00
d33c1f5dc5 difficulty: mogut desde options a un fitxer propi 2025-07-23 19:52:57 +02:00
e21839e478 options: readability-function-cognitive-complexity 2025-07-23 18:46:34 +02:00
5f170ee44e balloon: readability-function-cognitive-complexity
balloon: eliminat l'efecte de rebot per als globos mes xicotets
moving_sprite: canviats variables i metodes zoomW a horizontal_zoom i zoomH a vertical_zoom
2025-07-23 18:03:49 +02:00
b0564ceccf fade: readability-function-cognitive-complexity 2025-07-23 17:39:30 +02:00
ca328f5011 options: canviat size per zoom i v_sync per vsync
options: moguda la opció de window a la seua seccio
2025-07-23 17:32:14 +02:00
2db2ba420a game_logo: readability-function-cognitive-complexity 2025-07-23 17:12:56 +02:00
af574c356c texture: readability-inconsistent-declaration-parameter-name 2025-07-23 16:55:38 +02:00
877d54c555 Title: clang-tidy readability-function-cognitive-complexity 2025-07-23 16:53:30 +02:00
2dbb78c4d4 fix: cmakelists no estava incloent jail_audio quan estava el audio habilitat 2025-07-23 10:22:51 +02:00
cb7db345e0 cmake: afegida opció per habilitar o deshabilitar el audio 2025-07-23 10:15:23 +02:00
74c1c096f8 afegit define NO_AUDIO
renombrat define DEBUG a _DEBUG
2025-07-23 09:24:04 +02:00
921975851a commit merdoset 2025-07-22 12:53:30 +02:00
8b7b667c60 creat color.h i color.cpp i llevat de utils.h i utils.cpp 2025-07-21 14:43:35 +02:00
087643c71b text: afegit TextStyle 2025-07-21 14:23:07 +02:00
734c348996 game: clang-tidy readability-function-cognitive-complexity 2025-07-21 13:50:48 +02:00
532d0f4261 intro: clang-tidy readability-function-cognitive-complexity 2025-07-21 13:30:40 +02:00
ea5cedfd26 mil merdertes 2025-07-21 13:18:43 +02:00
296ef1e709 canvi de pc 2025-07-21 12:03:26 +02:00
dbab3de3df acabat amb balloon_formations.txt 2025-07-21 00:56:17 +02:00
2e606bf160 treballant en el format del fitxer balloons_formations.txt 2025-07-21 00:30:19 +02:00
9550e5e0b1 canvia de pc 2025-07-20 23:13:42 +02:00
228968c728 claude: mogut initBalloonFormations() a un fitxer extern 2025-07-20 20:21:14 +02:00
f6228ae0c1 iwyu
clang-format
2025-07-20 19:33:06 +02:00
2620a76865 clang-tidy readability-function-cognitive-complexity
clang-format
2025-07-20 16:12:27 +02:00
f2915aa4b4 clang-tidy readability-function-cognitive-complexity 2025-07-20 15:42:10 +02:00
cb4e4b450d clang-tidy readability-function-cognitive-complexity 2025-07-20 15:24:47 +02:00
ca99f7be34 clang-tidy readability 2025-07-20 14:56:00 +02:00
f5245273a1 clang-tidy modernize 2025-07-20 14:10:54 +02:00
1f0184fde2 clang-tidy modernize 2025-07-20 12:51:24 +02:00
bfda842d3c clang-tidy 2025-07-20 12:16:25 +02:00
a7ef29b750 jugant amb clang-tidy 2025-07-19 22:38:01 +02:00
1d3fd79a9e jugant amb clang-tidy 2025-07-19 22:25:46 +02:00
e06503a8fc actualitzat cmakelists.txt 2025-07-19 19:41:19 +02:00
7e5507be8d arreglat el café que ix quan et peguen, que rotava en el punt 0,0 2025-07-19 19:31:00 +02:00
18ca6bdf86 fix: el temporitzador del tabe continuava contant amb el joc en pausa 2025-07-19 13:25:44 +02:00
2d1738f20a clang-tidy: audio 2025-07-18 21:40:37 +02:00
46932221f9 actualitzat .clang-tidy 2025-07-18 21:40:28 +02:00
f9877dc82b clang-tidy: animated_sprite, asset 2025-07-18 21:27:21 +02:00
dabba41179 pasaeta loca de clang-format (despres m'arrepentiré pero bueno) 2025-07-18 20:01:13 +02:00
734c220fb0 arreglos en linux_utils 2025-07-18 18:34:00 +02:00
b88019bf58 arreglats els includes en linux, falta vore que ha passat amb windows/macos 2025-07-18 18:23:29 +02:00
14e2e4bb74 arreglos en linux_utils 2025-07-18 15:52:20 +02:00
2aaba7938c treballant en arreglas els includes de SDL3 2025-07-18 13:58:58 +02:00
e4b16a6602 fix: no iniciava els shaders correctament si els shaders no estaven activats al inici del joc 2025-07-18 13:40:28 +02:00
04a80392d8 fix: els globos fills estaven alineats cap a dalt en lloc de al centre
fix: les explosions eren de un tamany inferior (i per tant desalineades ademes)
2025-07-15 09:26:31 +02:00
6329283124 fix: la powerball con quantum effect no feia roido al explotar 2025-07-15 08:18:05 +02:00
aa195b8cf4 commit amb mil mini coses, colorets, fitxers que sobraven, comentaris, codi que sobrava, etc... 2025-07-15 00:23:38 +02:00
c61984bb21 Credits: retocs en els colors de fondo, el rectangle del borde i en els textos 2025-07-14 23:32:36 +02:00
df53c39200 canvi de pc 2025-07-14 22:27:36 +02:00
5cb67b41d1 treballant en la intro 2025-07-14 19:43:07 +02:00
bfd3943bba Intro: les tarjetes ara tenen sombra
Intro: colors configurables a param
2025-07-14 19:20:28 +02:00
d35032a42a new: es pot definir el color de fonfo del titol
fix: el color de fondo de la intro ara ja canvia be cap al color de fondo del titol (abans soles sabia canviar cap al blanc)
2025-07-14 18:11:02 +02:00
7ac9b53630 fix: al resetejar el joc es perdia la asignació de botons dels mandos 2025-07-14 17:37:54 +02:00
1d3b016b85 modificada la animació del titol per començar a jugar 2025-07-14 17:17:49 +02:00
72d2525e61 els jugadors ara es dibuixen al fondo de la resta de elements
modificat la veu de 'thankyou' per a que incloga el sonido de començar a jugar clasic
els globos ja son ells qui fan el seu propi so
2025-07-14 16:43:15 +02:00
6bc5cf1e93 recuperat el hit_stop al ser colpejat per un globo (modificable al fitxer de parametres) 2025-07-14 15:34:26 +02:00
3d26a3022c new: el jugador explota els globos per contacte si estos estan parats 2025-07-14 14:08:08 +02:00
de560ee7e2 linux_utils: afegit splash.png 2025-07-14 13:11:33 +02:00
4d2637d69b fix: si el jugador no continua i despres vol jugar, el jugador ix en la posició per defecte (i no on havia mort) 2025-07-14 12:38:10 +02:00
043f53fccc afegits scripts a linux_utils 2025-07-14 12:34:16 +02:00
31910b8a74 new: ja es pot començar el joc els dos jugador a l'hora
new: feedback visual per a saber qui ha pulsat start en la pantalla de titol
Player: afegit estat RESPAWNING per no tindre que estar fent cabrioles amb la invulnerabilitat al crear als jugadors
2025-07-14 11:41:12 +02:00
e14336bad9 new: el joc es pausa si traus el menu de servei (de paso serveix com a botó de pausa per a la recre, que no en tenia) 2025-07-14 08:49:41 +02:00
7340b349b1 canvi de pc 2025-07-13 22:35:38 +02:00
91839b3444 afegit "z-order" per als jugadors 2025-07-13 12:08:02 +02:00
e882a22b3c es pot definir el color dels globos (dels 4 colors disponibles) al fitxer de parametres 2025-07-12 21:16:07 +02:00
ccce96c731 canviat el outline dels items i els globos per a millorar el contrast
afegits nous sons per a bullet i per a balloon, cada globo te ara el seu so
2025-07-12 14:43:50 +02:00
122d44a710 Texture: afegit suport per a fitxers .pal
fix: quedava un player_sprite_->setCurrentAnimation("dying") per canviar a player_sprite_->setCurrentAnimation("rolling")
2025-07-12 13:04:07 +02:00
b4eece72dd Afegides les animacions noves per al segon jugador
sustituides les paletes de .gif a .pal
canviat smb.gif a smb.png i smb_grad.png
2025-07-12 12:21:15 +02:00
719c448779 tornem al pc d'anit 2025-07-12 09:55:56 +02:00
6082a72392 canvi de pc before boromir 2025-07-11 23:34:52 +02:00
06815d4f72 AnimatedSprite::getIndex() ara gasta un std::unordered_map 2025-07-11 23:10:50 +02:00
66d55061dd AnimatedSprite: posibilitat de resetejar o no el estat de la animació en setCurrentAnimation(); 2025-07-11 22:57:51 +02:00
7ac46876ca Refet el spritesheet del jugador i el fitxer d'animacions
Afegits nous estats per al jugador: RECOIL
2025-07-11 22:03:44 +02:00
8f1511998c fix Resource: la barra de progres mostrava com a carregant el nom del recurs que ja s'havia carregat en lloc del que realment està carregant-se 2025-07-02 18:43:52 +02:00
67247e1b3b fix Resource: no estava definit el destructor, que es on s'alliberen els recursos 2025-07-02 18:27:43 +02:00
5ff8799826 Screen: afegit flag per iniciar la finestra en mode de pantalla completa 2025-07-02 08:13:49 +02:00
e34d22c8dd jail_audio: ultima versió
Audio: separació de sons per canals
Game: el fade de so de game over ja no afecta al so de la UI (no funciona o no ho faig be)
2025-07-01 20:32:02 +02:00
9575518ae5 fix: error en Assett::getTypeName(), faltava especificar DEMODATA 2025-07-01 11:34:53 +02:00
586d5df015 Afegit dos timeouts per a posar nom: uno total i altre que suma nomes quan no es toca res 2025-07-01 10:56:55 +02:00
c00738b8e2 Modificat el timeout de posar nom a 10 segons. Demà fer que es reseteje a cada tocaeta de mando o botó 2025-06-30 22:48:55 +02:00
c56109614b Ale, el modo demo torna a no tindre sonido 😎 2025-06-30 22:08:40 +02:00
d3457f7610 fix: la musica de la intro no sonaba perque el logo feia fade de la musica pero no la parava i Audio no posa en martxa una musica si ja hi ha alguna sonant 2025-06-30 21:41:00 +02:00
7039ea4511 Reduit de 60 a 30 segons de temps per a posar el nom
fix: quan se t'acaba el temps per a posar el nom, no posaves nom. ara posa lo que tingues posat
2025-06-30 21:24:11 +02:00
9873972cf2 Screen:: shake() ara accepta parametres
Coffee_machine: ara queda millor el efecte de caure i rebotar
2025-06-30 19:53:51 +02:00
5321a9e3b5 nous sons per al menu de servei
demo: ara s'escolten els efectes d'audio
2025-06-30 19:38:46 +02:00
b15dfdc7e3 push per a enviar a revisió per Doc 2025-06-30 19:03:49 +02:00
129b4855bc afegit voice_aw_aw_aw.wav 2025-06-30 18:01:41 +02:00
e4ef4700d3 AnimatedSprite: afegit setAnimationSpeed() 2025-06-30 17:38:54 +02:00
81b4de0601 Eliminat controllers.png 2025-06-30 17:38:14 +02:00
353c1fe994 canvi de pc (feina-casa) 2025-06-30 14:37:15 +02:00
ae8eadb96f new: en el mode demo es queda el jugador mort en el terreny de joc 2025-06-30 14:19:55 +02:00
ae20181e6f fix Input: un parellet de warnings 2025-06-30 14:02:10 +02:00
71a0fff764 fix Title: estar toquejant el ServiceMenu resetejava el contador de Title 2025-06-30 11:29:59 +02:00
6ce0e756fb fix: solventat el problema amb els shaders i el canvi a pantalla completa en sistemes unix 2025-06-30 11:26:44 +02:00
2fbdf0753a corregides les paletes d'invencibilitat
canviat el outline del jugador 2
2025-06-29 18:59:03 +02:00
b71e923975 Item: nou spawn de la máquina de café 2025-06-29 18:50:43 +02:00
e058b12f07 new: outline per als jugadors
changed: nou color per al outline dels items i canvi en el timing del outline
new: nova animació per a la maquina de cafe
2025-06-29 17:44:22 +02:00
3a401b492f jail_audio.cpp: afegida info de debug 2025-06-29 12:49:44 +02:00
5212674093 fix ServiceMenu: amaga TOTES les opcions que s'han d'amagar al inici (not tested pq en macos no va el fullscreen d'inici) 2025-06-29 12:44:13 +02:00
97f6a459ea Title: optimitzat render() 2025-06-29 12:17:50 +02:00
c58e9714e2 Title: la visualització d'alguns elements ja no depen de counter sino del rellotge. Quan apretes la tecla 2, per exemple, ja no fa coses rares el lletrero de PULSA PER A JUGAR 2025-06-29 12:06:44 +02:00
5006289a5d Input: model upate/poll finalitzat 2025-06-29 11:37:01 +02:00
ce1ae74e88 Input: canviant a nou model update/poll 2025-06-29 09:35:49 +02:00
78338933e2 undo: he llevat lo de invertir el y-axis. lo que s'ha de fer es cablejar be el mando 2025-06-28 11:22:16 +02:00
dce9f4305a EnterName: amb el mando soles tries lletra, amb el primer botó la fixa, qualsevol altre boto la borra, pa saltar el nom quan ja etsà posat val qualsevol botó inclos el start 2025-06-28 11:18:11 +02:00
65ba55aa12 param: afegits comentaris a tots els parametres
param: afegit parametre per a establir a partir de quin segon es pot saltar el compte enrere de continuar
2025-06-28 10:28:21 +02:00
8af6d4ef28 fix: si deixaves el nom en blanc, t'asigna uno de un pool pero despres no arribava a la tabla
style: quan confirmes el nom, apareix centrat
2025-06-28 09:53:22 +02:00
ac8d168893 canvi de pc 2025-06-27 23:07:31 +02:00
13860af98e fix: arreglat un warning en utils.cpp 2025-06-27 21:20:18 +02:00
ce48cda0bc fix JailAudioSDL3: havia un error de copy-paste 2025-06-27 21:16:23 +02:00
8d406bc104 fix: crash de la retroweekend de que peta al posar nom. En realitat petava si havia dos jugadors i es donava certa condició 2025-06-27 20:58:51 +02:00
3af193d5eb fix Screen: arreglats els shaders en macos i linux 2025-06-27 20:54:50 +02:00
8b598c3e47 renombrat stb_vorbis.c a stb_vorbis.h 2025-06-27 11:21:43 +02:00
66888ac639 fix options: settings.config_file s'inicialitzava en la declaració en lloc de en init() 2025-06-27 11:20:58 +02:00
d4226c71c8 fix: faltava un include en options.h 2025-06-27 10:18:44 +02:00
ee0e43103f style: param.h 2025-06-27 10:12:59 +02:00
439f5fdb38 style: Options 2025-06-27 09:36:36 +02:00
ba2fa79d97 debug JailAudioSDL3: afegida info de debug 2025-06-27 08:52:08 +02:00
1f4fdb1e05 Intro: les targetes ja no tenen res siniestro per darrere 2025-06-27 08:41:21 +02:00
ed91bff7df Options: afegida opció per invertir el y_axis (la recre te els mandos mal cablejats) 2025-06-26 22:26:38 +02:00
c923f0d310 fix Screen: faltava un initShaders() en toggleShaders() 2025-06-26 21:17:44 +02:00
57123d6b8a Bullet: ara tenen animació de tres frames, encara que no es nota una puta merda 2025-06-26 21:13:51 +02:00
00b496957c Intro: les tarjetes tenen ara el borde redó
Intro: el fondo pot ser de color, no soles blanc i negre
Intro: intro4.png pintava a Bal1 deixant un pixel per pintar en la zona de baix
Intro: modificat el blend mode de les tarjetes
2025-06-26 19:10:10 +02:00
1f8588e975 Mes colorets 2025-06-26 18:34:32 +02:00
babf22627b Parametritzant colorets de varios llocs 2025-06-26 17:40:17 +02:00
9b57c7314e Scoreboard: colorets al param.h 2025-06-26 14:27:18 +02:00
13c4f66228 Fade: el color passa a estar en param.h 2025-06-26 14:04:01 +02:00
7c473d7a3d ManageHiScoreTable: tornats a posar els noms per defecte a 5 caracters 2025-06-26 13:55:51 +02:00
5e3c7eb721 ServiceMenu: el aspecte es defineix en param.h 2025-06-26 13:50:17 +02:00
231bd05f5e Color: afegit suport per al canal alpha 2025-06-26 11:52:17 +02:00
78efcbccb7 Color: afegit static Color fromHex(const std::string& hexStr) 2025-06-26 11:42:37 +02:00
1ed09226e0 fix: corregits bugs de JailAudioSDL3 utilitzant la última versió 2025-06-26 11:12:05 +02:00
73aa5fc65c Actualizar README.md 2025-06-25 21:46:10 +02:00
7e59584c40 ServiceMenu: refactorització d'alguns métodes
ServiceMenu: en Video, amaga tamany de finestra quan está en fullscreen
2025-06-24 14:12:44 +02:00
50e7dad1c1 fix Screen: un parellet de quick fixes 2025-06-23 13:09:57 +02:00
9a6e5f775c SDL bug: no va el mode de pantalla completa en macos 2025-06-22 08:02:53 +02:00
b438a0ae16 fix Resource: ja es veu el text de càrrega amb els shaders actius
fix Screen: trampa per a que els shaders funcionen de serie en macos i linux
2025-06-21 23:45:15 +02:00
9b176a8cc0 canvi de pc (treballant en Screen::applySettings()) 2025-06-21 22:31:19 +02:00
4f81712e3c ServiceMenu: arreglos de colorets 2025-06-21 20:51:10 +02:00
b6698043fd fix MenuRenderer: corregida la animació del cuadro del menu de servei 2025-06-21 14:50:33 +02:00
f5731c8181 fix DefineButtons i Title: ja no fa coses rares al definir la ultima tecla 2025-06-21 14:13:36 +02:00
e8b67d3be1 fix Director: corregit els bindGameControllerButton() per al menú de servei 2025-06-21 13:30:19 +02:00
324ddd0416 fix Input: migrat correctament a SDL3 discoverGameControllers() 2025-06-21 13:20:05 +02:00
97f76e122d afegida carpeta "external" al source i moguts ahi els .cpp que no son meus 2025-06-21 12:14:23 +02:00
ee43f1cf56 modificada la estructura de fitxers en source 2025-06-21 11:23:27 +02:00
ab3b6d5bb5 fix: havia una cridada mal construida a playSound 2025-06-21 10:58:34 +02:00
a83f0aefab Merge branch 'main' of https://gitea.sustancia.synology.me/JailDesigner/coffee_crisis_arcade_edition 2025-06-21 10:53:57 +02:00
1b0ab972ab fix: no canviava el tamany de la finestra en fullscreen mode 2025-06-21 10:53:50 +02:00
0b636fc325 canvi de pc 2025-06-21 10:49:03 +02:00
d7e057b7bc guardar partida que vaig a pegar coses de la ia 2025-06-17 13:31:30 +02:00
9aaad2785f ServiceMenu: reafegits comentaris que la IA s'havia ventilat 2025-06-17 11:10:00 +02:00
09f938d15e ServiceMenu: trastejant cosetes 2025-06-17 10:58:28 +02:00
7e727cea7b ServiceMenu: afegit polimorfisme per a les diferents opcions del menu 2025-06-16 19:41:14 +02:00
303c0e9168 coses de la ia 2025-06-16 19:32:13 +02:00
88288b7545 ServiceMenu y MenuOption: versió aportada per Gemini, que no funciona 2025-06-16 17:52:39 +02:00
ab948d3f17 UIMessage: creada 2025-06-15 19:20:01 +02:00
ee634cf350 ServiceMenu: animació per al missatge de reiniciar 2025-06-15 18:19:09 +02:00
dc9a675667 ServiceMenu: es poden mostrar o ocultar les opcions 2025-06-14 19:58:29 +02:00
8ce5da623b fix ServiceMenu: al modificar opcions que requereixen reiniciar, si canvies de menu i tornes, no mostra els valors correctes 2025-06-14 19:08:02 +02:00
a100228e0a ServiceMenu: ja es pot canviar la dificultat 2025-06-14 19:00:26 +02:00
01017cd0fe ServiceMenu: afegida memoria per al menu principal 2025-06-14 18:21:03 +02:00
c8999bff68 Options: load i save ja no necesiten el fitxer com a parametre 2025-06-14 17:57:47 +02:00
eee398802f Options: renombrats els metodes 2025-06-14 17:48:37 +02:00
c748070ba5 Options: creat namespace 2025-06-14 17:43:53 +02:00
23e8f90274 canvi de pc (toquejant Options) 2025-06-14 16:28:36 +02:00
4b8cc67b5c ServiceMenu: afegides noves opcions a "SETTINGS" 2025-06-13 21:25:40 +02:00
c83d58aaa3 Afegits nous textos als json 2025-06-13 21:12:59 +02:00
ac2e2687a2 ServiceMenu: animacions acabades 2025-06-13 20:52:33 +02:00
f0e565feaf fix: Audio no aplicava be els settings en el constructor 2025-06-13 20:36:44 +02:00
483a7e020b ServiceMenu: treballant en les animacions 2025-06-13 20:22:26 +02:00
37a7a9eccb ServiceMenu: treballant en les animacions 2025-06-13 20:03:50 +02:00
9b7da383ea Audio: corregida la logica 2025-06-13 18:57:48 +02:00
5f52560ab5 debug: afegit SDL_Delay(100) en updateLoadingProgress() per que amb shaders activats no es veu el missatge de càrrega ni la info de FPS 2025-06-13 12:14:49 +02:00
a0d3cd9fb0 Audio: corregit playMusic 2025-06-13 12:02:38 +02:00
6402099825 Merge branch 'main' of https://gitea.sustancia.synology.me/JailDesigner/coffee_crisis_arcade_edition 2025-06-13 11:40:02 +02:00
529c8d8063 game_logo.cpp: la textura de ARCADE EDITION gasta ara SDL_SCALEMODE_NEAREST 2025-06-13 11:39:54 +02:00
99ffe9f7a7 New: refeta la lògica d'eixir o apagar el sistema 2025-06-12 20:25:59 +02:00
6c707fa178 Options: afegida opció per a permetre apagar el sistema 2025-06-12 20:11:07 +02:00
d2be756741 Merge branch 'main' of https://gitea.sustancia.synology.me/JailDesigner/coffee_crisis_arcade_edition 2025-06-12 13:50:09 +02:00
f9b576ea25 ServiceMenu: afegida opció per a canviar el idioma 2025-06-12 13:50:05 +02:00
6750f2c023 jail_shader.cpp: arreglat amb un apanyo de jaildoc 2025-06-11 18:37:25 +02:00
e6f4e27fbd Resource: optimitzat i netejat el proces de càrrega 2025-06-10 23:01:29 +02:00
8741f9da58 Screen: afegit coreUpdate() i coreRender() 2025-06-10 22:24:11 +02:00
cabee86ee0 Resource: afegida pantalla de progres de càrrega
Screen: Afegit objecte de text propi per a la clase
2025-06-10 22:08:17 +02:00
02b111e4fd Resource: treballant en la visualització de la càrrega de recursos 2025-06-10 18:42:14 +02:00
6b30e4c927 fix: arreglades les cridades a lang::getText("[SCOREBOARD] X") 2025-06-10 14:10:00 +02:00
5d573d51a6 style: renombrades algunes variables en jail_shader.cpp 2025-06-10 13:36:00 +02:00
32d3f96a3d Input: afegits dos inputs per a ServiceMenu (accept i back)
Style: renombrats alguns metodes de windowZoom a windowSize
2025-06-10 11:01:17 +02:00
813f994500 ServiceMenu: control amb el mando 2025-06-09 08:09:18 +02:00
59a116305b fix ServiceMenu: en globalInputs estava continuament toquejantse el menu encara que no estiguera enabled 2025-06-07 15:45:08 +02:00
0c00bf5770 ServiceMenu: adapta el tamany de la finestra al contingut 2025-06-07 15:24:59 +02:00
0f17dd50db fix ServiceMenu: al canviar el idioma recarrega les opcions 2025-06-07 14:11:57 +02:00
06fc8c8579 ServiceMenu: utilitza "lang" per als textos 2025-06-07 12:37:33 +02:00
1bd488e3e3 json: reordenades les cadenes de text 2025-06-07 12:00:45 +02:00
d8ce5fb5ac json: eliminats els textos que no s'estaven utilitzant 2025-06-07 09:16:10 +02:00
09b182c187 fix: xicotets errors al codi que he detectat al canviar de SO 2025-06-07 09:15:49 +02:00
767d38e170 lang: convertits els fitxers de text a json 2025-06-06 23:59:27 +02:00
2512345b2c ServiceMenu: optimitzacions 2025-06-06 21:29:43 +02:00
0010d64d62 ServiceMenu: text justificat o centrat segons el submenu
ServiceMenu: alt de la finestra en funció del submenu amb mes items
2025-06-06 20:59:42 +02:00
a76740f0b7 ServiceMenu: afegit so 2025-06-06 19:56:56 +02:00
552eff2fc0 ServiceMenu: ja es funcional en totes les seccions del programa 2025-06-06 19:45:47 +02:00
71e1a035dd sembla que ja funciona la configuració d'audio: encendre i apagar, volumen i master volumen. No tinc temps de fer mes proves 2025-06-06 14:06:59 +02:00
5af75f74d1 ServiceMenu: treballant en el menu de audio: no aplica els canvis 2025-06-05 14:39:32 +02:00
d4bb3109c7 ServiceMenu: ja es funcional el menu de system 2025-06-05 14:20:39 +02:00
f1c576beef ja navega pels menus en ServiceMenu
Ja aplica les opcions de video de ServiceMenu
2025-06-05 14:06:42 +02:00
1a84f1b1b0 vaig a fer un commit per si de cas petara algo ... 2025-06-04 14:05:56 +02:00
64b86c7ac1 modificacions en el flujo de globalInputs
afegida font aseprite
canvis estetics en la info de debug
moviment del cursor del ServiceMenu
2025-06-04 09:44:53 +02:00
7ac0ce9354 arreglos estetics en ServiceMenu
afegides noves fonts de text
2025-06-03 09:56:41 +02:00
093b775360 ServiceMenu ja pinta alguns textos d'exemple 2025-06-02 14:08:32 +02:00
3e9716901b modificada la lletra de la info de debug 2025-06-02 11:46:22 +02:00
16d9774519 ServiceMenu ja pinta un recuadro de prova
el ServiceMenu el pinta Screen
2025-06-02 11:35:18 +02:00
653bb7dc76 treballant en ServiceMenu 2025-05-30 13:59:25 +02:00
f661da5215 tots els singletons tornats a fer a la vieja y gorda usanza 2025-05-30 10:17:41 +02:00
64b6f66044 ja va amb lo de friend pero no se perque 2025-05-29 14:04:17 +02:00
2c2685f73c passant Asset a singleton de tota la vida 2025-05-29 13:39:53 +02:00
5fd987c6a1 commit de merda pa llevar la branch 2025-05-29 12:25:19 +02:00
0fc8224ef8 revisió de capçaleres 2025-05-29 09:58:23 +02:00
677e4d465d reestructurat background, balloon_formations i balloon_manager 2025-05-27 13:58:51 +02:00
ada141cb09 convertit Asset i Audio 2025-05-27 11:06:17 +02:00
9bc07b2bcb Limitat el nom a tres caracters 2025-05-27 07:44:50 +02:00
a3cd1b9887 eliminat OnScreenHelp 2025-05-22 09:07:07 +02:00
d2417f48d9 treballant en la classe Audio 2025-03-28 23:27:33 +01:00
31a0ad6fd5 per alguna rao, la tecla F12 en VSC en windows en una sesió de debug em penja el programa, per tant Screen::renderInfoDebug funciona correctament 2025-03-28 17:43:24 +01:00
1db80485a6 resolt bug en jail_audio
treballant en Screen::renderInfo() deixa el programa congelat
2025-03-28 17:23:08 +01:00
25cd6b00eb afegida tecla per activar o desactivar el vsync 2025-03-28 08:38:28 +01:00
11d015daf8 afegit SDL_ScaleMode scale_mode a VideoOptions 2025-03-27 21:20:45 +01:00
36b3048070 acabat amb SDL_Log 2025-03-27 20:56:21 +01:00
8afca398e9 Passant std::cout a SDL_Log 2025-03-27 19:57:30 +01:00
c6288918b2 ja funciona el audio 2025-03-27 18:34:04 +01:00
e2339bd54a actualitzada la versio de jail_audio
modificat SDL_Init a SDL_Init(SDL_INIT_VIDEO || SDL_INIT_AUDIO || SDL_INIT_GAMEPAD)
2025-03-27 13:15:04 +01:00
2edb978a28 migrant a SDL3 2025-03-27 09:43:19 +01:00
d2286905dc migrant a SDL3 2025-03-27 08:14:37 +01:00
a9c869baf6 migrant a SDL3 2025-03-25 20:26:45 +01:00
f1b0303474 migrant a SDL3 2025-03-25 14:13:58 +01:00
9cc41aaf53 arreglat makefile, info.plist i sdl.frameworks per a compilar en macos intel 2025-03-25 11:42:23 +01:00
04dd66319a actualitzada versió en el makefile 2025-03-25 09:04:40 +01:00
c041c64261 afegit intro03.png 2025-03-19 19:11:00 +01:00
d06617a1b0 mogut el contador de frames a un struct i de paso el shake_effect també l'he encapsulat millor 2025-03-17 21:37:06 +01:00
fbe877960a afegit intro04.png
retocat el timing en la intro
2025-03-16 20:49:18 +01:00
43a1f1a8f6 style: renomenat InputType a InputActions 2025-03-16 18:57:08 +01:00
1b38a5a581 actualitzat gamecontrollerdb.txt a la ultima versió i afegits els mappings de la recre 2025-03-16 17:12:54 +01:00
336c3119ff retocat el timing de la seqüencia final 2025-03-16 13:36:57 +01:00
bfb334bef0 style: eliminats uns fprintf 2025-03-16 13:24:33 +01:00
b3215bf381 retocat gif.cpp 2025-03-16 12:44:38 +01:00
4a07100e2a Arreglat jail_shader.cpp en windows també 2025-03-16 09:55:32 +01:00
e7359a1467 Acabat de repasar jail_shader.cpp 2025-03-16 09:39:24 +01:00
96680dae0f Els shaders ja respeten el escalat sencer 2025-03-16 09:00:19 +01:00
dc7b3bf7e0 Arreglos de disseny en Credits
El shaders ja respeten els SDL_RenderSetLogicalSize en pantalla completa, pero no el SDL_RenderSetIntegerScale
2025-03-16 08:50:35 +01:00
b5dbb694f3 fix: si la finestra no està visible, initShaders no fa be la faena 2025-03-15 20:43:01 +01:00
10997f8850 al fer reset desde Game, en Intro no sona la musica. Bypassejat obligant a recarregar sempre que fas reset 2025-03-15 20:34:26 +01:00
2e9b668426 Afegits mnappings de les palanques de la recre a gamecontrollerdb.txt 2025-03-15 20:04:36 +01:00
c2c55707c3 al acabar la partida i vore els records, torna al titol 2025-03-15 19:53:57 +01:00
a6d115342c fix: amb el audio muted, al acabar la partida el fade per al roido de boles el tornava a deixar activat 2025-03-15 19:33:18 +01:00
44f3f32d67 arreglets al posar el nom 2025-03-15 19:25:39 +01:00
1bb8534db7 c mas masizat gif.cpp 2025-03-15 19:20:04 +01:00
cad2c40024 fix: arreglos de codi 2025-03-15 19:03:12 +01:00
4343cbae69 canvi de pc 2025-03-14 23:04:09 +01:00
3670bad36a Modificades les tecles de funció 2025-03-14 22:01:04 +01:00
919e2b9ca7 Afegides traduccions a les notificacions que faltaven 2025-03-14 21:53:27 +01:00
6c7cfaae59 Pasaeta de IWYU 2025-03-14 21:22:55 +01:00
3ee47ba906 fix: eliminat el reloadTextures() en SDL_WINDOWEVENT_SIZE_CHANGED 2025-03-14 20:33:58 +01:00
ff4e356013 Treballant en la intro 2025-03-14 20:28:04 +01:00
c757886430 Treballant en la intro 2025-03-14 14:06:14 +01:00
f11cb32ac0 Afegida tecla per a canviar el integer scale 2025-03-13 23:07:32 +01:00
9692d01b42 Ja funciona correctament el canvi de tamany de finestra, el shaders, i la pantalla completa 2025-03-13 22:51:51 +01:00
d1db4f253e Treballant en la intro 2025-03-13 20:55:24 +01:00
5a6b96f7ab Treballant en la intro 2025-03-13 14:18:19 +01:00
a3d4b13f3b Treballant en la intro 2025-03-12 14:17:15 +01:00
215ce999c2 Treballan en la Intro 2025-03-12 13:39:48 +01:00
5ccd7eebcd Afegit param.game.speed i retocats els update() de les seccions 2025-03-12 10:06:38 +01:00
90313da3ce fix: una variable no s'havia renombrat correctament als estar en un ifdef 2025-03-11 21:25:04 +01:00
9251d2cf42 Treballan en la intro nova 2025-03-11 21:22:22 +01:00
059a9c863a Tocant coses d'Screen, pero no acaba de funcionar be res 2025-03-11 14:16:02 +01:00
be857cc8c8 Modificat checkInput en varies seccions per a gastar global_inputs.cpp 2025-03-11 09:27:34 +01:00
482dc3de54 Afegit global_events.cpp 2025-03-10 23:24:00 +01:00
9d98d3ea6a Passat gif.c a gif.cpp
Afegit reloadTextures a Resources
2025-03-10 22:38:23 +01:00
9c1b3c45b0 Demana confirmació per a canviar el idioma amb les tecles ràpides
Demana confirmació per reiniciar
2025-03-10 21:22:32 +01:00
79b2917112 Pots pasar quan mostra el nom que has introdiut apretant qualsevol botó de disparar 2025-03-10 20:13:38 +01:00
c88a277cba Si no poses cap nom, tria un nom de jailer al azar 2025-03-10 19:59:21 +01:00
e0c10f83d6 Codi preparat per als dibuixets nous per a la intro 2025-03-09 18:30:14 +01:00
72cb39da78 canvi de pc 2025-03-08 22:23:40 +01:00
9f8d1fbcd7 Eliminat el logo de RetroWeekend per falta de temps i pq era lleig 2025-03-08 20:17:31 +01:00
e523692e99 Els sprites de la intro ja apareixen i desapareixen com en el CC original 2025-03-08 17:47:13 +01:00
83bdd67cee No se perque ha aparegunt un SDL_Destroy(mi_textura) que no es meu i te pinta de que se l'ha inventat el autocompletar de la IA i estava pegant explosions en Linux 2025-03-08 17:27:06 +01:00
66e5105c84 Actualitzat README.md 2025-03-08 17:19:56 +01:00
f8449ea6d1 Afegida politica al fitxer CMakeLists.txt 2025-03-08 10:16:08 +01:00
f43d18e6f0 Arreglos tontos de codi 2025-02-23 09:12:15 +01:00
a42141ebd7 canvi de pc 2025-02-21 19:45:58 +01:00
29c85fecad canvi de pc 2025-02-21 18:26:32 +01:00
04ff428aa0 Treballant en el segon logo 2025-02-07 14:55:34 +01:00
84595da13a EnterName: si has plenat tots els slots de lletres, apretar una volta mes el de fixar lletra fixa el nom 2025-02-07 14:15:18 +01:00
01591175ef Pos pense que ja està tot apanyat lo de EnterName i Scoreboard 2025-02-07 13:45:07 +01:00
29bc4a64fd Afegit position_overflow_ per a EnterName i poder plenar tots els slots de lletres 2025-02-07 12:31:59 +01:00
559210652f Treballant en scoreboard::fillPanelTextures 2025-02-06 20:58:15 +01:00
44e4ca490d canvi de pc
treballant en enter name
2025-02-06 14:59:25 +01:00
3cebee2ae4 Implementat control de repetició per als eixos del joystick 2025-02-06 12:36:16 +01:00
270d7d1848 Duplicada la font 04b_25 per a tindre versió gris i versió negra. La gris es la que es por modular amb colors.
Eliminada la font nokia que ja no s'estava utilitzant.
Optimitzada la càrrega de fonts al permetre reutilitzar fitxers .txt de altres fonts
2025-02-06 10:31:32 +01:00
ccf005dce1 Afegit el disparador per a la aparició del enemic nou 2025-02-06 09:59:58 +01:00
5755947ff7 La tabla de puntuació ja mostra amb altre color la puntuació que s'acaba d'afegir
fix: la tabla de punts no guardava a disc el estat de 1CC de cada entrada
2025-02-05 22:52:19 +01:00
6f594b9a1f La tabla de puntuacions ja mostra aquelles aconseguides amb 1CC 2025-02-05 15:15:48 +01:00
7e2021da70 canvi de pc 2025-02-05 10:17:49 +01:00
0a9a92d4b7 El text de la tabla de puntuacion ja ix centrat i el "diferent" es el que fa 10 2025-02-05 09:45:30 +01:00
b01763b749 Dels credits ja passa a la tabla de puntuacions 2025-01-26 21:15:13 +01:00
59b9f61d69 Font nova per a la intro 2025-01-26 21:05:43 +01:00
b9f194a2b1 Afegit efecte d'eixida a les instruccions 2025-01-26 20:16:43 +01:00
59936f13eb Arreglos estetics i de colorets en hiscore_table.cpp 2025-01-26 17:48:10 +01:00
bad0a10328 Ja es mouen els sprites en hiscore_table.cpp, falta decidir-se per un disseny concret 2025-01-25 22:57:49 +01:00
52a0c2b91f Treballant en la nova tabla de records: ja pinta amb sprites 2025-01-25 21:17:45 +01:00
f12a456017 Alguns arreglos en updateTimeStopped() 2025-01-25 18:51:39 +01:00
f39e65afaf Ja no se que he tocat i qué no, cosetes del malo nou 2025-01-25 18:47:06 +01:00
d3183237df Estandaritzats els noms dels fitxers de audio
Eliminat el soroll de TNT que feia ANYS que no existía
2025-01-25 18:15:49 +01:00
60302004f4 Afegits efectes de audio nous
Retocats alguns efectes de audio al afagar items per a no solapar dos audios
2025-01-25 18:11:24 +01:00
e60938cb19 El malo nou ja suca cosetes, falta ajustar un poc els paràmetres 2025-01-25 17:41:45 +01:00
2b3cc719ba Fix del fix: aaaara si que lleva el garbage de la zona negra. Havia posat el clean() on no tocava 2025-01-25 13:14:25 +01:00
d01c91ebde Fix: m'havia carregat el shakeEffect() de la pantalla quan havia shaders, i de paso he vist que el que tenbia fet shakejava també les notificacions i els menus de debug. Ale, ja està tot arreglaet.
Fix: tampoc estava netejant la pantalla, pensava que no feia falta, pero quan SDL replena de negre la finestra en pantalla completa, havia gorrinades
2025-01-24 20:20:50 +01:00
7130f2298a Merge branch 'main' of https://gitea.sustancia.synology.me/JailDesigner/coffee_crisis_arcade_edition 2025-01-24 10:44:58 +01:00
380cc17861 Fix: ara apaga el sistem al final del tot, almenys quan ja ha escrit la configuració a disc 2025-01-24 10:43:00 +01:00
a5388873e3 Actualizar README.md 2025-01-05 15:47:51 +01:00
28b37af31d Actualitzada la data de la versió 2025-01-05 14:38:48 +01:00
4d590f79f5 fix: es podia pulsar per a jugar mentre feia el fade cap a la demo 2025-01-05 14:36:38 +01:00
91c8797d7f Screen: optimitzat el circuit de render en pantalla 2025-01-05 14:17:49 +01:00
f207985180 Retocs en el punter del ratolí per al mode ARCADE 2025-01-05 13:44:10 +01:00
a16131335b hi_score_table: actualitzat el fondo amb els elements nous 2025-01-05 13:41:09 +01:00
871e8da642 Corregit el timing de la música en la animació inicial del joc 2025-01-05 13:27:45 +01:00
90b3db8f06 El atenuat de pantalla torna a funcionar. Fade feia dos SDL_SetRenderDrawBlendMode(renderer_, SDL_BLENDMODE_NONE); que mai tornava a restaurar 2025-01-05 13:07:20 +01:00
668e8e237a Actualitzat README.md 2025-01-05 12:52:14 +01:00
768f466b20 canviat blit() per render() 2025-01-05 10:45:05 +01:00
1f8f9b11ed Segona pasaeta de IWYU 2025-01-05 10:36:17 +01:00
39f61884b0 Pasaeta de IWYU 2025-01-05 10:22:20 +01:00
b1193bd8fd fix: error en la seqüència final de retrocedir en el temps 2025-01-05 09:51:33 +01:00
7f9e2e53e3 Optimitzat el renderitzat dels credits 2025-01-05 09:44:08 +01:00
4cf4c8db6f fix: arreglada la acceleració dels credits sense dependre de vsync 2025-01-05 09:31:57 +01:00
cd806363e8 Modificat el color dels nuvols de la última pantalla
debug: opció de no crear mes globos
2025-01-05 09:22:30 +01:00
198aa45d59 Afegida una lluna i un sol al fondo 2025-01-05 07:32:30 +01:00
0711c8dada fix: al fer el init de stage no es buidava el vector i cada volta afegia mes stages 2025-01-05 07:29:33 +01:00
e1aaad0903 fix: Havia deixat comentat un IF fent proves 2025-01-04 17:01:24 +01:00
b53ee12f56 La powerball ja no es pot destruir fins que no ha fet un rebot 2025-01-04 16:57:50 +01:00
7b6d429bed fix: un vuelo rasante havia trencat els credits 2025-01-04 14:27:37 +01:00
81ee352553 Afegit un lock per evitar que es puga incrementar el poder de la fase
Es necesita almenys un jugador viu per a poder incrementar el poder de la fase
2025-01-04 14:09:10 +01:00
7b8f16610a Afegits estats al fade
Afegida opció de prefade
El modo demo ja comença a meitat del "meollo"
2025-01-04 13:40:22 +01:00
06eb05f065 Canviat un poc el color del segon cel 2025-01-04 12:44:24 +01:00
bccf4c30de Modificada la cadencia de foc sense autofire i arreglades un poc les animacions de cool_down i cooling 2025-01-04 10:47:26 +01:00
5e817ef1d0 Afegit el tamany de la coffee_machine als parametres 2025-01-04 10:04:49 +01:00
eaab646cd3 Modificades les paletes de invulnerabilitat 2025-01-04 09:21:58 +01:00
e887c2a2ab Afegida la opció de crear els globos sense temps de creació en el balloon_manager
Modificat el mode demo per a que la primera oleada estiga ja creada
2025-01-04 00:42:57 +01:00
f573bd02ac El case de les variables en mouse.cpp i mouse.h era incorrecte 2025-01-03 23:57:45 +01:00
b586a117c8 Afegit mouse.cpp per amagar el cursor quan no està moventse 2025-01-03 23:35:48 +01:00
08dfaf7641 Errors tipografics en varios comentaris 2025-01-03 22:48:45 +01:00
ff7f5ea131 Modificada la seqëncia d'inici per a que la musica començe antes 2025-01-03 22:13:46 +01:00
7cc4a2002a Modificat el copyright de 2024 a 2025 2025-01-03 22:04:29 +01:00
de81b798b0 Afegit custom fadeout de so sincronitzat amb el fadeout de video per a quan acaba la partida 2025-01-03 22:02:48 +01:00
5669715285 Input mostra també el numero de joysticks que ha trobat 2025-01-03 21:29:22 +01:00
6531106933 Quedaven mes SDL_Log en jail_audio 2025-01-03 21:28:55 +01:00
51191b1906 Eliminat SDL_Log 2025-01-03 21:21:52 +01:00
6effeb6154 Quan el jugador moria podia quedarse engantxat rebotant en les vores
So aleatori en els rebots del jugador al morir
2025-01-03 20:36:18 +01:00
8c2b1ce649 Separats els estats de joc completat i joc acabat del estat joc jugantse
Al completar el joc, el missatge de game over ja no ix fins que desapareixen els textos anteriors
2025-01-03 19:53:09 +01:00
cc4acecc03 Afegits sons de caminar i de comptador de continuar
Afegits estats al joc i al jugador per a escenificar el inici de la partida
2025-01-03 19:19:22 +01:00
40dfc32e84 Actualitzada la data de la versió 2024-12-31 10:23:01 +01:00
4cd1d91560 Actualitzat jail_audio 2024-12-30 20:08:08 +01:00
e43badd703 Merge branch 'main' of https://gitea.sustancia.synology.me/JailDesigner/coffee_crisis_arcade_edition 2024-12-30 20:06:04 +01:00
71dcf9cf87 Afegit coffee.res, coffee.rc i icon.ico per a tindre iconet en windows 2024-12-30 19:56:35 +01:00
3a8521a1da Arreglat windows_release en Makefile 2024-12-30 19:56:00 +01:00
74d9c9a2b9 Commit per a vore qué està passant amb la música 2024-12-30 19:07:13 +01:00
9532caace8 Arreglades les release de windows, linux i raspberry 2024-12-30 13:44:09 +01:00
0bbd14067a Text::writeToTexture no deixava el renderitzador com estava 2024-12-30 13:43:12 +01:00
cfaa143c44 Actualitzat jail_audio 2024-12-30 13:30:06 +01:00
e61daeb92e Modificats els grafics del enemic nou
Afegits nous audios i veus
Completat el comportament del enemic nou
Ampliat el numero máxim de sons simultanis
2024-12-28 21:23:04 +01:00
d57cc15aee Treballant en el enemic nou 2024-12-27 13:38:07 +01:00
de3b18a407 Posat ordre en el Attract Mode 2024-12-26 13:58:25 +01:00
7f444fef33 Fix: mil minibugs relacionats amb el audio 2024-12-26 10:39:48 +01:00
ca18baefd7 Fix: el modo demo desactivava els sons i ja no s'activaven mai mes 2024-12-26 10:05:41 +01:00
b8dca0a46f Fet el fade out del title de video i audio i el fade in del joc de video i audio
Actualitzat jail_audio a la última versió
2024-12-26 10:03:02 +01:00
ca2c48ea17 Au, paca casa. M'he quedat a mitjes fent un fade de audio sincronitzat amb el fade de video en el titol 2024-12-23 13:56:11 +01:00
fb4d0d12db Afegits roidets de colisió per als globos per a certs moments 2024-12-23 12:37:19 +01:00
fb31445731 Comprova al iniciar que el tamany de finestra no siga mes gran que el tamany de la pantalla 2024-12-23 11:22:26 +01:00
cf4f0459b3 Es pot fer la finestra tan gran com deixe la pantalla, es a dir, el factor de zoom ja no va de 1 a 4 sino de 1 a X 2024-12-23 11:13:14 +01:00
fe0900a686 Afegides veus al jugador
Afegit efectes de so al rebotar el jugador quan mor
2024-12-15 20:00:35 +01:00
3367b70cd5 Afegit delay opcional al flash de la classe Screen 2024-12-09 20:06:59 +01:00
7016849587 FIX: afegit StopChannel en lloc de PauseChannel en el destructor del Logo
Retocada la animació del logo del joc en Title
2024-12-09 19:08:22 +01:00
301c059a26 Afegit botó per activar o desactivar el autofire 2024-12-05 12:24:18 +01:00
e3d0145417 Opció de fer el reset amb o sense reload 2024-12-05 08:25:44 +01:00
f0863b3691 Afegit zoom al subtitol ARCADE EDITION 2024-12-05 08:18:40 +01:00
80e366b208 Treballant en el zoom del titol s'ha arreglat el rebot dels globos i ara mola mes, o aixo pense 2024-12-03 13:59:40 +01:00
3c5bbf2ab0 Afegit zoom a la classe Sprite 2024-12-03 11:39:31 +01:00
1aa0dd3864 Acabats els credits a 320x240 (i per extensió, a qualsevol resolució) 2024-12-03 10:51:19 +01:00
ab45c984a2 Treballant en els credits a 240 2024-12-02 13:45:31 +01:00
020ee81479 Duplicat el fitxers de shaders per a resolucions verticals de 256 i 240 2024-12-02 13:39:19 +01:00
0cd96aced5 Afegit globalInputs::update() a totes les seccions del programa 2024-12-02 11:34:31 +01:00
ad32bb7d45 Treballant en globalInputs::update() 2024-12-02 11:11:03 +01:00
c3a5166ee1 Afegit un pragma per a IWYU 2024-12-02 09:27:51 +01:00
687d329d23 FIX: Faltva corregir el flash de destroyAllBalloons() 2024-11-27 18:58:17 +01:00
faba87c06d FIX: Si saltes el logo talla el so a meitat sonar
FIX: Corregida la lògica del efecte de flash
2024-11-27 18:39:23 +01:00
eed45bdbc6 Notifier no gastava Resource per als sons
Resource no alliberava correctament els elements de JailAudio
2024-11-27 18:20:33 +01:00
6ed37425bf Furtat el so del logo de JAILGAMES de The Pool 2024-11-27 18:02:25 +01:00
b987d06aca El joc ja reinicia correctament 2024-11-27 17:54:52 +01:00
9c9cfdabc2 Canvi de idioma (i reinicia) amb una tecla 2024-11-27 09:48:14 +01:00
9f2448753b Afegides les traduccions dels credits 2024-11-27 09:16:17 +01:00
736bf7e544 Credits acabats e integrats amb la resta del joc. Falta traduirlos pero de moment me la pela un rato 2024-11-26 19:42:26 +01:00
a2d4331430 Treballant en els credits 2024-11-25 22:56:59 +01:00
fd7beee5a1 Continuem treballant en els credits 2024-11-25 17:48:25 +01:00
a36120cf0c Continuemtreballant enels credits 2024-11-24 20:21:46 +01:00
ad221243cb Afegida musica als credits
Els globos ara tenen definida una play_area
Opció de canviar la paleta al text
2024-11-24 19:07:19 +01:00
b8d4c8f17c Començan a treballar en la secció Credits 2024-11-22 20:48:52 +01:00
8941072357 Els items reboten al tocar el piso 2024-11-20 21:55:55 +01:00
77bf1d73b3 Afegits els grafics de caure derrotat per al segon jugador 2024-11-19 19:30:30 +01:00
700d3846fb Afegits rebots en la animació de morir 2024-11-19 18:59:35 +01:00
185a1b47d1 Afegida llengua fora i ulls en X a la animació de derrotat 2024-11-19 18:59:22 +01:00
121774e460 Nova animació de jugador derrotat 2024-11-19 18:33:52 +01:00
47e468034f Nova animació per a la mort del personatge
Nova lògica al morir
2024-11-17 08:43:24 +01:00
da74b8dfce La powerball ja no mata
La powerball no pillava la rotació si es creava amb el rellotge actiu
2024-11-16 12:45:58 +01:00
065336c310 Els globos fills ja no ixen centrats al pare, si no al final havia varios apilats 2024-11-16 12:24:20 +01:00
79d25fb812 Nous grafics per a la powerball
Nou comportament per a la powerball
2024-11-16 12:13:00 +01:00
6262b5814d Arreglos varios relacionats amb el nom al obtenir la màxima puntuació:
No canviava al marcador, ni el nom del que tenia la maxima puntuació en calent ni al posar nom
retallat el nom de 8 a 6 caracters, i tots en majuscula pa que capia en el marcador
ja actualitza be la cadena amb el nom al posar nom per segona vegada en la mateixa partida
2024-11-08 20:49:07 +01:00
f9520185a2 Acabat BalloonManager 2024-11-08 18:29:08 +01:00
2fb7e88e4b Continue amb BalloonManager 2024-11-07 20:56:56 +01:00
0e527ff9d9 Au, a dormir que tinc son 2024-11-06 22:22:35 +01:00
d902bb9088 canvi de pc 2024-11-06 17:22:16 +01:00
caf04e3a7e Treballant en BalloonManager 2024-11-05 22:06:15 +01:00
12213a3dab Toooooornem a commitaaaar, aci vinga jugar al ping pong entre windows i macos i el puto copilot. Apanye aci i trenque allà 2024-11-05 17:54:23 +01:00
1f2a8ae38d Canvis en CMakeLists.txt 2024-11-05 17:38:26 +01:00
aa8d3502e2 Actualitzat make i cmake 2024-11-05 16:51:41 +01:00
e445a0b218 CMakeLists.txt crea el executable en la arrel del projecte 2024-11-05 13:13:43 +01:00
3f9c4b887f Apareixia brossa en la textura al crear un text i no netejarla primer (en el windows de la faena) 2024-11-05 13:06:32 +01:00
27ccae6132 Refet CMakeLists.txt 2024-11-05 13:05:52 +01:00
443f0f3254 Añadido CMakeLists.txt 2024-11-05 07:15:54 +01:00
2e62214a4b Canviat un #include <bits/chrono.h> per #include <chrono> 2024-11-04 22:26:31 +01:00
7b1c2a6005 Nova font de text per al text gran amb el doble de definició 2024-11-04 20:28:19 +01:00
2256ee46eb Modificada la paleta verda del primer jugador per a fer la mes pareguda a la del coffee crisis original 2024-11-04 19:39:27 +01:00
087fd3377c fix: els globos verds, al popparlos, uno tirava cap avall el molt cabró 2024-11-04 19:16:44 +01:00
30735f00e8 Els objectes de Text es precarreguen al inici 2024-11-04 19:08:18 +01:00
e0e82ee273 Retocs en Texture::loadPaletteFromFile 2024-11-03 20:43:52 +01:00
371c477d0d Varios arreglos 2024-11-03 20:28:01 +01:00
f29eb2f411 Les notificacions ara accepten un vector de cadenes en lloc de una o dos cadenes 2024-11-03 18:12:46 +01:00
69a92cba66 Apanyats alguns bugs que quedaven respecte a lo del teclat 2024-11-03 17:25:31 +01:00
86cd7b0f16 Ja es pot gastar el teclat com a control independent del primer mando
Ja pot jugar un jugador amb teclat i altre amb mando
Es pot asignar el teclat a qualsevol dels dos jugadors
Continua podentse gastar mando i teclat a l'hora per al mateix jugador
2024-11-03 11:07:58 +01:00
a1ccb6102a Abans de clavar-li ma a Input 2024-11-01 20:01:17 +01:00
2dd8bbbbf7 Moguts els checkInputs de Screen a GlobalInputs 2024-11-01 19:07:19 +01:00
c66cc965f1 define_buttons ja acaba be de definir els buttons 2024-11-01 18:39:10 +01:00
0757f63b73 Eliminat checkModInput 2024-11-01 18:20:18 +01:00
80a110e1d7 Abans de llevar checkInputMod 2024-11-01 16:48:03 +01:00
cd68c5ffea Al redefinir botons, ja no pots repetir botó. Util per als qui tenim la ma tremolosa i apretem dos voltes sense voler 2024-11-01 14:32:27 +01:00
f786cb7776 Implementat el final del joc 2024-11-01 13:05:11 +01:00
2e0d27a95c Modificats parámetres 2024-11-01 12:56:09 +01:00
861a9411d3 Nous textos 2024-11-01 12:55:37 +01:00
da27fde366 Millores en la gestió del "mute" en el joc 2024-11-01 07:55:37 +01:00
c6e2368e82 Noves animacions per a deixar de disparar 2024-10-31 23:32:11 +01:00
30dfa4c545 Treballant en el final del joc 2024-10-31 11:58:01 +01:00
7e2691e33e Finalitzat el Attract Mode 2024-10-30 21:29:23 +01:00
7e918e99f7 Arreglat un include 2024-10-30 13:15:30 +01:00
2aa3f827cb Arreglada la animació de morir, que s'updatava dos voltes per frame 2024-10-30 10:15:53 +01:00
06899d95a8 Arreglat el efecte de flash. Estava passant-li un valor massa xicotet 2024-10-30 09:45:57 +01:00
20c51d0796 Acabat el nou motor per a textos en pantalla 2024-10-30 09:25:28 +01:00
b43782786a Modificades les linux_utils 2024-10-30 09:25:12 +01:00
15554c449f Nuevos textos para el game_text 2024-10-30 08:19:32 +01:00
ba05eab79e Reduida la dependencia de PathSprite a Sprite
Treballant en els missatges de text que ixen durant la partida
2024-10-29 20:05:05 +01:00
d83c05bad4 El game_text dels items ja son textures generades i precarregades 2024-10-29 16:04:14 +01:00
e2abf835f9 Afegida nova tipografia 04b_25
Eliminades tipografies que no s'utilitzaven
La classe Text ara pot tornar una textura amb el text
2024-10-29 15:22:19 +01:00
59e2865a4a El game_text ara gasta PathSprites en lloc d'SmartSprites
fix: la paleta dels jugadors no s'iniciava correctament
2024-10-28 22:09:28 +01:00
787cb6366f Pasaeta de include-what-you-use
Acabada de perfilar la classe PathSprite
Menjeades declaracions de utils.h als fitxers que toca
2024-10-28 20:45:24 +01:00
0fe371653a commit de me ane cap a casa 2024-10-28 13:51:26 +01:00
2cffe8dfc9 Merge branch 'main' of https://gitea.sustancia.synology.me/JailDesigner/coffee_crisis_arcade_edition 2024-10-27 22:28:47 +01:00
1dd96cfaff Completada la classe PathSprite 2024-10-27 22:28:44 +01:00
d054e188b6 fix: alguns minibugs tontos 2024-10-27 19:04:05 +01:00
ca6ff71a46 Actualitzat README.MD 2024-10-27 18:46:42 +01:00
b90ac65cfc Eliminats warnings que nomes es veuen al compilar en macos/linux 2024-10-27 17:45:49 +01:00
759adbf6fd Actualitzat README.MD 2024-10-27 17:09:40 +01:00
71f76fda05 Redissenyat el time stopper 2024-10-27 13:36:00 +01:00
ddfb3672ea Afegida la funció createTwoBigBalloons() per a que la partida sempre comence igual 2024-10-26 18:16:23 +02:00
6235d0b684 Revisada la classe Balloon 2024-10-26 18:08:04 +02:00
f750997b34 Revisant la classe Balloon 2024-10-26 14:13:08 +02:00
de2a29b669 Ajustado el game_text para que se dibuje siempre en pantalla, sin clipping 2024-10-26 12:23:04 +02:00
f99f908c11 Revisant la classe Balloon 2024-10-26 11:38:08 +02:00
d44bfd51de Balloon: inicialitzades variables en la declaració 2024-10-26 09:09:19 +02:00
4f095ab018 Repasada la classe Bullet 2024-10-26 09:01:32 +02:00
bffd2bdace . 2024-10-26 08:11:30 +02:00
24d09a2e3c Millorada la aparició dels game_text 2024-10-24 22:16:57 +02:00
caf191672e Posat ordre en el constructor de Game 2024-10-24 22:08:53 +02:00
43e7b83403 Continue arreglant cosetes amb cppcheck 2024-10-24 20:36:30 +02:00
a5c72a0f65 Collons, que m'havien stagejat no se que.. ara si, arreglada la carrega d'animacions 2024-10-24 19:58:45 +02:00
ca464b2e81 Arreglada la cárrega d'animacions 2024-10-24 19:58:25 +02:00
f26ecbd969 Canviat el final de linea als scripts de linux 2024-10-24 18:14:33 +02:00
018bb68f9a Canviat el nom de la carpeta a linux_utils 2024-10-24 17:59:50 +02:00
f36ff3d7fe Actualitzats scripts de linux_utils 2024-10-24 17:53:24 +02:00
8f33308f8d . 2024-10-24 14:03:12 +02:00
8c98430b68 . 2024-10-23 22:18:46 +02:00
6e2f80d8ce . 2024-10-23 18:29:52 +02:00
95478134dd Merdetes en la faena, básicament arreglar uns quants iniciadors de variables en les clases 2024-10-23 14:00:19 +02:00
528533fd9b Au, a casa 2024-10-22 13:56:50 +02:00
5df85e1b1a Pasaeta de cppcheck, ale 2024-10-22 09:24:19 +02:00
1d0c2e01a5 Varios arreglos d'estil en el codi i llevar metodes que ja no servien 2024-10-21 22:47:00 +02:00
236d6f58b6 Nous gràfics per al game_text 2024-10-21 19:29:54 +02:00
898b551e06 Paletes noves per al primer café dels jugadors 2024-10-21 18:09:34 +02:00
84238032e0 Afegits uns overrides pa agafar parametres per linea de comandos 2024-10-21 17:46:05 +02:00
2cb22ed013 fix: els globos tenien un parell de setters mal asignats per culpa de buscar y reemplazar
fix: els globos verds s'inicialitzaven amb vy = 0 per gastar abs en lloc de fabs
fix: corregit un bug milenari que de sempre havia creat els balloons verds al popar al pare amb la meitat de velocitat en y. Lo que jo no se es com anava res. Supose que ara el joc serà un poc mes xungo. Quan rebotaven en el piso ja se'ls posava la velocitat bona (crec)
2024-10-20 22:58:15 +02:00
a3a583deb7 Precàrrega dels fitxers amb dades per al mode demostració 2024-10-20 21:23:04 +02:00
b263e0c4be Modificada la estructura on es guarden els datos de la demo 2024-10-20 20:43:03 +02:00
3bf61fc758 fix: no guardar el fitxer de puntuacions en el modo demo 2024-10-20 19:40:09 +02:00
2377815c02 Amb les textures en memoria i compartides ja no puc fer el trick de canvi de paleta per a la flama del segon jugador tal i com està plantejat el codi. Arreglat creant una segona textura 2024-10-20 19:38:28 +02:00
7434869894 Corregit un fallo amagat baix un ifdef ARCADE. Ja he posat que estiga definit per defecte pa que no torne a passar 2024-10-20 15:43:10 +02:00
848d61b5c0 He fet un "manolete" i he pasat a c++ i smartpointers la cárrega de surfaces desde gif. Sembla que no ha petat res
Precárrega i asignació de paletes a les textures
Ara si algú toca una paleta, que siga conscient que la textura es compartida durant tot el joc
2024-10-20 15:36:04 +02:00
cbc9b3f071 Eliminats els últimes defines i passats a enum class 2024-10-20 12:07:55 +02:00
8bca5095da Modificats, estructurats i ben formatats alguns missatges de consola
Canvis en els codis d'eixida del programa
2024-10-20 11:37:26 +02:00
a4b4e188cd Precàrrega de tots els recursos al inici del joc
8.000.000 de cherrypickings que he anat fent pel codi
2024-10-20 11:06:10 +02:00
f23dcae5b6 Creada la classe Resource
Afegida la musica i els sons a Resource
2024-10-19 10:07:14 +02:00
b879673bc2 Mes merdes que faltaven del merge 2024-10-18 17:10:06 +02:00
a8701dbebc Merge branch 'main' of https://gitea.sustancia.synology.me/JailDesigner/coffee_crisis_arcade_edition 2024-10-18 16:53:53 +02:00
afe835914e Revisada la carrega de recursos en game.cpp 2024-10-18 14:07:25 +02:00
808f1595e9 Treballant en la càrrega de animacions desde fitxers 2024-10-17 21:02:28 +02:00
8e8346b2ab Li he demanat a la IA que revente Game::checkInput() que aixo si que era un monstruo amb sombreret i pajarita 2024-10-17 20:05:26 +02:00
1da8f33a5e Llevats tots els ifdef VERBOSE i redirigit cout a null_stream 2024-10-17 19:31:44 +02:00
50a376e582 Comença a estar tot mes o menos be el desaguisao de les classes Sprite. Encara algunes animacions sembla que van massa ràpides 2024-10-17 19:26:39 +02:00
59de566c5b commit de acabar la jornada laboral 2024-10-17 13:57:41 +02:00
db884cb422 Commit de vesprà tirada a la brossa 2024-10-16 22:35:19 +02:00
5585f996cb A vore si el helper ja funciona com toca 2024-10-16 13:29:16 +02:00
24556eeaa8 Implementat contador per a posar el nom al acabar la partida 2024-10-16 09:18:22 +02:00
dbffda491f Retocat l'aspecte visual de les notificacions 2024-10-15 22:56:24 +02:00
53f5f3f8b0 Ja comprova la notificació d'eixir per diferenciarla de la resta
En ARCADE la notificació diferencia si vas a eixir o a apagar el sistema
2024-10-15 20:40:45 +02:00
e0faa0890e Afegides noves cadenes de text 2024-10-15 20:12:16 +02:00
de6508c37c Don Melitonitzada la classe Notifier e independitzada de la classe Screen
Ara es poden afegir codis a les notificacions per identificarles
2024-10-15 20:09:09 +02:00
e99c2c5265 fix: faltava el nom de la classe en shutdownSystem() 2024-10-15 18:58:10 +02:00
942924c65c Afegit codi per apagar el sistema al eixir del joc 2024-10-15 18:24:19 +02:00
089da99b5b Afegida la funció getNewPosition a la classe Screen per a respectar la posició de la finestra al canviarla de tamany 2024-10-15 18:12:16 +02:00
3fdd60c9e2 Treballant en els game_texts 2024-10-15 14:02:37 +02:00
3b9885ab03 Commit de Boromir 2024-10-14 22:33:45 +02:00
39a8c992e1 Ja duplica la ultima lletra al posar el nom 2024-10-14 17:12:07 +02:00
9825c7fb9b Pasaeta de include-what-you-use 2024-10-13 21:58:36 +02:00
d0a6e4c572 Afegits destructors virtuals en les classes Sprite 2024-10-13 21:23:15 +02:00
7c876e1d4d Acabat amb cppcheck
Arreglades les herencies de les classes Sprite
2024-10-13 21:00:33 +02:00
809c10048e Commit pa poder tornar a passar el cppcheck 2024-10-13 19:39:43 +02:00
babf02226c Mes recomanacions de cppcheck 2024-10-13 19:26:27 +02:00
46540ad7c3 Optimitzat el tema de comparacions i asignacions de strings buits. Mes que optimitzat, ara està mes mono 2024-10-13 14:25:05 +02:00
ba7c44ad06 Actualitzat Makefile 2024-10-13 14:24:15 +02:00
46b19ee82f Mes recomanacions de cppcheck aplicades
Abans de tocar unes cosetes de strings buits
2024-10-13 13:49:00 +02:00
b2122ac239 Eliminats fitxers que s'havien colat 2024-10-13 11:04:50 +02:00
c11a868289 Afegides recomanacions de cppcheck
Optimitzada la funció updateBalloonSpeed() i eliminades funcions sobrants o redundants
2024-10-13 11:03:50 +02:00
22d457285d Modificat .gitignore 2024-10-13 11:03:00 +02:00
b060f21696 Arreglades les herencies de Sprite
Abans de llevar mil coses que sobren i replantejar-se estes 4 classes
2024-10-13 10:01:07 +02:00
33ea8d90ca Acabat de renamar, encara que he descobert cosetes i tindré que fer altra pasaeta
Actualitzat stb_image.h a la última versió
2024-10-12 22:25:43 +02:00
cce14dba4d Mes renames. Mes ordre. 2024-10-12 12:03:19 +02:00
101e375fd3 Variables renombrades en input.cpp 2024-10-12 11:01:42 +02:00
4ef759772a game.cpp renombrat 2024-10-12 09:15:20 +02:00
07714aabc3 Abans de renombrar game.cpp 2024-10-12 07:26:41 +02:00
d50cf23721 Abans de renombrar player.cpp 2024-10-11 21:58:59 +02:00
3a6950f3a4 Menudo puto lio de renamar coses, a vore si tot va quedant al lloc que els structs i els enums estan revolant i duplicats per tots llocs 2024-10-11 20:12:50 +02:00
a9ca23138d Continuem estandaritzant noms 2024-10-11 13:54:43 +02:00
e1fa1d2102 Canviades certes opcions a parametres i afegides noves opcions 2024-10-11 09:03:57 +02:00
117b80bdfc idem 2024-10-10 20:59:39 +02:00
d6c3c89872 Estandaritzant noms segons convencions 2024-10-10 20:27:31 +02:00
9e5f41644e Açò ja no hi ha Cristo que ho pete 2024-10-10 13:48:53 +02:00
fc8fdc5fe5 Llevats uns punterets que sobraven en director.cpp 2024-10-10 09:23:16 +02:00
6fe294c59d Pos ja compila pero no es veu una puta merda ... 2024-10-10 08:06:36 +02:00
3fa5b227ae commit de anar a dormir 2024-10-09 23:01:44 +02:00
f2fa216b0d Commit pa que Mon arregle el codi mentre em dutxe 2024-10-09 21:48:01 +02:00
3c1dcad3ab Commit de anar al llit amb el portatil 2024-10-08 23:15:55 +02:00
bd3aa0bb06 Arreglos varios al codi 2024-10-08 22:38:58 +02:00
3e3d764b25 Commitet pa gastar el Cppcheck 2024-10-08 20:32:24 +02:00
c00f4326ae Commit de "guardar partida" 2024-10-08 18:07:54 +02:00
9ce0f16d33 Arreglats els constructors de Text 2024-10-08 18:07:44 +02:00
06a4f439c1 Posant make_uniques, s'ha quedat tot enmerdat per culpa d'un struct 2024-10-08 13:53:24 +02:00
9d41d14d68 Actualitzats els scripts de valgrind 2024-10-07 20:11:08 +02:00
0d0e49316f Afegit scripts a linux-utils 2024-10-07 18:44:18 +02:00
bf945ef14b Corregits 8.000.000 de segmentation faults en intro.cpp 2024-10-07 18:37:08 +02:00
0330fe6b74 Make uniques en intro.cpp 2024-10-07 17:28:34 +02:00
6305a67c84 Actualitzat .gitignore 2024-10-07 17:28:22 +02:00
5f18189269 Actualizado Makefile 2024-10-07 12:32:53 +02:00
7ebefd7b54 Les enum class passen a estar totes amb la inicial en majuscula 2024-10-07 12:30:46 +02:00
cffa4c3c92 Commitet pa valgrind, he aprofitat i posat mes make_unique i enum class 2024-10-07 10:49:29 +02:00
4f0ea9dcf2 Make_unique en title.cpp 2024-10-07 08:22:51 +02:00
b1f936a791 Pasaeta de include-what-you-use abans que es desmadre tot 2024-10-06 22:43:28 +02:00
1c0554d4df Actualitzat script check-includes.sh 2024-10-06 22:43:00 +02:00
8ba77d7d5d Demanada ajuda a la IA pa que m'arregle un poc la meua merda: Para optimizar este código y evitar duplicar la lógica para cada jugador, podemos extraer el código común en una función reutilizable. Así, reducimos la repetición y mejoramos la legibilidad. 2024-10-06 21:07:26 +02:00
6515ec6c7b Els panels dels marcadors ja passen a game over sense pasar per waiting un frame gracies a una parafernalia que he montat 2024-10-06 21:02:49 +02:00
b979c0f2b8 Mes textos 2024-10-06 21:02:12 +02:00
a95e5077e3 Els panels del marcador ara canvien de mode a petició i no a cada frame 2024-10-06 20:19:43 +02:00
6ea6f85e3e Nous textos 2024-10-06 20:14:37 +02:00
fe6e63e39f fix: la classe Screen ja ha recuperat un poc del lustro que tenia
shake effect ja no està fet "the torerous menner"
shake effect ja va amb shaders
2024-10-06 18:57:47 +02:00
afe092c742 Muntat a c++14 per a make_unique
Mes autos, const i constexpr perl codi
Ara la classe Screen es un poc pitjor
2024-10-06 14:58:00 +02:00
25a2753b13 Canviats defines per constexpr i enum class
Canviats punters a unique_ptr
Afegit const a alguns metodes de classse
fix: el segon jugador no podia unirse a la partida
new: Quan els dos jugadors han decidit no continuar, ja no poden continuar i el marcador així ho reflectix
fix: al posar el nom per segona vegada en la mateixa partida, no es reseteja la posició del selector
fix: el fade venetian no netejava la textura i de vegades eixien gràfics corruptes
fix: ara grava a disco cada vegada que es posa nom al morir
2024-10-05 23:53:42 +02:00
ee721ff573 debug 2024-10-03 19:35:58 +02:00
c07fd62037 Corregit bug en el text a l'hora d'intercanviar els mandos. Apareixia el nom del mando que te guardat a la configuració pero no estava connectat 2024-10-03 19:26:32 +02:00
fb74733f2c Correcció de textos 2024-10-03 18:16:20 +02:00
468bd0950c Modificat controllers.png 2024-10-03 18:13:48 +02:00
938e4ad011 La targeta d'ajuda ja ix amb els mandos i s'ha de deixar apretat el botó 2024-10-03 17:37:33 +02:00
71bd3bed52 Eliminades variables sobrants en director.cpp 2024-10-03 17:02:40 +02:00
5ebc58dd01 La tarjeta d'ajuda ja entra i ix amb animacions suavitzades 2024-10-02 18:03:20 +02:00
9b3e549876 Añadidas funciones de suavizado a utils.cpp 2024-10-02 18:00:21 +02:00
abc8a0b632 La tarjeta d'ajuda ix pero no s'amaga 2024-10-02 13:56:43 +02:00
3a84ea792c Ja dibuixa la tarjeta amb la ajuda per als botons de servei 2024-10-01 20:58:05 +02:00
3cabd5c675 Nous textos 2024-10-01 19:07:25 +02:00
2ec242b2c9 Afegit esqueleto per a la classe OnScreenHelp 2024-10-01 18:34:26 +02:00
d993a6def4 Afegit formato Allman a bullet.cpp 2024-10-01 18:16:08 +02:00
5913d7548a Modificat el temps posterior d'aparició de la Powerball 2024-10-01 18:15:42 +02:00
84f3952232 Afegit controllers.png 2024-10-01 18:15:11 +02:00
7dbddd5524 Afegides utilitats per a linux
Arreglats alguns includes
2024-10-01 17:24:38 +02:00
dee5bcb4e4 Canviada la classe bullet per la de chatGPT, aixina demà ho mire amb calma 2024-09-30 23:06:16 +02:00
af1c1051e6 Afegides implementacions (fora del codi) que ha fet chatGPT de la classe bullet 2024-09-30 20:28:20 +02:00
aaf6dc29a1 El joc ja no comença al pulsar la combinació de botons per eixir 2024-09-30 19:45:04 +02:00
0af441b5df Finalitzada la part de entrar nom. Falta posar un temporitzador i una animació 2024-09-30 19:35:41 +02:00
6acf0b7efc Modificada la posició de PULSA PER JUGAR al titol 2024-09-30 19:35:00 +02:00
e033fc8015 Canviat el missatge d'eixida del joc 2024-09-30 18:47:12 +02:00
2d5859b1c4 Ja es pot "enner llour neim". Falta decidir quin de tots els dissenys m'agrada mes 2024-09-29 22:25:31 +02:00
edc45b6cec Afegides funcions per oscurir o aclarir colors 2024-09-29 19:35:33 +02:00
fad6cddfb6 Nous textos 2024-09-29 17:06:26 +02:00
8ce09d1355 Acomodats els estats del jugador
El compte enrrere per a continuar ara ix al acabar la animació de morir
Afegit el estat "entering_name"
2024-09-29 10:40:35 +02:00
945eaa68e7 Actualizado Makefile 2024-09-29 08:01:47 +02:00
28df97ea94 Pasaeta de "include-what-you-use" per arreglar els includes
Renombrats alguns fitxers per consistencia
2024-09-29 06:24:11 +02:00
ac3340c39f Eliminat tots els options.console 2024-09-28 18:02:09 +02:00
4febe8b7c0 Afegit global_inputs.c
El audio no es podía mutejar amb el teclat, soles amb els mandos
2024-09-28 17:08:09 +02:00
289d01b0fa fix: no estava comprobantse el reset amb el teclat 2024-09-28 14:23:51 +02:00
2767696a3f Singletonejada la classe Input 2024-09-28 14:19:00 +02:00
fa82758ce1 Don melitonada la classe Asset 2024-09-28 13:49:00 +02:00
878518babe Eliminades les icones de les notificacions (herencia del CC original) 2024-09-28 12:46:53 +02:00
3f24f38a0c Reestructurada la carpeta gfx 2024-09-28 12:37:52 +02:00
1f6dfe5d92 Faltava un pixel d'altura en logo_jailgames_mini.png 2024-09-28 12:25:26 +02:00
92f7f540c0 Classe Screen melitonada 2024-09-28 11:11:11 +02:00
f2cc0dc352 Eliminat "const.h" 2024-09-28 10:16:35 +02:00
8d263931b2 Eliminat el punter a "section" 2024-09-28 09:28:22 +02:00
0a8d0479a0 Estandaritzats els accessos a fitxers 2024-09-27 19:41:45 +02:00
20de9e4b72 Un altre punteret a pendre per cul: options 2024-09-27 19:00:09 +02:00
0de9188547 Reballats tots els .h i .cpp en la mateixa carpeta 2024-09-27 17:57:00 +02:00
9d7e975952 Actualitzat Makefile 2024-09-27 17:56:45 +02:00
46b41757b2 Convertit "param" a variable global en lloc de anar marejant amb punterets i passant 8.000.000 de paràmetres 2024-09-27 17:42:25 +02:00
c1bf0b8aed Estandarizados los colores en hexadecimal 2024-09-27 16:52:26 +02:00
5ca4ee0bb8 Afegit estat pre-logo per a poder fer reset mes millor 2024-09-26 22:50:46 +02:00
05e3fddb8f Mil millons de miniarreglos
Afegides traduccions faltants
2024-09-26 22:13:20 +02:00
69027f96e6 Eliminada la classe Lang 2024-09-26 18:08:59 +02:00
6ad1bca29f Afegida confirmació per eixir del joc 2024-09-25 09:19:12 +02:00
2f152915ed fix: sense mandos no comprovava ni el teclat 2024-09-24 20:44:09 +02:00
998b151c00 Añadido #ifdef ANBERNIC 2024-09-23 19:11:16 +02:00
0cd14aa320 Actualizado Makefile 2024-09-23 19:05:07 +02:00
159a75a60e follat! 2024-09-16 22:21:57 +02:00
80425a5ed0 Aumentado el tiempo de visibilidad de las notificaciones 2024-09-16 18:33:43 +02:00
a00c2284b6 Commit amb la merda de hui 2024-09-15 19:32:20 +02:00
75f9d3f5cb Cambios en swapControllers 2024-09-15 18:14:51 +02:00
85a082d738 Añadida la función boolToOnOff 2024-09-15 18:11:20 +02:00
b6c5d06246 fix: no escribia las notificaciones con la primera cadena vacía 2024-09-15 17:40:39 +02:00
891d5a8f5e Se puede usar tanto la primera como la segunda cadena de texto para generar notificaciones 2024-09-15 17:14:53 +02:00
333c905b1a Correcciones en el botón de servicio 2024-09-15 15:27:12 +02:00
41e57064cb Al intercambiar los mandos de los jugadores se muestra el mando que corresponde a cada jugador 2024-09-15 14:30:58 +02:00
7ef75184a5 Las notificaciones se pueden configurar para que no se apilen 2024-09-15 14:11:37 +02:00
c40c59275a Guardada en el fichero de configuración la asignación de cada mando a cada jugador 2024-09-15 13:29:05 +02:00
8fc217f0e3 Corregido el texto de salida del programa 2024-09-15 13:09:00 +02:00
04935c652d Añadidas nuevas funciones al botón de servicio
El botón de servicio se puede usar en cualquier sección del juego
2024-09-15 13:03:53 +02:00
a435e3ed8c corregidos varios bugs 2024-09-11 20:42:21 +02:00
41c3e1f32c El joc cascava quan havia que baixar el multiplicador del jugador per "pedre" una bala. Arreglat abans d'anar-me'n 😎 2024-09-11 14:09:22 +02:00
3d41da0fdf Añadida opción para intercambiar los jugadores de los dos primeros mandos 2024-09-11 13:59:40 +02:00
ecf34558f4 Añadido campo ID al jugador
Las balas y los mandos utilizan ahora este ID
2024-09-11 12:15:18 +02:00
1e2f121d82 Llevada tota la merda que he posat este mati 2024-09-10 13:23:47 +02:00
c93e824f86 Canviat stc per std dins de un puto define que el vsc passa de mirar si estan les coses ben escrites o no 2024-09-10 13:01:28 +02:00
762a819711 Añadido SDL_GetError a SDL_SetWindowDisplayMode 2024-09-10 12:56:25 +02:00
a5060b928f Prueba de SDL_SetWindowDisplayMode 2024-09-10 12:16:18 +02:00
2398e4136b Pequeños ajustes de formato 2024-09-10 11:50:56 +02:00
b3b932edfc Actualizado Makefile 2024-09-10 11:43:38 +02:00
443cc6da8d Añadido "Display modes list" 2024-09-10 11:35:28 +02:00
46cdc2189e Se puede especificar con argumentos el fichero de parametros a utilizar 2024-09-10 10:19:56 +02:00
f071b60212 Añadida información de la pantalla antes de crear la ventana 2024-09-10 08:12:37 +02:00
824bc08077 Cambiado de showFps a showInfo 2024-09-09 22:51:26 +02:00
e1fb069010 No se podía empezar a jugar con el teclado 2024-09-09 22:30:35 +02:00
b114d75c69 Retoques de lo anterior para ser un poco mas eficiente y ordenado 2024-09-09 18:47:59 +02:00
8465ee87fb Añadida info de debug: resolucion de la pantalla 2024-09-09 18:41:03 +02:00
83fb2f30ba Implementado código de salida de la aplicación 2024-09-09 13:51:16 +02:00
922d146781 Renombrado "section->subsection" por el mas apropiado "section->options" 2024-09-09 13:38:56 +02:00
1b2d1c5786 Añadido botón de servicio al titulo 2024-09-09 13:31:37 +02:00
7e1085ea42 Añadida la unidad service.h 2024-09-09 11:28:24 +02:00
d4417d67d5 Eliminados inputs en desuso y añadido el input de "service" 2024-09-09 10:15:57 +02:00
14af141d8f Eliminada la clase Menu 2024-09-09 10:06:53 +02:00
870a83d688 Deshabilitado el sonido de las notificaciones por defecto 2024-09-09 10:02:23 +02:00
54a0d6c448 Corregido el mapeo para el mando Zero Delay 2024-09-06 18:08:23 +02:00
c50d8a8bec Corregido un pase de parametros en la creación de los objetos y las balas 2024-09-06 13:54:17 +02:00
ad8c16f834 El separador del marcador ahora lo gestiona el propio marcador 2024-09-06 12:25:06 +02:00
cc15b8afd1 Retocados los degradados de fondo para dar soporte a la nueva resolución de 320x256 2024-09-06 10:54:05 +02:00
770f0eb046 Faltaba corregir un error de reemplazo en item.cpp 2024-09-06 08:56:12 +02:00
62b1ba84ac Cambiados muchos DEFINEs por variables de param 2024-09-06 08:41:10 +02:00
c5bab7019c Modificado el tamaño de la textura 2024-09-03 19:48:30 +02:00
b3d9b72d1d Corregido el tamaño de la textura y de la ventana 2024-09-03 19:47:57 +02:00
ccfd864eab En modo ARCADE solo se puede usar el modo ventana en setVideoMode() 2024-09-03 18:52:56 +02:00
f5b866b8c5 Oculta el puntero del raton al compilar en modo ARCADE 2024-09-03 18:50:20 +02:00
1b160c0584 Actualizado Makefile 2024-09-03 18:44:01 +02:00
c72dfe5876 Deshabilitada la opción de cambio de modo de video con la directiva de compilador ARCADE 2024-09-03 14:05:55 +02:00
548976c955 Actualizado Makefile 2024-09-03 14:04:55 +02:00
2a303deff1 Renombradas las variables de param_t 2024-09-03 13:59:07 +02:00
fa76520c6d Movido 'autofire' de param.txt a config.txt 2024-09-02 11:40:50 +02:00
f57a307991 Añadido soporte para ejes en la clase Input 2024-09-02 10:19:28 +02:00
4f6c92c8d1 Añadido cambio de color en las nubes 2024-08-30 13:12:04 +02:00
1d847eae9f Eliminada la (innecesaria) referencia a Screen 2024-08-30 13:02:45 +02:00
48d876bcf1 Eliminada la opción de poner pausa desde el mando 2024-08-28 08:38:21 +02:00
d16c8239c4 Haciendo pruebas con el modo de video a pantalla completa 2024-08-27 23:16:10 +02:00
50b1acfe8b Eliminado todo el código para añadir un borde a la zona de juego. Eran restos del código del JDD 2024-08-27 23:04:59 +02:00
60cfc1e4d9 Eliminadas variables sin utilizar 2024-08-27 22:49:51 +02:00
0ed0a5c6b5 Restablecidos los SDL_RenderSetLogicalSize eliminados 2024-08-27 11:52:38 +02:00
5ea41d4fc7 Añadidos nuevos custom mappings en gamecontrollerdb.txt 2024-08-27 11:25:39 +02:00
982094264a Eliminados SDL_RenderSetLogicalSize innecesarios 2024-08-27 11:16:22 +02:00
7a3c2ffe71 Cambiado el modo de fullscreen a SDL_WINDOW_FULLSCREEN_DESKTOP (como estaba en el CC original) 2024-08-27 09:37:16 +02:00
49cffb3669 Cambiado el modo de funcionamiento de la pausa durante el juego para permitir que ciertos métodos se sigan ejecutando 2024-08-27 08:48:04 +02:00
149e422489 Ara es pot activar o desactivar el comptador de frames per segon amb una tecla 2024-08-26 10:52:59 +02:00
4c2528ba93 Afegit input_showfps a la classe Input 2024-08-26 10:42:52 +02:00
65b8988ba2 Afegit comptador de frames per segon a la classe Screen 2024-08-26 10:18:06 +02:00
c7cc5df920 fix: el mode demo havia deixat de dir que era el mode demo per culpa de checkPlayersStatusPlaying() 2024-08-16 12:49:06 +02:00
89979a8ddb moguts els dos metodes per llegir i escriure la tabla de puntuacions a fitxer a la classe ManageHiScoreTable
el fitxer amb les puntuacions ara nomes es llig al carregar el programa i no cada volta que començem a jugar
2024-08-16 12:42:34 +02:00
7d778a9cfa ja guarda i carrega la tabla de records en el disc 2024-08-16 11:57:58 +02:00
9012e3d79d el sprite del jugador s'invertiex en funció de cap on camina quan dispara recte 2024-08-16 07:52:34 +02:00
b09f07ef40 afegit debug per avançar rapidet per les fases 2024-08-15 12:53:17 +02:00
448da70ba8 fix: la variable hiScore es reinicialitzava a 10000 en lloc de pillar la original de la tabla de records 2024-08-14 21:26:23 +02:00
24b4eaa972 fix: la variable score no s'inicialitzava 2024-08-14 21:17:28 +02:00
59da8fd4c6 actualitzades les dos variables hiScore a una de tipo hiScoreEntry_t 2024-08-14 20:57:22 +02:00
f64b461d75 afegit un guionet entre el nom i la puntuació de la máxima puntuació en el marcador 2024-08-14 20:56:50 +02:00
b9a15bd8b4 modificats els comentaris en main.cpp 2024-08-14 20:55:44 +02:00
924fd375ff fix: el truncat de la tabla de records estava "mal" en stack overflow. arreglat per mi llegint els hints de les funcions 2024-08-14 20:23:18 +02:00
e50e7affb3 de moment en la tabla de records posa el nom generic del jugador. Ja farem per a poder triar nom 2024-08-14 20:22:04 +02:00
032c5e7129 fix: el jugador sempre s'inicialitzava en el stat "playing" en lloc de "waiting", per tant, sempre jugaven tots els jugadors 2024-08-14 19:59:54 +02:00
1839df142d fix: trampa per arreglar en linux que una textura del logo no canvia de color i no se sap perque 2024-08-14 19:24:20 +02:00
35749f7c1b actualitzat Makefile 2024-08-14 19:12:44 +02:00
e48dbb2d4e fix: ja no es pot continuar quan els dos jugadors han acabat el compte enrrere per continuar 2024-08-14 14:16:12 +02:00
7e60a742ca acabats els nous estats dels jugadors 2024-08-14 14:09:54 +02:00
5c7bb842ec fix: faltava passar el nom dels jugadors al marcador 2024-08-14 14:09:28 +02:00
6a9d0d1b2c ja es poden passar les dades del jugador per a cada panell 2024-08-14 13:42:42 +02:00
f8b6d0524d primera implementació dels estats nous del jugador: playing, continue, waiting 2024-08-14 13:05:09 +02:00
90706d5d0c enmig del berenjenal d'afegir estats nous al jugador 2024-08-14 11:59:16 +02:00
c246472098 fix: els panels del marcador estiraven els bitmaps al no coincidir srcRect amb dstRect 2024-08-14 09:24:57 +02:00
45ed1106cb fix: ja torna a funcionar el cicle de música per les diferents seccions 2024-08-14 08:38:19 +02:00
a5a3bb23da 4 putes merdes que no han servit pa res. Au demà miraré qué passa 2024-08-13 23:01:48 +02:00
054950f1d8 fix: havia un punter no inicialitzava a nullptr i en macos no passava res, pero en linux i windows si 2024-08-13 20:44:23 +02:00
ba8e068b80 fix: fallava al parar la musica al morir el jugador en el mode de demostració 2024-08-13 19:25:12 +02:00
3f3242393e varios ajustos 2024-08-13 18:51:55 +02:00
a2ce1f0dc3 fix: havia dos formacions que no tenien ben asignada la y inicial 2024-08-13 18:28:05 +02:00
887e8a7071 fix: la variable ballonsPopped no estava inicialitzada i passaven coses rares 2024-08-13 17:50:59 +02:00
7ed0393a9b fix: corregit el tamany i la posició dels panells del marcador 2024-08-13 17:26:52 +02:00
e51e3a5c43 treballant en els panels del marcador 2024-08-13 14:25:07 +02:00
eb9eaec61d arreglos en la powerball:
- quan apareix al centro, pot anar cap a l'esquerra o cap a la dreta
 - ara apareix a la altura que li toca als globos grans
 - tarda en generarse igual que la resta de globos
 - rebota igual que els globos grans (com feia abans de canviar les físiques dels globos grans)
2024-08-13 11:29:13 +02:00
8c7ff13bc2 modificat Makefile 2024-08-13 07:27:18 +02:00
88fe1a29fe afegits dos descriptors a gamecontrollerdb.txt per als mandos RAP4 y MadCatz SFV PS4 per a Linux 2024-08-12 20:38:21 +02:00
e009349464 el borde de la powerball no era transparent quan el globo està creant-se 2024-08-12 14:23:40 +02:00
4d1f1d2bc2 continuem afegint descripcions de lo que fa cada classe 2024-08-12 14:16:24 +02:00
9d5aee2562 Afegides mes descripcions a les classes
Eliminat el punter a renderer de les classes-estat que faltava
2024-08-12 08:55:41 +02:00
477891cac7 Afegida la funció getRenderer() a la classe Screen per tal d'estalviar altre parametre mes a molts constructors de classes-estat de joc 2024-08-12 08:03:30 +02:00
45731c8294 Afegides descripcions a algunes classes
Eliminats parámetres no necesaris als constructors de classes
2024-08-12 07:57:59 +02:00
4df505d263 retocat el disseny del efecte de powerUp en el jugador 2024-08-03 19:19:20 +02:00
ffef64b4fd ajustat el rebot de balloon1 2024-08-03 19:18:42 +02:00
2358b8e914 actualitzat Makefile 2024-08-03 19:12:46 +02:00
1f4d7ce042 afegida la opció de controlar el autofire 2024-08-03 17:55:18 +02:00
657d43de5a modificats els parametres de velocitat dels globos 2024-08-03 17:55:02 +02:00
735e5299f9 nou grafic per a les bales 2024-08-03 17:19:05 +02:00
bca688a9a7 afegida opció per habilitar o deshabilitar el audio desde el teclat. De moment soles desde el joc. En poder ho integraré en jail_audio 2024-08-03 14:12:40 +02:00
ad2d1cbd65 afegit input_mute 2024-08-03 14:01:43 +02:00
958a4d1d99 afegides notificacions per als inputs externs al joc 2024-08-03 13:55:16 +02:00
256959505d afegides opcions per defecte per a les notificacions 2024-08-03 12:10:41 +02:00
770a4d5f96 afegida la classe Notify 2024-08-03 12:10:22 +02:00
d3a13af94f afegida estructura per a les notificacions 2024-08-03 12:09:57 +02:00
82cb28a13e afegida una segona funció SetPos a la classe Sprite que accepta SDL_Rect com a entrada 2024-08-03 12:09:25 +02:00
a1fb7500f0 afegida tecla de reset 2024-08-03 08:05:43 +02:00
9ad6001046 añadido a param.txt los parametros de los globos para velocidad y gravedad 2024-08-03 07:56:26 +02:00
8390dfd8be Merge branch 'main' of https://gitea.sustancia.synology.me/JailDesigner/coffee_crisis_arcade_edition 2024-07-31 14:11:59 +02:00
2abde3593b gràfics arreglats per als globos 2024-07-31 14:11:50 +02:00
60f8819331 fix: currentPower no estava inicialitzat i feia coses rares, entre elles petar
fix: corregit el tamany de la powerball
2024-07-30 18:29:46 +02:00
884cacbc2e tornem a deixar els fitxers balloon.png com estaven 2024-07-30 12:02:15 +02:00
f4484b24f1 afegida (altra volta) la classe Surface 2024-07-29 17:49:12 +02:00
7b7300fda5 afegida la classe EnemyFormations 2024-07-29 16:30:25 +02:00
af60e2e587 commit de merda pq no m'han deixat acabar 2024-07-29 14:06:22 +02:00
8d9d0eaaf3 modificada la classe balloon: eliminat el estat popping i dibuixat desde fitxers gif, pero no funciona el canvi de paleta 2024-07-28 18:08:40 +02:00
f1159f2bf3 canviat dos tipos de recursos en la classe Asset 2024-07-28 16:47:26 +02:00
7dbed9ab8e finalitzada la classe Explosions 2024-07-28 13:49:46 +02:00
59680ce7c0 afegida la classe Explosions 2024-07-28 12:46:26 +02:00
2948684ad3 eliminat el punter al renderer de 50.000 llocs 2024-07-28 10:45:14 +02:00
7501b4936f canviats els núvols per els del Volcano 2024-07-27 10:07:27 +02:00
fe361f455a refinaments estétics 2024-07-26 16:16:07 +02:00
0610389745 preliminar: afegit al marcador el mode game over 2024-07-26 12:18:36 +02:00
5e5d7f5f27 fix: al voler definir els botons dels mandos sense tindre cap mando conectat, petava tot 2024-07-26 11:58:03 +02:00
1632441c31 afegit el modo demo al marcador 2024-07-26 11:48:44 +02:00
9886f314b5 eliminats tots els #ifndef. Sembla que #pragma once ja funciona, no com fa quatre anys 😌 2024-07-26 10:45:29 +02:00
89cea1c93e Afegides paletes a la classe Text 2024-07-26 08:52:15 +02:00
98caefb085 nous grafics 2024-07-25 22:09:24 +02:00
18eab9fe0d fix: la inmunitat del jugador no funcionava 2024-07-25 18:13:34 +02:00
cff1df19c2 afegides paletes per al segon jugador 2024-07-25 14:13:02 +02:00
b29d9681f8 fix: en el mode demo, el segon jugador no tenia cafes
fix: al morir es quedava per ahi el foguet del powerup
2024-07-25 12:58:42 +02:00
466e572841 fix: corregido error al dibujar texturas desde gif. Faltaba activar el blendmode
añadidas mas paletas para el jugador1
cambiada la manera de representar la inmunidad para el jugador
2024-07-25 12:48:36 +02:00
1a00a08300 la classe Texture ja pot tindre un numero indefinit de paletes 😌 2024-07-25 10:13:20 +02:00
073dd2a904 la classe Texture ja suporta carregar gifs i paletes 2024-07-25 08:31:43 +02:00
0d72427ab4 afegit gif.c 2024-07-24 11:06:02 +02:00
92ff0d6663 afegit surface.h 2024-07-24 11:03:20 +02:00
92be07ad0c comencem a treballar amb gifs i paletes 2024-07-24 10:54:10 +02:00
74a7863a8f acabat el nou motor d'animacions 2024-07-23 22:35:50 +02:00
7ea77e5001 afegits els nous fitxers amb grafics i animacions 2024-07-23 20:31:50 +02:00
05b65abc6e començant a treballar en el nou motor d'animacions 2024-07-23 19:48:02 +02:00
ff4b21d06d millorada la funció de posar separadors de milers 2024-07-14 22:13:11 +02:00
fef9a4f9a0 afegit separador de milers a la tabla de puntuacions 2024-07-14 20:57:49 +02:00
6eef3ada55 Creada la classe ManageHiScoreTable 2024-07-13 17:57:15 +02:00
ebbe84da64 afegits els grafics nous per al jugador 2024-07-13 12:02:55 +02:00
eba20af28e fix: la bola que explota totes les boles dona punts a tots els jugadors... pero també donava als que no estaven jugant 2024-07-12 18:57:28 +02:00
2ca218c075 fix: no aparecían nunca diskitos 2024-07-12 18:48:51 +02:00
a4dc3d20e2 nuevos gráficos para los sprites de puntos de los items 2024-07-12 18:18:12 +02:00
6609021488 Retocada y vuelta a añadir la hierba al fondo 2024-07-12 15:37:33 +02:00
55638e2997 el modo demo ya funciona con las tres combinaciones de jugadores y con diferentes ficheros de demo 2024-07-12 13:02:22 +02:00
49d8232187 barallantme en els putos vectors 2024-07-12 09:21:14 +02:00
80bbe711a2 mil minimerdes arreglades 2024-07-11 20:52:04 +02:00
4c44fc0e1a fix: el teclado había dejado de funcionar 2024-07-11 17:53:22 +02:00
aef00b9d89 retocada la clase instructions para los nuevos gráficos 2024-07-09 18:18:42 +02:00
ab27915dac Actualizados los gráficos de los items 2024-07-09 17:11:13 +02:00
fde5578ea9 modificada la cadencia del texto D E M O 2024-07-09 10:13:48 +02:00
2177ad9870 añadidos fade-ins a las secciones 2024-07-09 10:05:09 +02:00
5511160836 fade-in implementado en la calse fade
repaso general a toda la clase fade
2024-07-09 09:15:02 +02:00
69ad8fbfff Grabar partida para cambiar la clase fade de textura a surface 2024-07-08 14:06:41 +02:00
d07fa46cb7 el modo demo ya termina con un fundido 2024-07-08 13:33:59 +02:00
38272db851 fix: coger una segunda máquina de café mientras se tenía ya una no hacía nada 2024-07-08 12:44:47 +02:00
f9a6478a4b fix: el contador de demo estaba activo durante el juego y lo finalizaba 2024-07-08 12:39:31 +02:00
7f8aba12fc añadido recalculateAnchors a la clase scoreboard 2024-07-08 12:28:20 +02:00
e85d3c2494 El juego ya no se cierra al terminar de definir los botones 2024-07-08 11:59:56 +02:00
dfc14da179 fix: la clase title no hacía fade al pasar al modo demo 2024-07-07 22:48:00 +02:00
caca21cba5 Ya se guardan las asignaciones de los botones en el fichero de configuración 2024-07-07 19:22:36 +02:00
38dc63ef02 PER FI JA MAPEJA BE ELS BOTONS AL REDEFINIRLOS! 2024-07-07 14:53:26 +02:00
ceafe931f1 guardar partida pq ja estic fent canvis a cegues a vore si trac açò 2024-07-07 14:38:46 +02:00
3ee04f7e1c Ya se pueden definir los botones para cada jugador. Falta guardarlos en el fichero de configuración 2024-07-07 11:02:49 +02:00
9a91e6b6ec fix: desbordamiento de indice en el vector de gamecontrollers en la clase input 2024-07-07 10:13:49 +02:00
9f91b5cf18 actualizado gamecontrollerdb.txt 2024-07-07 09:51:13 +02:00
c8cd375d81 empezando a trabajar en la clase DefineButtons 2024-07-06 13:25:15 +02:00
78a689760d cambios en el fichero de configuración para hacer más facil la selección de modos de video y filtros 2024-07-06 00:19:28 +02:00
abb0151560 Actualizado Makefile 2024-07-05 23:57:43 +02:00
b770bdb7d1 creado define para compilar sin shaders 2024-07-05 23:57:26 +02:00
d36f3539cc El modo demo ya no se pausa al perder el foco 2024-07-05 23:51:43 +02:00
3119e02d2c el reloj en el modo demo ya no detiene la musica 2024-07-05 23:43:47 +02:00
10ec681bb7 en el modo demo el jugador empieza con un numero aleatorio de cafes 2024-07-05 23:40:56 +02:00
cd70336051 Actualizado todo.txt 2024-07-05 23:23:08 +02:00
fa649207bd Actualizado Makefile 2024-07-05 23:20:58 +02:00
2764ff2e93 deshabilitados los sonidos en el modo demo 2024-07-05 23:20:19 +02:00
ad170e8e0e Ahora aparecen objetos en el modo demo 2024-07-05 22:57:00 +02:00
c58f2213d5 fix: en el modo demo solo se creaban balas rectas hacia arriba 2024-07-05 22:51:10 +02:00
ebfa2433de ahora se puede elegir el modo de la clase tiledbg
añadido modo estático a la clase tiledbg
2024-07-05 22:44:54 +02:00
f73eab7a77 Arreglado el modo demo
Grabada una nueva demo
2024-07-05 20:40:08 +02:00
dc09c189e9 El juego ya empieza con el jugador que ha pulsado el botón 2024-07-05 16:59:14 +02:00
a734c01dc5 Modificado checkAnyButtonPressed para que devuelva el índice del dispositivo que ha pulsado un botón 2024-07-05 14:34:55 +02:00
c3c33135a7 Añadida la función checkAnyButtonPressed a la clase input 2024-07-05 14:25:24 +02:00
62f3c42e7b El responsable de comprobar si se ha pulsado alguna tecla para cambiar el tamaño de la venta, el modo de pantalla completa o la activación de los shaders pasa a ser la clase screen 2024-07-05 14:09:38 +02:00
5e7212dfaa Rediseñada y optimizada la clase Instructions 2024-07-05 11:34:55 +02:00
2b628d2d61 La música la tiene ahora la clase Director 2024-07-05 07:20:20 +02:00
8051cbbc39 Añadido define VERBOSE 2024-07-03 12:45:12 +02:00
7f21f76d3c Actualizado Makefile 2024-07-03 12:30:04 +02:00
ebef3a9d46 Añadidos mas defines para raspberry pi 2024-07-01 09:34:04 +02:00
8b213ba2df Actualizado Makefile 2024-07-01 09:32:17 +02:00
aafa3d5646 fix: defines per a compilar en raspberry pi 2024-07-01 09:22:41 +02:00
b05e1c6025 Añadidos defines para compilar en raspberry pi 2024-07-01 09:11:13 +02:00
59671d6e55 En el titulo no se podia empezar a jugar si no era con mando 2024-06-30 23:01:55 +02:00
4e9135c1af FADE_RANDOM_SQUARE no limpiaba la textura previamente
centrada la tabla de la clase hiscore_table
2024-06-30 22:31:48 +02:00
354795d52c Añadido FADE_VENETIAN a la clase fade
La clase game utiliza un objeto fade para sus fades en vez de sus propios procedimientos
2024-06-30 21:18:12 +02:00
0d8207013c Eliminados metodos y variables sobrantes de la clase player 2024-06-30 20:10:10 +02:00
eb3cba879a Retocados los parametros del shader 2024-06-30 18:27:02 +02:00
61c4884dfe El jugador ya reaparece en su posición original 2024-06-30 18:05:11 +02:00
8817899b12 Modificado el texto del titulo 2024-06-30 15:35:36 +02:00
b278941918 Se puede saltar la animación del titulo y empezar a jugar directamente 2024-06-30 15:32:39 +02:00
8340bdfe32 Añadido efecto de atenuación a la clase screen
Al pausar el juego se atenua la pantalla
2024-06-30 15:27:06 +02:00
addc8241ab Eliminado el menu de pausa
Eliminado el menu de game over
Eliminado el menu de seleccionar jugador
Se puede poner pausa y salir del juego desde ambos mandos
2024-06-30 15:08:25 +02:00
1754cfb93a Mapeados los jugadores a los dos mandos 2024-06-30 14:07:07 +02:00
097320cff7 Asignada tecla F4 para activar/desactivar los shaders 2024-06-30 09:48:49 +02:00
12711d38f0 Renombradas las variables de opciones
Actualizado el fichero de configuración
2024-06-30 09:35:31 +02:00
50b445ad3f Actualizado makefile 2024-06-30 09:00:10 +02:00
b800ab2073 Primera implementación funcional de shaders 2024-06-30 08:14:30 +02:00
85a24e0100 Cambiada la lógica para el carrusel de secciones del modo demo 2024-06-28 11:52:18 +02:00
2650a64c80 Modificado el fondo de hiscore_table 2024-06-27 13:24:18 +02:00
6a0ee4f811 Actualizados los gráficos del título 2024-06-26 22:05:36 +02:00
9065dd1b94 Modificado el parser para leer archivos de texto 2024-06-26 13:35:28 +02:00
c8d1e79e1d Corregido bug en el FADE_RANDOM_SQUARE al acceder a elementos fuera del vector 2024-06-24 09:43:27 +02:00
895955f122 Añadido delay final al fade 2024-06-24 08:16:27 +02:00
5b8ea728ca Los parametros del juego ya se pueden cargar desde un fichero de texto. Falta empezar a sacar parametros hard-coded a ese fichero 2024-06-20 13:09:00 +02:00
1be38191bb Añadido FADE_RANDOM_SQUARE a la clase Fade 2024-06-20 08:25:32 +02:00
8f6b5cefa8 Actualizado el FADE_FULLSCREEN de la clase fade 2024-06-19 08:19:14 +02:00
d38659d783 Commit de no se lo que estava fent pero me'n vaig a casa 2024-06-18 14:03:03 +02:00
022e44cfeb Añadido puntero a la estructura param en las clases necesarias 2024-06-18 08:58:28 +02:00
c98f0fc3d9 Merge branch 'main' of https://gitea.sustancia.synology.me/JailDesigner/coffee_crisis_arcade_edition 2024-06-18 07:21:58 +02:00
cb3eb7855e Añadiendo la estructura param 2024-06-18 07:21:46 +02:00
615 changed files with 160701 additions and 60893 deletions

22
.clang-format Normal file
View File

@@ -0,0 +1,22 @@
BasedOnStyle: Google
IndentWidth: 4
NamespaceIndentation: All
IndentAccessModifiers: false
ColumnLimit: 0 # Sin límite de longitud de línea
BreakBeforeBraces: Attach # Llaves en la misma línea
AllowShortIfStatementsOnASingleLine: true
AllowShortBlocksOnASingleLine: true
AllowShortFunctionsOnASingleLine: All
AlignOperands: DontAlign
AlignAfterOpenBracket: DontAlign
BinPackArguments: false
BinPackParameters: false
ContinuationIndentWidth: 4
ConstructorInitializerIndentWidth: 4
IndentWrappedFunctionNames: false
Cpp11BracedListStyle: true
BreakConstructorInitializers: BeforeColon
AllowAllConstructorInitializersOnNextLine: false
PackConstructorInitializers: Never
AllowAllArgumentsOnNextLine: false
AllowAllParametersOfDeclarationOnNextLine: false

83
.clang-tidy Normal file
View File

@@ -0,0 +1,83 @@
Checks: >
readability-*,
modernize-*,
performance-*,
bugprone-unchecked-optional-access,
bugprone-sizeof-expression,
bugprone-suspicious-missing-comma,
bugprone-suspicious-index,
bugprone-undefined-memory-manipulation,
bugprone-use-after-move,
bugprone-out-of-bound-access,
-readability-identifier-length,
-readability-magic-numbers,
-bugprone-narrowing-conversions,
-performance-enum-size,
-performance-inefficient-string-concatenation,
-bugprone-integer-division,
-bugprone-easily-swappable-parameters,
WarningsAsErrors: '*'
# Solo incluir archivos de tu código fuente
HeaderFilterRegex: '^source/(sections|ui)/.*'
FormatStyle: file
CheckOptions:
# Variables locales en snake_case
- { key: readability-identifier-naming.VariableCase, value: lower_case }
# Miembros privados en snake_case con sufijo _
- { key: readability-identifier-naming.PrivateMemberCase, value: lower_case }
- { key: readability-identifier-naming.PrivateMemberSuffix, value: _ }
# Miembros protegidos en snake_case con sufijo _
- { key: readability-identifier-naming.ProtectedMemberCase, value: lower_case }
- { key: readability-identifier-naming.ProtectedMemberSuffix, value: _ }
# Miembros públicos en snake_case (sin sufijo)
- { key: readability-identifier-naming.PublicMemberCase, value: lower_case }
# Namespaces en CamelCase
- { key: readability-identifier-naming.NamespaceCase, value: CamelCase }
# Variables estáticas privadas como miembros privados
- { key: readability-identifier-naming.StaticVariableCase, value: lower_case }
- { key: readability-identifier-naming.StaticVariableSuffix, value: _ }
# Constantes estáticas sin sufijo
- { key: readability-identifier-naming.StaticConstantCase, value: UPPER_CASE }
# Constantes globales en UPPER_CASE
- { key: readability-identifier-naming.GlobalConstantCase, value: UPPER_CASE }
# Variables constexpr globales en UPPER_CASE
- { key: readability-identifier-naming.ConstexprVariableCase, value: UPPER_CASE }
# Constantes locales en UPPER_CASE
- { key: readability-identifier-naming.LocalConstantCase, value: UPPER_CASE }
# Constexpr miembros en UPPER_CASE (sin sufijo)
- { key: readability-identifier-naming.ConstexprMemberCase, value: UPPER_CASE }
# Constexpr miembros privados/protegidos con sufijo _
- { key: readability-identifier-naming.ConstexprMethodCase, value: UPPER_CASE }
# Clases, structs y enums en CamelCase
- { key: readability-identifier-naming.ClassCase, value: CamelCase }
- { key: readability-identifier-naming.StructCase, value: CamelCase }
- { key: readability-identifier-naming.EnumCase, value: CamelCase }
# Valores de enums en UPPER_CASE
- { key: readability-identifier-naming.EnumConstantCase, value: UPPER_CASE }
# Métodos en camelBack (sin sufijos)
- { key: readability-identifier-naming.MethodCase, value: camelBack }
- { key: readability-identifier-naming.PrivateMethodCase, value: camelBack }
- { key: readability-identifier-naming.ProtectedMethodCase, value: camelBack }
- { key: readability-identifier-naming.PublicMethodCase, value: camelBack }
# Funciones en camelBack
- { key: readability-identifier-naming.FunctionCase, value: camelBack }
# Parámetros en lower_case
- { key: readability-identifier-naming.ParameterCase, value: lower_case }

15
.gitignore vendored
View File

@@ -1,4 +1,6 @@
.vscode
.vscode/
.claude/
.cache/
build/
data/config/config.txt
*.DS_Store
@@ -10,7 +12,16 @@ thumbs.db
*.tar.gz
*.zip
*.app
*.dll
*config.bin
*score.bin
coffee_crisis*
debug.txt
cppcheck-result*
desktop.ini
dist/
release/windows/coffee.res
resources.pack
# Herramienta pack_resources (todas las plataformas)
tools/pack_resources/pack_resources
tools/pack_resources/pack_resources.exe

271
CMakeLists.txt Normal file
View File

@@ -0,0 +1,271 @@
# CMakeLists.txt
cmake_minimum_required(VERSION 3.10)
project(coffee_crisis_arcade_edition VERSION 2.00)
# Establecer estándar de C++
set(CMAKE_CXX_STANDARD 20)
set(CMAKE_CXX_STANDARD_REQUIRED True)
set(CMAKE_EXPORT_COMPILE_COMMANDS ON)
# --- GENERACIÓN DE VERSIÓN AUTOMÁTICA ---
find_package(Git QUIET)
if(GIT_FOUND)
execute_process(
COMMAND ${GIT_EXECUTABLE} rev-parse --short=7 HEAD
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
OUTPUT_VARIABLE GIT_HASH
OUTPUT_STRIP_TRAILING_WHITESPACE
ERROR_QUIET
)
else()
set(GIT_HASH "unknown")
endif()
# Configurar archivo de versión
configure_file(${CMAKE_SOURCE_DIR}/source/version.h.in ${CMAKE_BINARY_DIR}/version.h @ONLY)
# --- 1. LISTA EXPLÍCITA DE FUENTES ---
set(APP_SOURCES
# --- Archivos Principales del Sistema ---
source/asset.cpp
source/audio.cpp
source/director.cpp
source/global_events.cpp
source/global_inputs.cpp
source/input.cpp
source/lang.cpp
source/main.cpp
source/param.cpp
source/resource.cpp
source/resource_helper.cpp
source/resource_loader.cpp
source/resource_pack.cpp
source/screen.cpp
source/text.cpp
source/writer.cpp
# --- UI (User Interface) ---
source/ui/menu_option.cpp
source/ui/menu_renderer.cpp
source/ui/notifier.cpp
source/ui/service_menu.cpp
source/ui/ui_message.cpp
source/ui/window_message.cpp
# --- Lógica del Juego ---
source/balloon_formations.cpp
source/balloon_manager.cpp
source/balloon.cpp
source/bullet.cpp
source/bullet_manager.cpp
source/enter_name.cpp
source/explosions.cpp
source/game_logo.cpp
source/item.cpp
source/manage_hiscore_table.cpp
source/player.cpp
source/scoreboard.cpp
source/tabe.cpp
# --- Escenas ---
source/sections/credits.cpp
source/sections/game.cpp
source/sections/hiscore_table.cpp
source/sections/instructions.cpp
source/sections/intro.cpp
source/sections/logo.cpp
source/sections/title.cpp
# --- Sprites y Gráficos ---
source/animated_sprite.cpp
source/background.cpp
source/fade.cpp
source/moving_sprite.cpp
source/path_sprite.cpp
source/smart_sprite.cpp
source/sprite.cpp
source/texture.cpp
source/tiled_bg.cpp
# --- Otros ---
source/color.cpp
source/demo.cpp
source/define_buttons.cpp
source/difficulty.cpp
source/input_types.cpp
source/mouse.cpp
source/options.cpp
source/shutdown.cpp
source/stage.cpp
source/system_utils.cpp
source/utils.cpp
)
# Fuentes de librerías de terceros
set(EXTERNAL_SOURCES
source/external/jail_audio.cpp
source/external/json.hpp
source/external/gif.cpp
)
# Fuentes del sistema de renderizado
set(RENDERING_SOURCES
source/rendering/sdl3gpu/sdl3gpu_shader.cpp
)
# Configuración de SDL3
find_package(SDL3 REQUIRED CONFIG REQUIRED COMPONENTS SDL3)
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(SHADER_VERT_SRC "${CMAKE_SOURCE_DIR}/data/shaders/postfx.vert")
set(SHADER_FRAG_SRC "${CMAKE_SOURCE_DIR}/data/shaders/postfx.frag")
set(SHADER_VERT_H "${CMAKE_SOURCE_DIR}/source/rendering/sdl3gpu/postfx_vert_spv.h")
set(SHADER_FRAG_H "${CMAKE_SOURCE_DIR}/source/rendering/sdl3gpu/postfx_frag_spv.h")
if(GLSLC_EXE)
add_custom_command(
OUTPUT "${SHADER_VERT_H}" "${SHADER_FRAG_H}"
COMMAND "${CMAKE_SOURCE_DIR}/tools/shaders/compile_spirv.sh"
DEPENDS "${SHADER_VERT_SRC}" "${SHADER_FRAG_SRC}"
WORKING_DIRECTORY "${CMAKE_SOURCE_DIR}"
COMMENT "Compilando shaders SPIR-V..."
)
add_custom_target(shaders DEPENDS "${SHADER_VERT_H}" "${SHADER_FRAG_H}")
message(STATUS "glslc encontrado: shaders se compilarán automáticamente")
else()
if(NOT EXISTS "${SHADER_VERT_H}" OR NOT EXISTS "${SHADER_FRAG_H}")
message(FATAL_ERROR
"glslc no encontrado y headers SPIR-V no existen.\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"
)
else()
message(STATUS "glslc no encontrado - usando headers SPIR-V precompilados")
endif()
endif()
else()
message(STATUS "macOS: shaders SPIR-V omitidos (usa Metal)")
endif()
# --- 2. AÑADIR EJECUTABLE ---
add_executable(${PROJECT_NAME} ${APP_SOURCES} ${EXTERNAL_SOURCES} ${RENDERING_SOURCES})
if(NOT APPLE AND GLSLC_EXE)
add_dependencies(${PROJECT_NAME} shaders)
endif()
# --- 3. DIRECTORIOS DE INCLUSIÓN ---
target_include_directories(${PROJECT_NAME} PUBLIC
"${CMAKE_SOURCE_DIR}/source"
"${CMAKE_SOURCE_DIR}/source/external"
"${CMAKE_SOURCE_DIR}/source/rendering"
"${CMAKE_SOURCE_DIR}/source/rendering/sdl3gpu"
"${CMAKE_BINARY_DIR}"
)
# Enlazar la librería SDL3
target_link_libraries(${PROJECT_NAME} PRIVATE SDL3::SDL3)
# --- 4. CONFIGURACIÓN PLATAFORMAS Y COMPILADOR ---
# Configuración de flags de compilación
target_compile_options(${PROJECT_NAME} PRIVATE -Wall)
target_compile_options(${PROJECT_NAME} PRIVATE $<$<CONFIG:RELEASE>:-Os -ffunction-sections -fdata-sections>)
# Definir _DEBUG en modo Debug
target_compile_definitions(${PROJECT_NAME} PRIVATE $<$<CONFIG:DEBUG>:_DEBUG>)
# Descomentar la siguiente línea para activar el modo grabación de demos
# target_compile_definitions(${PROJECT_NAME} PRIVATE RECORDING)
# Configuración específica para cada plataforma
if(WIN32)
target_compile_definitions(${PROJECT_NAME} PRIVATE WINDOWS_BUILD)
target_link_libraries(${PROJECT_NAME} PRIVATE ws2_32 mingw32)
elseif(APPLE)
target_compile_definitions(${PROJECT_NAME} PRIVATE MACOS_BUILD)
set(CMAKE_OSX_ARCHITECTURES "arm64")
elseif(UNIX AND NOT APPLE)
target_compile_definitions(${PROJECT_NAME} PRIVATE LINUX_BUILD)
endif()
# Especificar la ubicación del ejecutable
set_target_properties(${PROJECT_NAME} PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_SOURCE_DIR})
# --- 5. STATIC ANALYSIS TARGETS ---
find_program(CLANG_TIDY_EXE NAMES clang-tidy)
find_program(CLANG_FORMAT_EXE NAMES clang-format)
# Recopilar todos los archivos fuente, excluyendo external/
file(GLOB_RECURSE ALL_SOURCE_FILES
"${CMAKE_SOURCE_DIR}/source/*.cpp"
"${CMAKE_SOURCE_DIR}/source/*.hpp"
"${CMAKE_SOURCE_DIR}/source/*.h"
)
list(FILTER ALL_SOURCE_FILES EXCLUDE REGEX ".*/external/.*")
# Targets de clang-tidy
if(CLANG_TIDY_EXE)
# En macOS con clang-tidy de Homebrew LLVM, es necesario pasar el sysroot
# explícitamente para que encuentre los headers del sistema (string, memory, etc.)
if(APPLE)
execute_process(
COMMAND xcrun --show-sdk-path
OUTPUT_VARIABLE MACOS_SDK_PATH
OUTPUT_STRIP_TRAILING_WHITESPACE
)
set(TIDY_EXTRA_ARGS --extra-arg=-isysroot --extra-arg=${MACOS_SDK_PATH})
endif()
add_custom_target(tidy
COMMAND ${CLANG_TIDY_EXE}
-p ${CMAKE_BINARY_DIR}
${TIDY_EXTRA_ARGS}
${ALL_SOURCE_FILES}
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
COMMENT "Running clang-tidy..."
)
add_custom_target(tidy-fix
COMMAND ${CLANG_TIDY_EXE}
-p ${CMAKE_BINARY_DIR}
--fix
${TIDY_EXTRA_ARGS}
${ALL_SOURCE_FILES}
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()

22
LICENSE
View File

@@ -1 +1,21 @@
GNU General Public License v3.0 only
Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License
Copyright (c) 2025 Coffee Crisis Arcade Edition
This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.
You are free to:
- Share — copy and redistribute the material in any medium or format
- Adapt — remix, transform, and build upon the material
Under the following terms:
- Attribution — You must give appropriate credit, provide a link to the license, and indicate if changes were made. You may do so in any reasonable manner, but not in any way that suggests the licensor endorses you or your use.
- NonCommercial — You may not use the material for commercial purposes.
- ShareAlike — If you remix, transform, or build upon the material, you must distribute your contributions under the same license as the original.
No additional restrictions — You may not apply legal terms or technological measures that legally restrict others from doing anything the license permits.
To view a copy of this license, visit:
https://creativecommons.org/licenses/by-nc-sa/4.0/
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

614
Makefile
View File

@@ -1,241 +1,525 @@
# Directorios
DIR_ROOT := $(dir $(abspath $(MAKEFILE_LIST)))
DIR_SOURCES:= $(addsuffix /, $(DIR_ROOT)source)
DIR_BIN := $(addsuffix /, $(DIR_ROOT))
DIR_BUILD := $(addsuffix /, $(DIR_ROOT)build)
DIR_ROOT := $(dir $(abspath $(MAKEFILE_LIST)))
DIR_SOURCES := $(addsuffix /, $(DIR_ROOT)source)
DIR_BIN := $(addsuffix /, $(DIR_ROOT))
DIR_BUILD := $(addsuffix /, $(DIR_ROOT)build)
DIR_TOOLS := $(addsuffix /, $(DIR_ROOT)tools)
# Variables
TARGET_NAME := coffee_crisis_arcade_edition
TARGET_FILE := $(DIR_BIN)$(TARGET_NAME)
APP_NAME := Coffee Crisis Arcade Edition
RELEASE_FOLDER:= ccae_release
RELEASE_FILE := $(RELEASE_FOLDER)/$(TARGET_NAME)
VERSION := v0.01
TARGET_NAME := coffee_crisis_arcade_edition
TARGET_FILE := $(DIR_BIN)$(TARGET_NAME)
APP_NAME := Coffee Crisis Arcade Edition
DIST_DIR := dist
RELEASE_FOLDER := dist/_tmp
RELEASE_FILE := $(RELEASE_FOLDER)/$(TARGET_NAME)
RESOURCE_FILE := release/windows/coffee.res
# Variables para herramienta de empaquetado
ifeq ($(OS),Windows_NT)
PACK_TOOL := $(DIR_TOOLS)pack_resources/pack_resources.exe
PACK_CXX := $(CXX)
else
PACK_TOOL := $(DIR_TOOLS)pack_resources/pack_resources
PACK_CXX := $(CXX)
endif
PACK_SOURCES := $(DIR_TOOLS)pack_resources/pack_resources.cpp $(DIR_SOURCES)resource_pack.cpp
PACK_INCLUDES := -I$(DIR_ROOT) -I$(DIR_BUILD)
# Versión automática basada en la fecha actual (específica por SO)
ifeq ($(OS),Windows_NT)
VERSION := $(shell powershell -Command "Get-Date -Format 'yyyy-MM-dd'")
else
VERSION := $(shell date +%Y-%m-%d)
endif
# Variables específicas para Windows (usando APP_NAME)
ifeq ($(OS),Windows_NT)
WIN_TARGET_FILE := $(DIR_BIN)$(APP_NAME)
WIN_RELEASE_FILE := $(RELEASE_FOLDER)/$(APP_NAME)
else
WIN_TARGET_FILE := $(TARGET_FILE)
WIN_RELEASE_FILE := $(RELEASE_FILE)
endif
# Nombres para los ficheros de lanzamiento
WINDOWS_RELEASE := $(TARGET_FILE)-$(VERSION)-win32-x64.zip
MACOS_INTEL_RELEASE := $(TARGET_FILE)-$(VERSION)-macos-intel.dmg
MACOS_APPLE_SILICON_RELEASE:= $(TARGET_FILE)-$(VERSION)-macos-apple-silicon.dmg
LINUX_RELEASE := $(TARGET_FILE)-$(VERSION)-linux.tar.gz
WINDOWS_RELEASE := $(DIST_DIR)/$(TARGET_NAME)-$(VERSION)-win32-x64.zip
MACOS_INTEL_RELEASE := $(DIST_DIR)/$(TARGET_NAME)-$(VERSION)-macos-intel.dmg
MACOS_APPLE_SILICON_RELEASE := $(DIST_DIR)/$(TARGET_NAME)-$(VERSION)-macos-apple-silicon.dmg
LINUX_RELEASE := $(DIST_DIR)/$(TARGET_NAME)-$(VERSION)-linux.tar.gz
RASPI_RELEASE := $(DIST_DIR)/$(TARGET_NAME)-$(VERSION)-raspberry.tar.gz
# Lista completa de archivos fuente (basada en CMakeLists.txt)
APP_SOURCES := \
source/asset.cpp \
source/audio.cpp \
source/director.cpp \
source/global_events.cpp \
source/global_inputs.cpp \
source/input.cpp \
source/lang.cpp \
source/main.cpp \
source/param.cpp \
source/resource.cpp \
source/resource_helper.cpp \
source/resource_loader.cpp \
source/resource_pack.cpp \
source/screen.cpp \
source/text.cpp \
source/writer.cpp \
source/ui/menu_option.cpp \
source/ui/menu_renderer.cpp \
source/ui/notifier.cpp \
source/ui/service_menu.cpp \
source/ui/ui_message.cpp \
source/ui/window_message.cpp \
source/balloon_formations.cpp \
source/balloon_manager.cpp \
source/balloon.cpp \
source/bullet.cpp \
source/bullet_manager.cpp \
source/enter_name.cpp \
source/explosions.cpp \
source/game_logo.cpp \
source/item.cpp \
source/manage_hiscore_table.cpp \
source/player.cpp \
source/scoreboard.cpp \
source/tabe.cpp \
source/sections/credits.cpp \
source/sections/game.cpp \
source/sections/hiscore_table.cpp \
source/sections/instructions.cpp \
source/sections/intro.cpp \
source/sections/logo.cpp \
source/sections/title.cpp \
source/animated_sprite.cpp \
source/background.cpp \
source/fade.cpp \
source/moving_sprite.cpp \
source/path_sprite.cpp \
source/smart_sprite.cpp \
source/sprite.cpp \
source/texture.cpp \
source/tiled_bg.cpp \
source/color.cpp \
source/demo.cpp \
source/define_buttons.cpp \
source/difficulty.cpp \
source/input_types.cpp \
source/mouse.cpp \
source/options.cpp \
source/shutdown.cpp \
source/stage.cpp \
source/system_utils.cpp \
source/utils.cpp \
source/external/jail_audio.cpp \
source/external/gif.cpp \
source/rendering/sdl3gpu/sdl3gpu_shader.cpp
# Includes
INCLUDES:= -I$(DIR_SOURCES)
INCLUDES := -Isource -Isource/external -Isource/rendering -Isource/rendering/sdl3gpu -I$(DIR_BUILD)
# Variables según el sistema operativo
ifeq ($(OS),Windows_NT)
SOURCES := source/*.cpp source/common/*.cpp
CXXFLAGS:= -std=c++11 -Wall -Os -ffunction-sections -fdata-sections -Wl,--gc-sections -static-libstdc++ -Wl,-subsystem,windows
LDFLAGS := -lmingw32 -lws2_32 -lSDL2main -lSDL2
RM:= rmdir /Q /S
MKD:=
FixPath = $(subst /,\\,$1)
CXXFLAGS := -std=c++20 -Wall -Os -ffunction-sections -fdata-sections -Wl,--gc-sections -static-libstdc++ -static-libgcc -Wl,-Bstatic -lpthread -Wl,-Bdynamic -Wl,-subsystem,windows -DWINDOWS_BUILD
CXXFLAGS_DEBUG := -std=c++20 -Wall -g -D_DEBUG -DWINDOWS_BUILD
LDFLAGS := -lmingw32 -lws2_32 -lSDL3
RM := del /Q
MKDIR := mkdir
else
SOURCES := $(shell find $(DIR_SOURCES) -name '*.cpp')
CXXFLAGS:= -std=c++11 -Wall -Os -ffunction-sections -fdata-sections
LDFLAGS := -lSDL2
RM:= rm -rdf
MKD:= mkdir -p
FixPath = $1
CXXFLAGS := -std=c++20 -Wall -Os -ffunction-sections -fdata-sections
CXXFLAGS_DEBUG := -std=c++20 -Wall -g -D_DEBUG
LDFLAGS := -lSDL3
RMFILE := rm -f
RMDIR := rm -rdf
MKDIR := mkdir -p
UNAME_S := $(shell uname -s)
ifeq ($(UNAME_S),Linux)
CXXFLAGS += -DLINUX_BUILD
endif
ifeq ($(UNAME_S),Darwin)
CXXFLAGS += -DMACOS_BUILD
CXXFLAGS_DEBUG += -DMACOS_BUILD
# Configurar arquitectura (por defecto arm64, como en CMake)
CXXFLAGS += -arch arm64
CXXFLAGS_DEBUG += -arch arm64
endif
endif
OBJECTS := $(subst $(DIR_SOURCES), $(DIR_BUILD), $(SOURCES))
OBJECTS := $(OBJECTS:.cpp=.o)
DEPENDENCIES:= $(OBJECTS:.o=.d)
# Reglas para herramienta de empaquetado y resources.pack
$(PACK_TOOL): FORCE
@echo "Compilando herramienta de empaquetado..."
$(PACK_CXX) -std=c++20 -Wall -Os $(PACK_INCLUDES) $(PACK_SOURCES) -o $(PACK_TOOL)
@echo "✓ Herramienta de empaquetado lista: $(PACK_TOOL)"
pack_tool: $(PACK_TOOL)
###############################################################################
# #
# RULES #
# #
###############################################################################
.PHONY: all a1
all: a1
a1: $(TARGET_FILE)
$(TARGET_FILE): $(OBJECTS)
mkdir -p $(@D)
$(CXX) $(OBJECTS) $(LDFLAGS) -o $(TARGET_FILE)
$(DIR_BUILD)%.o: $(DIR_SOURCES)%.cpp
mkdir -p $(@D)
$(CXX) -c $< $(CXXFLAGS) $(INCLUDES) -o $@
-include $(DEPENDENCIES)
###############################################################################
# #
# CLEAN #
# #
###############################################################################
.PHONY: clean
clean:
$(RM) $(DIR_BUILD)
###############################################################################
# #
# PRINT-VARIABLES #
# #
###############################################################################
.PHONY: print-variables
print-variables:
@echo MAKEFILE_LIST: $(MAKEFILE_LIST)
@echo "DIR_ROOT :" $(DIR_ROOT)
@echo "DIR_SOURCES:" $(DIR_SOURCES)
@echo "DIR_BIN :" $(DIR_BIN)
@echo "DIR_BUILD :" $(DIR_BUILD)
@echo "DIR_IMGUI :" $(DIR_IMGUI)
@echo "DIR_IMGUI_SFML:" $(DIR_IMGUI_SFML)
@echo "INCLUDES :" $(INCLUDES)
@echo CXX: $(CXX)
@echo CXXFLAGS: $(CXXFLAGS)
@echo LDFLAGS: $(LDFLAGS)
@echo SOURCES: $(SOURCES)
@echo OBJECTS: $(OBJECTS)
@echo DEPENDENCIES: $(DEPENDENCIES)
@echo TARGET_NAME: $(TARGET_NAME)
@echo TARGET_FILE: $(TARGET_FILE)
@echo RM: $(RM)
.PHONY: peiv
peiv:
if not exist peiv mkdir $(subst /,\,peiv)
if exist peiv rmdir /Q /S peiv
resources.pack: $(PACK_TOOL)
@echo "Generando resources.pack desde directorio data/..."
$(PACK_TOOL) data resources.pack
@echo "✓ resources.pack generado exitosamente"
# Reglas para compilación
windows:
@echo off
$(CXX) $(SOURCES) $(CXXFLAGS) $(LDFLAGS) -o "$(TARGET_FILE).exe"
strip -s -R .comment -R .gnu.version "$(TARGET_FILE).exe" --strip-unneeded
@echo Compilando para Windows con nombre: "$(APP_NAME).exe"
windres release/windows/coffee.rc -O coff -o $(RESOURCE_FILE)
$(CXX) $(APP_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_rec:
@echo off
@echo Compilando version de grabacion para Windows: "$(APP_NAME)_rec.exe"
$(CXX) $(APP_SOURCES) $(INCLUDES) -DRECORDING $(CXXFLAGS) $(LDFLAGS) -o "$(WIN_TARGET_FILE)_rec.exe"
windows_debug:
@echo off
$(CXX) $(SOURCES) -D DEBUG $(CXXFLAGS) $(LDFLAGS) -o "$(TARGET_FILE)_debug.exe"
strip -s -R .comment -R .gnu.version "$(TARGET_FILE)_debug.exe" --strip-unneeded
@echo Compilando version debug para Windows: "$(APP_NAME)_debug.exe"
$(CXX) $(APP_SOURCES) $(INCLUDES) -DDEBUG -DVERBOSE $(CXXFLAGS_DEBUG) $(LDFLAGS) -o "$(WIN_TARGET_FILE)_debug.exe"
windows_release:
@$(MAKE) pack_tool
@$(MAKE) resources.pack
@echo off
@echo Creando release para Windows - Version: $(VERSION)
# Crea carpeta temporal 'RELEASE_FOLDER'
# Crea carpeta de distribución y carpeta temporal 'RELEASE_FOLDER'
powershell if (-not (Test-Path "$(DIST_DIR)")) {New-Item "$(DIST_DIR)" -ItemType Directory}
powershell if (Test-Path "$(RELEASE_FOLDER)") {Remove-Item "$(RELEASE_FOLDER)" -Recurse -Force}
powershell if (-not (Test-Path "$(RELEASE_FOLDER)")) {New-Item "$(RELEASE_FOLDER)" -ItemType Directory}
# Copia la carpeta 'data'
powershell Copy-Item -Path "data" -Destination "$(RELEASE_FOLDER)" -recurse -Force
# Copia la carpeta 'config' y el archivo 'resources.pack'
powershell Copy-Item -Path "config" -Destination "$(RELEASE_FOLDER)" -recurse -Force
powershell Copy-Item -Path "resources.pack" -Destination "$(RELEASE_FOLDER)"
# Copia los ficheros que estan en la raíz del proyecto
powershell Copy-Item "LICENSE" -Destination "$(RELEASE_FOLDER)"
powershell Copy-Item "README.md" -Destination "$(RELEASE_FOLDER)"
powershell Copy-Item "release\*.dll" -Destination "$(RELEASE_FOLDER)"
powershell Copy-Item "release\windows\dll\*.dll" -Destination "$(RELEASE_FOLDER)"
# Compila
$(CXX) $(SOURCES) $(CXXFLAGS) $(LDFLAGS) -o "$(RELEASE_FILE).exe"
strip -s -R .comment -R .gnu.version "$(RELEASE_FOLDER)/$(TARGET_FILE).exe" --strip-unneeded
windres release/windows/coffee.rc -O coff -o $(RESOURCE_FILE)
$(CXX) $(APP_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
# Crea el fichero .zip
powershell if (Test-Path $(WINDOWS_RELEASE)) {Remove-Item $(WINDOWS_RELEASE)}
powershell Compress-Archive -Path "$(RELEASE_FOLDER)"/* -DestinationPath $(WINDOWS_RELEASE)
powershell if (Test-Path "$(WINDOWS_RELEASE)") {Remove-Item "$(WINDOWS_RELEASE)"}
powershell Compress-Archive -Path "$(RELEASE_FOLDER)"/* -DestinationPath "$(WINDOWS_RELEASE)"
@echo Release creado: $(WINDOWS_RELEASE)
# Elimina la carpeta temporal 'RELEASE_FOLDER'
powershell if (Test-Path "$(RELEASE_FOLDER)") {Remove-Item "$(RELEASE_FOLDER)" -Recurse -Force}
macos:
$(CXX) $(SOURCES) $(CXXFLAGS) $(LDFLAGS) -o "$(TARGET_FILE)"
@echo "Compilando para macOS: $(TARGET_NAME)"
$(CXX) $(APP_SOURCES) $(INCLUDES) $(CXXFLAGS) $(LDFLAGS) -o "$(TARGET_FILE)"
macos_debug:
$(CXX) $(SOURCES) -D DEBUG $(CXXFLAGS) $(LDFLAGS) -o "$(TARGET_FILE)_debug"
@echo "Compilando version debug para macOS: $(TARGET_NAME)_debug"
$(CXX) $(APP_SOURCES) $(INCLUDES) -DDEBUG -DVERBOSE $(CXXFLAGS_DEBUG) $(LDFLAGS) -o "$(TARGET_FILE)_debug"
macos_release:
# Elimina datos de compilaciones anteriores
rm -rdf "$(RELEASE_FOLDER)"
rm -rdf Frameworks
rm -f tmp.dmg
rm -f "$(MACOS_INTEL_RELEASE)"
rm -f "$(MACOS_APPLE_SILICON_RELEASE)"
@$(MAKE) pack_tool
@$(MAKE) resources.pack
@echo "Creando release para macOS - Version: $(VERSION)"
# Crea la carpeta temporal para hacer el trabajo y las carpetas obligatorias para crear una app de macos
mkdir -p "$(RELEASE_FOLDER)/$(APP_NAME).app/Contents/Frameworks"
mkdir -p "$(RELEASE_FOLDER)/$(APP_NAME).app/Contents/MacOS"
mkdir -p "$(RELEASE_FOLDER)/$(APP_NAME).app/Contents/Resources"
mkdir -p Frameworks
# Verificar e instalar create-dmg si es necesario
@which create-dmg > /dev/null || (echo "Instalando create-dmg..." && brew install create-dmg)
# Elimina datos de compilaciones anteriores
$(RMDIR) "$(RELEASE_FOLDER)"
$(RMFILE) tmp.dmg
$(RMFILE) "$(DIST_DIR)"/rw.*
$(RMFILE) "$(MACOS_INTEL_RELEASE)"
$(RMFILE) "$(MACOS_APPLE_SILICON_RELEASE)"
# Crea la carpeta de distribución y la carpeta temporal con las carpetas obligatorias para una app macOS
$(MKDIR) "$(DIST_DIR)"
$(MKDIR) "$(RELEASE_FOLDER)/$(APP_NAME).app/Contents/Frameworks"
$(MKDIR) "$(RELEASE_FOLDER)/$(APP_NAME).app/Contents/MacOS"
$(MKDIR) "$(RELEASE_FOLDER)/$(APP_NAME).app/Contents/Resources"
# Copia carpetas y ficheros
cp -R data "$(RELEASE_FOLDER)/$(APP_NAME).app/Contents/Resources"
cp -R release/SDL2.framework "$(RELEASE_FOLDER)/$(APP_NAME).app/Contents/Frameworks"
cp -R release/SDL2.framework Frameworks
cp release/*.icns "$(RELEASE_FOLDER)/$(APP_NAME).app/Contents/Resources"
cp release/Info.plist "$(RELEASE_FOLDER)/$(APP_NAME).app/Contents"
cp -R config "$(RELEASE_FOLDER)/$(APP_NAME).app/Contents/Resources"
cp resources.pack "$(RELEASE_FOLDER)/$(APP_NAME).app/Contents/Resources"
cp -R release/macos/frameworks/SDL3.xcframework/macos-arm64_x86_64/SDL3.framework "$(RELEASE_FOLDER)/$(APP_NAME).app/Contents/Frameworks"
cp release/icons/*.icns "$(RELEASE_FOLDER)/$(APP_NAME).app/Contents/Resources"
cp release/macos/Info.plist "$(RELEASE_FOLDER)/$(APP_NAME).app/Contents"
cp LICENSE "$(RELEASE_FOLDER)"
cp README.md "$(RELEASE_FOLDER)"
# Crea enlaces
ln -s /Applications "$(RELEASE_FOLDER)"/Applications
# Compila la versión para procesadores Intel
$(CXX) $(SOURCES) -D MACOS_BUNDLE $(CXXFLAGS) $(LDFLAGS) -o "$(RELEASE_FOLDER)/$(APP_NAME).app/Contents/MacOS/$(TARGET_FILE)" -rpath @executable_path/../Frameworks/ -target x86_64-apple-macos10.12
ifdef ENABLE_MACOS_X86_64
$(CXX) $(APP_SOURCES) $(INCLUDES) -DMACOS_BUNDLE -DMACOS_BUILD -DRELEASE_BUILD -std=c++20 -Wall -Os -Wno-deprecated -framework SDL3 -F release/macos/frameworks/SDL3.xcframework/macos-arm64_x86_64 -ffunction-sections -fdata-sections -o "$(RELEASE_FOLDER)/$(APP_NAME).app/Contents/MacOS/$(TARGET_NAME)" -rpath @executable_path/../Frameworks/ -target x86_64-apple-macos10.15
# Empaqueta el .dmg de la versión Intel
hdiutil create tmp.dmg -ov -volname "$(APP_NAME)" -fs HFS+ -srcfolder "$(RELEASE_FOLDER)"
hdiutil convert tmp.dmg -format UDZO -o "$(MACOS_INTEL_RELEASE)"
rm -f tmp.dmg
# Firma la aplicación
codesign --deep --force --sign - --timestamp=none "$(RELEASE_FOLDER)/$(APP_NAME).app"
# Empaqueta el .dmg de la versión Intel con create-dmg
@echo "Creando DMG Intel con iconos de 96x96..."
create-dmg \
--volname "$(APP_NAME)" \
--window-pos 200 120 \
--window-size 720 300 \
--icon-size 96 \
--text-size 12 \
--icon "$(APP_NAME).app" 278 102 \
--icon "LICENSE" 441 102 \
--icon "README.md" 604 102 \
--app-drop-link 115 102 \
--hide-extension "$(APP_NAME).app" \
"$(MACOS_INTEL_RELEASE)" \
"$(RELEASE_FOLDER)" || true
@echo "Release Intel creado: $(MACOS_INTEL_RELEASE)"
endif
# Compila la versión para procesadores Apple Silicon
$(CXX) $(SOURCES) -D MACOS_BUNDLE $(CXXFLAGS) $(LDFLAGS) -o "$(RELEASE_FOLDER)/$(APP_NAME).app/Contents/MacOS/$(TARGET_FILE)" -rpath @executable_path/../Frameworks/ -target arm64-apple-macos11
$(CXX) $(APP_SOURCES) $(INCLUDES) -DMACOS_BUNDLE -DMACOS_BUILD -DRELEASE_BUILD -DSDL_DISABLE_IMMINTRIN_H -std=c++20 -Wall -Os -Wno-deprecated -framework SDL3 -F release/macos/frameworks/SDL3.xcframework/macos-arm64_x86_64 -ffunction-sections -fdata-sections -o "$(RELEASE_FOLDER)/$(APP_NAME).app/Contents/MacOS/$(TARGET_NAME)" -rpath @executable_path/../Frameworks/ -target arm64-apple-macos11
# Empaqueta el .dmg de la versión Apple Silicon
hdiutil create tmp.dmg -ov -volname "$(APP_NAME)" -fs HFS+ -srcfolder "$(RELEASE_FOLDER)"
hdiutil convert tmp.dmg -format UDZO -o "$(MACOS_APPLE_SILICON_RELEASE)"
rm -f tmp.dmg
# Firma la aplicación
codesign --deep --force --sign - --timestamp=none "$(RELEASE_FOLDER)/$(APP_NAME).app"
# Empaqueta el .dmg de la versión Apple Silicon con create-dmg
@echo "Creando DMG Apple Silicon con iconos de 96x96..."
create-dmg \
--volname "$(APP_NAME)" \
--window-pos 200 120 \
--window-size 720 300 \
--icon-size 96 \
--text-size 12 \
--icon "$(APP_NAME).app" 278 102 \
--icon "LICENSE" 441 102 \
--icon "README.md" 604 102 \
--app-drop-link 115 102 \
--hide-extension "$(APP_NAME).app" \
"$(MACOS_APPLE_SILICON_RELEASE)" \
"$(RELEASE_FOLDER)" || true
@echo "Release Apple Silicon creado: $(MACOS_APPLE_SILICON_RELEASE)"
# Elimina las carpetas temporales
$(RM) Frameworks
$(RM) "$(RELEASE_FOLDER)"
$(RMDIR) "$(RELEASE_FOLDER)"
$(RMFILE) "$(DIST_DIR)"/rw.*
linux:
$(CXX) $(SOURCES) $(CXXFLAGS) $(LDFLAGS) -o "$(TARGET_FILE)"
@echo "Compilando para Linux: $(TARGET_NAME)"
$(CXX) $(APP_SOURCES) $(INCLUDES) $(CXXFLAGS) $(LDFLAGS) -o "$(TARGET_FILE)"
strip -s -R .comment -R .gnu.version "$(TARGET_FILE)" --strip-unneeded
linux_debug:
$(CXX) $(SOURCES) -D DEBUG $(CXXFLAGS) $(LDFLAGS) -o "$(TARGET_FILE)_debug"
strip -s -R .comment -R .gnu.version "$(TARGET_FILE)_debug" --strip-unneeded
@echo "Compilando version debug para Linux: $(TARGET_NAME)_debug"
$(CXX) $(APP_SOURCES) $(INCLUDES) -DDEBUG -DVERBOSE $(CXXFLAGS_DEBUG) $(LDFLAGS) -o "$(TARGET_FILE)_debug"
linux_release:
# Elimina carpetas previas
$(RM) "$(RELEASE_FOLDER)"
# Crea la carpeta temporal para realizar el lanzamiento
mkdir -p "$(RELEASE_FOLDER)"
@$(MAKE) pack_tool
@$(MAKE) resources.pack
@echo "Creando release para Linux - Version: $(VERSION)"
# Elimina carpetas previas y recrea (crea dist/ si no existe)
$(RMDIR) "$(RELEASE_FOLDER)"
$(MKDIR) "$(RELEASE_FOLDER)"
# Copia ficheros
cp -R data "$(RELEASE_FOLDER)"
cp -R config "$(RELEASE_FOLDER)"
cp resources.pack "$(RELEASE_FOLDER)"
cp LICENSE "$(RELEASE_FOLDER)"
cp README.md "$(RELEASE_FOLDER)"
# Complia
$(CXX) $(SOURCES) $(CXXFLAGS) $(LDFLAGS) -o "$(RELEASE_FILE)"
# Compila
$(CXX) $(APP_SOURCES) $(INCLUDES) -DRELEASE_BUILD $(CXXFLAGS) $(LDFLAGS) -o "$(RELEASE_FILE)"
strip -s -R .comment -R .gnu.version "$(RELEASE_FILE)" --strip-unneeded
# Empaqueta ficheros
$(RM) "$(LINUX_RELEASE)"
cd "$(RELEASE_FOLDER)" && tar -czvf "../$(LINUX_RELEASE)" *
$(RMFILE) "$(LINUX_RELEASE)"
tar -czvf "$(LINUX_RELEASE)" -C "$(RELEASE_FOLDER)" .
@echo "Release creado: $(LINUX_RELEASE)"
# Elimina la carpeta temporal
$(RM) "$(RELEASE_FOLDER)"
$(RMDIR) "$(RELEASE_FOLDER)"
linux_release_desktop:
@$(MAKE) pack_tool
@$(MAKE) resources.pack
@echo "Creando release con integracion desktop para Linux - Version: $(VERSION)"
# Elimina carpetas previas y recrea (crea dist/ si no existe)
$(RMDIR) "$(RELEASE_FOLDER)"
# Crea la estructura de directorios estándar para Linux
$(MKDIR) "$(RELEASE_FOLDER)/$(TARGET_NAME)"
$(MKDIR) "$(RELEASE_FOLDER)/$(TARGET_NAME)/bin"
$(MKDIR) "$(RELEASE_FOLDER)/$(TARGET_NAME)/share/applications"
$(MKDIR) "$(RELEASE_FOLDER)/$(TARGET_NAME)/share/icons/hicolor/256x256/apps"
$(MKDIR) "$(RELEASE_FOLDER)/$(TARGET_NAME)/share/$(TARGET_NAME)"
# Copia ficheros del juego
cp -R config "$(RELEASE_FOLDER)/$(TARGET_NAME)/share/$(TARGET_NAME)/"
cp resources.pack "$(RELEASE_FOLDER)/$(TARGET_NAME)/share/$(TARGET_NAME)/"
cp LICENSE "$(RELEASE_FOLDER)/$(TARGET_NAME)/"
cp README.md "$(RELEASE_FOLDER)/$(TARGET_NAME)/"
# Compila el ejecutable
$(CXX) $(APP_SOURCES) $(INCLUDES) -DRELEASE_BUILD $(CXXFLAGS) $(LDFLAGS) -o "$(RELEASE_FOLDER)/$(TARGET_NAME)/bin/$(TARGET_NAME)"
strip -s -R .comment -R .gnu.version "$(RELEASE_FOLDER)/$(TARGET_NAME)/bin/$(TARGET_NAME)" --strip-unneeded
# Crea el archivo .desktop
@echo '[Desktop Entry]' > "$(RELEASE_FOLDER)/$(TARGET_NAME)/share/applications/$(TARGET_NAME).desktop"
@echo 'Version=1.0' >> "$(RELEASE_FOLDER)/$(TARGET_NAME)/share/applications/$(TARGET_NAME).desktop"
@echo 'Type=Application' >> "$(RELEASE_FOLDER)/$(TARGET_NAME)/share/applications/$(TARGET_NAME).desktop"
@echo 'Name=$(APP_NAME)' >> "$(RELEASE_FOLDER)/$(TARGET_NAME)/share/applications/$(TARGET_NAME).desktop"
@echo 'Comment=Arcade action game - defend Earth from alien invasion!' >> "$(RELEASE_FOLDER)/$(TARGET_NAME)/share/applications/$(TARGET_NAME).desktop"
@echo 'Exec=/opt/$(TARGET_NAME)/bin/$(TARGET_NAME)' >> "$(RELEASE_FOLDER)/$(TARGET_NAME)/share/applications/$(TARGET_NAME).desktop"
@echo 'Icon=$(TARGET_NAME)' >> "$(RELEASE_FOLDER)/$(TARGET_NAME)/share/applications/$(TARGET_NAME).desktop"
@echo 'Path=/opt/$(TARGET_NAME)/share/$(TARGET_NAME)' >> "$(RELEASE_FOLDER)/$(TARGET_NAME)/share/applications/$(TARGET_NAME).desktop"
@echo 'Terminal=false' >> "$(RELEASE_FOLDER)/$(TARGET_NAME)/share/applications/$(TARGET_NAME).desktop"
@echo 'StartupNotify=true' >> "$(RELEASE_FOLDER)/$(TARGET_NAME)/share/applications/$(TARGET_NAME).desktop"
@echo 'Categories=Game;ArcadeGame;' >> "$(RELEASE_FOLDER)/$(TARGET_NAME)/share/applications/$(TARGET_NAME).desktop"
@echo 'Keywords=arcade;action;shooter;retro;' >> "$(RELEASE_FOLDER)/$(TARGET_NAME)/share/applications/$(TARGET_NAME).desktop"
# Copia el icono (si existe) y lo redimensiona si es necesario
@if [ -f "release/icons/icon.png" ]; then \
if command -v magick >/dev/null 2>&1; then \
magick "release/icons/icon.png" -resize 256x256 "$(RELEASE_FOLDER)/$(TARGET_NAME)/share/icons/hicolor/256x256/apps/$(TARGET_NAME).png"; \
echo "Icono redimensionado de release/icons/icon.png (usando ImageMagick)"; \
elif command -v convert >/dev/null 2>&1; then \
convert "release/icons/icon.png" -resize 256x256 "$(RELEASE_FOLDER)/$(TARGET_NAME)/share/icons/hicolor/256x256/apps/$(TARGET_NAME).png"; \
echo "Icono redimensionado de release/icons/icon.png (usando ImageMagick legacy)"; \
elif command -v ffmpeg >/dev/null 2>&1; then \
ffmpeg -i "release/icons/icon.png" -vf scale=256:256 "$(RELEASE_FOLDER)/$(TARGET_NAME)/share/icons/hicolor/256x256/apps/$(TARGET_NAME).png" -y -loglevel quiet; \
echo "Icono redimensionado de release/icons/icon.png (usando ffmpeg)"; \
else \
cp "release/icons/icon.png" "$(RELEASE_FOLDER)/$(TARGET_NAME)/share/icons/hicolor/256x256/apps/$(TARGET_NAME).png"; \
echo "Icono copiado sin redimensionar (instalar ImageMagick o ffmpeg para redimensionado automatico)"; \
fi; \
else \
echo "Advertencia: No se encontró release/icons/icon.png - crear icono manualmente"; \
fi
# Crea script de instalación
@echo '#!/bin/bash' > "$(RELEASE_FOLDER)/$(TARGET_NAME)/install.sh"
@echo 'echo "Instalando $(APP_NAME)..."' >> "$(RELEASE_FOLDER)/$(TARGET_NAME)/install.sh"
@echo 'sudo mkdir -p /opt/$(TARGET_NAME)' >> "$(RELEASE_FOLDER)/$(TARGET_NAME)/install.sh"
@echo 'sudo cp -R bin /opt/$(TARGET_NAME)/' >> "$(RELEASE_FOLDER)/$(TARGET_NAME)/install.sh"
@echo 'sudo cp -R share /opt/$(TARGET_NAME)/' >> "$(RELEASE_FOLDER)/$(TARGET_NAME)/install.sh"
@echo 'sudo cp LICENSE /opt/$(TARGET_NAME)/' >> "$(RELEASE_FOLDER)/$(TARGET_NAME)/install.sh"
@echo 'sudo cp README.md /opt/$(TARGET_NAME)/' >> "$(RELEASE_FOLDER)/$(TARGET_NAME)/install.sh"
@echo 'sudo mkdir -p /usr/share/applications' >> "$(RELEASE_FOLDER)/$(TARGET_NAME)/install.sh"
@echo 'sudo mkdir -p /usr/share/icons/hicolor/256x256/apps' >> "$(RELEASE_FOLDER)/$(TARGET_NAME)/install.sh"
@echo 'sudo cp /opt/$(TARGET_NAME)/share/applications/$(TARGET_NAME).desktop /usr/share/applications/' >> "$(RELEASE_FOLDER)/$(TARGET_NAME)/install.sh"
@echo 'sudo cp /opt/$(TARGET_NAME)/share/icons/hicolor/256x256/apps/$(TARGET_NAME).png /usr/share/icons/hicolor/256x256/apps/' >> "$(RELEASE_FOLDER)/$(TARGET_NAME)/install.sh"
@echo 'sudo update-desktop-database /usr/share/applications 2>/dev/null || true' >> "$(RELEASE_FOLDER)/$(TARGET_NAME)/install.sh"
@echo 'sudo gtk-update-icon-cache /usr/share/icons/hicolor 2>/dev/null || true' >> "$(RELEASE_FOLDER)/$(TARGET_NAME)/install.sh"
@echo 'echo "$(APP_NAME) instalado correctamente!"' >> "$(RELEASE_FOLDER)/$(TARGET_NAME)/install.sh"
@echo 'echo "Ya puedes encontrarlo en el menu de aplicaciones en la categoria Juegos."' >> "$(RELEASE_FOLDER)/$(TARGET_NAME)/install.sh"
chmod +x "$(RELEASE_FOLDER)/$(TARGET_NAME)/install.sh"
# Crea script de desinstalación
@echo '#!/bin/bash' > "$(RELEASE_FOLDER)/$(TARGET_NAME)/uninstall.sh"
@echo 'echo "Desinstalando $(APP_NAME)..."' >> "$(RELEASE_FOLDER)/$(TARGET_NAME)/uninstall.sh"
@echo 'sudo rm -rf /opt/$(TARGET_NAME)' >> "$(RELEASE_FOLDER)/$(TARGET_NAME)/uninstall.sh"
@echo 'sudo rm -f /usr/share/applications/$(TARGET_NAME).desktop' >> "$(RELEASE_FOLDER)/$(TARGET_NAME)/uninstall.sh"
@echo 'sudo rm -f /usr/share/icons/hicolor/256x256/apps/$(TARGET_NAME).png' >> "$(RELEASE_FOLDER)/$(TARGET_NAME)/uninstall.sh"
@echo 'sudo update-desktop-database /usr/share/applications 2>/dev/null || true' >> "$(RELEASE_FOLDER)/$(TARGET_NAME)/uninstall.sh"
@echo 'sudo gtk-update-icon-cache /usr/share/icons/hicolor 2>/dev/null || true' >> "$(RELEASE_FOLDER)/$(TARGET_NAME)/uninstall.sh"
@echo 'echo "$(APP_NAME) desinstalado correctamente."' >> "$(RELEASE_FOLDER)/$(TARGET_NAME)/uninstall.sh"
chmod +x "$(RELEASE_FOLDER)/$(TARGET_NAME)/uninstall.sh"
# Empaqueta ficheros
$(RMFILE) "$(DIST_DIR)/$(TARGET_NAME)-$(VERSION)-linux-desktop.tar.gz"
tar -czvf "$(DIST_DIR)/$(TARGET_NAME)-$(VERSION)-linux-desktop.tar.gz" -C "$(RELEASE_FOLDER)" .
@echo "Release con integracion desktop creado: $(DIST_DIR)/$(TARGET_NAME)-$(VERSION)-linux-desktop.tar.gz"
@echo "Para instalar: extraer y ejecutar ./$(TARGET_NAME)/install.sh"
# Elimina la carpeta temporal
$(RMDIR) "$(RELEASE_FOLDER)"
raspi:
@echo "Compilando para Raspberry Pi: $(TARGET_NAME)"
$(CXX) $(APP_SOURCES) $(INCLUDES) -DVERBOSE $(CXXFLAGS) $(LDFLAGS) -o $(TARGET_FILE)
strip -s -R .comment -R .gnu.version $(TARGET_FILE) --strip-unneeded
raspi_debug:
@echo "Compilando version debug para Raspberry Pi: $(TARGET_NAME)_debug"
$(CXX) $(APP_SOURCES) $(INCLUDES) -DVERBOSE -DDEBUG $(CXXFLAGS_DEBUG) $(LDFLAGS) -o "$(TARGET_FILE)_debug"
raspi_release:
@$(MAKE) pack_tool
@$(MAKE) resources.pack
@echo "Creando release para Raspberry Pi - Version: $(VERSION)"
# Elimina carpetas previas y recrea (crea dist/ si no existe)
$(RMDIR) "$(RELEASE_FOLDER)"
$(MKDIR) "$(RELEASE_FOLDER)"
# Copia ficheros
cp -R config "$(RELEASE_FOLDER)"
cp resources.pack "$(RELEASE_FOLDER)"
cp LICENSE "$(RELEASE_FOLDER)"
cp README.md "$(RELEASE_FOLDER)"
# Compila
$(CXX) $(APP_SOURCES) $(INCLUDES) -DRELEASE_BUILD -DVERBOSE $(CXXFLAGS) $(LDFLAGS) -o "$(RELEASE_FILE)"
strip -s -R .comment -R .gnu.version "$(RELEASE_FILE)" --strip-unneeded
# Empaqueta ficheros
$(RMFILE) "$(RASPI_RELEASE)"
tar -czvf "$(RASPI_RELEASE)" -C "$(RELEASE_FOLDER)" .
@echo "Release creado: $(RASPI_RELEASE)"
# Elimina la carpeta temporal
$(RMDIR) "$(RELEASE_FOLDER)"
anbernic:
@$(MAKE) pack_tool
@$(MAKE) resources.pack
@echo "Compilando para Anbernic: $(TARGET_NAME)"
# Elimina carpetas previas
$(RMDIR) "$(RELEASE_FOLDER)"_anbernic
# Crea la carpeta temporal para realizar el lanzamiento
$(MKDIR) "$(RELEASE_FOLDER)"_anbernic
# Copia ficheros
cp -R config "$(RELEASE_FOLDER)"_anbernic
cp resources.pack "$(RELEASE_FOLDER)"_anbernic
# Compila
$(CXX) $(APP_SOURCES) $(INCLUDES) -DRELEASE_BUILD -DANBERNIC -DNO_SHADERS -DARCADE -DVERBOSE $(CXXFLAGS) $(LDFLAGS) -o $(RELEASE_FOLDER)_anbernic/$(TARGET_NAME)
# Opción para deshabilitar audio (equivalente a la opción DISABLE_AUDIO de CMake)
no_audio:
@echo "Compilando sin audio: $(TARGET_NAME)_no_audio"
$(CXX) $(filter-out source/external/jail_audio.cpp,$(APP_SOURCES)) $(INCLUDES) -DNO_AUDIO $(CXXFLAGS) $(LDFLAGS) -o "$(TARGET_FILE)_no_audio"
# Regla para mostrar la versión actual
show_version:
@echo "Version actual: $(VERSION)"
# Regla de ayuda
help:
@echo "Makefile para Coffee Crisis Arcade Edition"
@echo "Comandos disponibles:"
@echo " windows - Compilar para Windows"
@echo " windows_debug - Compilar debug para Windows"
@echo " windows_release - Crear release completo para Windows"
@echo " linux - Compilar para Linux"
@echo " linux_debug - Compilar debug para Linux"
@echo " linux_release - Crear release basico para Linux"
@echo " linux_release_desktop - Crear release con integracion desktop para Linux"
@echo " macos - Compilar para macOS"
@echo " macos_debug - Compilar debug para macOS"
@echo " macos_release - Crear release completo para macOS"
@echo " raspi - Compilar para Raspberry Pi"
@echo " raspi_release - Crear release completo para Raspberry Pi"
@echo " anbernic - Compilar para Anbernic"
@echo " no_audio - Compilar sin sistema de audio"
@echo " pack_tool - Compilar herramienta de empaquetado"
@echo " resources.pack - Generar pack de recursos desde data/"
@echo " show_version - Mostrar version actual ($(VERSION))"
@echo " help - Mostrar esta ayuda"
spirv:
@echo "Compilando shaders SPIR-V..."
tools/shaders/compile_spirv.sh
.PHONY: windows windows_rec windows_debug windows_release macos macos_debug macos_release linux linux_debug linux_release linux_release_desktop raspi raspi_debug raspi_release anbernic no_audio show_version help pack_tool resources.pack spirv
FORCE:

112
README.md
View File

@@ -1,67 +1,85 @@
# Coffee Crisis
<div align="center">
<img src="https://php.sustancia.synology.me/images/ccae/coffee_crisis_arcade_edition_cover_web.png" width="600" alt="Coffee Crisis Cover">
</div>
Coffee Crisis es un juego arcade que pondrá a prueba tus reflejos. Empezado durante el verano de 2020 y terminado un año despues, en el verano de 2021. Intenta conseguir todos los puntos que puedas con una sola vida a traves de los 10 niveles de juego y ayuda a Bal1 a defender la UPV de la invasión de la cafeína esférica y saltarina.
# Coffee Crisis Arcade Edition
![alt text](https://php.sustancia.synology.me/images/cc1.png)
## ¡La batalla definitiva pel cafè està ací!
## Teclado
El juego se maneja con teclado, aunque tambien se puede conectar un mando de control.
Las teclas son las siguientes:
Coffee Crisis Arcade Edition és una versió ampliada i millorada del aclamat Coffee Crisis. Aquesta versió porta l'acció cooperativa al següent nivell, amb:
* **Cursores**: Mover al personaje, moverse por los menus
* **Q, W, E**: Disparar a la izquierda, al centro y a la derecha respectivamente
* **ESCAPE**: Pone en pausa el juego durante la partida. Sale de los menus. Cierra el juego
* **ENTER**: Acepta las opciones en los menus
- **Mode multijugador** per a dues persones.
- **Nous gràfics** que revitalitzen l'experiència arcade clàssica.
- **Moltes sorpreses** per descobrir en cada partida.
![alt text](https://php.sustancia.synology.me/images/cc2.png)
Defensa el teu cafè contra les bambolles gegants en aquest trepidant joc d'arcade! 🍵
## Compilar
<br clear="left">
Para compilar el código se necesitan tener las librerías SDL instaladas en el sistema y el compilador g++.
En Linux:
```bash
sudo apt install libsdl2-dev g++
```
En macOS se pueden instalar fácilmente con [brew](https://brew.sh):
```bash
brew install sdl2 g++
```
## Controls
Una vez instaladas las librerías SDL, se puede compilar utilizando el fichero Makefile suministrado.
El joc està optimitzat per a ser jugat amb un mando de jocs, encara que un dels jugadors pot utilitzar el teclat.
En Linux:
```bash
make linux
```
### Controls del teclat:
- **Fletxes**: Mou al personatge.
- **Q, W, E**: Disparar a l'esquerra, al centre i a la dreta, respectivament.
En macOS:
```bash
make macos
```
![alt text](https://php.sustancia.synology.me/images/cc3.png)
### Menú de servei:
## Como ejecutar
| Teclat | Mando | Acció |
|:------------|:----------------------------------|:---------------------------------|
| **F12** | Botó de servei | Obrir o tancar el menú de servei |
| **Fletxes** | Mando direccional | Moure's pel menú |
| **Enter** | Botó de disparar cap a l'esquerra | Acceptar opció |
| **Borrar** | Botó de disparar cap al centre | Tornar arrere |
Para ejecutar el juego hay que escribir en la terminal la orden que se muestra a continuación.
> Nota: El joc suporta nomes un jugador amb teclat.
En Linux:
```bash
./coffee_crisis_linux
```
![Coffee Crisis Arcade Edition - Gameplay](https://php.sustancia.synology.me/images/ccae/ccae1.png)
En macOS:
```bash
./coffee_crisis_macos
```
## Altres tecles
En macOS tambien puedes hacer doble click sobre el archivo coffee_crisis_macos
| Tecla | Funció |
|:-----------:|----------------------------------------------------|
| **ESC** | Tancar el joc |
| **F12** | Menu de servei |
| **P** | Pausar el joc |
| **F1** | Fa la finestra més xicoteta |
| **F2** | Fa la finestra més gran |
| **F3** | Alterna entre mode de pantalla completa i finestra |
| **F4** | Activa o desactiva el filtre de pantalla |
| **F5** | Activa o desactiva el mode d'escalat sencer |
| **F6** | Activa o desactiva el sincronisme vertical |
| **F7** | Activa o desactiva l'àudio |
| **F8** | Activa o desactiva el dispar automàtic |
| **F9** | Canvia l'idioma del joc (Provoca el reinici) |
| **F10** | Reinicia el joc |
## Agradecimientos
A los jailers y a la jail. Y entre ellos, a JailDoctor por estar siempre ahí apoyándonos/obligándonos a sacar un Jailgame más.
## Com instal·lar i jugar
Y por supuesto a ti por estar aquí.
1. Descarrega el joc des de [l'apartat de llançaments](https://gitea.sustancia.synology.me/JailDesigner/coffee_crisis_arcade_edition/releases).
2. Descomprimix i executa l'arxiu `coffee_crisis_arcade_edition.exe`.
3. Gaudeix del joc!
![Coffee Crisis Arcade Edition - Gameplay](https://php.sustancia.synology.me/images/ccae/ccae3.png)
## Agraïments
Vull expressar la meua gratitud a **ChatGPT** i **GitHub Copilot**. Gràcies per ser un suport constant en el desenvolupament d'aquest joc!
També vull agrair a tots els jugadors que fan que aquest projecte valgui la pena. 🕹️❤️
## Com contribuir
Accepte contribucions! Si tens una idea o vols ajudar:
1. Fes un fork d'aquest repositori.
2. Crea una branca nova amb els teus canvis.
3. Fes un pull request.
## Llicència
Aquest joc està subjecte a una llicència [MIT](https://opensource.org/licenses/MIT). Consulta el fitxer LICENSE per a més detalls.
## Licencia
Usa el código para lo que quieras: aprender, reirte, curiosear... excepto para sacar beneficio económico. Si lo consigues, por favor avísame y vamos a medias.

201
config/assets.txt Normal file
View File

@@ -0,0 +1,201 @@
# Coffee Crisis Arcade Edition - Asset Configuration
# Formato: TIPO|RUTA [|OPCIONES]
# Opciones: optional, absolute (separadas por comas)
# Variables: ${PREFIX}, ${SYSTEM_FOLDER}
# Archivos de configuración del sistema (absolutos y opcionales)
DATA|${SYSTEM_FOLDER}/config.yaml|optional,absolute
DATA|${SYSTEM_FOLDER}/controllers.json|optional,absolute
DATA|${SYSTEM_FOLDER}/postfx.yaml|optional,absolute
DATA|${SYSTEM_FOLDER}/score.bin|optional,absolute
# Archivos de configuración del juego
DATA|${PREFIX}/config/formations.txt
DATA|${PREFIX}/config/gamecontrollerdb.txt
DATA|${PREFIX}/config/param_320x240.txt
DATA|${PREFIX}/config/param_320x256.txt
DATA|${PREFIX}/config/param_red.txt
DATA|${PREFIX}/config/pools.txt
DATA|${PREFIX}/config/stages.txt
# Archivos con los datos de la demo
DEMODATA|/data/demo/demo1.bin
DEMODATA|/data/demo/demo2.bin
DEMODATA|/data/demo/demo3.bin
# Música
MUSIC|/data/music/congratulations.ogg
MUSIC|/data/music/credits.ogg
MUSIC|/data/music/intro.ogg
MUSIC|/data/music/playing.ogg
MUSIC|/data/music/title.ogg
# Sonidos
SOUND|/data/sound/balloon_bounce0.wav
SOUND|/data/sound/balloon_bounce1.wav
SOUND|/data/sound/balloon_bounce2.wav
SOUND|/data/sound/balloon_bounce3.wav
SOUND|/data/sound/balloon_pop0.wav
SOUND|/data/sound/balloon_pop1.wav
SOUND|/data/sound/balloon_pop2.wav
SOUND|/data/sound/balloon_pop3.wav
SOUND|/data/sound/bullet1p.wav
SOUND|/data/sound/bullet2p.wav
SOUND|/data/sound/clock.wav
SOUND|/data/sound/coffee_out.wav
SOUND|/data/sound/continue_clock.wav
SOUND|/data/sound/credit.wav
SOUND|/data/sound/debian_drop.wav
SOUND|/data/sound/debian_pickup.wav
SOUND|/data/sound/hi_score_achieved.wav
SOUND|/data/sound/item_drop.wav
SOUND|/data/sound/item_pickup.wav
SOUND|/data/sound/jump.wav
SOUND|/data/sound/logo.wav
SOUND|/data/sound/name_input_accept.wav
SOUND|/data/sound/notify.wav
SOUND|/data/sound/player_collision.wav
SOUND|/data/sound/power_ball_explosion.wav
SOUND|/data/sound/service_menu_adjust.wav
SOUND|/data/sound/service_menu_back.wav
SOUND|/data/sound/service_menu_move.wav
SOUND|/data/sound/service_menu_select.wav
SOUND|/data/sound/stage_change.wav
SOUND|/data/sound/tabe_hit.wav
SOUND|/data/sound/tabe.wav
SOUND|/data/sound/title.wav
SOUND|/data/sound/voice_aw_aw_aw.wav
SOUND|/data/sound/voice_coffee.wav
SOUND|/data/sound/voice_credit_thankyou.wav
SOUND|/data/sound/voice_game_over.wav
SOUND|/data/sound/voice_get_ready.wav
SOUND|/data/sound/voice_no.wav
SOUND|/data/sound/voice_power_up.wav
SOUND|/data/sound/voice_recover.wav
SOUND|/data/sound/voice_thankyou.wav
SOUND|/data/sound/walk.wav
# Texturas - Balloons
ANIMATION|/data/gfx/balloon/balloon0.ani
ANIMATION|/data/gfx/balloon/balloon1.ani
ANIMATION|/data/gfx/balloon/balloon2.ani
ANIMATION|/data/gfx/balloon/balloon3.ani
BITMAP|/data/gfx/balloon/balloon0.png
BITMAP|/data/gfx/balloon/balloon1.png
BITMAP|/data/gfx/balloon/balloon2.png
BITMAP|/data/gfx/balloon/balloon3.png
# Texturas - Explosiones
ANIMATION|/data/gfx/balloon/explosion0.ani
ANIMATION|/data/gfx/balloon/explosion1.ani
ANIMATION|/data/gfx/balloon/explosion2.ani
ANIMATION|/data/gfx/balloon/explosion3.ani
BITMAP|/data/gfx/balloon/explosion0.png
BITMAP|/data/gfx/balloon/explosion1.png
BITMAP|/data/gfx/balloon/explosion2.png
BITMAP|/data/gfx/balloon/explosion3.png
# Texturas - Power Ball
ANIMATION|/data/gfx/balloon/powerball.ani
BITMAP|/data/gfx/balloon/powerball.png
# Texturas - Bala
ANIMATION|/data/gfx/bullet/bullet.ani
BITMAP|/data/gfx/bullet/bullet.png
# Texturas - Tabe
ANIMATION|/data/gfx/tabe/tabe.ani
BITMAP|/data/gfx/tabe/tabe.png
# Texturas - Juego
BITMAP|/data/gfx/game/game_buildings.png
BITMAP|/data/gfx/game/game_clouds1.png
BITMAP|/data/gfx/game/game_clouds2.png
ANIMATION|/data/gfx/game/game_grass.ani
BITMAP|/data/gfx/game/game_grass.png
BITMAP|/data/gfx/game/game_moon.png
BITMAP|/data/gfx/game/game_power_meter.png
BITMAP|/data/gfx/game/game_sky_colors.png
BITMAP|/data/gfx/game/game_sun.png
# Texturas - Intro
BITMAP|/data/gfx/intro/intro1.png
BITMAP|/data/gfx/intro/intro2.png
BITMAP|/data/gfx/intro/intro3.png
BITMAP|/data/gfx/intro/intro4.png
BITMAP|/data/gfx/intro/intro5.png
BITMAP|/data/gfx/intro/intro6.png
# Texturas - Logo
BITMAP|/data/gfx/logo/logo_jailgames_mini.png
BITMAP|/data/gfx/logo/logo_jailgames.png
BITMAP|/data/gfx/logo/logo_since_1998.png
# Texturas - Items
ANIMATION|/data/gfx/item/item_clock.ani
ANIMATION|/data/gfx/item/item_coffee_machine.ani
ANIMATION|/data/gfx/item/item_coffee.ani
ANIMATION|/data/gfx/item/item_debian.ani
ANIMATION|/data/gfx/item/item_points1_disk.ani
ANIMATION|/data/gfx/item/item_points2_gavina.ani
ANIMATION|/data/gfx/item/item_points3_pacmar.ani
BITMAP|/data/gfx/item/item_clock.png
BITMAP|/data/gfx/item/item_coffee_machine.png
BITMAP|/data/gfx/item/item_coffee.png
BITMAP|/data/gfx/item/item_debian.png
BITMAP|/data/gfx/item/item_points1_disk.png
BITMAP|/data/gfx/item/item_points2_gavina.png
BITMAP|/data/gfx/item/item_points3_pacmar.png
# Texturas - Titulo
ANIMATION|/data/gfx/title/title_dust.ani
BITMAP|/data/gfx/title/title_arcade_edition.png
BITMAP|/data/gfx/title/title_bg_tile.png
BITMAP|/data/gfx/title/title_coffee.png
BITMAP|/data/gfx/title/title_crisis.png
BITMAP|/data/gfx/title/title_dust.png
# Texturas - Jugador 1
BITMAP|/data/gfx/player/player1_power.png
BITMAP|/data/gfx/player/player1.gif
PALETTE|/data/gfx/player/player1_coffee1.pal
PALETTE|/data/gfx/player/player1_coffee2.pal
PALETTE|/data/gfx/player/player1_invencible.pal
# Texturas - Jugador 2
BITMAP|/data/gfx/player/player2_power.png
BITMAP|/data/gfx/player/player2.gif
PALETTE|/data/gfx/player/player2_coffee1.pal
PALETTE|/data/gfx/player/player2_coffee2.pal
PALETTE|/data/gfx/player/player2_invencible.pal
# Animaciones del jugador
ANIMATION|/data/gfx/player/player_power.ani
ANIMATION|/data/gfx/player/player1.ani
ANIMATION|/data/gfx/player/player2.ani
# Fuentes de texto
BITMAP|/data/font/04b_25_2x.png
BITMAP|/data/font/04b_25_2x_white.png
BITMAP|/data/font/04b_25_flat_2x.png
BITMAP|/data/font/04b_25_flat.png
BITMAP|/data/font/04b_25_grey.png
BITMAP|/data/font/04b_25_metal.png
BITMAP|/data/font/04b_25_reversed_2x.png
BITMAP|/data/font/04b_25_reversed.png
BITMAP|/data/font/04b_25_white.png
BITMAP|/data/font/04b_25.png
BITMAP|/data/font/8bithud.png
BITMAP|/data/font/aseprite.png
BITMAP|/data/font/smb2_grad.png
BITMAP|/data/font/smb2.png
FONT|/data/font/04b_25_2x.txt
FONT|/data/font/04b_25.txt
FONT|/data/font/8bithud.txt
FONT|/data/font/aseprite.txt
FONT|/data/font/smb2.txt
# Idiomas
LANG|/data/lang/ba_BA.json
LANG|/data/lang/en_UK.json
LANG|/data/lang/es_ES.json

277
config/formations.txt Normal file
View File

@@ -0,0 +1,277 @@
# Coffee Crisis Arcade Edition - Archivo de configuración de formaciones de globos
# Formato por línea: x, desp, y, vel_x, tipo, tamaño, retraso_tiempo_creacion
# Variables disponibles:
# X0_0, X0_50, X0_100, X1_0, X1_100, X2_0, X2_100, X3_0, X3_100
# X3_25, X3_75, DEFAULT_POS_Y
# SMALL, MEDIUM, LARGE, EXTRALARGE
# RIGHT, LEFT
formation: 0
# Dos enemigos BALLOON3 uno a cada extremo
X3_0, 0, DEFAULT_POS_Y, RIGHT, BALLOON, EXTRALARGE, 0.0000
X3_100, 0, DEFAULT_POS_Y, LEFT, BALLOON, EXTRALARGE, 0.0000
formation: 1
# Dos enemigos BALLOON3 uno a cada cuarto. Ambos van hacia el centro
X3_25, 0, DEFAULT_POS_Y, RIGHT, BALLOON, EXTRALARGE, 0.0000
X3_75, 0, DEFAULT_POS_Y, LEFT, BALLOON, EXTRALARGE, 0.0000
formation: 2
# Cuatro enemigos BALLOON1 uno detrás del otro. A la izquierda y hacia el centro
X1_0, 0, DEFAULT_POS_Y, RIGHT, BALLOON, MEDIUM, 0.5000
X1_0, 1, DEFAULT_POS_Y, RIGHT, BALLOON, MEDIUM, 0.3333
X1_0, 2, DEFAULT_POS_Y, RIGHT, BALLOON, MEDIUM, 0.1667
X1_0, 3, DEFAULT_POS_Y, RIGHT, BALLOON, MEDIUM, 0.0000
formation: 3
# Cuatro enemigos BALLOON1 uno detrás del otro. A la derecha y hacia el centro
X1_100, 0, DEFAULT_POS_Y, LEFT, BALLOON, MEDIUM, 0.5000
X1_100, -1, DEFAULT_POS_Y, LEFT, BALLOON, MEDIUM, 0.3333
X1_100, -2, DEFAULT_POS_Y, LEFT, BALLOON, MEDIUM, 0.1667
X1_100, -3, DEFAULT_POS_Y, LEFT, BALLOON, MEDIUM, 0.0000
formation: 4
# Tres enemigos BALLOON2. 0, 25, 50. Hacia la derecha
X2_0, 0, DEFAULT_POS_Y, RIGHT, BALLOON, LARGE, 0.3333
X2_0, 2, DEFAULT_POS_Y, RIGHT, BALLOON, LARGE, 0.1667
X2_0, 4, DEFAULT_POS_Y, RIGHT, BALLOON, LARGE, 0.0000
formation: 5
# Tres enemigos BALLOON2. 50, 75, 100. Hacia la izquierda
X2_100, 0, DEFAULT_POS_Y, LEFT, BALLOON, LARGE, 0.3333
X2_100, -2, DEFAULT_POS_Y, LEFT, BALLOON, LARGE, 0.1667
X2_100, -4, DEFAULT_POS_Y, LEFT, BALLOON, LARGE, 0.0000
formation: 6
# Tres enemigos BALLOON2. 0, 0, 0. Hacia la derecha
X2_0, 0, DEFAULT_POS_Y, RIGHT, BALLOON, LARGE, 0.3333
X2_0, 1, DEFAULT_POS_Y, RIGHT, BALLOON, LARGE, 0.1667
X2_0, 2, DEFAULT_POS_Y, RIGHT, BALLOON, LARGE, 0.0000
formation: 7
# Tres enemigos BALLOON2. 100, 100, 100. Hacia la izquierda
X2_100, 0, DEFAULT_POS_Y, LEFT, BALLOON, LARGE, 0.3333
X2_100, -1, DEFAULT_POS_Y, LEFT, BALLOON, LARGE, 0.1667
X2_100, -2, DEFAULT_POS_Y, LEFT, BALLOON, LARGE, 0.0000
formation: 8
# Seis enemigos BALLOON0. 0, 0, 0, 0, 0, 0. Hacia la derecha
X0_0, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 0.8333
X0_0, 1, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 0.6667
X0_0, 2, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 0.5000
X0_0, 3, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 0.3333
X0_0, 4, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 0.1667
X0_0, 5, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 0.0000
formation: 9
# Seis enemigos BALLOON0. 100, 100, 100, 100, 100, 100. Hacia la izquierda
X0_100, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 0.8333
X0_100, -1, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 0.6667
X0_100, -2, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 0.5000
X0_100, -3, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 0.3333
X0_100, -4, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 0.1667
X0_100, -5, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 0.0000
formation: 10
# Tres enemigos BALLOON3 seguidos desde la izquierda. Hacia la derecha
X3_0, 0, DEFAULT_POS_Y, RIGHT, BALLOON, EXTRALARGE, 0.5000
X3_0, 1, DEFAULT_POS_Y, RIGHT, BALLOON, EXTRALARGE, 0.2500
X3_0, 2, DEFAULT_POS_Y, RIGHT, BALLOON, EXTRALARGE, 0.0000
formation: 11
# Tres enemigos BALLOON3 seguidos desde la derecha. Hacia la izquierda
X3_100, 0, DEFAULT_POS_Y, LEFT, BALLOON, EXTRALARGE, 0.5000
X3_100, -1, DEFAULT_POS_Y, LEFT, BALLOON, EXTRALARGE, 0.2500
X3_100, -2, DEFAULT_POS_Y, LEFT, BALLOON, EXTRALARGE, 0.0000
formation: 12
# Seis enemigos BALLOON1 uno detrás del otro. A la izquierda y hacia el centro
X1_0, 0, DEFAULT_POS_Y, RIGHT, BALLOON, MEDIUM, 0.8333
X1_0, 1, DEFAULT_POS_Y, RIGHT, BALLOON, MEDIUM, 0.6667
X1_0, 2, DEFAULT_POS_Y, RIGHT, BALLOON, MEDIUM, 0.5000
X1_0, 3, DEFAULT_POS_Y, RIGHT, BALLOON, MEDIUM, 0.3333
X1_0, 4, DEFAULT_POS_Y, RIGHT, BALLOON, MEDIUM, 0.1667
X1_0, 5, DEFAULT_POS_Y, RIGHT, BALLOON, MEDIUM, 0.0000
formation: 13
# Seis enemigos BALLOON1 uno detrás del otro. A la derecha y hacia el centro
X1_100, 0, DEFAULT_POS_Y, LEFT, BALLOON, MEDIUM, 0.8333
X1_100, -1, DEFAULT_POS_Y, LEFT, BALLOON, MEDIUM, 0.6667
X1_100, -2, DEFAULT_POS_Y, LEFT, BALLOON, MEDIUM, 0.5000
X1_100, -3, DEFAULT_POS_Y, LEFT, BALLOON, MEDIUM, 0.3333
X1_100, -4, DEFAULT_POS_Y, LEFT, BALLOON, MEDIUM, 0.1667
X1_100, -5, DEFAULT_POS_Y, LEFT, BALLOON, MEDIUM, 0.0000
formation: 14
# Cinco enemigos BALLOON2. Hacia la derecha. Separados
X2_0, 0, DEFAULT_POS_Y, RIGHT, BALLOON, LARGE, 0.6667
X2_0, 2, DEFAULT_POS_Y, RIGHT, BALLOON, LARGE, 0.5000
X2_0, 4, DEFAULT_POS_Y, RIGHT, BALLOON, LARGE, 0.3333
X2_0, 6, DEFAULT_POS_Y, RIGHT, BALLOON, LARGE, 0.1667
X2_0, 8, DEFAULT_POS_Y, RIGHT, BALLOON, LARGE, 0.0000
formation: 15
# Cinco enemigos BALLOON2. Hacia la izquierda. Separados
X2_100, 0, DEFAULT_POS_Y, LEFT, BALLOON, LARGE, 0.6667
X2_100, -2, DEFAULT_POS_Y, LEFT, BALLOON, LARGE, 0.5000
X2_100, -4, DEFAULT_POS_Y, LEFT, BALLOON, LARGE, 0.3333
X2_100, -6, DEFAULT_POS_Y, LEFT, BALLOON, LARGE, 0.1667
X2_100, -8, DEFAULT_POS_Y, LEFT, BALLOON, LARGE, 0.0000
formation: 16
# Cinco enemigos BALLOON2. Hacia la derecha. Juntos
X2_0, 0, DEFAULT_POS_Y, RIGHT, BALLOON, LARGE, 0.6667
X2_0, 1, DEFAULT_POS_Y, RIGHT, BALLOON, LARGE, 0.5000
X2_0, 2, DEFAULT_POS_Y, RIGHT, BALLOON, LARGE, 0.3333
X2_0, 3, DEFAULT_POS_Y, RIGHT, BALLOON, LARGE, 0.1667
X2_0, 4, DEFAULT_POS_Y, RIGHT, BALLOON, LARGE, 0.0000
formation: 17
# Cinco enemigos BALLOON2. Hacia la izquierda. Juntos
X2_100, 0, DEFAULT_POS_Y, LEFT, BALLOON, LARGE, 0.6667
X2_100, -1, DEFAULT_POS_Y, LEFT, BALLOON, LARGE, 0.5000
X2_100, -2, DEFAULT_POS_Y, LEFT, BALLOON, LARGE, 0.3333
X2_100, -3, DEFAULT_POS_Y, LEFT, BALLOON, LARGE, 0.1667
X2_100, -4, DEFAULT_POS_Y, LEFT, BALLOON, LARGE, 0.0000
formation: 18
# Doce enemigos BALLOON0. Hacia la derecha. Juntos
X0_0, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 1.8333
X0_0, 1, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 1.6667
X0_0, 2, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 1.5000
X0_0, 3, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 1.3333
X0_0, 4, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 1.1667
X0_0, 5, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 1.0000
X0_0, 6, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 0.8333
X0_0, 7, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 0.6667
X0_0, 8, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 0.5000
X0_0, 9, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 0.3333
X0_0, 10, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 0.1667
X0_0, 11, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 0.0000
formation: 19
# Doce enemigos BALLOON0. Hacia la izquierda. Juntos
X0_100, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 1.8333
X0_100, -1, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 1.6667
X0_100, -2, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 1.5000
X0_100, -3, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 1.3333
X0_100, -4, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 1.1667
X0_100, -5, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 1.0000
X0_100, -6, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 0.8333
X0_100, -7, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 0.6667
X0_100, -8, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 0.5000
X0_100, -9, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 0.3333
X0_100, -10, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 0.1667
X0_100, -11, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 0.0000
formation: 20
# Cuatro enemigos BALLOON3 seguidos desde la izquierda/derecha. Simétricos
X3_0, 0, DEFAULT_POS_Y, RIGHT, BALLOON, EXTRALARGE, 0.0000
X3_0, 1, DEFAULT_POS_Y, RIGHT, BALLOON, EXTRALARGE, 0.0000
X3_100, 0, DEFAULT_POS_Y, LEFT, BALLOON, EXTRALARGE, 0.0000
X3_100, -1, DEFAULT_POS_Y, LEFT, BALLOON, EXTRALARGE, 0.0000
formation: 21
# Diez enemigos BALLOON1 uno detrás del otro. Izquierda/derecha. Simétricos
X1_0, 0, DEFAULT_POS_Y, RIGHT, BALLOON, MEDIUM, 0.2000
X1_0, 1, DEFAULT_POS_Y, RIGHT, BALLOON, MEDIUM, 0.1500
X1_0, 2, DEFAULT_POS_Y, RIGHT, BALLOON, MEDIUM, 0.1000
X1_0, 3, DEFAULT_POS_Y, RIGHT, BALLOON, MEDIUM, 0.0500
X1_0, 4, DEFAULT_POS_Y, RIGHT, BALLOON, MEDIUM, 0.0000
X1_100, 0, DEFAULT_POS_Y, LEFT, BALLOON, MEDIUM, 0.2000
X1_100, -1, DEFAULT_POS_Y, LEFT, BALLOON, MEDIUM, 0.1500
X1_100, -2, DEFAULT_POS_Y, LEFT, BALLOON, MEDIUM, 0.1000
X1_100, -3, DEFAULT_POS_Y, LEFT, BALLOON, MEDIUM, 0.0500
X1_100, -4, DEFAULT_POS_Y, LEFT, BALLOON, MEDIUM, 0.0000
formation: 22
# Diez enemigos BALLOON2. Hacia la derecha/izquierda. Separados. Simétricos
X2_0, 0, DEFAULT_POS_Y, RIGHT, BALLOON, LARGE, 0.6667
X2_0, 2, DEFAULT_POS_Y, RIGHT, BALLOON, LARGE, 0.5000
X2_0, 4, DEFAULT_POS_Y, RIGHT, BALLOON, LARGE, 0.3333
X2_0, 6, DEFAULT_POS_Y, RIGHT, BALLOON, LARGE, 0.1667
X2_0, 8, DEFAULT_POS_Y, RIGHT, BALLOON, LARGE, 0.0000
X2_100, 0, DEFAULT_POS_Y, LEFT, BALLOON, LARGE, 0.6667
X2_100, -2, DEFAULT_POS_Y, LEFT, BALLOON, LARGE, 0.5000
X2_100, -4, DEFAULT_POS_Y, LEFT, BALLOON, LARGE, 0.3333
X2_100, -6, DEFAULT_POS_Y, LEFT, BALLOON, LARGE, 0.1667
X2_100, -8, DEFAULT_POS_Y, LEFT, BALLOON, LARGE, 0.0000
formation: 23
# Diez enemigos BALLOON2. Hacia la derecha. Juntos. Simétricos
X2_0, 0, DEFAULT_POS_Y, RIGHT, BALLOON, LARGE, 0.6667
X2_0, 1, DEFAULT_POS_Y, RIGHT, BALLOON, LARGE, 0.5000
X2_0, 2, DEFAULT_POS_Y, RIGHT, BALLOON, LARGE, 0.3333
X2_0, 3, DEFAULT_POS_Y, RIGHT, BALLOON, LARGE, 0.1667
X2_0, 4, DEFAULT_POS_Y, RIGHT, BALLOON, LARGE, 0.0000
X2_100, 0, DEFAULT_POS_Y, LEFT, BALLOON, LARGE, 0.6667
X2_100, -1, DEFAULT_POS_Y, LEFT, BALLOON, LARGE, 0.5000
X2_100, -2, DEFAULT_POS_Y, LEFT, BALLOON, LARGE, 0.3333
X2_100, -3, DEFAULT_POS_Y, LEFT, BALLOON, LARGE, 0.1667
X2_100, -4, DEFAULT_POS_Y, LEFT, BALLOON, LARGE, 0.0000
formation: 24
# Treinta enemigos BALLOON0. Del centro hacia los extremos. Juntos. Simétricos
X0_50, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 0.0000
X0_50, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 0.0833
X0_50, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 0.1667
X0_50, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 0.2500
X0_50, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 0.3333
X0_50, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 0.4167
X0_50, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 0.5000
X0_50, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 0.5833
X0_50, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 0.6667
X0_50, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 0.7500
X0_50, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 0.8333
X0_50, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 0.9167
X0_50, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 1.0000
X0_50, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 1.0833
X0_50, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 1.1667
X0_50, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 0.0000
X0_50, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 0.0833
X0_50, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 0.1667
X0_50, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 0.2500
X0_50, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 0.3333
X0_50, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 0.4167
X0_50, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 0.5000
X0_50, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 0.5833
X0_50, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 0.6667
X0_50, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 0.7500
X0_50, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 0.8333
X0_50, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 0.9167
X0_50, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 1.0000
X0_50, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 1.0833
X0_50, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 1.1667
formation: 25
# Treinta enemigos BALLOON0. Del centro hacia adentro. Juntos. Simétricos
X0_50 + 20, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 1.1667
X0_50 + 20, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 1.0833
X0_50 + 20, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 1.0000
X0_50 + 20, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 0.9167
X0_50 + 20, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 0.8333
X0_50 + 20, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 0.7500
X0_50 + 20, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 0.6667
X0_50 + 20, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 0.5833
X0_50 + 20, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 0.5000
X0_50 + 20, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 0.4167
X0_50 + 20, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 0.3333
X0_50 + 20, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 0.2500
X0_50 + 20, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 0.1667
X0_50 + 20, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 0.0833
X0_50 + 20, 0, DEFAULT_POS_Y, LEFT, BALLOON, SMALL, 0.0000
X0_50 - 20, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 1.1667
X0_50 - 20, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 1.0833
X0_50 - 20, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 1.0000
X0_50 - 20, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 0.9167
X0_50 - 20, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 0.8333
X0_50 - 20, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 0.7500
X0_50 - 20, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 0.6667
X0_50 - 20, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 0.5833
X0_50 - 20, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 0.5000
X0_50 - 20, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 0.4167
X0_50 - 20, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 0.3333
X0_50 - 20, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 0.2500
X0_50 - 20, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 0.1667
X0_50 - 20, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 0.0833
X0_50 - 20, 0, DEFAULT_POS_Y, RIGHT, BALLOON, SMALL, 0.0000

2194
config/gamecontrollerdb.txt Normal file

File diff suppressed because it is too large Load Diff

148
config/param_320x240.txt Normal file
View File

@@ -0,0 +1,148 @@
# Coffee Crisis Arcade Edition - Fichero de parametros
# Formato: PARAMETRO VALOR
# --- GAME ---
game.item_text_outline_color E0E0E0F0 # Color del outline del texto de los items (RGBA hex)
game.width 320 # Ancho de la resolución nativa del juego (en píxeles)
game.height 240 # Alto de la resolución nativa del juego (en píxeles)
game.play_area.rect.x 0 # Posición X de la zona jugable
game.play_area.rect.y 0 # Posición Y de la zona jugable
game.play_area.rect.w 320 # Ancho de la zona jugable
game.play_area.rect.h 200 # Alto de la zona jugable
game.name_entry_idle_time 10 # Segundos para introducir el nombre al finalizar la partida si no se pulsa nada
game.name_entry_total_time 60 # Segundos totales para introducir el nombre al finalizar la partida
# --- FADE ---
fade.color 1F2B30 # Color hexadecimal para el efecto de fundido
fade.num_squares_width 64 # Número de cuadrados en el eje X para el fundido
fade.num_squares_height 48 # Número de cuadrados en el eje Y para el fundido
fade.random_squares_duration_ms 1200 # Duración del fade en milisegundos
fade.post_duration_ms 500 # Duración tras el fundido en milisegundos
fade.venetian_size 12 # Tamaño de las bandas para el efecto veneciano (en píxeles)
# --- SCOREBOARD ---
scoreboard.rect.x 0 # Posición X del marcador
scoreboard.rect.y 216 # Posición Y del marcador
scoreboard.rect.w 320 # Ancho del marcador
scoreboard.rect.h 40 # Alto del marcador
scoreboard.separator_autocolor true # ¿El separador usa color automático?
scoreboard.separator_color 0D1A2B # Color del separador (hexadecimal)
scoreboard.easy_color 4B692F # Color para la dificultad fácil
scoreboard.normal_color 2E3F47 # Color para la dificultad normal
scoreboard.hard_color 76428A # Color para la dificultad difícil
scoreboard.text_autocolor true # ¿El texto usa color automático?
scoreboard.text_color1 FFFFFF # Color principal del texto del marcador
scoreboard.text_color2 FFFFFF # Color secundario del texto del marcador
scoreboard.skip_countdown_value 8 # Valor para saltar la cuenta atrás (segundos)
# --- TITLE ---
title.press_start_position 180 # Posición Y del texto "Press Start"
title.title_duration 14 # Duración de la pantalla de título (segundos)
title.arcade_edition_position 123 # Posición Y del subtítulo "Arcade Edition"
title.title_c_c_position 80 # Posición Y del título principal
title.bg_color 41526F # Color de fondo en la sección titulo
# --- BACKGROUND ---
background.attenuate_color FFFFFF00 # Color de atenuación del fondo (RGBA hexadecimal)
# --- BALLOONS --- (deltaTime en segundos: vel en pixels/s, grav en pixels/s²)
balloon.settings[0].vel 165.0f # Velocidad inicial del globo 1 (pixels/s)
balloon.settings[0].grav 320.0f # Gravedad aplicada al globo 1 (pixels/s²)
balloon.settings[1].vel 222.0f # Velocidad inicial del globo 2 (pixels/s)
balloon.settings[1].grav 360.0f # Gravedad aplicada al globo 2 (pixels/s²)
balloon.settings[2].vel 282.0f # Velocidad inicial del globo 3 (pixels/s)
balloon.settings[2].grav 360.0f # Gravedad aplicada al globo 3 (pixels/s²)
balloon.settings[3].vel 327.0f # Velocidad inicial del globo 4 (pixels/s)
balloon.settings[3].grav 360.0f # Gravedad aplicada al globo 4 (pixels/s²)
balloon.color[0] blue # Color de creación del globo normal
balloon.color[1] orange # Color del globo normal
balloon.color[2] red # Color de creación del globo que rebota
balloon.color[3] green # Color del globo que rebota
balloon.bouncing_sound false # Indica si los globos hacer sonido al rebotar
# --- NOTIFICATION ---
notification.pos_v TOP # Posición vertical de la notificación (TOP/BOTTOM)
notification.pos_h LEFT # Posición horizontal de la notificación (LEFT/RIGHT)
notification.sound false # ¿La notificación reproduce sonido?
notification.color 303030 # Color de fondo de la notificación (hexadecimal)
# --- SERVICE MENU ---
service_menu.title_color 99FF62 # Color del título del menú de servicio
service_menu.text_color FFFFFF # Color del texto del menú de servicio
service_menu.selected_color FFDC44 # Color de la opción seleccionada en el menú de servicio
service_menu.bg_color 000F00F5 # Color de fondo del menú de servicio (RGBA hexadecimal)
service_menu.drop_shadow false # ¿El menú de servicio tiene sombra?
service_menu.window_message.bg_color 141E32F0 # Color de fondo de ventanas de mensaje (RGBA hexadecimal)
service_menu.window_message.border_color 6496C8FF # Color del borde de ventanas de mensaje (RGBA hexadecimal)
service_menu.window_message.title_color 6496C8FF # Color del título en ventanas de mensaje (RGBA hexadecimal)
service_menu.window_message.text_color DCDCDCFF # Color del texto en ventanas de mensaje (RGBA hexadecimal)
service_menu.window_message.padding 15.0f # Espaciado interno de ventanas de mensaje (píxeles)
service_menu.window_message.line_spacing 5.0f # Espaciado entre líneas de texto (píxeles)
service_menu.window_message.title_separator_spacing 20.0f # Espaciado entre título y contenido (píxeles)
service_menu.window_message.min_width 200.0f # Ancho mínimo de ventanas de mensaje (píxeles)
service_menu.window_message.min_height 32.0f # Alto mínimo de ventanas de mensaje (píxeles)
service_menu.window_message.max_width_ratio 0.8f # Ratio máximo de ancho respecto a pantalla (0.0-1.0)
service_menu.window_message.max_height_ratio 0.8f # Ratio máximo de alto respecto a pantalla (0.0-1.0)
service_menu.window_message.text_safety_margin 15.0f # Margen de seguridad para el texto (píxeles)
service_menu.window_message.animation_duration 0.3f # Duración de animaciones de ventanas (segundos)
# --- INTRO ---
intro.bg_color 4664BD # Color de fondo de la intro
intro.card_color CBDBFC # Color de las tarjetas en la intro
intro.shadow_color 00000080 # Color de la sombra de las tarjetas en la intro
intro.text_distance_from_bottom 48 # Posicion del texto
# --- DEBUG ---
debug.color 00FFFF # Color para elementos de depuración
# --- RESOURCE ---
resource.color FFFFFF # Color de recurso 1
resource.color FFFFFF # Color de recurso 2
# --- TABE ---
tabe.min_spawn_time 2.0f # Tiempo mínimo en minutos para que aparezca el Tabe
tabe.max_spawn_time 3.0f # Tiempo máximo en minutos para que aparezca el Tabe
# --- PLAYER ---
# Jugador 1 - Camiseta por defecto
player.default_shirt[0].darkest 028ECFFF # Tono más oscuro - bordes y contornos (Jugador 1, por defecto)
player.default_shirt[0].dark 0297DBFF # Tono oscuro - sombras (Jugador 1, por defecto)
player.default_shirt[0].base 029FE8FF # Tono principal - color base (Jugador 1, por defecto)
player.default_shirt[0].light 03A9F4FF # Tono claro - zonas iluminadas (Jugador 1, por defecto)
# Jugador 2 - Camiseta por defecto
player.default_shirt[1].darkest 8E8E8EFF # Tono más oscuro - bordes y contornos (Jugador 2, por defecto)
player.default_shirt[1].dark AEADADFF # Tono oscuro - sombras (Jugador 2, por defecto)
player.default_shirt[1].base E4E4E4FF # Tono principal - color base (Jugador 2, por defecto)
player.default_shirt[1].light F7F1F1FF # Tono claro - zonas iluminadas (Jugador 2, por defecto)
# Jugador 1 - Camiseta con 1 café
player.one_coffee_shirt[0].darkest 3D9C70FF # Tono más oscuro - bordes y contornos (Jugador 1, 1 café)
player.one_coffee_shirt[0].dark 4FA370FF # Tono oscuro - sombras (Jugador 1, 1 café)
player.one_coffee_shirt[0].base 5DDE70FF # Tono principal - color base (Jugador 1, 1 café)
player.one_coffee_shirt[0].light 7DF25CFF # Tono claro - zonas iluminadas (Jugador 1, 1 café)
# Jugador 1 - Camiseta con 2 cafés
player.two_coffee_shirt[0].darkest D6A41AFF # Tono más oscuro - bordes y contornos (Jugador 1, 2 cafés)
player.two_coffee_shirt[0].dark E3AE1BFF # Tono oscuro - sombras (Jugador 1, 2 cafés)
player.two_coffee_shirt[0].base EFB71DFF # Tono principal - color base (Jugador 1, 2 cafés)
player.two_coffee_shirt[0].light FCC11EFF # Tono claro - zonas iluminadas (Jugador 1, 2 cafés)
# Jugador 2 - Camiseta con 1 café
player.one_coffee_shirt[1].darkest 2E8B57FF # Tono más oscuro - bordes y contornos (Jugador 2, 1 café)
player.one_coffee_shirt[1].dark 3CB371FF # Tono oscuro - sombras (Jugador 2, 1 café)
player.one_coffee_shirt[1].base 48D181FF # Tono principal - color base (Jugador 2, 1 café)
player.one_coffee_shirt[1].light 55EF8DFF # Tono claro - zonas iluminadas (Jugador 2, 1 café)
# Jugador 2 - Camiseta con 2 cafés
player.two_coffee_shirt[1].darkest E08500FF # Tono más oscuro - bordes y contornos (Jugador 2, 2 cafés)
player.two_coffee_shirt[1].dark FA7D00FF # Tono oscuro - sombras (Jugador 2, 2 cafés)
player.two_coffee_shirt[1].base FAA200FF # Tono principal - color base (Jugador 2, 2 cafés)
player.two_coffee_shirt[1].light FA8500FF # Tono claro - zonas iluminadas (Jugador 2, 2 cafés)
# Colores de contorno de los jugadores
player.outline_color[0] 66323FFF # Color del contorno del sprite del Jugador 1
player.outline_color[1] 422028FF # Color del contorno del sprite del Jugador 2

147
config/param_320x256.txt Normal file
View File

@@ -0,0 +1,147 @@
# Coffee Crisis Arcade Edition - Fichero de parametros
# Formato: PARAMETRO VALOR
# --- GAME ---
game.item_text_outline_color E0E0E0F0 # Color del outline del texto de los items (RGBA hex)
game.width 320 # Ancho de la resolución nativa del juego (en píxeles)
game.height 256 # Alto de la resolución nativa del juego (en píxeles)
game.play_area.rect.x 0 # Posición X de la zona jugable
game.play_area.rect.y 0 # Posición Y de la zona jugable
game.play_area.rect.w 320 # Ancho de la zona jugable
game.play_area.rect.h 216 # Alto de la zona jugable
game.name_entry_idle_time 10 # Segundos para introducir el nombre al finalizar la partida si no se pulsa nada
game.name_entry_total_time 60 # Segundos totales para introducir el nombre al finalizar la partida
# --- FADE ---
fade.color 1F2B30 # Color hexadecimal para el efecto de fundido
fade.num_squares_width 64 # Número de cuadrados en el eje X para el fundido
fade.num_squares_height 48 # Número de cuadrados en el eje Y para el fundido
fade.random_squares_duration_ms 1200 # Duración del fade en milisegundos
fade.post_duration_ms 500 # Duración tras el fundido en milisegundos
fade.venetian_size 12 # Tamaño de las bandas para el efecto veneciano (en píxeles)
# --- SCOREBOARD ---
scoreboard.rect.x 0 # Posición X del marcador
scoreboard.rect.y 216 # Posición Y del marcador
scoreboard.rect.w 320 # Ancho del marcador
scoreboard.rect.h 40 # Alto del marcador
scoreboard.separator_autocolor true # ¿El separador usa color automático?
scoreboard.separator_color 0D1A2B # Color del separador (hexadecimal)
scoreboard.easy_color 4B692F # Color para la dificultad fácil
scoreboard.normal_color 2E3F47 # Color para la dificultad normal
scoreboard.hard_color 76428A # Color para la dificultad difícil
scoreboard.text_autocolor true # ¿El texto usa color automático?
scoreboard.text_color1 FFFFFF # Color principal del texto del marcador
scoreboard.text_color2 FFFFFF # Color secundario del texto del marcador
scoreboard.skip_countdown_value 8 # Valor para saltar la cuenta atrás (segundos)
# --- TITLE ---
title.press_start_position 180 # Posición Y del texto "Press Start"
title.title_duration 14 # Duración de la pantalla de título (segundos)
title.arcade_edition_position 123 # Posición Y del subtítulo "Arcade Edition"
title.title_c_c_position 80 # Posición Y del título principal
title.bg_color 41526F # Color de fondo en la sección titulo
# --- BACKGROUND ---
background.attenuate_color FFFFFF00 # Color de atenuación del fondo (RGBA hexadecimal)
# --- BALLOONS --- (deltaTime en segundos: vel en pixels/s, grav en pixels/s²)
balloon.settings[0].vel 165.0f # Velocidad inicial del globo 1 (pixels/s)
balloon.settings[0].grav 320.0f # Gravedad aplicada al globo 1 (pixels/s²)
balloon.settings[1].vel 222.0f # Velocidad inicial del globo 2 (pixels/s)
balloon.settings[1].grav 360.0f # Gravedad aplicada al globo 2 (pixels/s²)
balloon.settings[2].vel 282.0f # Velocidad inicial del globo 3 (pixels/s)
balloon.settings[2].grav 360.0f # Gravedad aplicada al globo 3 (pixels/s²)
balloon.settings[3].vel 327.0f # Velocidad inicial del globo 4 (pixels/s)
balloon.settings[3].grav 360.0f # Gravedad aplicada al globo 4 (pixels/s²)
balloon.color[0] blue # Color de creación del globo normal
balloon.color[1] orange # Color del globo normal
balloon.color[2] red # Color de creación del globo que rebota
balloon.color[3] green # Color del globo que rebota
balloon.bouncing_sound false # Indica si los globos hacer sonido al rebotar
# --- NOTIFICATION ---
notification.pos_v TOP # Posición vertical de la notificación (TOP/BOTTOM)
notification.pos_h LEFT # Posición horizontal de la notificación (LEFT/RIGHT)
notification.sound false # ¿La notificación reproduce sonido?
notification.color 303030 # Color de fondo de la notificación (hexadecimal)
# --- SERVICE MENU ---
service_menu.title_color 99FF62 # Color del título del menú de servicio
service_menu.text_color FFFFFF # Color del texto del menú de servicio
service_menu.selected_color FFDC44 # Color de la opción seleccionada en el menú de servicio
service_menu.bg_color 000F00F5 # Color de fondo del menú de servicio (RGBA hexadecimal)
service_menu.drop_shadow false # ¿El menú de servicio tiene sombra?
service_menu.window_message.bg_color 141E32F0 # Color de fondo de ventanas de mensaje (RGBA hexadecimal)
service_menu.window_message.border_color 6496C8FF # Color del borde de ventanas de mensaje (RGBA hexadecimal)
service_menu.window_message.title_color 6496C8FF # Color del título en ventanas de mensaje (RGBA hexadecimal)
service_menu.window_message.text_color DCDCDCFF # Color del texto en ventanas de mensaje (RGBA hexadecimal)
service_menu.window_message.padding 15.0f # Espaciado interno de ventanas de mensaje (píxeles)
service_menu.window_message.line_spacing 5.0f # Espaciado entre líneas de texto (píxeles)
service_menu.window_message.title_separator_spacing 20.0f # Espaciado entre título y contenido (píxeles)
service_menu.window_message.min_width 200.0f # Ancho mínimo de ventanas de mensaje (píxeles)
service_menu.window_message.min_height 32.0f # Alto mínimo de ventanas de mensaje (píxeles)
service_menu.window_message.max_width_ratio 0.8f # Ratio máximo de ancho respecto a pantalla (0.0-1.0)
service_menu.window_message.max_height_ratio 0.8f # Ratio máximo de alto respecto a pantalla (0.0-1.0)
service_menu.window_message.text_safety_margin 15.0f # Margen de seguridad para el texto (píxeles)
service_menu.window_message.animation_duration 0.3f # Duración de animaciones de ventanas (segundos)
# --- INTRO ---
intro.bg_color 4664BD # Color de fondo de la intro
intro.card_color CBDBFC # Color de las tarjetas en la intro
intro.shadow_color 00000080 # Color de la sombra de las tarjetas en la intro
intro.text_distance_from_bottom 48 # Posición del texto desde la parte inferior
# --- DEBUG ---
debug.color 00FFFF # Color para elementos de depuración
# --- RESOURCE ---
resource.color FFFFFF # Color de recursos
# --- TABE ---
tabe.min_spawn_time 2.0f # Tiempo mínimo en segundos para que aparezca el Tabe
tabe.max_spawn_time 3.0f # Tiempo máximo en segundos para que aparezca el Tabe
# --- PLAYER ---
# Jugador 1 - Camiseta por defecto
player.default_shirt[0].darkest 028ECFFF # Tono más oscuro - bordes y contornos (Jugador 1, por defecto)
player.default_shirt[0].dark 0297DBFF # Tono oscuro - sombras (Jugador 1, por defecto)
player.default_shirt[0].base 029FE8FF # Tono principal - color base (Jugador 1, por defecto)
player.default_shirt[0].light 03A9F4FF # Tono claro - zonas iluminadas (Jugador 1, por defecto)
# Jugador 2 - Camiseta por defecto
player.default_shirt[1].darkest 8E8E8EFF # Tono más oscuro - bordes y contornos (Jugador 2, por defecto)
player.default_shirt[1].dark AEADADFF # Tono oscuro - sombras (Jugador 2, por defecto)
player.default_shirt[1].base E4E4E4FF # Tono principal - color base (Jugador 2, por defecto)
player.default_shirt[1].light F7F1F1FF # Tono claro - zonas iluminadas (Jugador 2, por defecto)
# Jugador 1 - Camiseta con 1 café
player.one_coffee_shirt[0].darkest 3D9C70FF # Tono más oscuro - bordes y contornos (Jugador 1, 1 café)
player.one_coffee_shirt[0].dark 4FA370FF # Tono oscuro - sombras (Jugador 1, 1 café)
player.one_coffee_shirt[0].base 5DDE70FF # Tono principal - color base (Jugador 1, 1 café)
player.one_coffee_shirt[0].light 7DF25CFF # Tono claro - zonas iluminadas (Jugador 1, 1 café)
# Jugador 1 - Camiseta con 2 cafés
player.two_coffee_shirt[0].darkest D6A41AFF # Tono más oscuro - bordes y contornos (Jugador 1, 2 cafés)
player.two_coffee_shirt[0].dark E3AE1BFF # Tono oscuro - sombras (Jugador 1, 2 cafés)
player.two_coffee_shirt[0].base EFB71DFF # Tono principal - color base (Jugador 1, 2 cafés)
player.two_coffee_shirt[0].light FCC11EFF # Tono claro - zonas iluminadas (Jugador 1, 2 cafés)
# Jugador 2 - Camiseta con 1 café
player.one_coffee_shirt[1].darkest 2E8B57FF # Tono más oscuro - bordes y contornos (Jugador 2, 1 café)
player.one_coffee_shirt[1].dark 3CB371FF # Tono oscuro - sombras (Jugador 2, 1 café)
player.one_coffee_shirt[1].base 48D181FF # Tono principal - color base (Jugador 2, 1 café)
player.one_coffee_shirt[1].light 55EF8DFF # Tono claro - zonas iluminadas (Jugador 2, 1 café)
# Jugador 2 - Camiseta con 2 cafés
player.two_coffee_shirt[1].darkest E08500FF # Tono más oscuro - bordes y contornos (Jugador 2, 2 cafés)
player.two_coffee_shirt[1].dark FA7D00FF # Tono oscuro - sombras (Jugador 2, 2 cafés)
player.two_coffee_shirt[1].base FAA200FF # Tono principal - color base (Jugador 2, 2 cafés)
player.two_coffee_shirt[1].light FA8500FF # Tono claro - zonas iluminadas (Jugador 2, 2 cafés)
# Colores de contorno de los jugadores
player.outline_color[0] 66323FFF # Color del contorno del sprite del Jugador 1
player.outline_color[1] 422028FF # Color del contorno del sprite del Jugador 2

150
config/param_red.txt Normal file
View File

@@ -0,0 +1,150 @@
# Coffee Crisis Arcade Edition - Fichero de parametros - RED THEME
# Formato: PARAMETRO VALOR
# --- GAME ---
game.item_size 20 # Tamaño de los items del juego (en píxeles)
game.item_text_outline_color FFB8B8F0 # Color del outline del texto de los items (RGBA hex) - Rojo claro
game.width 320 # Ancho de la resolución nativa del juego (en píxeles)
game.height 256 # Alto de la resolución nativa del juego (en píxeles)
game.play_area.rect.x 0 # Posición X de la zona jugable
game.play_area.rect.y 0 # Posición Y de la zona jugable
game.play_area.rect.w 320 # Ancho de la zona jugable
game.play_area.rect.h 216 # Alto de la zona jugable
game.name_entry_idle_time 10 # Segundos para introducir el nombre al finalizar la partida si no se pulsa nada
game.name_entry_total_time 60 # Segundos totales para introducir el nombre al finalizar la partida
game.hit_stop false # Indica si debe haber un paro cuando el jugador es golpeado por un globo
game.hit_stop_ms 500 # Cantidad de milisegundos que dura el hit_stop
# --- FADE ---
fade.color 5C1F1F # Color hexadecimal para el efecto de fundido - Rojo oscuro
fade.num_squares_width 64 # Número de cuadrados en el eje X para el fundido
fade.num_squares_height 48 # Número de cuadrados en el eje Y para el fundido
fade.random_squares_duration_ms 1200 # Duración del fade en milisegundos
fade.post_duration_ms 500 # Duración tras el fundido en milisegundos
fade.venetian_size 12 # Tamaño de las bandas para el efecto veneciano (en píxeles)
# --- SCOREBOARD ---
scoreboard.rect.x 0 # Posición X del marcador
scoreboard.rect.y 216 # Posición Y del marcador
scoreboard.rect.w 320 # Ancho del marcador
scoreboard.rect.h 40 # Alto del marcador
scoreboard.separator_autocolor true # ¿El separador usa color automático?
scoreboard.separator_color 2B0D0D # Color del separador - Rojo muy oscuro
scoreboard.easy_color 8B4A2F # Color para la dificultad fácil - Marrón rojizo
scoreboard.normal_color 6B2F2F # Color para la dificultad normal - Rojo medio
scoreboard.hard_color A73030 # Color para la dificultad difícil - Rojo fuerte
scoreboard.text_autocolor true # ¿El texto usa color automático?
scoreboard.text_color1 FFE6E6 # Color principal del texto del marcador - Blanco rosado
scoreboard.text_color2 FFE6E6 # Color secundario del texto del marcador - Blanco rosado
scoreboard.skip_countdown_value 8 # Valor para saltar la cuenta atrás (segundos)
# --- TITLE ---
title.press_start_position 180 # Posición Y del texto "Press Start"
title.title_duration 800 # Duración de la pantalla de título (frames)
title.arcade_edition_position 123 # Posición Y del subtítulo "Arcade Edition"
title.title_c_c_position 80 # Posición Y del título principal
title.bg_color 8B4A3A # Color de fondo en la sección titulo - Marrón rojizo
# --- BACKGROUND ---
background.attenuate_color FF4A3A40 # Color de atenuación del fondo (RGBA hexadecimal) - Blanco rosado
# --- BALLOONS ---
balloon.settings[0].vel 2.75f # Velocidad inicial del globo 1
balloon.settings[0].grav 0.09f # Gravedad aplicada al globo 1
balloon.settings[1].vel 3.70f # Velocidad inicial del globo 2
balloon.settings[1].grav 0.10f # Gravedad aplicada al globo 2
balloon.settings[2].vel 4.70f # Velocidad inicial del globo 3
balloon.settings[2].grav 0.10f # Gravedad aplicada al globo 3
balloon.settings[3].vel 5.45f # Velocidad inicial del globo 4
balloon.settings[3].grav 0.10f # Gravedad aplicada al globo 4
balloon.color[0] orange # Color de creación del globo normal
balloon.color[1] red # Color del globo normal
balloon.color[2] blue # Color de creación del globo que rebota
balloon.color[3] green # Color del globo que rebota
balloon.bouncing_sound false # Indica si los globos hacer sonido al rebotar
# --- NOTIFICATION ---
notification.pos_v TOP # Posición vertical de la notificación (TOP/BOTTOM)
notification.pos_h LEFT # Posición horizontal de la notificación (LEFT/RIGHT)
notification.sound false # ¿La notificación reproduce sonido?
notification.color 4D1A1A # Color de fondo de la notificación - Rojo oscuro
# --- SERVICE MENU ---
service_menu.title_color FF9966 # Color del título del menú de servicio - Naranja claro
service_menu.text_color FFE6E6 # Color del texto del menú de servicio - Blanco rosado
service_menu.selected_color FFB366 # Color de la opción seleccionada - Naranja dorado
service_menu.bg_color 331A0AF5 # Color de fondo del menú de servicio - Marrón rojizo oscuro con alpha
service_menu.drop_shadow false # ¿El menú de servicio tiene sombra?
service_menu.window_message.bg_color 4D1A1AF0 # Color de fondo de ventanas - Rojo oscuro con alpha
service_menu.window_message.border_color CC6633FF # Color del borde de ventanas - Naranja rojizo
service_menu.window_message.title_color CC6633FF # Color del título en ventanas - Naranja rojizo
service_menu.window_message.text_color FFE6E6FF # Color del texto en ventanas - Blanco rosado
service_menu.window_message.padding 15.0f # Espaciado interno de ventanas de mensaje (píxeles)
service_menu.window_message.line_spacing 5.0f # Espaciado entre líneas de texto (píxeles)
service_menu.window_message.title_separator_spacing 20.0f # Espaciado entre título y contenido (píxeles)
service_menu.window_message.min_width 200.0f # Ancho mínimo de ventanas de mensaje (píxeles)
service_menu.window_message.min_height 32.0f # Alto mínimo de ventanas de mensaje (píxeles)
service_menu.window_message.max_width_ratio 0.8f # Ratio máximo de ancho respecto a pantalla (0.0-1.0)
service_menu.window_message.max_height_ratio 0.8f # Ratio máximo de alto respecto a pantalla (0.0-1.0)
service_menu.window_message.text_safety_margin 15.0f # Margen de seguridad para el texto (píxeles)
service_menu.window_message.animation_duration 0.3f # Duración de animaciones de ventanas (segundos)
# --- INTRO ---
intro.bg_color B8664D # Color de fondo de la intro - Naranja tierra
intro.card_color FFE6CC # Color de las tarjetas en la intro - Crema rojizo
intro.shadow_color 66000080 # Color de la sombra de las tarjetas - Rojo muy oscuro con alpha
intro.text_distance_from_bottom 48 # Posición del texto desde la parte inferior
# --- DEBUG ---
debug.color FF6666 # Color para elementos de depuración - Rojo claro
# --- RESOURCE ---
resource.color FFE6E6 # Color de recursos - Blanco rosado
# --- TABE ---
tabe.min_spawn_time 2.0f # Tiempo mínimo en segundos para que aparezca el Tabe
tabe.max_spawn_time 3.0f # Tiempo máximo en segundos para que aparezca el Tabe
# --- PLAYER ---
# Jugador 1 - Camiseta por defecto (tonos rojos)
player.default_shirt[0].darkest B33030FF # Tono más oscuro - Rojo fuerte
player.default_shirt[0].dark CC4040FF # Tono oscuro - Rojo medio
player.default_shirt[0].base E65050FF # Tono principal - Rojo claro
player.default_shirt[0].light FF6666FF # Tono claro - Rojo muy claro
# Jugador 2 - Camiseta por defecto (tonos naranjas)
player.default_shirt[1].darkest B36030FF # Tono más oscuro - Naranja oscuro
player.default_shirt[1].dark CC7540FF # Tono oscuro - Naranja medio
player.default_shirt[1].base E68A50FF # Tono principal - Naranja claro
player.default_shirt[1].light FF9966FF # Tono claro - Naranja muy claro
# Jugador 1 - Camiseta con 1 café (tonos rojizos más intensos)
player.one_coffee_shirt[0].darkest 8B2635FF # Tono más oscuro - Rojo granate
player.one_coffee_shirt[0].dark A53040FF # Tono oscuro - Rojo granate claro
player.one_coffee_shirt[0].base BF3A50FF # Tono principal - Rojo vibrante
player.one_coffee_shirt[0].light D94460FF # Tono claro - Rojo vibrante claro
# Jugador 1 - Camiseta con 2 cafés (tonos naranja dorado)
player.two_coffee_shirt[0].darkest CC6600FF # Tono más oscuro - Naranja dorado oscuro
player.two_coffee_shirt[0].dark E6750AFF # Tono oscuro - Naranja dorado
player.two_coffee_shirt[0].base FF8514FF # Tono principal - Naranja dorado claro
player.two_coffee_shirt[0].light FF991EFF # Tono claro - Naranja dorado muy claro
# Jugador 2 - Camiseta con 1 café (tonos terracotas)
player.one_coffee_shirt[1].darkest A0472DFF # Tono más oscuro - Terracota oscuro
player.one_coffee_shirt[1].dark B8553AFF # Tono oscuro - Terracota medio
player.one_coffee_shirt[1].base D06347FF # Tono principal - Terracota claro
player.one_coffee_shirt[1].light E87154FF # Tono claro - Terracota muy claro
# Jugador 2 - Camiseta con 2 cafés (tonos naranjas cálidos)
player.two_coffee_shirt[1].darkest CC5500FF # Tono más oscuro - Naranja intenso
player.two_coffee_shirt[1].dark E66600FF # Tono oscuro - Naranja fuerte
player.two_coffee_shirt[1].base FF7700FF # Tono principal - Naranja brillante
player.two_coffee_shirt[1].light FF8800FF # Tono claro - Naranja muy brillante
# Colores de contorno de los jugadores
player.outline_color[0] 994D33FF # Color del contorno del Jugador 1 - Marrón rojizo
player.outline_color[1] 664433FF # Color del contorno del Jugador 2 - Marrón tierra

34
config/pools.txt Normal file
View File

@@ -0,0 +1,34 @@
# Coffee Crisis Arcade Edition - Archivo de configuración de pools de formaciones de globos
# Formato: POOL: <id> FORMATIONS: <id1>, <id2>, <id3>, ...
# Los IDs de formación pueden repetirse
# Los pools no necesitan estar ordenados ni ser consecutivos
# Pool para la fase 1
POOL: 0 FORMATIONS: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9
# Pool para la fase 2
POOL: 1 FORMATIONS: 10, 11, 12, 13, 14, 15, 16, 17, 18, 19
# Pool para la fase 3
POOL: 2 FORMATIONS: 0, 1, 2, 3, 4, 55, 56, 57, 58, 59
# Pool para la fase 4
POOL: 3 FORMATIONS: 50, 51, 52, 53, 54, 5, 6, 7, 8, 9
# Pool para la fase 5
POOL: 4 FORMATIONS: 60, 61, 62, 63, 64, 65, 66, 67, 68, 69
# Pool para la fase 6
POOL: 5 FORMATIONS: 10, 61, 12, 63, 14, 65, 16, 67, 18, 69
# Pool para la fase 7
POOL: 6 FORMATIONS: 60, 11, 62, 13, 64, 15, 66, 17, 68, 19
# Pool para la fase 8
POOL: 7 FORMATIONS: 20, 21, 22, 23, 24, 65, 66, 67, 68, 69
# Pool para la fase 9
POOL: 8 FORMATIONS: 70, 71, 72, 73, 74, 15, 16, 17, 18, 19
# Pool para la fase 10
POOL: 9 FORMATIONS: 20, 21, 22, 23, 24, 70, 71, 72, 73, 74

19
config/stages.txt Normal file
View File

@@ -0,0 +1,19 @@
# Coffee Crisis Arcade Edition - Archivo de configuración de fases
# Formato: power_to_complete,min_menace,max_menace,name
# Líneas que empiezan con # son comentarios y se ignoran
# Fases iniciales - Tutorial y aprendizaje
200, 11, 19, Tutorial
300, 15, 23, Primeros pasos
# Fases intermedias - Incremento de dificultad
400, 19, 27, Intensificación
400, 19, 27, Persistencia
400, 23, 31, Desafío medio
400, 23, 31, Resistencia
# Fases avanzadas - Desafío final
600, 27, 35, Aproximación final
600, 27, 35, Penúltimo obstáculo
700, 31, 39, Clímax
950, 35, 47, Maestría

Binary file not shown.

File diff suppressed because it is too large Load Diff

BIN
data/demo/demo1.bin Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

BIN
data/demo/demo2.bin Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

BIN
data/demo/demo3.bin Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

BIN
data/font/04b_25.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.2 KiB

View File

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

BIN
data/font/04b_25_2x.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.9 KiB

View File

@@ -1,43 +1,43 @@
# box width
16
28
# box height
16
28
# 32 espacio ( )
16
# 33 !
16
10
# 34 "
16
# 35 #
16
# 35
20
# 36 $
16
20
# 37 %
16
18
# 38 &
16
22
# 39 '
16
10
# 40 (
16
14
# 41 )
16
14
# 42 *
16
14
# 43 +
16
18
# 44 ,
16
10
# 45 -
16
18
# 46 .
16
10
# 47 /
16
24
# 48 0
16
# 49 1
16
12
# 50 2
16
# 51 3
@@ -55,9 +55,9 @@
# 57 9
16
# 58 :
16
10
# 59 ;
16
10
# 60 <
16
# 61 =
@@ -67,7 +67,7 @@
# 63 ?
16
# 64 @
16
22
# 65 A
16
# 66 B
@@ -85,7 +85,7 @@
# 72 H
16
# 73 I
16
10
# 74 J
16
# 75 K
@@ -93,7 +93,7 @@
# 76 L
16
# 77 M
16
22
# 78 N
16
# 79 O
@@ -107,13 +107,13 @@
# 83 S
16
# 84 T
16
18
# 85 U
16
# 86 V
16
# 87 W
16
22
# 88 X
16
# 89 Y
@@ -121,17 +121,17 @@
# 90 Z
16
# 91 [
16
14
# 92 \
16
22
# 93 ]
16
14
# 94 ^
16
12
# 95 _
16
14
# 96 `
16
12
# 97 a
16
# 98 b
@@ -149,7 +149,7 @@
# 104 h
16
# 105 i
16
10
# 106 j
16
# 107 k
@@ -157,7 +157,7 @@
# 108 l
16
# 109 m
16
22
# 110 n
16
# 111 o
@@ -171,13 +171,13 @@
# 115 s
16
# 116 t
16
18
# 117 u
16
# 118 v
16
# 119 w
16
22
# 120 x
16
# 121 y
@@ -185,10 +185,10 @@
# 122 z
16
# 123 {
16
2
# 124 |
16
2
# 125 }
16
2
# 126 ~
16
2

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.2 KiB

BIN
data/font/04b_25_flat.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.9 KiB

BIN
data/font/04b_25_grey.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.1 KiB

BIN
data/font/04b_25_metal.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.0 KiB

BIN
data/font/04b_25_white.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 KiB

After

Width:  |  Height:  |  Size: 1.1 KiB

View File

@@ -185,7 +185,7 @@
# 122 z
5
# 123 {
3
7
# 124 |
2
# 125 }

BIN
data/font/aseprite.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 678 B

View File

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

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.1 KiB

View File

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

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.3 KiB

After

Width:  |  Height:  |  Size: 882 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.2 KiB

BIN
data/font/smb2_grad.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 872 B

View File

@@ -0,0 +1,30 @@
frame_width=10
frame_height=10
[animation]
name=orange
speed=0.1667
loop=0
frames=0,1,2,3,4,5,6,7,8,9
[/animation]
[animation]
name=blue
speed=0.3333
loop=0
frames=10,11,12,13,14,15,16,17,18,19
[/animation]
[animation]
name=green
speed=0.1667
loop=0
frames=20,21,22,23,24,25,26,27,28,29
[/animation]
[animation]
name=red
speed=0.3333
loop=0
frames=30,31,32,33,34,35,36,37,38,39
[/animation]

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.0 KiB

View File

@@ -0,0 +1,30 @@
frame_width=16
frame_height=16
[animation]
name=orange
speed=0.1667
loop=0
frames=0,1,2,3,4,5,6,7,8,9
[/animation]
[animation]
name=blue
speed=0.3333
loop=0
frames=10,11,12,13,14,15,16,17,18,19
[/animation]
[animation]
name=green
speed=0.1667
loop=0
frames=20,21,22,23,24,25,26,27,28,29
[/animation]
[animation]
name=red
speed=0.3333
loop=0
frames=30,31,32,33,34,35,36,37,38,39
[/animation]

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.8 KiB

View File

@@ -0,0 +1,30 @@
frame_width=26
frame_height=26
[animation]
name=orange
speed=0.1667
loop=0
frames=0,1,2,3,4,5,6,7,8,9
[/animation]
[animation]
name=blue
speed=0.3333
loop=0
frames=10,11,12,13,14,15,16,17,18,19
[/animation]
[animation]
name=green
speed=0.1667
loop=0
frames=20,21,22,23,24,25,26,27,28,29
[/animation]
[animation]
name=red
speed=0.3333
loop=0
frames=30,31,32,33,34,35,36,37,38,39
[/animation]

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.0 KiB

View File

@@ -0,0 +1,30 @@
frame_width=48
frame_height=48
[animation]
name=orange
speed=0.1667
loop=0
frames=0,1,2,3,4,5,6,7,8,9
[/animation]
[animation]
name=blue
speed=0.3333
loop=0
frames=10,11,12,13,14,15,16,17,18,19
[/animation]
[animation]
name=green
speed=0.1667
loop=0
frames=20,21,22,23,24,25,26,27,28,29
[/animation]
[animation]
name=red
speed=0.3333
loop=0
frames=30,31,32,33,34,35,36,37,38,39
[/animation]

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

View File

@@ -0,0 +1,9 @@
frame_width=10
frame_height=10
[animation]
name=default
speed=0.0833
loop=-1
frames=0,1,2,3,4,5,6,7,8,9
[/animation]

Binary file not shown.

After

Width:  |  Height:  |  Size: 760 B

View File

@@ -0,0 +1,9 @@
frame_width=16
frame_height=16
[animation]
name=default
speed=0.0833
loop=-1
frames=0,1,2,3,4,5,6,7,8,9
[/animation]

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

View File

@@ -0,0 +1,9 @@
frame_width=26
frame_height=26
[animation]
name=default
speed=0.0833
loop=-1
frames=0,1,2,3,4,5,6,7,8,9
[/animation]

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.0 KiB

View File

@@ -0,0 +1,9 @@
frame_width=48
frame_height=48
[animation]
name=default
speed=0.0833
loop=-1
frames=0,1,2,3,4,5,6,7,8,9
[/animation]

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.1 KiB

View File

@@ -0,0 +1,9 @@
frame_width=49
frame_height=49
[animation]
name=powerball
speed=0.0167
loop=-1
frames=1
[/animation]

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

View File

@@ -1,37 +0,0 @@
frameWidth=8
frameHeight=8
[animation]
name=orange
speed=10
loop=0
frames=0,1,2,3,4,5,6,7,8,9
[/animation]
[animation]
name=blue
speed=20
loop=0
frames=12,13,14,15,16,17,18,19,20,21
[/animation]
[animation]
name=green
speed=10
loop=0
frames=24,25,26,27,28,29,30,31,32,33
[/animation]
[animation]
name=red
speed=20
loop=0
frames=36,37,38,39,40,41,42,43,44,45
[/animation]
[animation]
name=pop
speed=5
loop=-1
frames=48,49,50,51,52,53,54,55,56,57,58,59
[/animation]

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.8 KiB

View File

@@ -1,37 +0,0 @@
frameWidth=13
frameHeight=13
[animation]
name=orange
speed=10
loop=0
frames=0,1,2,3,4,5,6,7,8,9
[/animation]
[animation]
name=blue
speed=20
loop=0
frames=12,13,14,15,16,17,18,19,20,21
[/animation]
[animation]
name=green
speed=10
loop=0
frames=24,25,26,27,28,29,30,31,32,33
[/animation]
[animation]
name=red
speed=20
loop=0
frames=36,37,38,39,40,41,42,43,44,45
[/animation]
[animation]
name=pop
speed=5
loop=-1
frames=48,49,50,51,52,53,54,55,56,57,58,59
[/animation]

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.5 KiB

View File

@@ -1,37 +0,0 @@
frameWidth=21
frameHeight=21
[animation]
name=orange
speed=10
loop=0
frames=0,1,2,3,4,5,6,7,8,9
[/animation]
[animation]
name=blue
speed=20
loop=0
frames=12,13,14,15,16,17,18,19,20,21
[/animation]
[animation]
name=green
speed=10
loop=0
frames=24,25,26,27,28,29,30,31,32,33
[/animation]
[animation]
name=red
speed=20
loop=0
frames=36,37,38,39,40,41,42,43,44,45
[/animation]
[animation]
name=pop
speed=5
loop=-1
frames=48,49,50,51,52,53,54,55,56,57,58,59
[/animation]

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.1 KiB

View File

@@ -1,44 +0,0 @@
frameWidth=37
frameHeight=37
[animation]
name=orange
speed=10
loop=0
frames=0,1,2,3,4,5,6,7,8,9
[/animation]
[animation]
name=blue
speed=20
loop=0
frames=12,13,14,15,16,17,18,19,20,21
[/animation]
[animation]
name=green
speed=10
loop=0
frames=24,25,26,27,28,29,30,31,32,33
[/animation]
[animation]
name=red
speed=20
loop=0
frames=36,37,38,39,40,41,42,43,44,45
[/animation]
[animation]
name=powerball
speed=10
loop=0
frames=10
[/animation]
[animation]
name=pop
speed=5
loop=-1
frames=48,49,50,51,52,53,54,55,56,57,58,59
[/animation]

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 644 B

View File

@@ -0,0 +1,86 @@
frame_width=12
frame_height=12
[animation]
name=yellow_up
speed=20
loop=-1
frames=0
[/animation]
[animation]
name=yellow_left
speed=20
loop=-1
frames=1
[/animation]
[animation]
name=yellow_right
speed=20
loop=-1
frames=2
[/animation]
[animation]
name=green_up
speed=20
loop=-1
frames=3
[/animation]
[animation]
name=green_left
speed=20
loop=-1
frames=4
[/animation]
[animation]
name=green_right
speed=20
loop=-1
frames=5
[/animation]
[animation]
name=red_up
speed=20
loop=-1
frames=6
[/animation]
[animation]
name=red_left
speed=20
loop=-1
frames=7
[/animation]
[animation]
name=red_right
speed=20
loop=-1
frames=8
[/animation]
[animation]
name=purple_up
speed=20
loop=-1
frames=9
[/animation]
[animation]
name=purple_left
speed=20
loop=-1
frames=10
[/animation]
[animation]
name=purple_right
speed=20
loop=-1
frames=11
[/animation]

BIN
data/gfx/bullet/bullet.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 25 KiB

View File

@@ -0,0 +1,9 @@
frame_width=320
frame_height=10
[animation]
name=default
speed=0.2
loop=0
frames=0,1,2,1
[/animation]

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

BIN
data/gfx/game/game_moon.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 145 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.3 KiB

BIN
data/gfx/game/game_sun.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 935 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 468 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 270 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 438 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 KiB

BIN
data/gfx/intro/intro1.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 52 KiB

BIN
data/gfx/intro/intro2.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.8 KiB

BIN
data/gfx/intro/intro3.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.9 KiB

BIN
data/gfx/intro/intro4.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.9 KiB

BIN
data/gfx/intro/intro5.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.7 KiB

BIN
data/gfx/intro/intro6.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.4 KiB

View File

@@ -0,0 +1,16 @@
frame_width=20
frame_height=20
[animation]
name=blink
speed=0.2
loop=0
frames=0,1
[/animation]
[animation]
name=no-blink
speed=0
loop=-1
frames=1
[/animation]

Binary file not shown.

After

Width:  |  Height:  |  Size: 363 B

View File

@@ -0,0 +1,16 @@
frame_width=20
frame_height=20
[animation]
name=blink
speed=0.2
loop=0
frames=0,1
[/animation]
[animation]
name=no-blink
speed=0
loop=-1
frames=1
[/animation]

Binary file not shown.

After

Width:  |  Height:  |  Size: 563 B

View File

@@ -0,0 +1,9 @@
frame_width=32
frame_height=39
[animation]
name=default
speed=0.1
loop=0
frames=0,1,2,3,4,5,6,7,8
[/animation]

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

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