feat(entities): afegeix stone i column com a muros decoratius
This commit is contained in:
1 parent
1c49248b72
commit
6749780356
18 files changed
+448
-36
No files matched your search
@@ -21,6 +21,18 @@ namespace {
|
||||
|
||||
namespace Map {
|
||||
|
||||
namespace {
|
||||
// Predicat extra que el `collides` consulta com a sobre-capa,
|
||||
// injectat des de `EntityManager` per a entitats sòlides genèriques
|
||||
// (debris, columnes). El TU local manté l'estat sense exposar-lo
|
||||
// al header.
|
||||
std::function<bool(const SDL_FRect&)> g_entity_collider;
|
||||
} // namespace
|
||||
|
||||
void setEntityCollider(std::function<bool(const SDL_FRect&)> fn) {
|
||||
g_entity_collider = std::move(fn);
|
||||
}
|
||||
|
||||
void loadFrom(const std::string& yaml_path) {
|
||||
auto bytes = Resource::Helper::loadFile(yaml_path);
|
||||
if (bytes.empty()) {
|
||||
@@ -123,6 +135,11 @@ namespace Map {
|
||||
};
|
||||
if (overlapStrict(base_box, CORRIDOR)) { return true; }
|
||||
}
|
||||
// Capa final: entitats sòlides genèriques registrades pel manager.
|
||||
// S'avalua al final perquè els obstacles fixos (sarcs, porta) són
|
||||
// l'origen del laberint i el camí més curt; les entitats addicionals
|
||||
// són normalment poques.
|
||||
if (g_entity_collider && g_entity_collider(base_box)) { return true; }
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
Reference in new issue
Block a user