1
0
mirror of https://github.com/OpenRCT2/OpenRCT2 synced 2026-01-18 20:43:04 +01:00

Change Object Selection order

Might take a little bit for people to get used to. But it's a lot more coherent and makes more sense.
This commit is contained in:
Karst
2022-04-09 01:59:14 +02:00
parent 5f2bde9375
commit cfa18bd113
2 changed files with 34 additions and 21 deletions

View File

@@ -1,6 +1,7 @@
0.4.1 (in development)
------------------------------------------------------------------------
- Feature: [#17011] Option to show ride vehicles as separate entries when selecting a ride to construct.
- Change: [#16952] Make "Object Selection" order more coherent.
- Fix: [#16934] Park size displayed incorrectly in Park window.
- Fix: [#16974] Small scenery ghosts can be deleted.
- Fix: [#17005] Unable to set patrol area for first staff member in park.

View File

@@ -125,29 +125,41 @@ struct ObjectPageDesc
bool IsAdvanced;
};
// Order of which the object tabs are displayed.
static constexpr const ObjectPageDesc ObjectSelectionPages[] = {
{ STR_OBJECT_SELECTION_RIDE_VEHICLES_ATTRACTIONS, SPR_TAB_RIDE_16, false },
{ STR_OBJECT_SELECTION_SMALL_SCENERY, SPR_TAB_SCENERY_TREES, true },
{ STR_OBJECT_SELECTION_LARGE_SCENERY, SPR_TAB_SCENERY_URBAN, true },
{ STR_OBJECT_SELECTION_WALLS_FENCES, SPR_TAB_SCENERY_WALLS, true },
{ STR_OBJECT_SELECTION_PATH_SIGNS, SPR_TAB_SCENERY_SIGNAGE, true },
{ STR_OBJECT_SELECTION_FOOTPATHS, SPR_G2_LEGACY_PATH_TAB, true },
{ STR_OBJECT_SELECTION_PATH_EXTRAS, SPR_TAB_SCENERY_PATH_ITEMS, false },
{ STR_OBJECT_SELECTION_SCENERY_GROUPS, SPR_TAB_SCENERY_STATUES, false },
{ STR_OBJECT_SELECTION_PARK_ENTRANCE, SPR_TAB_PARK, false },
{ STR_OBJECT_SELECTION_WATER, SPR_TAB_WATER, false },
{ STR_OBJECT_SELECTION_RIDE_VEHICLES_ATTRACTIONS, SPR_TAB_RIDE_16, false },
{ STR_OBJECT_SELECTION_STATIONS, SPR_G2_RIDE_STATION_TAB, true },
{ STR_OBJECT_SELECTION_MUSIC, SPR_TAB_MUSIC_0, true },
{ STR_OBJECT_SELECTION_SCENERY_GROUPS, SPR_TAB_SCENERY_STATUES, false },
{ STR_OBJECT_SELECTION_SMALL_SCENERY, SPR_TAB_SCENERY_TREES, true },
{ STR_OBJECT_SELECTION_LARGE_SCENERY, SPR_TAB_SCENERY_URBAN, true },
{ STR_OBJECT_SELECTION_WALLS_FENCES, SPR_TAB_SCENERY_WALLS, true },
{ STR_OBJECT_SELECTION_FOOTPATH_SURFACES, SPR_G2_PATH_SURFACE_TAB, false },
{ STR_OBJECT_SELECTION_FOOTPATH_RAILINGS, SPR_G2_PATH_RAILINGS_TAB, false },
{ STR_OBJECT_SELECTION_FOOTPATHS, SPR_G2_LEGACY_PATH_TAB, true },
{ STR_OBJECT_SELECTION_PATH_EXTRAS, SPR_TAB_SCENERY_PATH_ITEMS, false },
{ STR_OBJECT_SELECTION_PATH_SIGNS, SPR_TAB_SCENERY_SIGNAGE, true },
{ STR_OBJECT_SELECTION_PARK_ENTRANCE, SPR_TAB_PARK, false },
{ STR_OBJECT_SELECTION_TERRAIN_SURFACES, SPR_G2_TAB_LAND, true },
{ STR_OBJECT_SELECTION_TERRAIN_EDGES, SPR_G2_TERRAIN_EDGE_TAB, true },
{ STR_OBJECT_SELECTION_WATER, SPR_TAB_WATER, false },
// Dummy place holder for string objects
{ STR_NONE, static_cast<uint32_t>(SPR_NONE), false },
{ STR_OBJECT_SELECTION_TERRAIN_SURFACES, SPR_G2_TAB_LAND, true },
{ STR_OBJECT_SELECTION_TERRAIN_EDGES, SPR_G2_TERRAIN_EDGE_TAB, true },
{ STR_OBJECT_SELECTION_STATIONS, SPR_G2_RIDE_STATION_TAB, true },
{ STR_OBJECT_SELECTION_MUSIC, SPR_TAB_MUSIC_0, false },
{ STR_OBJECT_SELECTION_FOOTPATH_SURFACES, SPR_G2_PATH_SURFACE_TAB, false },
{ STR_OBJECT_SELECTION_FOOTPATH_RAILINGS, SPR_G2_PATH_RAILINGS_TAB, false },
{ STR_NONE, static_cast<uint32_t>(SPR_NONE), false },
};
// clang-format on
// Order of which the contents of each tab is displayed.
ObjectType static TabOrder[] = {
ObjectType::Ride, ObjectType::Station, ObjectType::Music,
ObjectType::SceneryGroup, ObjectType::SmallScenery, ObjectType::LargeScenery,
ObjectType::Walls, ObjectType::FootpathSurface, ObjectType::FootpathRailings,
ObjectType::Paths, ObjectType::PathBits, ObjectType::Banners,
ObjectType::ParkEntrance, ObjectType::TerrainSurface, ObjectType::TerrainEdge,
ObjectType::Water, ObjectType::ScenarioText,
};
// clang-format off
#pragma region Widgets
enum WINDOW_EDITOR_OBJECT_SELECTION_WIDGET_IDX
@@ -1413,7 +1425,7 @@ private:
ObjectType GetSelectedObjectType()
{
auto tab = selected_tab;
return static_cast<ObjectType>(tab);
return TabOrder[tab];
}
/**
@@ -1555,4 +1567,4 @@ void EditorLoadSelectedObjects()
// Reloads the default cyan water palette if no palette was selected.
load_palette();
}
}
}