diff options
author | Star Rauchenberger <fefferburbia@gmail.com> | 2025-08-20 15:03:18 -0400 |
---|---|---|
committer | Star Rauchenberger <fefferburbia@gmail.com> | 2025-08-20 15:03:18 -0400 |
commit | d77c73397b684faa55f0e95484ac89ca68bde1ad (patch) | |
tree | 84fd35d342b69a9765d8f94473b56998d26e323d /tools/datapacker/container.cpp | |
parent | 53ad8e2f3e5fcf9cf9d5d4628498557e0f5500e8 (diff) | |
download | lingo2-archipelago-d77c73397b684faa55f0e95484ac89ca68bde1ad.tar.gz lingo2-archipelago-d77c73397b684faa55f0e95484ac89ca68bde1ad.tar.bz2 lingo2-archipelago-d77c73397b684faa55f0e95484ac89ca68bde1ad.zip |
Added "endings" object type
Diffstat (limited to 'tools/datapacker/container.cpp')
-rw-r--r-- | tools/datapacker/container.cpp | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/tools/datapacker/container.cpp b/tools/datapacker/container.cpp index ffcb75a..0d3417e 100644 --- a/tools/datapacker/container.cpp +++ b/tools/datapacker/container.cpp | |||
@@ -205,6 +205,22 @@ uint64_t Container::FindLetterByName(std::string letter_name) { | |||
205 | } | 205 | } |
206 | } | 206 | } |
207 | 207 | ||
208 | uint64_t Container::FindOrAddEnding(std::string ending_name) { | ||
209 | auto it = ending_id_by_name_.find(ending_name); | ||
210 | if (it == ending_id_by_name_.end()) { | ||
211 | uint64_t new_id = all_objects_.endings_size(); | ||
212 | Ending* ending = all_objects_.add_endings(); | ||
213 | ending->set_id(new_id); | ||
214 | ending->set_name(ending_name); | ||
215 | |||
216 | ending_id_by_name_[ending_name] = new_id; | ||
217 | |||
218 | return new_id; | ||
219 | } else { | ||
220 | return it->second; | ||
221 | } | ||
222 | } | ||
223 | |||
208 | uint64_t Container::FindOrAddMastery(std::optional<std::string> map_name, | 224 | uint64_t Container::FindOrAddMastery(std::optional<std::string> map_name, |
209 | std::optional<std::string> room_name, | 225 | std::optional<std::string> room_name, |
210 | std::string mastery_name, | 226 | std::string mastery_name, |