afegit RoomFormat per a centralitzar la creació i edició de fitxers d'habitacions

This commit is contained in:
2026-04-10 17:58:25 +02:00
parent faae650a53
commit 077b86ea4a
19 changed files with 924 additions and 1090 deletions

View File

@@ -16,7 +16,7 @@
#include "core/resources/resource_list.hpp" // Para List, List::Type
#include "game/defaults.hpp" // Para Defaults namespace
#include "game/gameplay/room.hpp" // Para RoomData, loadRoomFile, loadRoomTileFile
#include "game/gameplay/room_loader.hpp" // Para RoomLoader::loadFromString
#include "game/gameplay/room_format.hpp" // Para RoomFormat::loadFromString
#include "game/options.hpp" // Para Options, OptionsGame, options
#include "utils/defines.hpp" // Para WINDOW_CAPTION
#include "utils/utils.hpp" // Para getFileName, printWithDots, PaletteColor
@@ -226,7 +226,7 @@ namespace Resource {
// Parsear y actualizar el cache
auto it = std::ranges::find_if(rooms_, [&name](const auto& r) -> bool { return r.name == name; });
if (it != rooms_.end()) {
*(it->room) = RoomLoader::loadFromString(content, name);
*(it->room) = RoomFormat::loadFromString(content, name);
std::cout << "reloadRoom: " << name << " reloaded from filesystem\n";
}
}

View File

@@ -165,7 +165,7 @@ Director::Director() {
#endif
// ZoneManager debe inicializarse antes que Resource::Cache: el cache carga
// las rooms en eager loading, y RoomLoader necesita consultar las zonas para
// las rooms en eager loading, y RoomFormat necesita consultar las zonas para
// resolver tileSetFile/music. ZoneManager carga su yaml directamente del
// filesystem (vía Resource::Helper::loadFile) así que no depende del cache.
ZoneManager::init();