diff --git a/src/openrct2-ui/windows/Dropdown.cpp b/src/openrct2-ui/windows/Dropdown.cpp index d465162b80..64f8c3cbec 100644 --- a/src/openrct2-ui/windows/Dropdown.cpp +++ b/src/openrct2-ui/windows/Dropdown.cpp @@ -28,7 +28,10 @@ constexpr int32_t DROPDOWN_TEXT_MAX_ROWS = 32; constexpr int32_t DROPDOWN_ITEM_HEIGHT = 12; static constexpr const uint8_t _appropriateImageDropdownItemsPerRow[34] = { - 1, 1, 1, 1, 2, 2, 3, 3, 4, 3, 5, 4, 4, 5, 5, 5, 4, 5, 6, 5, 5, 7, 4, 5, 6, 5, 6, 6, 6, 6, 6, 8, 8, 8, + 1, 1, 1, 1, 2, 2, 3, 3, 4, 3, // 10 + 5, 4, 4, 5, 5, 5, 4, 5, 6, 5, // 20 + 5, 7, 4, 5, 6, 5, 6, 6, 6, 6, // 30 + 6, 8, 8, 8, // 34 }; enum diff --git a/src/openrct2-ui/windows/EditorObjectSelection.cpp b/src/openrct2-ui/windows/EditorObjectSelection.cpp index 9d18375df7..64ef15930e 100644 --- a/src/openrct2-ui/windows/EditorObjectSelection.cpp +++ b/src/openrct2-ui/windows/EditorObjectSelection.cpp @@ -222,10 +222,22 @@ static std::vector _window_editor_object_selection_widgets = { #pragma endregion static constexpr const int32_t window_editor_object_selection_animation_loops[] = { - 20, 32, 10, 72, 24, 28, 16, + 20, // All + 32, // Transport + 10, // Gentle + 72, // Coaster + 24, // Thrill + 28, // Water + 16, // Stall }; static constexpr const int32_t window_editor_object_selection_animation_divisor[] = { - 4, 8, 2, 4, 4, 4, 2, + 4, // All + 8, // Transport + 2, // Gentle + 4, // Coaster + 4, // Thrill + 4, // Water + 2, // Stall }; static rct_string_id GetRideTypeStringId(const ObjectRepositoryItem* item); diff --git a/src/openrct2-ui/windows/Finances.cpp b/src/openrct2-ui/windows/Finances.cpp index 4f2166c175..fb9fa4126f 100644 --- a/src/openrct2-ui/windows/Finances.cpp +++ b/src/openrct2-ui/windows/Finances.cpp @@ -28,7 +28,6 @@ #include #include -// clang-format off enum { WINDOW_FINANCES_PAGE_SUMMARY, @@ -97,8 +96,9 @@ static constexpr const int32_t RSW_OTHER_TABS = WW_OTHER_TABS; #pragma endregion -#pragma region Widgets +#pragma region Widgets +// clang-format off #define MAIN_FINANCES_WIDGETS(TITLE, RSW, RSH, WW, WH) \ WINDOW_SHIM(TITLE, WW, WH), \ MakeWidget({0, 43}, {RSW, RSH}, WindowWidgetType::Resize, WindowColour::Secondary), \ @@ -165,16 +165,17 @@ static rct_widget _windowFinancesResearchWidgets[] = MakeWidget({ 8, 186}, {WW_RESEARCH - 14, 12}, WindowWidgetType::Checkbox, WindowColour::Tertiary, STR_RESEARCH_NEW_SCENERY_AND_THEMING, STR_RESEARCH_NEW_SCENERY_AND_THEMING_TIP ), WIDGETS_END, }; +// clang-format on -static rct_widget *_windowFinancesPageWidgets[] = -{ - _windowFinancesSummaryWidgets, - _windowFinancesCashWidgets, - _windowFinancesParkValueWidgets, - _windowFinancesProfitWidgets, - _windowFinancesMarketingWidgets, - _windowFinancesResearchWidgets +static rct_widget* _windowFinancesPageWidgets[] = { + _windowFinancesSummaryWidgets, // WINDOW_FINANCES_PAGE_SUMMARY + _windowFinancesCashWidgets, // WINDOW_FINANCES_PAGE_FINANCIAL_GRAPH + _windowFinancesParkValueWidgets, // WINDOW_FINANCES_PAGE_VALUE_GRAPH + _windowFinancesProfitWidgets, // WINDOW_FINANCES_PAGE_PROFIT_GRAPH + _windowFinancesMarketingWidgets, // WINDOW_FINANCES_PAGE_MARKETING + _windowFinancesResearchWidgets, // WINDOW_FINANCES_PAGE_RESEARCH }; +static_assert(std::size(_windowFinancesPageWidgets) == WINDOW_FINANCES_PAGE_COUNT); #pragma endregion @@ -195,30 +196,31 @@ static constexpr const rct_string_id _windowFinancesSummaryRowLabels[static_cast STR_FINANCES_SUMMARY_LOAN_INTEREST, }; -static constexpr const int32_t _windowFinancesTabAnimationFrames[] = -{ - 8, 16, 16, 16, 19, 8 +static constexpr const int32_t _windowFinancesTabAnimationFrames[] = { + 8, // WINDOW_FINANCES_PAGE_SUMMARY + 16, // WINDOW_FINANCES_PAGE_FINANCIAL_GRAPH + 16, // WINDOW_FINANCES_PAGE_VALUE_GRAPH + 16, // WINDOW_FINANCES_PAGE_PROFIT_GRAPH + 19, // WINDOW_FINANCES_PAGE_MARKETING + 8, // WINDOW_FINANCES_PAGE_RESEARCH }; +static_assert(std::size(_windowFinancesTabAnimationFrames) == WINDOW_FINANCES_PAGE_COUNT); static constexpr const int32_t EXPENDITURE_COLUMN_WIDTH = 80; +static constexpr const uint32_t _windowFinancesPageHoldDownWidgets[] = { + (1ULL << WIDX_LOAN_INCREASE) | (1ULL << WIDX_LOAN_DECREASE), // WINDOW_FINANCES_PAGE_SUMMARY -static constexpr const uint32_t _windowFinancesPageHoldDownWidgets[] = -{ - (1ULL << WIDX_LOAN_INCREASE) | - (1ULL << WIDX_LOAN_DECREASE), - - 0, - 0, - 0, - 0, - 0 + 0, // WINDOW_FINANCES_PAGE_FINANCIAL_GRAPH + 0, // WINDOW_FINANCES_PAGE_VALUE_GRAPH + 0, // WINDOW_FINANCES_PAGE_PROFIT_GRAPH + 0, // WINDOW_FINANCES_PAGE_MARKETING + 0, // WINDOW_FINANCES_PAGE_RESEARCH }; +static_assert(std::size(_windowFinancesPageHoldDownWidgets) == WINDOW_FINANCES_PAGE_COUNT); #pragma endregion -// clang-format on - class FinancesWindow final : public Window { private: diff --git a/src/openrct2-ui/windows/NewRide.cpp b/src/openrct2-ui/windows/NewRide.cpp index d2873bcb5e..e346a840f6 100644 --- a/src/openrct2-ui/windows/NewRide.cpp +++ b/src/openrct2-ui/windows/NewRide.cpp @@ -52,7 +52,6 @@ static int32_t _windowNewRideGroupByTrackTypeWidth = 172; #pragma region Ride type view order -// clang-format off /** * The order of ride types shown in the new ride window so that the order stays consistent across games and rides of the same * type are kept together. @@ -163,7 +162,8 @@ static constexpr const char RideTypeViewOrder[] = { #pragma endregion -enum { +enum +{ WINDOW_NEW_RIDE_PAGE_TRANSPORT, WINDOW_NEW_RIDE_PAGE_GENTLE, WINDOW_NEW_RIDE_PAGE_ROLLER_COASTER, @@ -176,7 +176,8 @@ enum { #pragma region Widgets -enum { +enum +{ WIDX_BACKGROUND, WIDX_TITLE, WIDX_CLOSE, @@ -198,6 +199,7 @@ enum { WIDX_GROUP_BY_TRACK_TYPE, }; +// clang-format off static rct_widget window_new_ride_widgets[] = { WINDOW_SHIM(WINDOW_TITLE, WW, WH), MakeWidget({ 0, 43}, {601, 339}, WindowWidgetType::Resize, WindowColour::Secondary ), @@ -216,25 +218,25 @@ static rct_widget window_new_ride_widgets[] = { MakeWidget({ WW - 8 - _windowNewRideGroupByTrackTypeWidth, 47}, {_windowNewRideGroupByTrackTypeWidth, 14}, WindowWidgetType::Checkbox, WindowColour::Secondary, STR_GROUP_BY_TRACK_TYPE, STR_GROUP_BY_TRACK_TYPE_TIP ), WIDGETS_END, }; +// clang-format on #pragma endregion #pragma region Events -static void WindowNewRideMouseup(rct_window *w, rct_widgetindex widgetIndex); -static void WindowNewRideMousedown(rct_window *w, rct_widgetindex widgetIndex, rct_widget *widget); -static void WindowNewRideUpdate(rct_window *w); -static void WindowNewRideScrollgetsize(rct_window *w, int32_t scrollIndex, int32_t *width, int32_t *height); -static void WindowNewRideScrollMousedown(rct_window *w, int32_t scrollIndex, const ScreenCoordsXY& screenCoords); -static void WindowNewRideScrollmouseover(rct_window *w, int32_t scrollIndex, const ScreenCoordsXY& screenCoords); -static void WindowNewRideInvalidate(rct_window *w); -static void WindowNewRidePaint(rct_window *w, rct_drawpixelinfo *dpi); -static void WindowNewRideScrollpaint(rct_window *w, rct_drawpixelinfo *dpi, int32_t scrollIndex); +static void WindowNewRideMouseup(rct_window* w, rct_widgetindex widgetIndex); +static void WindowNewRideMousedown(rct_window* w, rct_widgetindex widgetIndex, rct_widget* widget); +static void WindowNewRideUpdate(rct_window* w); +static void WindowNewRideScrollgetsize(rct_window* w, int32_t scrollIndex, int32_t* width, int32_t* height); +static void WindowNewRideScrollMousedown(rct_window* w, int32_t scrollIndex, const ScreenCoordsXY& screenCoords); +static void WindowNewRideScrollmouseover(rct_window* w, int32_t scrollIndex, const ScreenCoordsXY& screenCoords); +static void WindowNewRideInvalidate(rct_window* w); +static void WindowNewRidePaint(rct_window* w, rct_drawpixelinfo* dpi); +static void WindowNewRideScrollpaint(rct_window* w, rct_drawpixelinfo* dpi, int32_t scrollIndex); static void WindowNewRideUpdateVehicleAvailability(ObjectEntryIndex rideType); // 0x0098E354 -static rct_window_event_list window_new_ride_events([](auto& events) -{ +static rct_window_event_list window_new_ride_events([](auto& events) { events.mouse_up = &WindowNewRideMouseup; events.mouse_down = &WindowNewRideMousedown; events.update = &WindowNewRideUpdate; @@ -248,23 +250,38 @@ static rct_window_event_list window_new_ride_events([](auto& events) #pragma endregion -static constexpr const rct_string_id window_new_ride_titles[WINDOW_NEW_RIDE_PAGE_COUNT] = { - STR_NEW_TRANSPORT_RIDES, - STR_NEW_GENTLE_RIDES, - STR_NEW_ROLLER_COASTERS, - STR_NEW_THRILL_RIDES, - STR_NEW_WATER_RIDES, - STR_NEW_SHOPS_STALLS, - STR_RESEARCH_AND_DEVELOPMENT, +static constexpr const rct_string_id window_new_ride_titles[] = { + STR_NEW_TRANSPORT_RIDES, // WINDOW_NEW_RIDE_PAGE_TRANSPORT + STR_NEW_GENTLE_RIDES, // WINDOW_NEW_RIDE_PAGE_GENTLE + STR_NEW_ROLLER_COASTERS, // WINDOW_NEW_RIDE_PAGE_ROLLER_COASTER + STR_NEW_THRILL_RIDES, // WINDOW_NEW_RIDE_PAGE_THRILL + STR_NEW_WATER_RIDES, // WINDOW_NEW_RIDE_PAGE_WATER + STR_NEW_SHOPS_STALLS, // WINDOW_NEW_RIDE_PAGE_SHOP + STR_RESEARCH_AND_DEVELOPMENT, // WINDOW_NEW_RIDE_PAGE_RESEARCH }; -// clang-format on +static_assert(std::size(window_new_ride_titles) == WINDOW_NEW_RIDE_PAGE_COUNT); static constexpr const int32_t window_new_ride_tab_animation_loops[] = { - 20, 32, 10, 72, 24, 28, 16, + 20, // WINDOW_NEW_RIDE_PAGE_TRANSPORT + 32, // WINDOW_NEW_RIDE_PAGE_GENTLE + 10, // WINDOW_NEW_RIDE_PAGE_ROLLER_COASTER + 72, // WINDOW_NEW_RIDE_PAGE_THRILL + 24, // WINDOW_NEW_RIDE_PAGE_WATER + 28, // WINDOW_NEW_RIDE_PAGE_SHOP + 16, // WINDOW_NEW_RIDE_PAGE_RESEARCH }; +static_assert(std::size(window_new_ride_tab_animation_loops) == WINDOW_NEW_RIDE_PAGE_COUNT); + static constexpr const int32_t window_new_ride_tab_animation_divisor[] = { - 4, 8, 2, 4, 4, 4, 2, + 4, // WINDOW_NEW_RIDE_PAGE_TRANSPORT + 8, // WINDOW_NEW_RIDE_PAGE_GENTLE + 2, // WINDOW_NEW_RIDE_PAGE_ROLLER_COASTER + 4, // WINDOW_NEW_RIDE_PAGE_THRILL + 4, // WINDOW_NEW_RIDE_PAGE_WATER + 4, // WINDOW_NEW_RIDE_PAGE_SHOP + 2, // WINDOW_NEW_RIDE_PAGE_RESEARCH }; +static_assert(std::size(window_new_ride_tab_animation_divisor) == WINDOW_NEW_RIDE_PAGE_COUNT); static void WindowNewRideSetPage(rct_window* w, int32_t page); static void WindowNewRideRefreshWidgetSizing(rct_window* w); diff --git a/src/openrct2-ui/windows/Ride.cpp b/src/openrct2-ui/windows/Ride.cpp index 3e0f57b9de..d6c2d25ff0 100644 --- a/src/openrct2-ui/windows/Ride.cpp +++ b/src/openrct2-ui/windows/Ride.cpp @@ -679,11 +679,32 @@ struct RideOverallView static std::vector ride_overall_views = {}; static constexpr const int32_t window_ride_tab_animation_divisor[] = { - 0, 0, 2, 2, 4, 2, 8, 8, 2, 0, + 0, // WINDOW_RIDE_PAGE_MAIN + 0, // WINDOW_RIDE_PAGE_VEHICLE + 2, // WINDOW_RIDE_PAGE_OPERATING + 2, // WINDOW_RIDE_PAGE_MAINTENANCE + 4, // WINDOW_RIDE_PAGE_COLOUR + 2, // WINDOW_RIDE_PAGE_MUSIC + 8, // WINDOW_RIDE_PAGE_MEASUREMENTS + 8, // WINDOW_RIDE_PAGE_GRAPHS + 2, // WINDOW_RIDE_PAGE_INCOME + 0, // WINDOW_RIDE_PAGE_CUSTOMER }; +static_assert(std::size(window_ride_tab_animation_divisor) == WINDOW_RIDE_PAGE_COUNT); + static constexpr const int32_t window_ride_tab_animation_frames[] = { - 0, 0, 4, 16, 8, 16, 8, 8, 8, 0, + 0, // WINDOW_RIDE_PAGE_MAIN + 0, // WINDOW_RIDE_PAGE_VEHICLE + 4, // WINDOW_RIDE_PAGE_OPERATING + 16, // WINDOW_RIDE_PAGE_MAINTENANCE + 8, // WINDOW_RIDE_PAGE_COLOUR + 16, // WINDOW_RIDE_PAGE_MUSIC + 8, // WINDOW_RIDE_PAGE_MEASUREMENTS + 8, // WINDOW_RIDE_PAGE_GRAPHS + 8, // WINDOW_RIDE_PAGE_INCOME + 0, // WINDOW_RIDE_PAGE_CUSTOMER }; +static_assert(std::size(window_ride_tab_animation_frames) == WINDOW_RIDE_PAGE_COUNT); // clang-format off static constexpr const rct_string_id RatingNames[] = { @@ -694,83 +715,87 @@ static constexpr const rct_string_id RatingNames[] = { STR_RATING_EXTREME, STR_RATING_ULTRA_EXTREME, }; +// clang-format on static constexpr const rct_string_id RideBreakdownReasonNames[] = { - STR_RIDE_BREAKDOWN_SAFETY_CUT_OUT , - STR_RIDE_BREAKDOWN_RESTRAINTS_STUCK_CLOSED, - STR_RIDE_BREAKDOWN_RESTRAINTS_STUCK_OPEN, - STR_RIDE_BREAKDOWN_DOORS_STUCK_CLOSED, - STR_RIDE_BREAKDOWN_DOORS_STUCK_OPEN, - STR_RIDE_BREAKDOWN_VEHICLE_MALFUNCTION, - STR_RIDE_BREAKDOWN_BRAKES_FAILURE, - STR_RIDE_BREAKDOWN_CONTROL_FAILURE, + STR_RIDE_BREAKDOWN_SAFETY_CUT_OUT, // BREAKDOWN_SAFETY_CUT_OUT + STR_RIDE_BREAKDOWN_RESTRAINTS_STUCK_CLOSED, // BREAKDOWN_RESTRAINTS_STUCK_CLOSED + STR_RIDE_BREAKDOWN_RESTRAINTS_STUCK_OPEN, // BREAKDOWN_RESTRAINTS_STUCK_OPEN + STR_RIDE_BREAKDOWN_DOORS_STUCK_CLOSED, // BREAKDOWN_DOORS_STUCK_CLOSED + STR_RIDE_BREAKDOWN_DOORS_STUCK_OPEN, // BREAKDOWN_DOORS_STUCK_OPEN + STR_RIDE_BREAKDOWN_VEHICLE_MALFUNCTION, // BREAKDOWN_VEHICLE_MALFUNCTION + STR_RIDE_BREAKDOWN_BRAKES_FAILURE, // BREAKDOWN_BRAKES_FAILURE + STR_RIDE_BREAKDOWN_CONTROL_FAILURE, // BREAKDOWN_CONTROL_FAILURE }; +static_assert(std::size(RideBreakdownReasonNames) == BREAKDOWN_COUNT); -const rct_string_id ColourSchemeNames[4] = { - STR_MAIN_COLOUR_SCHEME, - STR_ALTERNATIVE_COLOUR_SCHEME_1, - STR_ALTERNATIVE_COLOUR_SCHEME_2, - STR_ALTERNATIVE_COLOUR_SCHEME_3, +const rct_string_id ColourSchemeNames[] = { + STR_MAIN_COLOUR_SCHEME, // RIDE_COLOUR_SCHEME_MAIN + STR_ALTERNATIVE_COLOUR_SCHEME_1, // RIDE_COLOUR_SCHEME_ADDITIONAL_1 + STR_ALTERNATIVE_COLOUR_SCHEME_2, // RIDE_COLOUR_SCHEME_ADDITIONAL_2 + STR_ALTERNATIVE_COLOUR_SCHEME_3, // RIDE_COLOUR_SCHEME_ADDITIONAL_3 }; +static_assert(std::size(ColourSchemeNames) == RIDE_COLOUR_SCHEME_COUNT); static constexpr const rct_string_id VehicleLoadNames[] = { - STR_QUARTER_LOAD, - STR_HALF_LOAD, - STR_THREE_QUARTER_LOAD, - STR_FULL_LOAD, - STR_ANY_LOAD, + STR_QUARTER_LOAD, // WAIT_FOR_LOAD_QUARTER + STR_HALF_LOAD, // WAIT_FOR_LOAD_HALF + STR_THREE_QUARTER_LOAD, // WAIT_FOR_LOAD_THREE_QUARTER + STR_FULL_LOAD, // WAIT_FOR_LOAD_FULL + STR_ANY_LOAD, // WAIT_FOR_LOAD_ANY }; +static_assert(std::size(VehicleLoadNames) == WAIT_FOR_LOAD_COUNT); static constexpr const rct_string_id VehicleColourSchemeNames[] = { - STR_ALL_VEHICLES_IN_SAME_COLOURS , - STR_DIFFERENT_COLOURS_PER , - STR_DIFFERENT_COLOURS_PER_VEHICLE , + STR_ALL_VEHICLES_IN_SAME_COLOURS, // RIDE_COLOUR_SCHEME_MODE_ALL_SAME, + STR_DIFFERENT_COLOURS_PER, // RIDE_COLOUR_SCHEME_MODE_DIFFERENT_PER_TRAIN, + STR_DIFFERENT_COLOURS_PER_VEHICLE, // RIDE_COLOUR_SCHEME_MODE_DIFFERENT_PER_CAR, }; +static_assert(std::size(VehicleColourSchemeNames) == RIDE_COLOUR_SCHEME_MODE_COUNT); static constexpr const rct_string_id VehicleStatusNames[] = { - STR_MOVING_TO_END_OF, // Vehicle::Status::MovingToEndOfStation - STR_WAITING_FOR_PASSENGERS_AT, // Vehicle::Status::WaitingForPassengers - STR_WAITING_TO_DEPART, // Vehicle::Status::WaitingToDepart - STR_DEPARTING, // Vehicle::Status::Departing - STR_TRAVELLING_AT_0, // Vehicle::Status::Travelling - STR_ARRIVING_AT, // Vehicle::Status::Arriving - STR_UNLOADING_PASSENGERS_AT, // Vehicle::Status::UnloadingPassengers - STR_TRAVELLING_AT_1, // Vehicle::Status::TravellingBoat - STR_CRASHING, // Vehicle::Status::Crashing - STR_CRASHED_0, // Vehicle::Status::Crashed - STR_TRAVELLING_AT_2, // Vehicle::Status::TravellingDodgems - STR_SWINGING, // Vehicle::Status::Swinging - STR_ROTATING_0, // Vehicle::Status::Rotating - STR_ROTATING_1, // Vehicle::Status::FerrisWheelRotating - STR_OPERATING_0, // Vehicle::Status::SimulatorOperating - STR_SHOWING_FILM, // Vehicle::Status::ShowingFilm - STR_ROTATING_2, // Vehicle::Status::SpaceRingsOperating - STR_OPERATING_1, // Vehicle::Status::TopSpinOperating - STR_OPERATING_2, // Vehicle::Status::HauntedHouseOperating - STR_DOING_CIRCUS_SHOW, // Vehicle::Status::DoingCircusShow - STR_OPERATING_3, // Vehicle::Status::CrookedHouseOperating - STR_WAITING_FOR_CABLE_LIFT, // Vehicle::Status::WaitingForCableLift - STR_TRAVELLING_AT_3, // Vehicle::Status::TravellingCableLift - STR_STOPPING_0, // Vehicle::Status::Stopping - STR_WAITING_FOR_PASSENGERS, // Vehicle::Status::WaitingForPassengers17 - STR_WAITING_TO_START, // Vehicle::Status::WaitingToStart - STR_STARTING, // Vehicle::Status::Starting - STR_OPERATING, // Vehicle::Status::Operating1A - STR_STOPPING_1, // Vehicle::Status::Stopping1B - STR_UNLOADING_PASSENGERS, // Vehicle::Status::UnloadingPassengers1C - STR_STOPPED_BY_BLOCK_BRAKES, // Vehicle::Status::StoppedByBlockBrakes + STR_MOVING_TO_END_OF, // Vehicle::Status::MovingToEndOfStation + STR_WAITING_FOR_PASSENGERS_AT, // Vehicle::Status::WaitingForPassengers + STR_WAITING_TO_DEPART, // Vehicle::Status::WaitingToDepart + STR_DEPARTING, // Vehicle::Status::Departing + STR_TRAVELLING_AT_0, // Vehicle::Status::Travelling + STR_ARRIVING_AT, // Vehicle::Status::Arriving + STR_UNLOADING_PASSENGERS_AT, // Vehicle::Status::UnloadingPassengers + STR_TRAVELLING_AT_1, // Vehicle::Status::TravellingBoat + STR_CRASHING, // Vehicle::Status::Crashing + STR_CRASHED_0, // Vehicle::Status::Crashed + STR_TRAVELLING_AT_2, // Vehicle::Status::TravellingDodgems + STR_SWINGING, // Vehicle::Status::Swinging + STR_ROTATING_0, // Vehicle::Status::Rotating + STR_ROTATING_1, // Vehicle::Status::FerrisWheelRotating + STR_OPERATING_0, // Vehicle::Status::SimulatorOperating + STR_SHOWING_FILM, // Vehicle::Status::ShowingFilm + STR_ROTATING_2, // Vehicle::Status::SpaceRingsOperating + STR_OPERATING_1, // Vehicle::Status::TopSpinOperating + STR_OPERATING_2, // Vehicle::Status::HauntedHouseOperating + STR_DOING_CIRCUS_SHOW, // Vehicle::Status::DoingCircusShow + STR_OPERATING_3, // Vehicle::Status::CrookedHouseOperating + STR_WAITING_FOR_CABLE_LIFT, // Vehicle::Status::WaitingForCableLift + STR_TRAVELLING_AT_3, // Vehicle::Status::TravellingCableLift + STR_STOPPING_0, // Vehicle::Status::Stopping + STR_WAITING_FOR_PASSENGERS, // Vehicle::Status::WaitingForPassengers17 + STR_WAITING_TO_START, // Vehicle::Status::WaitingToStart + STR_STARTING, // Vehicle::Status::Starting + STR_OPERATING, // Vehicle::Status::Operating1A + STR_STOPPING_1, // Vehicle::Status::Stopping1B + STR_UNLOADING_PASSENGERS, // Vehicle::Status::UnloadingPassengers1C + STR_STOPPED_BY_BLOCK_BRAKES, // Vehicle::Status::StoppedByBlockBrakes }; static constexpr const rct_string_id SingleSessionVehicleStatusNames[] = { - STR_STOPPING_0, // Vehicle::Status::MovingToEndOfStation - STR_WAITING_FOR_PASSENGERS, // Vehicle::Status::WaitingForPassengers - STR_WAITING_TO_START, // Vehicle::Status::WaitingToDepart - STR_STARTING, // Vehicle::Status::Departing - STR_OPERATING, // Vehicle::Status::Travelling - STR_STOPPING_1, // Vehicle::Status::Arriving - STR_UNLOADING_PASSENGERS, // Vehicle::Status::UnloadingPassengers + STR_STOPPING_0, // Vehicle::Status::MovingToEndOfStation + STR_WAITING_FOR_PASSENGERS, // Vehicle::Status::WaitingForPassengers + STR_WAITING_TO_START, // Vehicle::Status::WaitingToDepart + STR_STARTING, // Vehicle::Status::Departing + STR_OPERATING, // Vehicle::Status::Travelling + STR_STOPPING_1, // Vehicle::Status::Arriving + STR_UNLOADING_PASSENGERS, // Vehicle::Status::UnloadingPassengers }; -// clang-format on struct WindowRideMazeDesignOption { @@ -4819,8 +4844,8 @@ static void WindowRideColourScrollpaint(rct_window* w, rct_drawpixelinfo* dpi, i auto screenCoords = ScreenCoordsXY{ vehiclePreviewWidget->width() / 2, vehiclePreviewWidget->height() - 15 }; // ? - auto trainCarIndex = (ride->colour_scheme_type & 3) == RIDE_COLOUR_SCHEME_DIFFERENT_PER_CAR ? w->vehicleIndex - : rideEntry->TabCar; + auto trainCarIndex = (ride->colour_scheme_type & 3) == RIDE_COLOUR_SCHEME_MODE_DIFFERENT_PER_CAR ? w->vehicleIndex + : rideEntry->TabCar; CarEntry* rideVehicleEntry = &rideEntry->Cars[ride_entry_get_vehicle_at_position( ride->subtype, ride->num_cars_per_train, trainCarIndex)]; diff --git a/src/openrct2/actions/RideSetAppearanceAction.cpp b/src/openrct2/actions/RideSetAppearanceAction.cpp index 554c4ad774..9487673a45 100644 --- a/src/openrct2/actions/RideSetAppearanceAction.cpp +++ b/src/openrct2/actions/RideSetAppearanceAction.cpp @@ -124,7 +124,8 @@ GameActions::Result RideSetAppearanceAction::Execute() const ride_update_vehicle_colours(ride); break; case RideSetAppearanceType::VehicleColourScheme: - ride->colour_scheme_type &= ~(RIDE_COLOUR_SCHEME_DIFFERENT_PER_TRAIN | RIDE_COLOUR_SCHEME_DIFFERENT_PER_CAR); + ride->colour_scheme_type &= ~( + RIDE_COLOUR_SCHEME_MODE_DIFFERENT_PER_TRAIN | RIDE_COLOUR_SCHEME_MODE_DIFFERENT_PER_CAR); ride->colour_scheme_type |= _value; for (uint32_t i = 1; i < std::size(ride->vehicle_colours); i++) { diff --git a/src/openrct2/ride/Ride.cpp b/src/openrct2/ride/Ride.cpp index 3bbd9e4242..9cff6e1ac3 100644 --- a/src/openrct2/ride/Ride.cpp +++ b/src/openrct2/ride/Ride.cpp @@ -2188,13 +2188,13 @@ void ride_set_vehicle_colours_to_random_preset(Ride* ride, uint8_t preset_index) { assert(preset_index < presetList->count); - ride->colour_scheme_type = RIDE_COLOUR_SCHEME_ALL_SAME; + ride->colour_scheme_type = RIDE_COLOUR_SCHEME_MODE_ALL_SAME; VehicleColour* preset = &presetList->list[preset_index]; ride->vehicle_colours[0] = *preset; } else { - ride->colour_scheme_type = RIDE_COLOUR_SCHEME_DIFFERENT_PER_TRAIN; + ride->colour_scheme_type = RIDE_COLOUR_SCHEME_MODE_DIFFERENT_PER_TRAIN; uint32_t count = presetList->count; for (uint32_t i = 0; i < count; i++) { @@ -4783,15 +4783,15 @@ void ride_update_vehicle_colours(Ride* ride) { switch (ride->colour_scheme_type & 3) { - case RIDE_COLOUR_SCHEME_ALL_SAME: + case RIDE_COLOUR_SCHEME_MODE_ALL_SAME: colours = ride->vehicle_colours[0]; colours.Tertiary = ride->vehicle_colours[0].Tertiary; break; - case RIDE_COLOUR_SCHEME_DIFFERENT_PER_TRAIN: + case RIDE_COLOUR_SCHEME_MODE_DIFFERENT_PER_TRAIN: colours = ride->vehicle_colours[i]; colours.Tertiary = ride->vehicle_colours[i].Tertiary; break; - case RIDE_COLOUR_SCHEME_DIFFERENT_PER_CAR: + case RIDE_COLOUR_SCHEME_MODE_DIFFERENT_PER_CAR: colours = ride->vehicle_colours[std::min(carIndex, OpenRCT2::Limits::MaxCarsPerTrain - 1)]; colours.Tertiary = ride->vehicle_colours[std::min(carIndex, OpenRCT2::Limits::MaxCarsPerTrain - 1)] .Tertiary; diff --git a/src/openrct2/ride/Ride.h b/src/openrct2/ride/Ride.h index 5d772a2b9e..1e988fde66 100644 --- a/src/openrct2/ride/Ride.h +++ b/src/openrct2/ride/Ride.h @@ -642,9 +642,11 @@ RideMode& operator++(RideMode& d, int); enum { - RIDE_COLOUR_SCHEME_ALL_SAME, - RIDE_COLOUR_SCHEME_DIFFERENT_PER_TRAIN, - RIDE_COLOUR_SCHEME_DIFFERENT_PER_CAR + RIDE_COLOUR_SCHEME_MODE_ALL_SAME, + RIDE_COLOUR_SCHEME_MODE_DIFFERENT_PER_TRAIN, + RIDE_COLOUR_SCHEME_MODE_DIFFERENT_PER_CAR, + + RIDE_COLOUR_SCHEME_MODE_COUNT, }; enum @@ -738,6 +740,8 @@ enum WAIT_FOR_LOAD_THREE_QUARTER, WAIT_FOR_LOAD_FULL, WAIT_FOR_LOAD_ANY, + + WAIT_FOR_LOAD_COUNT, }; enum @@ -745,7 +749,9 @@ enum RIDE_COLOUR_SCHEME_MAIN, RIDE_COLOUR_SCHEME_ADDITIONAL_1, RIDE_COLOUR_SCHEME_ADDITIONAL_2, - RIDE_COLOUR_SCHEME_ADDITIONAL_3 + RIDE_COLOUR_SCHEME_ADDITIONAL_3, + + RIDE_COLOUR_SCHEME_COUNT, }; enum diff --git a/src/openrct2/ride/gentle/SpaceRings.cpp b/src/openrct2/ride/gentle/SpaceRings.cpp index 7e255a756d..18bf8d985d 100644 --- a/src/openrct2/ride/gentle/SpaceRings.cpp +++ b/src/openrct2/ride/gentle/SpaceRings.cpp @@ -54,7 +54,7 @@ static void paint_space_rings_structure( } uint32_t imageColourFlags = session.TrackColours[SCHEME_MISC]; - if ((ride.colour_scheme_type & 3) != RIDE_COLOUR_SCHEME_DIFFERENT_PER_TRAIN) + if ((ride.colour_scheme_type & 3) != RIDE_COLOUR_SCHEME_MODE_DIFFERENT_PER_TRAIN) { vehicleIndex = 0; }