From c0fed1d4e886539a533fc77e58bd4c2e1ae17597 Mon Sep 17 00:00:00 2001 From: smix8 <52464204+smix8@users.noreply.github.com> Date: Wed, 22 Jun 2022 15:33:40 +0200 Subject: Add Navigation function to get all navigation maps Added new function that returns all created navigation map RIDs from the NavigationServer. The function returns both 2D and 3D created navigation maps as technically there is no distinction between them. --- modules/navigation/godot_navigation_server.cpp | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'modules/navigation/godot_navigation_server.cpp') diff --git a/modules/navigation/godot_navigation_server.cpp b/modules/navigation/godot_navigation_server.cpp index 2f8cb6c230..927748dbd9 100644 --- a/modules/navigation/godot_navigation_server.cpp +++ b/modules/navigation/godot_navigation_server.cpp @@ -123,6 +123,18 @@ void GodotNavigationServer::add_command(SetCommand *command) const { } } +Array GodotNavigationServer::get_maps() const { + Array all_map_rids; + List maps_owned; + map_owner.get_owned_list(&maps_owned); + if (maps_owned.size()) { + for (const RID &E : maps_owned) { + all_map_rids.push_back(E); + } + } + return all_map_rids; +} + RID GodotNavigationServer::map_create() const { GodotNavigationServer *mut_this = const_cast(this); MutexLock lock(mut_this->operations_mutex); -- cgit v1.2.3