diff options
| author | Star Rauchenberger <fefferburbia@gmail.com> | 2025-08-10 09:03:23 -0400 |
|---|---|---|
| committer | Star Rauchenberger <fefferburbia@gmail.com> | 2025-08-10 09:03:23 -0400 |
| commit | 482b251a26c6701e77ddcc167b78e7986fb0a25e (patch) | |
| tree | 030e99e059f23d28bddea79470aafff2374f5fe1 /tools | |
| parent | 9380a7786afaefa2a999e3130ba0f5318a45b83f (diff) | |
| download | lingo2-archipelago-482b251a26c6701e77ddcc167b78e7986fb0a25e.tar.gz lingo2-archipelago-482b251a26c6701e77ddcc167b78e7986fb0a25e.tar.bz2 lingo2-archipelago-482b251a26c6701e77ddcc167b78e7986fb0a25e.zip | |
Assigned IDs for the_colorful
Also fixed bug where the ID assigner didn't read letter and mastery IDs and would thus reuse them. I reassigned all IDs because of this (since we don't need to worry about ID stability yet).
Diffstat (limited to 'tools')
| -rw-r--r-- | tools/assign_ids/main.cpp | 12 | ||||
| -rw-r--r-- | tools/datapacker/main.cpp | 9 |
2 files changed, 21 insertions, 0 deletions
| diff --git a/tools/assign_ids/main.cpp b/tools/assign_ids/main.cpp index eba4fd6..349c258 100644 --- a/tools/assign_ids/main.cpp +++ b/tools/assign_ids/main.cpp | |||
| @@ -61,6 +61,12 @@ class AssignIds { | |||
| 61 | next_id_ = id; | 61 | next_id_ = id; |
| 62 | } | 62 | } |
| 63 | } | 63 | } |
| 64 | |||
| 65 | for (const auto& [_, id] : room.masteries()) { | ||
| 66 | if (id > next_id_) { | ||
| 67 | next_id_ = id; | ||
| 68 | } | ||
| 69 | } | ||
| 64 | } | 70 | } |
| 65 | } | 71 | } |
| 66 | 72 | ||
| @@ -70,6 +76,12 @@ class AssignIds { | |||
| 70 | } | 76 | } |
| 71 | } | 77 | } |
| 72 | 78 | ||
| 79 | for (const auto& [_, id] : id_mappings_.letters()) { | ||
| 80 | if (id > next_id_) { | ||
| 81 | next_id_ = id; | ||
| 82 | } | ||
| 83 | } | ||
| 84 | |||
| 73 | next_id_++; | 85 | next_id_++; |
| 74 | } | 86 | } |
| 75 | 87 | ||
| diff --git a/tools/datapacker/main.cpp b/tools/datapacker/main.cpp index 2ad97b0..260ab62 100644 --- a/tools/datapacker/main.cpp +++ b/tools/datapacker/main.cpp | |||
| @@ -139,6 +139,15 @@ class DataPacker { | |||
| 139 | map_name, h_panel.required_door().name(), current_map_name)); | 139 | map_name, h_panel.required_door().name(), current_map_name)); |
| 140 | } | 140 | } |
| 141 | 141 | ||
| 142 | if (h_panel.has_required_room()) { | ||
| 143 | std::optional<std::string> map_name = | ||
| 144 | h_panel.required_room().has_map() | ||
| 145 | ? std::optional<std::string>(h_panel.required_room().map()) | ||
| 146 | : std::nullopt; | ||
| 147 | panel.set_required_room(container_.FindOrAddRoom( | ||
| 148 | map_name, h_panel.required_room().name(), current_map_name)); | ||
| 149 | } | ||
| 150 | |||
| 142 | return panel_id; | 151 | return panel_id; |
| 143 | } | 152 | } |
| 144 | 153 | ||
