17 std::string base_game_preset_;
18 std::size_t tiles_primary_override_;
19 std::size_t tiles_total_override_;
20 std::size_t metatiles_primary_override_;
21 std::size_t metatiles_total_override_;
22 std::size_t pals_primary_override_;
23 std::size_t pals_total_override_;
29 : base_game_preset_{
"pokeemerald"}, tiles_primary_override_{0}, tiles_total_override_{0},
30 metatiles_primary_override_{0}, metatiles_total_override_{0}, pals_primary_override_{0},
31 pals_total_override_{0}
37 return "FIELDMAP OVERRIDE OPTIONS";
43 app.add_option(
"--base-game-preset", base_game_preset_,
"Base game preset to use for the tileset.")
45 ->capture_default_str();
47 "--tiles-primary-override",
48 tiles_primary_override_,
49 "Override the number of tiles in the primary tileset.")
52 "--tiles-total-override", tiles_total_override_,
"Override the total number of tiles in the tileset.")
55 "--metatiles-primary-override",
56 metatiles_primary_override_,
57 "Override the number of metatiles in the primary tileset.")
60 "--metatiles-total-override",
61 metatiles_total_override_,
62 "Override the total number of metatiles in the tileset.")
65 "--pals-primary-override",
66 pals_primary_override_,
67 "Override the number of metatiles in the primary tileset.")
70 "--pals-total-override", pals_total_override_,
"Override the total number of metatiles in the tileset.")
76 return base_game_preset_;
81 std::vector<std::string> diagnostics_;
88 return "DIAGNOSTIC OPTIONS";
93 app.add_option(
"--warning", diagnostics_,
"Enable given warning diagnostics.")
96 app.add_option(
"--no-warning", diagnostics_,
"Disable given warning diagnostics.")
99 app.add_option(
"--error", diagnostics_,
"Enable given warning diagnostics as errors.")
102 app.add_option(
"--no-error", diagnostics_,
"Disable given warning diagnostics as errors.")
124 return "ARTIFACT OPTIONS";
129 output_opt_.RegisterOpt(app);
135 disable_attribute_generation_opt_.
RegisterOpt(app);
146 return tiles_pal_mode_opt_;
151 return disable_metatile_generation_opt_.
disabled();
156 return disable_attribute_generation_opt_.
disabled();
166 return "PAL ASSIGNMENT CONFIG OPTIONS";
void RegisterOpt(CLI::App &app) override
const OptOutput & output_opt() const
bool metatiles_disabled() const
bool attributes_disabled() const
OptGroupArtifacts()=default
std::string GroupName() override
const OptTilesPalMode & tiles_pal_mode() const
void RegisterGroup(CLI::App &app) override
void RegisterGroup(CLI::App &app) override
const std::vector< std::string > & diagnostics() const
std::string GroupName() override
OptGroupDiagnostics()=default
std::string GroupName() override
void RegisterGroup(CLI::App &app) override
const std::string & base_game_preset() const
void RegisterGroup(CLI::App &app) override
std::string GroupName() override
OptGroupPalAssignmentConfig()=default
virtual void RegisterGroup(CLI::App &app)=0
virtual ~OptGroup()=default
virtual std::string GroupName()=0
void RegisterOpt(CLI::App &app) override
void SetGroup(const std::string &group, CLI::App &app) const