Merge branch 'master' into sync-numtiles

This commit is contained in:
GriffinR
2022-11-10 12:27:47 -05:00
committed by GitHub
713 changed files with 15246 additions and 11968 deletions
+14
View File
@@ -33,6 +33,7 @@ int main(int argc, char *argv[])
string outputFilepath = argv[3];
Environment env;
env.set_trim_blocks(true);
// Add custom command callbacks.
env.add_callback("doNotModifyHeader", 0, [jsonfilepath, templateFilepath](Arguments& args) {
@@ -103,6 +104,19 @@ int main(int argc, char *argv[])
return args.at(0)->empty();
});
env.add_callback("isEmptyString", 1, [](Arguments& args) {
return args.at(0)->get<string>().empty();
});
env.add_callback("cleanString", 1, [](Arguments& args) {
string badChars = ".'{} \n\t-_\u00e9";
string str = args.at(0)->get<string>();
str.erase(remove_if(str.begin(), str.end(), [&badChars](const char &c) {
return badChars.find(c) != std::string::npos;
}), str.end());
return str;
});
try
{
env.write_with_json_file(templateFilepath, jsonfilepath, outputFilepath);
+28 -19
View File
@@ -200,7 +200,7 @@ string generate_map_events_text(Json map_data) {
<< warp_event["x"].int_value() << ", "
<< warp_event["y"].int_value() << ", "
<< warp_event["elevation"].int_value() << ", "
<< warp_event["dest_warp_id"].int_value() << ", "
<< warp_event["dest_warp_id"].string_value() << ", "
<< warp_event["dest_map"].string_value() << "\n";
}
text << "\n";
@@ -288,19 +288,28 @@ string generate_firered_map_events_text(Json map_data) {
text << objects_label << "::\n";
for (unsigned int i = 0; i < map_data["object_events"].array_items().size(); i++) {
auto obj_event = map_data["object_events"].array_items()[i];
text << "\tobject_event " << i + 1 << ", "
<< obj_event["graphics_id"].string_value() << ", "
<< (obj_event["in_connection"].bool_value() ? 255 : 0) << ", "
<< obj_event["x"].int_value() << ", "
<< obj_event["y"].int_value() << ", "
<< obj_event["elevation"].int_value() << ", "
<< obj_event["movement_type"].string_value() << ", "
<< obj_event["movement_range_x"].int_value() << ", "
<< obj_event["movement_range_y"].int_value() << ", "
<< obj_event["trainer_type"].string_value() << ", "
<< obj_event["trainer_sight_or_berry_tree_id"].string_value() << ", "
<< obj_event["script"].string_value() << ", "
<< obj_event["flag"].string_value() << "\n";
string type = obj_event["type"].string_value();
if (type == "object") {
text << "\tobject_event " << i + 1 << ", "
<< obj_event["graphics_id"].string_value() << ", "
<< obj_event["x"].int_value() << ", "
<< obj_event["y"].int_value() << ", "
<< obj_event["elevation"].int_value() << ", "
<< obj_event["movement_type"].string_value() << ", "
<< obj_event["movement_range_x"].int_value() << ", "
<< obj_event["movement_range_y"].int_value() << ", "
<< obj_event["trainer_type"].string_value() << ", "
<< obj_event["trainer_sight_or_berry_tree_id"].string_value() << ", "
<< obj_event["script"].string_value() << ", "
<< obj_event["flag"].string_value() << "\n";
} else if (type == "clone") {
text << "\tclone_event " << i + 1 << ", "
<< obj_event["graphics_id"].string_value() << ", "
<< obj_event["x"].int_value() << ", "
<< obj_event["y"].int_value() << ", "
<< obj_event["target_local_id"].int_value() << ", "
<< obj_event["target_map"].string_value() << "\n";
}
}
text << "\n";
} else {
@@ -315,7 +324,7 @@ string generate_firered_map_events_text(Json map_data) {
<< warp_event["x"].int_value() << ", "
<< warp_event["y"].int_value() << ", "
<< warp_event["elevation"].int_value() << ", "
<< warp_event["dest_warp_id"].int_value() << ", "
<< warp_event["dest_warp_id"].string_value() << ", "
<< warp_event["dest_map"].string_value() << "\n";
}
text << "\n";
@@ -331,9 +340,9 @@ string generate_firered_map_events_text(Json map_data) {
text << "\tcoord_event "
<< coord_event["x"].int_value() << ", "
<< coord_event["y"].int_value() << ", "
<< coord_event["elevation"].int_value() << ", 0, "
<< coord_event["elevation"].int_value() << ", "
<< coord_event["var"].string_value() << ", "
<< coord_event["var_value"].string_value() << ", 0, "
<< coord_event["var_value"].string_value() << ", "
<< coord_event["script"].string_value() << "\n";
}
else if (coord_event["type"] == "weather") {
@@ -354,11 +363,11 @@ string generate_firered_map_events_text(Json map_data) {
text << bgs_label << "::\n";
for (auto &bg_event : map_data["bg_events"].array_items()) {
if (bg_event["type"] == "sign") {
text << "\tbg_event "
text << "\tbg_sign_event "
<< bg_event["x"].int_value() << ", "
<< bg_event["y"].int_value() << ", "
<< bg_event["elevation"].int_value() << ", "
<< bg_event["player_facing_dir"].string_value() << ", 0,"
<< bg_event["player_facing_dir"].string_value() << ", "
<< bg_event["script"].string_value() << "\n";
}
else if (bg_event["type"] == "hidden_item") {