diff --git a/src/openrct2-ui/windows/EditorObjectSelection.cpp b/src/openrct2-ui/windows/EditorObjectSelection.cpp index 2e4e11589e..d08f936948 100644 --- a/src/openrct2-ui/windows/EditorObjectSelection.cpp +++ b/src/openrct2-ui/windows/EditorObjectSelection.cpp @@ -104,11 +104,10 @@ static constexpr const ObjectPageDesc ObjectSelectionPages[] = { { STR_OBJECT_SELECTION_PARK_ENTRANCE, SPR_TAB_PARK, false }, { STR_OBJECT_SELECTION_WATER, SPR_TAB_WATER, false }, - // Currently hidden until new save format arrives: - // { STR_OBJECT_SELECTION_TERRAIN_SURFACES, SPR_G2_TAB_LAND, false }, - // { STR_OBJECT_SELECTION_TERRAIN_EDGES, SPR_G2_TAB_LAND, false }, - // { STR_OBJECT_SELECTION_STATIONS, SPR_TAB_PARK, false }, - // { STR_OBJECT_SELECTION_MUSIC, SPR_TAB_MUSIC_0, false }, + { STR_OBJECT_SELECTION_TERRAIN_SURFACES, SPR_G2_TAB_LAND, false }, + { STR_OBJECT_SELECTION_TERRAIN_EDGES, SPR_G2_TAB_LAND, false }, + { STR_OBJECT_SELECTION_STATIONS, SPR_TAB_PARK, false }, +// { STR_OBJECT_SELECTION_MUSIC, SPR_TAB_MUSIC_0, false }, }; #pragma region Widgets diff --git a/src/openrct2/object/ObjectLimits.h b/src/openrct2/object/ObjectLimits.h index febbda2544..ee5b4e1cac 100644 --- a/src/openrct2/object/ObjectLimits.h +++ b/src/openrct2/object/ObjectLimits.h @@ -22,7 +22,7 @@ constexpr const uint16_t MAX_SCENERY_GROUP_OBJECTS = 19; constexpr const uint16_t MAX_PARK_ENTRANCE_OBJECTS = 1; constexpr const uint16_t MAX_WATER_OBJECTS = 1; constexpr const uint16_t MAX_SCENARIO_TEXT_OBJECTS = 1; -constexpr const uint16_t MAX_TERRAIN_SURFACE_OBJECTS = 18; +constexpr const uint16_t MAX_TERRAIN_SURFACE_OBJECTS = 255; constexpr const uint16_t MAX_TERRAIN_EDGE_OBJECTS = 255; constexpr const uint16_t MAX_STATION_OBJECTS = 255; constexpr const uint16_t MAX_MUSIC_OBJECTS = 255; diff --git a/src/openrct2/rct1/S4Importer.cpp b/src/openrct2/rct1/S4Importer.cpp index f8b60a8d72..a6bd659ed7 100644 --- a/src/openrct2/rct1/S4Importer.cpp +++ b/src/openrct2/rct1/S4Importer.cpp @@ -1513,6 +1513,14 @@ private: })); LoadObjects(ObjectType::ParkEntrance, std::vector({ "PKENT1 " })); LoadObjects(ObjectType::Water, _waterEntry); + LoadObjects( + ObjectType::TerrainSurface, + std::vector({ + "#RCT1SRR", + "#RCT1SWO", + "#RCT1SRU", + "#RCT1SRG", + })); } void LoadObjects(ObjectType objectType, const EntryList& entries) diff --git a/src/openrct2/world/Surface.h b/src/openrct2/world/Surface.h index a63ee5e1c8..7e01ce922e 100644 --- a/src/openrct2/world/Surface.h +++ b/src/openrct2/world/Surface.h @@ -36,6 +36,7 @@ enum TERRAIN_ROOF_IRON, TERRAIN_ROOF_LOG, TERRAIN_COUNT_REGULAR, // The amount of surface types the user can actually select - what follows are technical types + // Technical types (not selectable) TERRAIN_CHECKERBOARD_INVERTED = TERRAIN_COUNT_REGULAR, TERRAIN_UNDERGROUND_VIEW, };