载入中...
搜索中...
未找到
HouseGen.cpp
浏览该文件的文档.
15eve::Result<void> HouseGen::loadComponentsFromJson(const std::string &json) { return library_.loadFromJson(json); }
30 auto cls = table.addClass<HouseGen>("HouseGen", std::function<HouseGen *()>([] { return new HouseGen(); }), true);
32 auto request = table.addClass<HouseRequest>("HouseRequest", std::function<HouseRequest *()>([] { return new HouseRequest(); }), true);
39 request.addFunc("setFootprint", [](HouseRequest *r, const std::string &v) { r->footprint = v; });
70 auto layout = table.addClass<HouseLayout>("HouseLayout", std::function<HouseLayout *()>([] { return new HouseLayout(); }), true);
82 return (v && i >= 0 && i < int(v->instances.size())) ? v->instances[i].componentId : std::string();
97 layout.addFunc("getFootprintStyle", [](HouseLayout *v) { return v ? v->footprintStyle : std::string(); });
100 layout.addFunc("getDiagnosticCount", [](HouseLayout *v) { return int(v->diagnostics.size()); });
The single Squirrel projection for common Result, Status and Value.
static Diagnostic error(DiagnosticCode code, std::string message, std::string path={}, DiagnosticDetails details={}, std::string source={})
Construct an error diagnostic with the standard error severity.
Definition Diagnostic.h:125
bool ok() const noexcept
Whether this result represents a non-failure outcome.
Definition Result.h:480
static Result failure(Status status)
Construct a failed result from a structured status.
Definition Result.h:175
static Status success(StatusCode code=StatusCode::Ok)
Construct a successful status with an explicit non-error outcome.
Definition Status.h:81
Definition Graphics.h:125
eve::Result< void > loadFromJson(std::string_view json)
从 JSON / 文件加载组件。
Definition HouseComponentLibrary.cpp:141
eve::Result< void > loadFromFile(std::string_view filename)
Definition HouseComponentLibrary.cpp:166
eve::Result< void > instantiate(const HouseLayout &layout, graphics::Graphics &gfx, model3d::Model3D &models) const
Instantiate a generated layout through the current component library.
Definition HouseGen.cpp:118
eve::Result< void > loadComponentsFromJson(const std::string &json)
从 JSON / 文件加载房屋组件库。
Definition HouseGen.cpp:15
eve::Result< void > generate(const HouseRequest &request, HouseLayout &layout)
按请求生成布局;失败返回结构化诊断。
Definition HouseGen.cpp:23
eve::Result< void > loadComponentsFromFile(const std::string &filename)
Definition HouseGen.cpp:16
布局生成器:把 HouseRequest 解析为 HouseLayout(组件库驱动)。
Definition HouseGenerator.h:15
eve::Result< void > generate(const HouseRequest &request, HouseLayout &out) const
生成布局;失败时不修改输出布局并返回结构化诊断。
Definition HouseGenerator.cpp:329
std::string toJson() const
Serialize or restore the eve.house-layout version 1 JSON schema.
Definition HouseLayout.cpp:161
Resource module for decoding 3D models via medialoader (Assimp). Produces ModelData; GPU upload is gr...
Definition Model3D.h:43
Intermediate 2D generation result. cells store semantic ids (see Semantic.h), not tile GIDs — convert...
Definition Grid2D.h:36
Definition HouseGenTarget.h:15
void exposeHouseGeneration(ssq::Table &table)
Register the procgen-owned house generation compatibility API.
Definition HouseGen.cpp:28
ssq::Table projectResult(HSQUIRRELVM vm, Result< void > &&result)
Consume and project a void native Result using the common schema.
Definition SquirrelBinding.cpp:470
@ InvalidArgument
@ Applied