diff --git a/src/openrct2/world/MapGen.cpp b/src/openrct2/world/MapGen.cpp index 2f87e65520..ae342e2126 100644 --- a/src/openrct2/world/MapGen.cpp +++ b/src/openrct2/world/MapGen.cpp @@ -147,12 +147,13 @@ void mapgen_generate(mapgen_settings* settings) std::string_view floorTexture = selectedFloor != nullptr ? selectedFloor->GetIdentifier() : ""; const auto selectedEdge = TerrainEdgeObject::GetById(settings->wall); std::string_view edgeTexture = selectedFloor != nullptr ? selectedEdge->GetIdentifier() : ""; + auto& objectManager = OpenRCT2::GetContext()->GetObjectManager(); if (floorTexture.empty()) { std::vector availableTerrains; - std::copy_if(std::begin(BaseTerrain), std::end(BaseTerrain), std::back_inserter(availableTerrains), [](auto terrain) { - return object_manager_get_loaded_object(ObjectEntryDescriptor(terrain)) != nullptr; + std::copy_if(std::begin(BaseTerrain), std::end(BaseTerrain), std::back_inserter(availableTerrains), [&](auto terrain) { + return objectManager.GetLoadedObject(ObjectEntryDescriptor(terrain)) != nullptr; }); if (availableTerrains.empty()) @@ -173,12 +174,12 @@ void mapgen_generate(mapgen_settings* settings) edgeTexture = "rct2.terrain_edge.rock"; // Fall back to the first available edge texture that is available in the park - if (object_manager_get_loaded_object(ObjectEntryDescriptor(edgeTexture)) == nullptr) + if (objectManager.GetLoadedObject(ObjectEntryDescriptor(edgeTexture)) == nullptr) edgeTexture = TerrainEdgeObject::GetById(0)->GetIdentifier(); } - auto floorTextureId = object_manager_get_loaded_object_entry_index(ObjectEntryDescriptor(floorTexture)); - auto edgeTextureId = object_manager_get_loaded_object_entry_index(ObjectEntryDescriptor(edgeTexture)); + auto floorTextureId = objectManager.GetLoadedObjectEntryIndex(ObjectEntryDescriptor(floorTexture)); + auto edgeTextureId = objectManager.GetLoadedObjectEntryIndex(ObjectEntryDescriptor(edgeTexture)); map_clear_all_elements(); @@ -224,15 +225,15 @@ void mapgen_generate(mapgen_settings* settings) if (settings->floor == -1 && floorTexture == "rct2.terrain_surface.grass" && (util_rand() & 1)) { std::vector availableBeachTextures; - if (object_manager_get_loaded_object(ObjectEntryDescriptor("rct2.terrain_surface.sand")) != nullptr) + if (objectManager.GetLoadedObject(ObjectEntryDescriptor("rct2.terrain_surface.sand")) != nullptr) availableBeachTextures.push_back("rct2.terrain_surface.sand"); - if (object_manager_get_loaded_object(ObjectEntryDescriptor("rct2.terrain_surface.sand_brown")) != nullptr) + if (objectManager.GetLoadedObject(ObjectEntryDescriptor("rct2.terrain_surface.sand_brown")) != nullptr) availableBeachTextures.push_back("rct2.terrain_surface.sand_brown"); if (!availableBeachTextures.empty()) beachTexture = availableBeachTextures[util_rand() % availableBeachTextures.size()]; } - auto beachTextureId = object_manager_get_loaded_object_entry_index(ObjectEntryDescriptor(beachTexture)); + auto beachTextureId = objectManager.GetLoadedObjectEntryIndex(ObjectEntryDescriptor(beachTexture)); for (auto y = 1; y < mapSize - 1; y++) {