fix: claus en una línia i nullptr explícit

This commit is contained in:
2026-05-14 22:45:54 +02:00
parent b480a23c88
commit da317e707d
3 changed files with 18 additions and 18 deletions

View File

@@ -51,7 +51,7 @@ void Audio::update() {
JA_Update();
// Sincronizar estado: detectar cuando la música se para (ej. fade-out completado)
if (instance && instance->music_.state == MusicState::PLAYING && JA_GetMusicState() != JA_MUSIC_PLAYING) {
if (instance != nullptr && instance->music_.state == MusicState::PLAYING && JA_GetMusicState() != JA_MUSIC_PLAYING) {
instance->music_.state = MusicState::STOPPED;
}
}
@@ -65,10 +65,10 @@ void Audio::playMusic(const std::string& name, const int loop, const int crossfa
return;
}
if (!music_enabled_) return;
if (!music_enabled_) { return; }
auto* resource = AudioResource::getMusic(name);
if (resource == nullptr) return;
if (resource == nullptr) { return; }
if (crossfade_ms > 0 && music_.state == MusicState::PLAYING) {
JA_CrossfadeMusic(resource, crossfade_ms, loop);
@@ -86,7 +86,7 @@ void Audio::playMusic(const std::string& name, const int loop, const int crossfa
// Reproduce la música por puntero (con crossfade opcional)
void Audio::playMusic(JA_Music_t* music, const int loop, const int crossfade_ms) {
if (!music_enabled_ || music == nullptr) return;
if (!music_enabled_ || music == nullptr) { return; }
if (crossfade_ms > 0 && music_.state == MusicState::PLAYING) {
JA_CrossfadeMusic(music, crossfade_ms, loop);

View File

@@ -406,10 +406,10 @@ void Input::update() { // NOLINT(readability-convert-member-functions-to-static
// JUMP accepta qualsevol dels 4 botons frontals (South/East/North/West)
if (action == Action::JUMP) {
is_down_now = is_down_now ||
(SDL_GetGamepadButton(gamepad->pad, SDL_GAMEPAD_BUTTON_SOUTH) != 0) ||
(SDL_GetGamepadButton(gamepad->pad, SDL_GAMEPAD_BUTTON_EAST) != 0) ||
(SDL_GetGamepadButton(gamepad->pad, SDL_GAMEPAD_BUTTON_NORTH) != 0) ||
(SDL_GetGamepadButton(gamepad->pad, SDL_GAMEPAD_BUTTON_WEST) != 0);
SDL_GetGamepadButton(gamepad->pad, SDL_GAMEPAD_BUTTON_SOUTH) ||
SDL_GetGamepadButton(gamepad->pad, SDL_GAMEPAD_BUTTON_EAST) ||
SDL_GetGamepadButton(gamepad->pad, SDL_GAMEPAD_BUTTON_NORTH) ||
SDL_GetGamepadButton(gamepad->pad, SDL_GAMEPAD_BUTTON_WEST);
}
// El estado .is_held del fotograma anterior nos sirve para saber si es un pulso nuevo

View File

@@ -88,7 +88,7 @@ namespace Resource {
// Carga assets hasta agotar el presupuesto de tiempo o completar todas las etapas.
// Devuelve true cuando ya no queda nada por cargar.
auto Cache::loadStep(int budget_ms) -> bool {
if (stage_ == LoadStage::DONE) return true;
if (stage_ == LoadStage::DONE) { return true; }
const Uint64 start_ns = SDL_GetTicksNS();
const Uint64 budget_ns = static_cast<Uint64>(budget_ms) * 1'000'000ULL;
@@ -221,7 +221,7 @@ namespace Resource {
break;
}
if ((SDL_GetTicksNS() - start_ns) >= budget_ns) break;
if ((SDL_GetTicksNS() - start_ns) >= budget_ns) { break; }
}
return stage_ == LoadStage::DONE;
@@ -553,21 +553,21 @@ namespace Resource {
std::cout << "\n>> SOUND FILES" << '\n';
auto list = List::get()->getListByType(List::Type::SOUND);
sounds_.clear();
for (size_t i = 0; i < list.size(); ++i) loadOneSound(i);
for (size_t i = 0; i < list.size(); ++i) { loadOneSound(i); }
}
void Cache::loadMusics() {
std::cout << "\n>> MUSIC FILES" << '\n';
auto list = List::get()->getListByType(List::Type::MUSIC);
musics_.clear();
for (size_t i = 0; i < list.size(); ++i) loadOneMusic(i);
for (size_t i = 0; i < list.size(); ++i) { loadOneMusic(i); }
}
void Cache::loadSurfaces() {
std::cout << "\n>> SURFACES" << '\n';
auto list = List::get()->getListByType(List::Type::BITMAP);
surfaces_.clear();
for (size_t i = 0; i < list.size(); ++i) loadOneSurface(i);
for (size_t i = 0; i < list.size(); ++i) { loadOneSurface(i); }
finalizeSurfaces();
}
@@ -575,35 +575,35 @@ namespace Resource {
std::cout << "\n>> PALETTES" << '\n';
auto list = List::get()->getListByType(List::Type::PALETTE);
palettes_.clear();
for (size_t i = 0; i < list.size(); ++i) loadOnePalette(i);
for (size_t i = 0; i < list.size(); ++i) { loadOnePalette(i); }
}
void Cache::loadTextFiles() {
std::cout << "\n>> TEXT FILES" << '\n';
auto list = List::get()->getListByType(List::Type::FONT);
text_files_.clear();
for (size_t i = 0; i < list.size(); ++i) loadOneTextFile(i);
for (size_t i = 0; i < list.size(); ++i) { loadOneTextFile(i); }
}
void Cache::loadAnimations() {
std::cout << "\n>> ANIMATIONS" << '\n';
auto list = List::get()->getListByType(List::Type::ANIMATION);
animations_.clear();
for (size_t i = 0; i < list.size(); ++i) loadOneAnimation(i);
for (size_t i = 0; i < list.size(); ++i) { loadOneAnimation(i); }
}
void Cache::loadRooms() {
std::cout << "\n>> ROOMS" << '\n';
auto list = List::get()->getListByType(List::Type::ROOM);
rooms_.clear();
for (size_t i = 0; i < list.size(); ++i) loadOneRoom(i);
for (size_t i = 0; i < list.size(); ++i) { loadOneRoom(i); }
}
void Cache::createText() {
std::cout << "\n>> CREATING TEXT_OBJECTS" << '\n';
texts_.clear();
const auto& infos = getTextObjectInfos();
for (size_t i = 0; i < infos.size(); ++i) createOneText(i);
for (size_t i = 0; i < infos.size(); ++i) { createOneText(i); }
}
// Vacía el vector de sonidos