From 3a27d9afde99adfcd320ec88f9c3210a7bd32137 Mon Sep 17 00:00:00 2001 From: florianessl Date: Tue, 4 Feb 2025 16:35:11 +0100 Subject: [PATCH] Add new field "easyrpg_clone_map_id" to determine if an event has been created by EasyRPGs new "CloneMapEvent" command --- generator/csv/fields_easyrpg.csv | 1 + src/generated/lcf/lsd/chunks.h | 10 +++++++++- src/generated/lcf/rpg/savemapeventbase.h | 4 +++- src/generated/lsd_savemapevent.cpp | 8 ++++++++ src/generated/lsd_savemapeventbase.cpp | 8 ++++++++ src/generated/lsd_savepartylocation.cpp | 8 ++++++++ src/generated/lsd_savevehiclelocation.cpp | 8 ++++++++ src/generated/rpg_savemapeventbase.cpp | 1 + 8 files changed, 46 insertions(+), 2 deletions(-) diff --git a/generator/csv/fields_easyrpg.csv b/generator/csv/fields_easyrpg.csv index 17a2112a..48b9752f 100644 --- a/generator/csv/fields_easyrpg.csv +++ b/generator/csv/fields_easyrpg.csv @@ -34,6 +34,7 @@ SaveEasyRpgText,line_spacing,f,Int32,0x07,4,0,0,Additional spacing between lines SaveEasyRpgText,flags,f,SaveEasyRpgText_Flags,0x08,3,0,0,Various text settings SaveMapEventBase,easyrpg_runtime_flags,f,UInt32,0xC8,0,0,0, SaveMapEventBase,easyrpg_move_failure_count,f,Int32,0xC9,0,0,0,Tracks how often the current move operation in a move route failed +SaveMapEventBase,easyrpg_clone_map_id,f,UInt32,0xCA,0,0,0,The original map id of a cloned event SavePartyLocation,maniac_horizontal_pan_speed,f,Double,0x8D,0,0,0,horizontal speed in the scrolls of the screen SavePartyLocation,maniac_vertical_pan_speed,f,Double,0x8E,0,0,0,vertical speed in the scrolls of the screen SaveSystem,maniac_strings,f,Vector,0x24,,0,0,rpg::Strings diff --git a/src/generated/lcf/lsd/chunks.h b/src/generated/lcf/lsd/chunks.h index 2c6b604a..f68a99b2 100644 --- a/src/generated/lcf/lsd/chunks.h +++ b/src/generated/lcf/lsd/chunks.h @@ -412,6 +412,8 @@ namespace LSD_Reader { easyrpg_runtime_flags = 0xC8, /** Tracks how often the current move operation in a move route failed */ easyrpg_move_failure_count = 0xC9, + /** The original map id of a cloned event */ + easyrpg_clone_map_id = 0xCA, /** */ boarding = 0x65, /** */ @@ -534,6 +536,8 @@ namespace LSD_Reader { easyrpg_runtime_flags = 0xC8, /** Tracks how often the current move operation in a move route failed */ easyrpg_move_failure_count = 0xC9, + /** The original map id of a cloned event */ + easyrpg_clone_map_id = 0xCA, /** Which vehicle */ vehicle = 0x65, /** From 0 to 255 - In flying vehicles; remaining distance to ascend */ @@ -841,7 +845,9 @@ namespace LSD_Reader { /** */ easyrpg_runtime_flags = 0xC8, /** Tracks how often the current move operation in a move route failed */ - easyrpg_move_failure_count = 0xC9 + easyrpg_move_failure_count = 0xC9, + /** The original map id of a cloned event */ + easyrpg_clone_map_id = 0xCA }; }; struct ChunkSaveMapEvent { @@ -928,6 +934,8 @@ namespace LSD_Reader { easyrpg_runtime_flags = 0xC8, /** Tracks how often the current move operation in a move route failed */ easyrpg_move_failure_count = 0xC9, + /** The original map id of a cloned event */ + easyrpg_clone_map_id = 0xCA, /** If true; this event is waiting for foreground execution. */ waiting_execution = 0x65, /** Index of custom move route */ diff --git a/src/generated/lcf/rpg/savemapeventbase.h b/src/generated/lcf/rpg/savemapeventbase.h index fe9a02c7..691b57a7 100644 --- a/src/generated/lcf/rpg/savemapeventbase.h +++ b/src/generated/lcf/rpg/savemapeventbase.h @@ -69,6 +69,7 @@ namespace rpg { int32_t flash_time_left = 0; uint32_t easyrpg_runtime_flags = 0; int32_t easyrpg_move_failure_count = 0; + uint32_t easyrpg_clone_map_id = 0; }; inline bool operator==(const SaveMapEventBase& l, const SaveMapEventBase& r) { @@ -112,7 +113,8 @@ namespace rpg { && l.flash_current_level == r.flash_current_level && l.flash_time_left == r.flash_time_left && l.easyrpg_runtime_flags == r.easyrpg_runtime_flags - && l.easyrpg_move_failure_count == r.easyrpg_move_failure_count; + && l.easyrpg_move_failure_count == r.easyrpg_move_failure_count + && l.easyrpg_clone_map_id == r.easyrpg_clone_map_id; } inline bool operator!=(const SaveMapEventBase& l, const SaveMapEventBase& r) { diff --git a/src/generated/lsd_savemapevent.cpp b/src/generated/lsd_savemapevent.cpp index e94051d3..4ac26480 100644 --- a/src/generated/lsd_savemapevent.cpp +++ b/src/generated/lsd_savemapevent.cpp @@ -307,6 +307,13 @@ static TypedField static_easyrpg_move_failure_count( 0, 0 ); +static TypedField static_easyrpg_clone_map_id( + &rpg::SaveMapEvent::easyrpg_clone_map_id, + LSD_Reader::ChunkSaveMapEvent::easyrpg_clone_map_id, + "easyrpg_clone_map_id", + 0, + 0 +); static TypedField static_waiting_execution( &rpg::SaveMapEvent::waiting_execution, LSD_Reader::ChunkSaveMapEvent::waiting_execution, @@ -380,6 +387,7 @@ Field const* Struct::fields[] = { &static_flash_time_left, &static_easyrpg_runtime_flags, &static_easyrpg_move_failure_count, + &static_easyrpg_clone_map_id, &static_waiting_execution, &static_original_move_route_index, &static_triggered_by_decision_key, diff --git a/src/generated/lsd_savemapeventbase.cpp b/src/generated/lsd_savemapeventbase.cpp index 6b5ecaf7..d9564ed1 100644 --- a/src/generated/lsd_savemapeventbase.cpp +++ b/src/generated/lsd_savemapeventbase.cpp @@ -307,6 +307,13 @@ static TypedField static_easyrpg_move_failure_co 0, 0 ); +static TypedField static_easyrpg_clone_map_id( + &rpg::SaveMapEventBase::easyrpg_clone_map_id, + LSD_Reader::ChunkSaveMapEventBase::easyrpg_clone_map_id, + "easyrpg_clone_map_id", + 0, + 0 +); template <> @@ -352,6 +359,7 @@ Field const* Struct::fields[] = { &static_flash_time_left, &static_easyrpg_runtime_flags, &static_easyrpg_move_failure_count, + &static_easyrpg_clone_map_id, NULL }; diff --git a/src/generated/lsd_savepartylocation.cpp b/src/generated/lsd_savepartylocation.cpp index 6d0b6005..bc775cce 100644 --- a/src/generated/lsd_savepartylocation.cpp +++ b/src/generated/lsd_savepartylocation.cpp @@ -307,6 +307,13 @@ static TypedField static_easyrpg_move_failure_c 0, 0 ); +static TypedField static_easyrpg_clone_map_id( + &rpg::SavePartyLocation::easyrpg_clone_map_id, + LSD_Reader::ChunkSavePartyLocation::easyrpg_clone_map_id, + "easyrpg_clone_map_id", + 0, + 0 +); static TypedField static_boarding( &rpg::SavePartyLocation::boarding, LSD_Reader::ChunkSavePartyLocation::boarding, @@ -478,6 +485,7 @@ Field const* Struct::fields[] = &static_flash_time_left, &static_easyrpg_runtime_flags, &static_easyrpg_move_failure_count, + &static_easyrpg_clone_map_id, &static_boarding, &static_aboard, &static_vehicle, diff --git a/src/generated/lsd_savevehiclelocation.cpp b/src/generated/lsd_savevehiclelocation.cpp index 49ce05e6..6d7295ef 100644 --- a/src/generated/lsd_savevehiclelocation.cpp +++ b/src/generated/lsd_savevehiclelocation.cpp @@ -307,6 +307,13 @@ static TypedField static_easyrpg_move_failure 0, 0 ); +static TypedField static_easyrpg_clone_map_id( + &rpg::SaveVehicleLocation::easyrpg_clone_map_id, + LSD_Reader::ChunkSaveVehicleLocation::easyrpg_clone_map_id, + "easyrpg_clone_map_id", + 0, + 0 +); static TypedField static_vehicle( &rpg::SaveVehicleLocation::vehicle, LSD_Reader::ChunkSaveVehicleLocation::vehicle, @@ -387,6 +394,7 @@ Field const* Struct::fields[ &static_flash_time_left, &static_easyrpg_runtime_flags, &static_easyrpg_move_failure_count, + &static_easyrpg_clone_map_id, &static_vehicle, &static_remaining_ascent, &static_remaining_descent, diff --git a/src/generated/rpg_savemapeventbase.cpp b/src/generated/rpg_savemapeventbase.cpp index 13cdf050..2276e7b7 100644 --- a/src/generated/rpg_savemapeventbase.cpp +++ b/src/generated/rpg_savemapeventbase.cpp @@ -58,6 +58,7 @@ std::ostream& operator<<(std::ostream& os, const SaveMapEventBase& obj) { os << ", flash_time_left="<< obj.flash_time_left; os << ", easyrpg_runtime_flags="<< obj.easyrpg_runtime_flags; os << ", easyrpg_move_failure_count="<< obj.easyrpg_move_failure_count; + os << ", easyrpg_clone_map_id="<< obj.easyrpg_clone_map_id; os << "}"; return os; }