JailDesigner
bbcc10da81
refactor: JI_* a Ji:: i JG_* a Jg::
2026-05-16 14:43:16 +02:00
JailDesigner
9d30dd538c
fix: tidy modulegame (enums UPPER_CASE, draw/update camelBack, membres _)
2026-05-16 14:40:18 +02:00
JailDesigner
1e00f5c3a4
fix: tidy gamepad/overlay/jfile (statics sense sufix, locals UPPER_CASE)
2026-05-16 14:37:56 +02:00
JailDesigner
7789c1c217
fix: menu.cpp enums UPPER_CASE i statics sense sufix
2026-05-16 14:35:28 +02:00
JailDesigner
ec3cb78f6b
fix: intro_sprites_scene snake_case → camelBack / UPPER_CASE
2026-05-16 14:32:25 +02:00
JailDesigner
f37308a5f0
refactor: JD8_* a namespace Jd8::
2026-05-16 14:24:22 +02:00
JailDesigner
1ce0d9c56c
refactor: JA_* a namespace Ja:: (estil aee_arcade)
2026-05-16 14:15:25 +02:00
JailDesigner
08f587ffe4
merge: neteja cppcheck AEE
2026-05-16 13:52:34 +02:00
JailDesigner
bf7be3a7f1
fix: cppcheck (21 troballes)
2026-05-16 13:52:31 +02:00
JailDesigner
a48fe51f73
manuals tidy tier 3a: rondes, ternaris, anyofallof, padding, etc.
2026-05-14 19:24:02 +02:00
JailDesigner
0b82be193f
manuals tidy tier 2: empty-catch, enum-size, trivially-destructible
2026-05-14 19:07:43 +02:00
JailDesigner
8676c0e773
manuals tidy tier 1: suffixes, params, switches, equals-default
2026-05-14 18:58:29 +02:00
JailDesigner
b7a551c158
tidy-fix automàtic (sense naming)
2026-05-14 18:28:23 +02:00
JailDesigner
358e91ea30
moure source/scenes a source/game/scenes
2026-05-14 18:00:18 +02:00
JailDesigner
1aa0e96a91
afegir git hooks per format, tidy i cppcheck
2026-05-14 17:49:29 +02:00
JailDesigner
6ac16ebfeb
binari i recursos a build/, targets en kebab
2026-05-14 17:26:15 +02:00
JailDesigner
5dcda36553
estandaritzat .clang-tidy amb el d'AEEA mantenint scenes/ al filtre
2026-05-14 16:35:44 +02:00
JailDesigner
41d429fc10
detecta Ninja com a generador de CMake si està al PATH
2026-05-14 16:23:47 +02:00
JailDesigner
4435bc4942
arreglos en makefile de macos
2026-05-03 18:07:13 +02:00
JailDesigner
4a4485c6f8
bugfixes
2026-04-18 18:16:41 +02:00
JailDesigner
d09bb1cf6b
actualitzat changelog
2026-04-18 17:57:05 +02:00
JailDesigner
b1f9e57f36
fix: color de fonde dels sliders de 050505 a 000000
2026-04-18 15:20:25 +02:00
JailDesigner and Claude Opus 4.7
f7875baa2d
refactor: fase 6 — Rule of 5 a Mapa i ModuleGame (no-copiables, no-movibles)
...
- Mapa té un JD8_Surface fondo propi que s'allibera al destructor: una
còpia accidental provocaria double-free. Ara els 4 copy/move ops estan
= delete.
- ModuleGame ja era no-copiable implícitament per tindre unique_ptr
members, però els = delete expliciten la intenció i protegeixen
davant refactors futurs que afegeixquen tipus copiables.
Fi de la modernització RAII per fases (1–6).
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-04-18 14:03:51 +02:00
JailDesigner and Claude Opus 4.7
c6e37af7d1
refactor: fase 5 — singletons a std::unique_ptr (elimina new/delete manual)
...
5 singletons afectats: Audio, Screen, Director, Resource::Cache, Resource::List.
- static T* instance → static std::unique_ptr<T> instance
- init(): new T() adoptat immediatament per unique_ptr (ownership RAII)
- destroy(): instance.reset() (sense delete manual)
- get(): retorna instance.get()
- Destructors moguts a public perquè std::default_delete hi pugui accedir
(ctors privats + copy/move deleted → encapsulació efectiva mantinguda)
Ordre de destrucció preservat: SDL_AppQuit segueix cridant destroy() en
l'ordre invers a init() — la RAII automàtica no s'activa fins al final
del programa (LIFO de variables static).
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-04-18 14:02:01 +02:00
JailDesigner and Claude Opus 4.7
5e57034a38
refactor: fase 4 — llista enllaçada de Momia a std::vector<unique_ptr>
...
Eliminada completament la recursivitat per next-pointer:
- Momia::next, clear(), insertar() desapareixen
- update()/draw() no recursen: operen només sobre la instància pròpia
- ModuleGame::momies: Momia* (head de llista) → std::vector<std::unique_ptr<Momia>>
- Destructor simplificat (vector s'autodestrueix)
- Draw: range-for sobre el vector
- Update: std::erase_if + decrement sincronitzat de info::ctx.momies
- Cheat "alone": momies.clear()
- iniciarMomies i nova_momia: emplace_back(std::make_unique<Momia>(...))
Zero new/delete manuals al cicle de vida de les momies.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-04-18 13:56:05 +02:00
JailDesigner and Claude Opus 4.7
2a8fbbb095
refactor: fase 3 — Text::bitmap_ a std::vector<Uint8>
...
- bitmap_: Uint8* (owning, free'd al destructor) → std::vector<Uint8>
- loadBitmap copia des del buffer de LoadGif i fa free(pixels) de
l'intermedi (gif.h usa malloc internament)
- ~Text() eliminat: regla 0 aplicada (vector es destrueix sol)
- Les 4 comprovacions !bitmap_ → bitmap_.empty()
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-04-18 13:44:07 +02:00
JailDesigner and Claude Opus 4.7
53e93ef697
refactor: fase 2 — elimina malloc/free a jdraw8 i paletes d'escenes
...
- JD8_Init/Quit: new[]/delete[] per a screen, main_palette, pixel_data
- JD8_NewSurface/FreeSurface: new Uint8[64000]{}/delete[]
- JD8_LoadPalette: uniforme — sempre retorna `new Color[256]`, copiant del
LoadPalette extern al path no-cached (l'intermedi raw es frees amb free()
perquè gif.h el malloca)
- JD8_SetScreenPalette: delete[] la paleta reemplaçada
- slides/secreta/menu/banner/mort scenes: std::free/std::malloc → delete[]/new Color[256]
Ownership uniforme: tot el cicle de vida de surface/palette usa new[]/delete[].
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-04-18 13:42:31 +02:00
JailDesigner and Claude Opus 4.7
e7aa2463b4
refactor: fase 1 — cleanup mecànic de baix risc (NULL→nullptr, typedef→using, explicit, enum class local)
...
- jdraw8.hpp: typedef → using (JD8_Surface, JD8_Palette)
- jdraw8.cpp: NULL → nullptr, C-casts → static_cast/reinterpret_cast, anon enum FadeType → enum class
- momia.cpp: NULL → nullptr
- bola/mapa/marcador/momia/engendro: explicit als constructors
Zero canvis de lògica ni ownership. Primera fase de la modernització RAII.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-04-18 13:37:48 +02:00
JailDesigner
27f8b0ae36
cppcheck
2026-04-18 13:22:13 +02:00
JailDesigner
2e1a82ff40
afegit suppress a cppcheck
2026-04-18 12:55:27 +02:00
JailDesigner
94aa69cffe
afegit resource::cache
...
normalitzat Audio
2026-04-18 11:41:34 +02:00
JailDesigner
7409c799c3
build: unifica .clang-format/.clang-tidy i exclou external/ i spv/ amb dummies
2026-04-17 16:21:56 +02:00
JailDesigner
417699d276
renombrats els fitxers de musica
2026-04-17 13:29:07 +02:00
JailDesigner and Claude Opus 4.7
9d86137203
arreglos en make i cmake per estandaritzar amb la resta de projectes
...
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-04-17 12:59:31 +02:00
JailDesigner
52369be7ae
el logo nou de la intro es tornava a descentrar
2026-04-16 22:15:37 +02:00
JailDesigner
1c11a3057b
afegits events de canvas d'emscripten
2026-04-16 22:12:30 +02:00
JailDesigner
e8b0b12f98
internal resolution
2026-04-16 21:40:14 +02:00
JailDesigner
16a3f5b470
treballant en internal resolution
2026-04-16 20:53:13 +02:00
JailDesigner
5cda8fc3f9
centrat correctament el logo de jailgames (el nou)
2026-04-16 20:18:28 +02:00
JailDesigner
5956d874c3
animacio de tancar el menu
2026-04-16 20:14:35 +02:00
JailDesigner
e0f9b60f22
menu de sistema amb versió i opció per a tancar i reiniciar
2026-04-16 20:01:58 +02:00
JailDesigner
d3bdd9b783
afegit fix de mandos en emscripten android
2026-04-16 19:35:48 +02:00
JailDesigner
a36662ac6e
fix: shaders on i off no afectaven a crtpi
2026-04-16 19:26:45 +02:00
JailDesigner
52431adb0e
afegits tots els valors d'escala que dona sdl3
2026-04-16 19:15:35 +02:00
JailDesigner
a3fc1119ae
menu ara permet amagar items en funció d'altres items
2026-04-16 19:01:35 +02:00
JailDesigner
6394e9afab
varies coses i detallets
2026-04-16 18:46:58 +02:00
JailDesigner
fe41919e1e
clang-format
...
mogudes coses de config.yaml a debug.yaml
2026-04-16 16:46:18 +02:00
JailDesigner
0cd09f6d28
idem
2026-04-16 16:37:38 +02:00
JailDesigner
083a57dab5
ordenada la carpeta data
2026-04-16 16:37:30 +02:00
JailDesigner
4244bcaea3
acabat amb resource.pack
2026-04-16 16:21:44 +02:00
JailDesigner
b2d5f5af61
feat: resource.pack estil coffee_crisis — Fase 1 (pack + helper + eina pack_resources)
2026-04-16 13:58:39 +02:00
JailDesigner
7f26b8dbd0
opcions per defecte d'emscripten
2026-04-16 13:40:21 +02:00
JailDesigner
550e3e0e12
refactor: JA_Sound_t RAII — buffer amb unique_ptr + SDLFreeDeleter, elimina JA_NewSound
2026-04-16 13:28:31 +02:00
JailDesigner
96a3cf9ebc
step B.2: elimina fiber — Director posseeix l'escena, JD8_Flip sense yield, fiber.hpp/cpp esborrats
2026-04-16 11:14:48 +02:00
JailDesigner
4e18f83ec5
step B.1: fades de ModuleGame tick-based amb scenes::PaletteFade (fases FadingIn/FadingOut sense redibuixar, per no perdre el frame final)
2026-04-16 10:27:04 +02:00
JailDesigner
f9346add79
refactor: jail_audio RAII polish — JA_Music_t amb vector<Uint8>/string + elimina overload i camp morts
2026-04-16 10:02:55 +02:00
JailDesigner
b3ff620c81
refactor: file_getfilebuffer → file_readfile (std::vector<char>) — elimina 3 leaks (paleta + música gameplay + música cinemàtica)
2026-04-16 09:43:27 +02:00
JailDesigner
d343e719ca
step 9: intro_sprites_scene com a sub-escena (elimina doIntroSprites + 3 variants aleatòries)
2026-04-16 08:38:47 +02:00
JailDesigner
e18b7321eb
step 8: intro_scene substituix doIntro() (revelat JAILGAMES lletra a lletra + cicle de paleta)
2026-04-16 08:00:22 +02:00
JailDesigner
6125277d70
docs: plan de migració scenes:: al repo (per a continuar des d'altres equips)
2026-04-16 00:18:09 +02:00
JailDesigner
6063b1c606
step 7: secreta_scene amb swap de tomba1→tomba2 i red pulse animat
2026-04-16 00:13:02 +02:00
JailDesigner
829d7431c1
step 6: credits_scene substituix doCredits() (scroll vertical + parallax condicional)
2026-04-16 00:03:25 +02:00
JailDesigner
605c273173
step 5: slides_scene amb wipe suau per easing (substituix doSlides)
2026-04-15 23:50:59 +02:00
JailDesigner
ad38fc09cf
step 4: intro_new_logo_scene substituix doIntroNewLogo(); doIntroSprites exposat temporalment
2026-04-15 23:28:22 +02:00
JailDesigner
8720e775a0
step 3: menu_scene substituix doMenu() + fix JI_Update al fiber loop
2026-04-15 23:19:58 +02:00
JailDesigner
2cb38ffb49
step 2: banner_scene substituix doBanner() (piràmides 2-5) + helper playMusic compartit
2026-04-15 23:13:05 +02:00
JailDesigner
d86cb21efa
step 1: mort_scene substituix doMort() amb la capa scenes::
2026-04-15 23:05:45 +02:00
JailDesigner
4436f7f569
scenes: infraestructura de la capa scenes:: (scene, timeline, sprite mover, frame animator, palette fade, surface handle, registry)
2026-04-15 19:40:39 +02:00
JailDesigner
1507a1c740
fase 4+5: fibers cooperatius substitueixen el game thread, sense mutex ni cv
2026-04-15 18:50:43 +02:00
JailDesigner
801a8ad1bd
fase 3: port de jail_audio header-only amb streaming i sense SDL_AddTimer
2026-04-15 18:23:34 +02:00
JailDesigner
80fa7b46e7
fase 2: fades de jd8 a màquina d'estats i helper wait_frame_or_skip a les cinemàtiques
2026-04-15 18:12:03 +02:00
JailDesigner
7f85b50c63
fase 1: jail i game a c++ idiomàtic (raii, info::ctx, cheats arreglats)
2026-04-15 18:03:46 +02:00
JailDesigner
2c833d086e
noves opcions de menu i config.yaml per desactivar les dos coses visuals que he afegit al port
2026-04-08 19:22:11 +02:00
JailDesigner
91fe0625d3
fix: make release en windows
2026-04-05 18:12:40 +02:00
JailDesigner
c7be3dcc1f
changelog.md
2026-04-05 17:51:29 +02:00
JailDesigner
b0209c8220
fix: no estava carregant gamecontrollerdb.txt
2026-04-05 17:50:07 +02:00
JailDesigner
6570415ed0
afegit changelog.md
2026-04-05 17:47:58 +02:00
JailDesigner
8fc61de359
modificat README.md
2026-04-05 17:45:01 +02:00
JailDesigner
9f37518647
eliminats warnings
2026-04-05 17:39:44 +02:00
JailDesigner
0784cb1197
ajustats els defaults
2026-04-05 15:20:50 +02:00
JailDesigner
6a58f75773
overlay amb outline
...
afegits credits dels ports
2026-04-05 15:17:26 +02:00
JailDesigner
ec0f233033
logo alternatiu opcional
2026-04-05 14:35:53 +02:00
JailDesigner
00f8d6d7e3
fix: eixir amb la pausa activa
2026-04-05 13:44:54 +02:00
JailDesigner
486f00bd44
v1.1 per a coincidir amb el original
2026-04-05 13:35:25 +02:00
JailDesigner
df18a818fb
afegits icons
2026-04-05 11:33:29 +02:00
JailDesigner
21bb22b63f
acces a la carpeta data en release
2026-04-05 10:20:46 +02:00
JailDesigner
d598d4fc58
eliminats warnings del codi original tocant lo menos posible
2026-04-05 10:10:48 +02:00
JailDesigner
75b6b6fac7
primera versio de make release, encara no funcional 100%
2026-04-05 10:08:21 +02:00
JailDesigner
c0553c6d37
- afegida carpeta release
...
- jitter en renderInfo
2026-04-05 09:39:05 +02:00
JailDesigner
3aa6078054
claude.md
2026-04-05 01:46:26 +02:00
JailDesigner
e7202c9332
modificat el delay de director per acceptar framerates de hasta 250FPS
2026-04-05 01:42:34 +02:00
JailDesigner
22ee9538a2
vsync, integer scale
2026-04-05 01:31:02 +02:00
JailDesigner
788a883c71
afegit fixer de locales (textos centralitzats)
2026-04-05 01:24:24 +02:00
JailDesigner
5ac570df0f
animacions al menu
2026-04-05 01:15:45 +02:00
JailDesigner
4238ae1bc4
animacions a renderinfo
2026-04-05 01:03:48 +02:00
JailDesigner
91f88ded09
pausa
2026-04-05 00:49:29 +02:00
JailDesigner
f8b60cb641
redefinir tecles
2026-04-05 00:41:04 +02:00
JailDesigner
a328681365
soport per a gamepad
2026-04-05 00:22:21 +02:00
JailDesigner
6d42f848a5
menu i opcions de audio
2026-04-05 00:07:10 +02:00
JailDesigner
be4b62414e
afegits metodes per a poder ciclar presets i altres opcions
...
esc en el joc + menu ja no tanca la app
2026-04-04 23:42:19 +02:00