refactor: file_getfilebuffer → file_readfile (std::vector<char>) — elimina 3 leaks (paleta + música gameplay + música cinemàtica)
This commit is contained in:
@@ -45,9 +45,9 @@ int ModuleGame::Go() {
|
||||
const char* music = info::ctx.num_piramide == 3 ? "00000008.ogg" : (info::ctx.num_piramide == 2 ? "00000007.ogg" : (info::ctx.num_piramide == 6 ? "00000002.ogg" : "00000006.ogg"));
|
||||
const char* current_music = JA_GetMusicFilename();
|
||||
if ((JA_GetMusicState() != JA_MUSIC_PLAYING) || !(strcmp(music, current_music) == 0)) {
|
||||
int size;
|
||||
char* buffer = file_getfilebuffer(music, size);
|
||||
JA_PlayMusic(JA_LoadMusic((Uint8*)buffer, size, music));
|
||||
auto buffer = file_readfile(music);
|
||||
JA_PlayMusic(JA_LoadMusic(reinterpret_cast<Uint8*>(buffer.data()),
|
||||
static_cast<Uint32>(buffer.size()), music));
|
||||
}
|
||||
|
||||
JD8_FadeToPal(JD8_LoadPalette(info::ctx.pepe_activat ? "frames2.gif" : "frames.gif"));
|
||||
|
||||
@@ -1,53 +0,0 @@
|
||||
#include "game/modulesequence.hpp"
|
||||
|
||||
#include "core/jail/jdraw8.hpp"
|
||||
#include "core/jail/jgame.hpp"
|
||||
|
||||
ModuleSequence::ModuleSequence() {
|
||||
}
|
||||
|
||||
ModuleSequence::~ModuleSequence(void) {
|
||||
}
|
||||
|
||||
int ModuleSequence::Go() {
|
||||
if (info::ctx.num_piramide == 6 && info::ctx.diners < 200) info::ctx.num_piramide = 7;
|
||||
|
||||
// Totes les branques del vell switch han estat migrades a scenes:
|
||||
// case 0 (Menú) → scenes::MenuScene
|
||||
// case 1 i 7 (Slides) → scenes::SlidesScene
|
||||
// case 2..5 (Banner) → scenes::BannerScene
|
||||
// case 6 (Secreta) → scenes::SecretaScene
|
||||
// case 8 (Credits) → scenes::CreditsScene
|
||||
// case 100 (Mort) → scenes::MortScene
|
||||
// case 255 (Intro) → scenes::IntroScene / scenes::IntroNewLogoScene
|
||||
// (amb scenes::IntroSpritesScene com a sub-escena)
|
||||
// El gameFiberEntry les dispatcha via SceneRegistry abans de caure a
|
||||
// aquest Go() — així que en la pràctica ja no s'arriba ací. El codi
|
||||
// que queda sota (JD8_FadeOut + transicions de num_piramide) serà
|
||||
// eliminat al Step 10 del pla, junt amb ModuleSequence::Go() sencer.
|
||||
|
||||
JD8_FadeOut();
|
||||
|
||||
if (JG_Quitting()) {
|
||||
return -1;
|
||||
} else {
|
||||
if (info::ctx.num_piramide == 255) {
|
||||
info::ctx.num_piramide = 0;
|
||||
return 1;
|
||||
} else if (info::ctx.num_piramide == 0) {
|
||||
info::ctx.num_piramide = 1;
|
||||
return 1;
|
||||
} else if (info::ctx.num_piramide == 7) {
|
||||
info::ctx.num_piramide = 8;
|
||||
return 1;
|
||||
} else if (info::ctx.num_piramide == 8) {
|
||||
info::ctx.num_piramide = 255;
|
||||
return 1;
|
||||
} else if (info::ctx.num_piramide == 100) {
|
||||
info::ctx.num_piramide = 0;
|
||||
return 1;
|
||||
} else {
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,17 +0,0 @@
|
||||
#pragma once
|
||||
|
||||
#include <SDL3/SDL.h>
|
||||
|
||||
#include "game/info.hpp"
|
||||
|
||||
class ModuleSequence {
|
||||
public:
|
||||
ModuleSequence();
|
||||
~ModuleSequence(void);
|
||||
|
||||
int Go();
|
||||
|
||||
// Totes les doX() han sigut migrades a escenes dins source/scenes/.
|
||||
// El Step 10 del pla eliminarà ModuleSequence sencer, inclòs Go(),
|
||||
// quan el gameFiberEntry deixe de cridar-lo com a fallback.
|
||||
};
|
||||
Reference in New Issue
Block a user