summary refs log tree commit diff stats
path: root/tools/datapacker/container.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'tools/datapacker/container.cpp')
-rw-r--r--tools/datapacker/container.cpp17
1 files changed, 17 insertions, 0 deletions
diff --git a/tools/datapacker/container.cpp b/tools/datapacker/container.cpp index 2c68552..624caf8 100644 --- a/tools/datapacker/container.cpp +++ b/tools/datapacker/container.cpp
@@ -331,6 +331,23 @@ uint64_t Container::FindOrAddDoor(std::optional<std::string> map_name,
331 } 331 }
332} 332}
333 333
334uint64_t Container::FindOrAddProgressive(std::string prog_name) {
335 auto it = progressive_id_by_name_.find(prog_name);
336
337 if (it == progressive_id_by_name_.end()) {
338 uint64_t new_id = all_objects_.progressives_size();
339 Progressive* progressive = all_objects_.add_progressives();
340 progressive->set_id(new_id);
341 progressive->set_name(prog_name);
342
343 progressive_id_by_name_[prog_name] = new_id;
344
345 return new_id;
346 } else {
347 return it->second;
348 }
349}
350
334void Container::AddConnection(const Connection& connection) { 351void Container::AddConnection(const Connection& connection) {
335 *all_objects_.add_connections() = connection; 352 *all_objects_.add_connections() = connection;
336} 353}