24 lines
799 B
C++
24 lines
799 B
C++
#pragma once
|
|
|
|
#include <string>
|
|
|
|
#include "external/fkyaml_node.hpp"
|
|
|
|
// Carregador de YAMLs de sala amb fusió per piràmide. Cada piràmide pot
|
|
// tenir un `pyramid.yaml` germà al directori de sala que aporta camps
|
|
// compartits (tileset, lighting, push_factor, paint_tiles...); el YAML
|
|
// de sala només declara el que canvia (data, entities, geometry, room).
|
|
//
|
|
// Regles de fusió:
|
|
// - mapes: fusió recursiva, claus de la sala guanyen
|
|
// - sequences i escalars: la sala substitueix sencer
|
|
//
|
|
// Si no hi ha `pyramid.yaml` al directori, retorna només el YAML de sala
|
|
// sense modificacions — així rutes externes (tests, mapes solts) segueixen
|
|
// funcionant igual.
|
|
namespace RoomYaml {
|
|
|
|
auto loadMerged(const std::string& room_yaml_path) -> fkyaml::node;
|
|
|
|
} // namespace RoomYaml
|