yaze 0.3.2
Link to the Past ROM Editor
 
Loading...
Searching...
No Matches
dungeon_render_commands.h
Go to the documentation of this file.
1#ifndef YAZE_SRC_CLI_HANDLERS_GAME_DUNGEON_RENDER_COMMANDS_H_
2#define YAZE_SRC_CLI_HANDLERS_GAME_DUNGEON_RENDER_COMMANDS_H_
3
5
6namespace yaze {
7namespace cli {
8namespace handlers {
9
10// Render a dungeon room to a PNG file without requiring the HTTP server.
11//
12// Usage:
13// dungeon-render --room=<id> --output=<path.png>
14// [--overlays=collision,track,sprites,objects,grid,camera,all]
15// [--scale=<float>]
16//
17// Writes a PNG file to --output. Exits non-zero on failure.
18// Designed for agentic workflows where a long-lived server is inconvenient.
20 public:
21 std::string GetName() const override { return "dungeon-render"; }
22 std::string GetUsage() const override {
23 return "dungeon-render --room=<id> --output=<path.png> "
24 "[--overlays=collision,track,sprites,objects,grid,camera,all] "
25 "[--scale=<float>]";
26 }
27
28 absl::Status ValidateArgs(const resources::ArgumentParser& parser) override;
29 absl::Status Execute(Rom* rom, const resources::ArgumentParser& parser,
30 resources::OutputFormatter& formatter) override;
31
32 private:
33 std::string GetDefaultFormat() const override { return "json"; }
34 std::string GetOutputTitle() const override { return "Dungeon Render"; }
35};
36
37} // namespace handlers
38} // namespace cli
39} // namespace yaze
40
41#endif // YAZE_SRC_CLI_HANDLERS_GAME_DUNGEON_RENDER_COMMANDS_H_
The Rom class is used to load, save, and modify Rom data. This is a generic SNES ROM container and do...
Definition rom.h:28
absl::Status Execute(Rom *rom, const resources::ArgumentParser &parser, resources::OutputFormatter &formatter) override
Execute the command business logic.
std::string GetName() const override
Get the command name.
std::string GetUsage() const override
Get the command usage string.
absl::Status ValidateArgs(const resources::ArgumentParser &parser) override
Validate command arguments.
std::string GetOutputTitle() const override
Get the output title for formatting.
std::string GetDefaultFormat() const override
Get the default output format ("json" or "text")
Utility for parsing common CLI argument patterns.
Base class for CLI command handlers.
Utility for consistent output formatting across commands.