Commit Graph

57 Commits

Author SHA1 Message Date
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 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 4a4485c6f8 bugfixes 2026-04-18 18:16:41 +02:00
JailDesigner 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 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 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 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 16a3f5b470 treballant en internal resolution 2026-04-16 20:53:13 +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 52431adb0e afegits tots els valors d'escala que dona sdl3 2026-04-16 19:15: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 4244bcaea3 acabat amb resource.pack 2026-04-16 16:21:44 +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 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 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 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 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 ec0f233033 logo alternatiu opcional 2026-04-05 14:35:53 +02:00
JailDesigner 486f00bd44 v1.1 per a coincidir amb el original 2026-04-05 13:35:25 +02:00
JailDesigner 22ee9538a2 vsync, integer scale 2026-04-05 01:31:02 +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 6d42f848a5 menu i opcions de audio 2026-04-05 00:07:10 +02:00
JailDesigner dbecd1ed4f primera versio de menu 2026-04-04 23:34:35 +02:00
JailDesigner d4fc7c0ee8 - renderInfo
- fix: no guardava el preset actual
2026-04-04 20:14:11 +02:00
JailDesigner eb3f449a1e afegits els presets de shaders 2026-04-04 19:57:04 +02:00