Use lower-case u integral suffix

This commit is contained in:
Hielke Morsink 2022-10-17 19:21:18 +02:00
parent 97a7fcc110
commit 31dd4bf604
No known key found for this signature in database
GPG Key ID: FE0B343DF883E7F2
78 changed files with 618 additions and 618 deletions

View File

@ -115,9 +115,9 @@ struct DrawRectCommand
enum enum
{ {
FLAG_NO_TEXTURE = (1U << 2U), FLAG_NO_TEXTURE = (1u << 2u),
FLAG_MASK = (1U << 3U), FLAG_MASK = (1u << 3u),
FLAG_CROSS_HATCH = (1U << 4U), FLAG_CROSS_HATCH = (1u << 4u),
}; };
}; };

View File

@ -804,7 +804,7 @@ void OpenGLDrawingContext::DrawSpriteSolid(rct_drawpixelinfo* dpi, const ImageId
{ {
CalculcateClipping(dpi); CalculcateClipping(dpi);
assert((colour & 0xFF) > 0U); assert((colour & 0xFF) > 0u);
auto g1Element = gfx_get_g1_element(image); auto g1Element = gfx_get_g1_element(image);
if (g1Element == nullptr) if (g1Element == nullptr)

View File

@ -247,7 +247,7 @@ void TextureCache::EnlargeAtlasesTexture(GLuint newEntries)
} }
// Initial capacity will be 12 which covers most cases of a fully visible park. // Initial capacity will be 12 which covers most cases of a fully visible park.
_atlasesTextureCapacity = (_atlasesTextureCapacity + 6) << 1UL; _atlasesTextureCapacity = (_atlasesTextureCapacity + 6) << 1uL;
glBindTexture(GL_TEXTURE_2D_ARRAY, _atlasesTexture); glBindTexture(GL_TEXTURE_2D_ARRAY, _atlasesTexture);
glTexImage3D( glTexImage3D(

View File

@ -40,7 +40,7 @@ struct GlyphId
{ {
size_t hash = k.Image * 7; size_t hash = k.Image * 7;
hash += (k.Palette & 0xFFFFFFFFUL) * 13; hash += (k.Palette & 0xFFFFFFFFUL) * 13;
hash += (k.Palette >> 32UL) * 23; hash += (k.Palette >> 32uL) * 23;
return hash; return hash;
} }
}; };

View File

@ -1078,11 +1078,11 @@ void WidgetSetDisabled(rct_window& w, WidgetIndex widgetIndex, bool value)
SafeSetWidgetFlag(w, widgetIndex, WIDGET_FLAGS::IS_DISABLED, value); SafeSetWidgetFlag(w, widgetIndex, WIDGET_FLAGS::IS_DISABLED, value);
if (value) if (value)
{ {
w.disabled_widgets |= (1ULL << widgetIndex); w.disabled_widgets |= (1uLL << widgetIndex);
} }
else else
{ {
w.disabled_widgets &= ~(1ULL << widgetIndex); w.disabled_widgets &= ~(1uLL << widgetIndex);
} }
} }
@ -1091,11 +1091,11 @@ void WidgetSetHoldable(rct_window& w, WidgetIndex widgetIndex, bool value)
SafeSetWidgetFlag(w, widgetIndex, WIDGET_FLAGS::IS_HOLDABLE, value); SafeSetWidgetFlag(w, widgetIndex, WIDGET_FLAGS::IS_HOLDABLE, value);
if (value) if (value)
{ {
w.hold_down_widgets |= (1ULL << widgetIndex); w.hold_down_widgets |= (1uLL << widgetIndex);
} }
else else
{ {
w.hold_down_widgets &= ~(1ULL << widgetIndex); w.hold_down_widgets &= ~(1uLL << widgetIndex);
} }
} }
@ -1108,9 +1108,9 @@ void WidgetSetPressed(rct_window& w, WidgetIndex widgetIndex, bool value)
{ {
SafeSetWidgetFlag(w, widgetIndex, WIDGET_FLAGS::IS_PRESSED, value); SafeSetWidgetFlag(w, widgetIndex, WIDGET_FLAGS::IS_PRESSED, value);
if (value) if (value)
w.pressed_widgets |= (1ULL << widgetIndex); w.pressed_widgets |= (1uLL << widgetIndex);
else else
w.pressed_widgets &= ~(1ULL << widgetIndex); w.pressed_widgets &= ~(1uLL << widgetIndex);
} }
void WidgetSetCheckboxValue(rct_window& w, WidgetIndex widgetIndex, bool value) void WidgetSetCheckboxValue(rct_window& w, WidgetIndex widgetIndex, bool value)

View File

@ -170,7 +170,7 @@ private:
pressed_widgets = 0; pressed_widgets = 0;
widgets = _windowAboutPageWidgets[p]; widgets = _windowAboutPageWidgets[p];
pressed_widgets |= (p == WINDOW_ABOUT_PAGE_RCT2) ? (1ULL << WIDX_TAB_ABOUT_RCT2) : (1ULL << WIDX_TAB_ABOUT_OPENRCT2); pressed_widgets |= (p == WINDOW_ABOUT_PAGE_RCT2) ? (1uLL << WIDX_TAB_ABOUT_RCT2) : (1uLL << WIDX_TAB_ABOUT_OPENRCT2);
WindowInitScrollWidgets(*this); WindowInitScrollWidgets(*this);
Invalidate(); Invalidate();
} }

View File

@ -181,7 +181,7 @@ public:
toolstripY += 24; toolstripY += 24;
} }
SetWidgetDisabled(WIDX_MOVE_UP, !_selectedIndex || _selectedIndex == 0U); SetWidgetDisabled(WIDX_MOVE_UP, !_selectedIndex || _selectedIndex == 0u);
SetWidgetDisabled(WIDX_MOVE_DOWN, !_selectedIndex || _selectedIndex >= GetNumAssetPacks() - 1); SetWidgetDisabled(WIDX_MOVE_DOWN, !_selectedIndex || _selectedIndex >= GetNumAssetPacks() - 1);
widgets[WIDX_APPLY].bottom = widgets[WIDX_LIST].bottom; widgets[WIDX_APPLY].bottom = widgets[WIDX_LIST].bottom;

View File

@ -279,14 +279,14 @@ public:
{ {
colourBtn->type = WindowWidgetType::ColourBtn; colourBtn->type = WindowWidgetType::ColourBtn;
} }
pressed_widgets &= ~(1ULL << WIDX_BANNER_NO_ENTRY); pressed_widgets &= ~(1uLL << WIDX_BANNER_NO_ENTRY);
disabled_widgets &= ~( disabled_widgets &= ~(
(1ULL << WIDX_BANNER_TEXT) | (1ULL << WIDX_TEXT_COLOUR_DROPDOWN) | (1ULL << WIDX_TEXT_COLOUR_DROPDOWN_BUTTON)); (1uLL << WIDX_BANNER_TEXT) | (1uLL << WIDX_TEXT_COLOUR_DROPDOWN) | (1uLL << WIDX_TEXT_COLOUR_DROPDOWN_BUTTON));
if (banner->flags & BANNER_FLAG_NO_ENTRY) if (banner->flags & BANNER_FLAG_NO_ENTRY)
{ {
pressed_widgets |= (1ULL << WIDX_BANNER_NO_ENTRY); pressed_widgets |= (1uLL << WIDX_BANNER_NO_ENTRY);
disabled_widgets |= (1ULL << WIDX_BANNER_TEXT) | (1ULL << WIDX_TEXT_COLOUR_DROPDOWN) disabled_widgets |= (1uLL << WIDX_BANNER_TEXT) | (1uLL << WIDX_TEXT_COLOUR_DROPDOWN)
| (1ULL << WIDX_TEXT_COLOUR_DROPDOWN_BUTTON); | (1uLL << WIDX_TEXT_COLOUR_DROPDOWN_BUTTON);
} }
colourBtn->image = GetColourButtonImage(banner->colour).ToUInt32(); colourBtn->image = GetColourButtonImage(banner->colour).ToUInt32();
rct_widget* dropDownWidget = &window_banner_widgets[WIDX_TEXT_COLOUR_DROPDOWN]; rct_widget* dropDownWidget = &window_banner_widgets[WIDX_TEXT_COLOUR_DROPDOWN];

View File

@ -320,20 +320,20 @@ static rct_widget *window_cheats_page_widgets[] =
}; };
static uint64_t window_cheats_page_hold_down_widgets[] = { static uint64_t window_cheats_page_hold_down_widgets[] = {
(1ULL << WIDX_MONEY_SPINNER_INCREMENT) | (1uLL << WIDX_MONEY_SPINNER_INCREMENT) |
(1ULL << WIDX_MONEY_SPINNER_DECREMENT) | (1uLL << WIDX_MONEY_SPINNER_DECREMENT) |
(1ULL << WIDX_ADD_MONEY) | (1uLL << WIDX_ADD_MONEY) |
(1ULL << WIDX_YEAR_UP) | (1uLL << WIDX_YEAR_UP) |
(1ULL << WIDX_YEAR_DOWN) | (1uLL << WIDX_YEAR_DOWN) |
(1ULL << WIDX_MONTH_UP) | (1uLL << WIDX_MONTH_UP) |
(1ULL << WIDX_MONTH_DOWN) | (1uLL << WIDX_MONTH_DOWN) |
(1ULL << WIDX_DAY_UP) | (1uLL << WIDX_DAY_UP) |
(1ULL << WIDX_DAY_DOWN), (1uLL << WIDX_DAY_DOWN),
0, 0,
(1ULL << WIDX_INCREASE_PARK_RATING) | (1uLL << WIDX_INCREASE_PARK_RATING) |
(1ULL << WIDX_DECREASE_PARK_RATING), (1uLL << WIDX_DECREASE_PARK_RATING),
0, 0,
}; };

View File

@ -64,7 +64,7 @@ public:
void OnOpen() override void OnOpen() override
{ {
widgets = window_clear_scenery_widgets; widgets = window_clear_scenery_widgets;
hold_down_widgets = (1ULL << WIDX_INCREMENT) | (1ULL << WIDX_DECREMENT); hold_down_widgets = (1uLL << WIDX_INCREMENT) | (1uLL << WIDX_DECREMENT);
WindowInitScrollWidgets(*this); WindowInitScrollWidgets(*this);
window_push_others_below(*this); window_push_others_below(*this);
@ -164,8 +164,8 @@ public:
void Invalidate() void Invalidate()
{ {
// Set the preview image button to be pressed down // Set the preview image button to be pressed down
pressed_widgets = (1ULL << WIDX_PREVIEW) | (gClearSmallScenery ? (1ULL << WIDX_SMALL_SCENERY) : 0) pressed_widgets = (1uLL << WIDX_PREVIEW) | (gClearSmallScenery ? (1uLL << WIDX_SMALL_SCENERY) : 0)
| (gClearLargeScenery ? (1ULL << WIDX_LARGE_SCENERY) : 0) | (gClearFootpath ? (1ULL << WIDX_FOOTPATH) : 0); | (gClearLargeScenery ? (1uLL << WIDX_LARGE_SCENERY) : 0) | (gClearFootpath ? (1uLL << WIDX_FOOTPATH) : 0);
// Update the preview image (for tool sizes up to 7) // Update the preview image (for tool sizes up to 7)
window_clear_scenery_widgets[WIDX_PREVIEW].image = LandTool::SizeToSpriteIndex(gLandToolSize); window_clear_scenery_widgets[WIDX_PREVIEW].image = LandTool::SizeToSpriteIndex(gLandToolSize);

View File

@ -52,7 +52,7 @@ public:
void OnOpen() override void OnOpen() override
{ {
widgets = window_custom_currency_widgets; widgets = window_custom_currency_widgets;
hold_down_widgets = (1ULL << WIDX_RATE_UP) | (1ULL << WIDX_RATE_DOWN); hold_down_widgets = (1uLL << WIDX_RATE_UP) | (1uLL << WIDX_RATE_DOWN);
WindowInitScrollWidgets(*this); WindowInitScrollWidgets(*this);
colours[0] = COLOUR_LIGHT_BROWN; colours[0] = COLOUR_LIGHT_BROWN;
colours[1] = COLOUR_LIGHT_BROWN; colours[1] = COLOUR_LIGHT_BROWN;

View File

@ -436,8 +436,8 @@ public:
void OnPrepareDraw() override void OnPrepareDraw() override
{ {
pressed_widgets |= 1ULL << WIDX_PREVIEW; pressed_widgets |= 1uLL << WIDX_PREVIEW;
pressed_widgets |= 1ULL << WIDX_TAB_1; pressed_widgets |= 1uLL << WIDX_TAB_1;
widgets[WIDX_CLOSE].type = gScreenFlags & SCREEN_FLAGS_SCENARIO_EDITOR ? WindowWidgetType::Empty widgets[WIDX_CLOSE].type = gScreenFlags & SCREEN_FLAGS_SCENARIO_EDITOR ? WindowWidgetType::Empty
: WindowWidgetType::CloseBox; : WindowWidgetType::CloseBox;

View File

@ -834,12 +834,12 @@ public:
widgets[WIDX_FILTER_DROPDOWN].right = width - 137; widgets[WIDX_FILTER_DROPDOWN].right = width - 137;
// Set pressed widgets // Set pressed widgets
pressed_widgets |= 1ULL << WIDX_PREVIEW; pressed_widgets |= 1uLL << WIDX_PREVIEW;
SetPressedTab(); SetPressedTab();
if (list_information_type & 1) if (list_information_type & 1)
pressed_widgets |= (1ULL << WIDX_ADVANCED); pressed_widgets |= (1uLL << WIDX_ADVANCED);
else else
pressed_widgets &= ~(1ULL << WIDX_ADVANCED); pressed_widgets &= ~(1uLL << WIDX_ADVANCED);
// Set window title and buttons // Set window title and buttons
auto ft = Formatter::Common(); auto ft = Formatter::Common();
@ -919,13 +919,13 @@ public:
pressed_widgets &= ~(1 << i); pressed_widgets &= ~(1 << i);
if ((_filter_flags & FILTER_RIDES) == FILTER_RIDES) if ((_filter_flags & FILTER_RIDES) == FILTER_RIDES)
pressed_widgets |= (1ULL << WIDX_FILTER_RIDE_TAB_ALL); pressed_widgets |= (1uLL << WIDX_FILTER_RIDE_TAB_ALL);
else else
{ {
for (int32_t i = 0; i < 6; i++) for (int32_t i = 0; i < 6; i++)
{ {
if (_filter_flags & (1 << (_numSourceGameItems + i))) if (_filter_flags & (1 << (_numSourceGameItems + i)))
pressed_widgets |= 1ULL << (WIDX_FILTER_RIDE_TAB_TRANSPORT + i); pressed_widgets |= 1uLL << (WIDX_FILTER_RIDE_TAB_TRANSPORT + i);
} }
} }

View File

@ -177,10 +177,10 @@ static WindowEventList *window_editor_objective_options_page_events[] = {
#pragma region Enabled widgets #pragma region Enabled widgets
static uint64_t window_editor_objective_options_page_hold_down_widgets[] = { static uint64_t window_editor_objective_options_page_hold_down_widgets[] = {
(1ULL << WIDX_OBJECTIVE_ARG_1_INCREASE) | (1uLL << WIDX_OBJECTIVE_ARG_1_INCREASE) |
(1ULL << WIDX_OBJECTIVE_ARG_1_DECREASE) | (1uLL << WIDX_OBJECTIVE_ARG_1_DECREASE) |
(1ULL << WIDX_OBJECTIVE_ARG_2_INCREASE) | (1uLL << WIDX_OBJECTIVE_ARG_2_INCREASE) |
(1ULL << WIDX_OBJECTIVE_ARG_2_DECREASE), (1uLL << WIDX_OBJECTIVE_ARG_2_DECREASE),
0, 0,
}; };
@ -1109,10 +1109,10 @@ static void WindowEditorObjectiveOptionsUpdateDisabledWidgets(rct_window* w)
const auto& rideManager = GetRideManager(); const auto& rideManager = GetRideManager();
if (std::any_of(rideManager.begin(), rideManager.end(), [](const Ride& ride) { return ride.IsRide(); })) if (std::any_of(rideManager.begin(), rideManager.end(), [](const Ride& ride) { return ride.IsRide(); }))
{ {
w->disabled_widgets &= ~(1ULL << WIDX_TAB_2); w->disabled_widgets &= ~(1uLL << WIDX_TAB_2);
} }
else else
{ {
w->disabled_widgets |= (1ULL << WIDX_TAB_2); w->disabled_widgets |= (1uLL << WIDX_TAB_2);
} }
} }

View File

@ -180,28 +180,28 @@ static rct_widget *window_editor_scenario_options_widgets[] = {
#pragma region Enabled widgets #pragma region Enabled widgets
static uint32_t window_editor_scenario_options_page_hold_down_widgets[] = { static uint32_t window_editor_scenario_options_page_hold_down_widgets[] = {
(1ULL << WIDX_INITIAL_CASH_INCREASE) | (1uLL << WIDX_INITIAL_CASH_INCREASE) |
(1ULL << WIDX_INITIAL_CASH_DECREASE) | (1uLL << WIDX_INITIAL_CASH_DECREASE) |
(1ULL << WIDX_INITIAL_LOAN_INCREASE) | (1uLL << WIDX_INITIAL_LOAN_INCREASE) |
(1ULL << WIDX_INITIAL_LOAN_DECREASE) | (1uLL << WIDX_INITIAL_LOAN_DECREASE) |
(1ULL << WIDX_MAXIMUM_LOAN_INCREASE) | (1uLL << WIDX_MAXIMUM_LOAN_INCREASE) |
(1ULL << WIDX_MAXIMUM_LOAN_DECREASE) | (1uLL << WIDX_MAXIMUM_LOAN_DECREASE) |
(1ULL << WIDX_INTEREST_RATE_INCREASE) | (1uLL << WIDX_INTEREST_RATE_INCREASE) |
(1ULL << WIDX_INTEREST_RATE_DECREASE), (1uLL << WIDX_INTEREST_RATE_DECREASE),
(1ULL << WIDX_CASH_PER_GUEST_INCREASE) | (1uLL << WIDX_CASH_PER_GUEST_INCREASE) |
(1ULL << WIDX_CASH_PER_GUEST_DECREASE) | (1uLL << WIDX_CASH_PER_GUEST_DECREASE) |
(1ULL << WIDX_GUEST_INITIAL_HAPPINESS_INCREASE) | (1uLL << WIDX_GUEST_INITIAL_HAPPINESS_INCREASE) |
(1ULL << WIDX_GUEST_INITIAL_HAPPINESS_DECREASE) | (1uLL << WIDX_GUEST_INITIAL_HAPPINESS_DECREASE) |
(1ULL << WIDX_GUEST_INITIAL_HUNGER_INCREASE) | (1uLL << WIDX_GUEST_INITIAL_HUNGER_INCREASE) |
(1ULL << WIDX_GUEST_INITIAL_HUNGER_DECREASE) | (1uLL << WIDX_GUEST_INITIAL_HUNGER_DECREASE) |
(1ULL << WIDX_GUEST_INITIAL_THIRST_INCREASE) | (1uLL << WIDX_GUEST_INITIAL_THIRST_INCREASE) |
(1ULL << WIDX_GUEST_INITIAL_THIRST_DECREASE), (1uLL << WIDX_GUEST_INITIAL_THIRST_DECREASE),
(1ULL << WIDX_LAND_COST_INCREASE) | (1uLL << WIDX_LAND_COST_INCREASE) |
(1ULL << WIDX_LAND_COST_DECREASE) | (1uLL << WIDX_LAND_COST_DECREASE) |
(1ULL << WIDX_CONSTRUCTION_RIGHTS_COST_INCREASE) | (1uLL << WIDX_CONSTRUCTION_RIGHTS_COST_INCREASE) |
(1ULL << WIDX_CONSTRUCTION_RIGHTS_COST_DECREASE) | (1uLL << WIDX_CONSTRUCTION_RIGHTS_COST_DECREASE) |
(1ULL << WIDX_ENTRY_PRICE_INCREASE) | (1uLL << WIDX_ENTRY_PRICE_INCREASE) |
(1ULL << WIDX_ENTRY_PRICE_DECREASE), (1uLL << WIDX_ENTRY_PRICE_DECREASE),
}; };
// clang-format on // clang-format on

View File

@ -209,7 +209,7 @@ static_assert(std::size(_windowFinancesTabAnimationFrames) == WINDOW_FINANCES_PA
static constexpr const int32_t EXPENDITURE_COLUMN_WIDTH = 80; static constexpr const int32_t EXPENDITURE_COLUMN_WIDTH = 80;
static constexpr const uint32_t _windowFinancesPageHoldDownWidgets[] = { static constexpr const uint32_t _windowFinancesPageHoldDownWidgets[] = {
(1ULL << WIDX_LOAN_INCREASE) | (1ULL << WIDX_LOAN_DECREASE), // WINDOW_FINANCES_PAGE_SUMMARY (1uLL << WIDX_LOAN_INCREASE) | (1uLL << WIDX_LOAN_DECREASE), // WINDOW_FINANCES_PAGE_SUMMARY
0, // WINDOW_FINANCES_PAGE_FINANCIAL_GRAPH 0, // WINDOW_FINANCES_PAGE_FINANCIAL_GRAPH
0, // WINDOW_FINANCES_PAGE_VALUE_GRAPH 0, // WINDOW_FINANCES_PAGE_VALUE_GRAPH
@ -890,7 +890,7 @@ public:
if (widgetIndex >= WIDX_TRANSPORT_RIDES && widgetIndex <= WIDX_SCENERY_AND_THEMING) if (widgetIndex >= WIDX_TRANSPORT_RIDES && widgetIndex <= WIDX_SCENERY_AND_THEMING)
{ {
auto activeResearchTypes = gResearchPriorities; auto activeResearchTypes = gResearchPriorities;
activeResearchTypes ^= 1ULL << (widgetIndex - WIDX_TRANSPORT_RIDES); activeResearchTypes ^= 1uLL << (widgetIndex - WIDX_TRANSPORT_RIDES);
auto gameAction = ParkSetResearchFundingAction(activeResearchTypes, gResearchFundingLevel); auto gameAction = ParkSetResearchFundingAction(activeResearchTypes, gResearchFundingLevel);
GameActions::Execute(&gameAction); GameActions::Execute(&gameAction);
@ -950,7 +950,7 @@ public:
for (int32_t i = 0; i < 7; i++) for (int32_t i = 0; i < 7; i++)
{ {
int32_t mask = 1 << i; int32_t mask = 1 << i;
int32_t widgetMask = 1ULL << (i + WIDX_TRANSPORT_RIDES); int32_t widgetMask = 1uLL << (i + WIDX_TRANSPORT_RIDES);
// Set checkbox disabled if research type is complete // Set checkbox disabled if research type is complete
if (uncompletedResearchTypes & mask) if (uncompletedResearchTypes & mask)

View File

@ -410,9 +410,9 @@ public:
void OnPrepareDraw() override void OnPrepareDraw() override
{ {
// Press / unpress footpath and queue type buttons // Press / unpress footpath and queue type buttons
pressed_widgets &= ~(1ULL << WIDX_FOOTPATH_TYPE); pressed_widgets &= ~(1uLL << WIDX_FOOTPATH_TYPE);
pressed_widgets &= ~(1ULL << WIDX_QUEUELINE_TYPE); pressed_widgets &= ~(1uLL << WIDX_QUEUELINE_TYPE);
pressed_widgets |= gFootpathSelection.IsQueueSelected ? (1ULL << WIDX_QUEUELINE_TYPE) : (1ULL << WIDX_FOOTPATH_TYPE); pressed_widgets |= gFootpathSelection.IsQueueSelected ? (1uLL << WIDX_QUEUELINE_TYPE) : (1uLL << WIDX_FOOTPATH_TYPE);
// Enable / disable construct button // Enable / disable construct button
window_footpath_widgets[WIDX_CONSTRUCT].type = _footpathConstructionMode == PATH_CONSTRUCTION_MODE_BRIDGE_OR_TUNNEL window_footpath_widgets[WIDX_CONSTRUCT].type = _footpathConstructionMode == PATH_CONSTRUCTION_MODE_BRIDGE_OR_TUNNEL
@ -1214,23 +1214,23 @@ private:
int32_t slope = gFootpathConstructSlope; int32_t slope = gFootpathConstructSlope;
if (slope == TILE_ELEMENT_SLOPE_SE_SIDE_UP) if (slope == TILE_ELEMENT_SLOPE_SE_SIDE_UP)
{ {
pressedWidgets |= (1ULL << WIDX_SLOPEDOWN); pressedWidgets |= (1uLL << WIDX_SLOPEDOWN);
} }
else if (slope == TILE_ELEMENT_SLOPE_FLAT) else if (slope == TILE_ELEMENT_SLOPE_FLAT)
{ {
pressedWidgets |= (1ULL << WIDX_LEVEL); pressedWidgets |= (1uLL << WIDX_LEVEL);
} }
else else
{ {
pressedWidgets |= (1ULL << WIDX_SLOPEUP); pressedWidgets |= (1uLL << WIDX_SLOPEUP);
} }
// Enable / disable directional widgets // Enable / disable directional widgets
direction = _footpathConstructValidDirections; direction = _footpathConstructValidDirections;
if (direction != INVALID_DIRECTION) if (direction != INVALID_DIRECTION)
{ {
disabledWidgets |= (1ULL << WIDX_DIRECTION_NW) | (1ULL << WIDX_DIRECTION_NE) | (1ULL << WIDX_DIRECTION_SW) disabledWidgets |= (1uLL << WIDX_DIRECTION_NW) | (1uLL << WIDX_DIRECTION_NE) | (1uLL << WIDX_DIRECTION_SW)
| (1ULL << WIDX_DIRECTION_SE); | (1uLL << WIDX_DIRECTION_SE);
direction = (direction + currentRotation) & 3; direction = (direction + currentRotation) & 3;
disabledWidgets &= ~(1 << (WIDX_DIRECTION_NW + direction)); disabledWidgets &= ~(1 << (WIDX_DIRECTION_NW + direction));
@ -1239,10 +1239,10 @@ private:
else else
{ {
// Disable all bridge mode widgets // Disable all bridge mode widgets
disabledWidgets |= (1ULL << WIDX_DIRECTION_GROUP) | (1ULL << WIDX_DIRECTION_NW) | (1ULL << WIDX_DIRECTION_NE) disabledWidgets |= (1uLL << WIDX_DIRECTION_GROUP) | (1uLL << WIDX_DIRECTION_NW) | (1uLL << WIDX_DIRECTION_NE)
| (1ULL << WIDX_DIRECTION_SW) | (1ULL << WIDX_DIRECTION_SE) | (1ULL << WIDX_SLOPE_GROUP) | (1uLL << WIDX_DIRECTION_SW) | (1uLL << WIDX_DIRECTION_SE) | (1uLL << WIDX_SLOPE_GROUP)
| (1ULL << WIDX_SLOPEDOWN) | (1ULL << WIDX_LEVEL) | (1ULL << WIDX_SLOPEUP) | (1ULL << WIDX_CONSTRUCT) | (1uLL << WIDX_SLOPEDOWN) | (1uLL << WIDX_LEVEL) | (1uLL << WIDX_SLOPEUP) | (1uLL << WIDX_CONSTRUCT)
| (1ULL << WIDX_REMOVE); | (1uLL << WIDX_REMOVE);
} }
pressed_widgets = pressedWidgets; pressed_widgets = pressedWidgets;

View File

@ -307,25 +307,25 @@ static void WindowGameBottomToolbarInvalidate(rct_window* w)
window_game_bottom_toolbar_widgets[WIDX_NEWS_LOCATE].type = WindowWidgetType::FlatBtn; window_game_bottom_toolbar_widgets[WIDX_NEWS_LOCATE].type = WindowWidgetType::FlatBtn;
window_game_bottom_toolbar_widgets[WIDX_MIDDLE_OUTSET].colour = 2; window_game_bottom_toolbar_widgets[WIDX_MIDDLE_OUTSET].colour = 2;
window_game_bottom_toolbar_widgets[WIDX_MIDDLE_INSET].colour = 2; window_game_bottom_toolbar_widgets[WIDX_MIDDLE_INSET].colour = 2;
w->disabled_widgets &= ~(1ULL << WIDX_NEWS_SUBJECT); w->disabled_widgets &= ~(1uLL << WIDX_NEWS_SUBJECT);
w->disabled_widgets &= ~(1ULL << WIDX_NEWS_LOCATE); w->disabled_widgets &= ~(1uLL << WIDX_NEWS_LOCATE);
// Find out if the news item is no longer valid // Find out if the news item is no longer valid
auto subjectLoc = News::GetSubjectLocation(newsItem->Type, newsItem->Assoc); auto subjectLoc = News::GetSubjectLocation(newsItem->Type, newsItem->Assoc);
if (!subjectLoc.has_value()) if (!subjectLoc.has_value())
w->disabled_widgets |= (1ULL << WIDX_NEWS_LOCATE); w->disabled_widgets |= (1uLL << WIDX_NEWS_LOCATE);
if (!(newsItem->TypeHasSubject())) if (!(newsItem->TypeHasSubject()))
{ {
w->disabled_widgets |= (1ULL << WIDX_NEWS_SUBJECT); w->disabled_widgets |= (1uLL << WIDX_NEWS_SUBJECT);
window_game_bottom_toolbar_widgets[WIDX_NEWS_SUBJECT].type = WindowWidgetType::Empty; window_game_bottom_toolbar_widgets[WIDX_NEWS_SUBJECT].type = WindowWidgetType::Empty;
} }
if (newsItem->HasButton()) if (newsItem->HasButton())
{ {
w->disabled_widgets |= (1ULL << WIDX_NEWS_SUBJECT); w->disabled_widgets |= (1uLL << WIDX_NEWS_SUBJECT);
w->disabled_widgets |= (1ULL << WIDX_NEWS_LOCATE); w->disabled_widgets |= (1uLL << WIDX_NEWS_LOCATE);
} }
} }
} }

View File

@ -430,7 +430,7 @@ private:
InitScrollWidgets(); InitScrollWidgets();
} }
pressed_widgets |= 1ULL << (page + WIDX_TAB_1); pressed_widgets |= 1uLL << (page + WIDX_TAB_1);
const auto peep = GetGuest(); const auto peep = GetGuest();
if (peep == nullptr) if (peep == nullptr)
@ -467,17 +467,17 @@ private:
} }
else else
{ {
newDisabledWidgets = (1ULL << WIDX_PICKUP); newDisabledWidgets = (1uLL << WIDX_PICKUP);
if (!WidgetIsDisabled(*this, WIDX_PICKUP)) if (!WidgetIsDisabled(*this, WIDX_PICKUP))
Invalidate(); Invalidate();
} }
if (gParkFlags & PARK_FLAGS_NO_MONEY) if (gParkFlags & PARK_FLAGS_NO_MONEY)
{ {
newDisabledWidgets |= (1ULL << WIDX_TAB_4); // Disable finance tab if no money newDisabledWidgets |= (1uLL << WIDX_TAB_4); // Disable finance tab if no money
} }
if (!gConfigGeneral.DebuggingTools) if (!gConfigGeneral.DebuggingTools)
{ {
newDisabledWidgets |= (1ULL << WIDX_TAB_7); // Disable debug tab when debug tools not turned on newDisabledWidgets |= (1uLL << WIDX_TAB_7); // Disable debug tab when debug tools not turned on
} }
disabled_widgets = newDisabledWidgets; disabled_widgets = newDisabledWidgets;
} }
@ -827,10 +827,10 @@ private:
{ {
return; return;
} }
pressed_widgets &= ~(1ULL << WIDX_TRACK); pressed_widgets &= ~(1uLL << WIDX_TRACK);
if (peep->PeepFlags & PEEP_FLAGS_TRACKING) if (peep->PeepFlags & PEEP_FLAGS_TRACKING)
{ {
pressed_widgets |= (1ULL << WIDX_TRACK); pressed_widgets |= (1uLL << WIDX_TRACK);
} }
widgets[WIDX_VIEWPORT].right = width - 26; widgets[WIDX_VIEWPORT].right = width - 26;

View File

@ -267,7 +267,7 @@ public:
// Current tab image animation // Current tab image animation
_tabAnimationIndex++; _tabAnimationIndex++;
if (_tabAnimationIndex >= (_selectedTab == TabId::Individual ? 24UL : 32UL)) if (_tabAnimationIndex >= (_selectedTab == TabId::Individual ? 24uL : 32uL))
_tabAnimationIndex = 0; _tabAnimationIndex = 0;
InvalidateWidget(WIDX_TAB_1 + static_cast<int32_t>(_selectedTab)); InvalidateWidget(WIDX_TAB_1 + static_cast<int32_t>(_selectedTab));

View File

@ -135,14 +135,14 @@ public:
void OnPrepareDraw() override void OnPrepareDraw() override
{ {
pressed_widgets |= 1ULL << WIDX_TRACK_PREVIEW; pressed_widgets |= 1uLL << WIDX_TRACK_PREVIEW;
if (!gTrackDesignSceneryToggle) if (!gTrackDesignSceneryToggle)
{ {
pressed_widgets |= (1ULL << WIDX_TOGGLE_SCENERY); pressed_widgets |= (1uLL << WIDX_TOGGLE_SCENERY);
} }
else else
{ {
pressed_widgets &= ~(1ULL << WIDX_TOGGLE_SCENERY); pressed_widgets &= ~(1uLL << WIDX_TOGGLE_SCENERY);
} }
} }

View File

@ -70,7 +70,7 @@ public:
void OnOpen() override void OnOpen() override
{ {
widgets = window_land_widgets; widgets = window_land_widgets;
hold_down_widgets = (1ULL << WIDX_DECREMENT) | (1ULL << WIDX_INCREMENT); hold_down_widgets = (1uLL << WIDX_DECREMENT) | (1uLL << WIDX_INCREMENT);
WindowInitScrollWidgets(*this); WindowInitScrollWidgets(*this);
window_push_others_below(*this); window_push_others_below(*this);

View File

@ -58,11 +58,11 @@ public:
void OnOpen() override void OnOpen() override
{ {
widgets = window_land_rights_widgets; widgets = window_land_rights_widgets;
hold_down_widgets = (1ULL << WIDX_INCREMENT) | (1ULL << WIDX_DECREMENT); hold_down_widgets = (1uLL << WIDX_INCREMENT) | (1uLL << WIDX_DECREMENT);
WindowInitScrollWidgets(*this); WindowInitScrollWidgets(*this);
window_push_others_below(*this); window_push_others_below(*this);
_landRightsMode = LAND_RIGHTS_MODE_BUY_LAND; _landRightsMode = LAND_RIGHTS_MODE_BUY_LAND;
pressed_widgets = (1ULL << WIDX_BUY_LAND_RIGHTS); pressed_widgets = (1uLL << WIDX_BUY_LAND_RIGHTS);
gLandToolSize = 1; gLandToolSize = 1;

View File

@ -288,7 +288,7 @@ rct_window* WindowLoadsaveOpen(
if (!hasFilePicker) if (!hasFilePicker)
{ {
w->disabled_widgets |= (1ULL << WIDX_BROWSE); w->disabled_widgets |= (1uLL << WIDX_BROWSE);
window_loadsave_widgets[WIDX_BROWSE].type = WindowWidgetType::Empty; window_loadsave_widgets[WIDX_BROWSE].type = WindowWidgetType::Empty;
} }
} }
@ -830,7 +830,7 @@ static void WindowLoadsavePopulateList(
if (directory.empty() && drives) if (directory.empty() && drives)
{ {
// List Windows drives // List Windows drives
w->disabled_widgets |= (1ULL << WIDX_NEW_FILE) | (1ULL << WIDX_NEW_FOLDER) | (1ULL << WIDX_UP); w->disabled_widgets |= (1uLL << WIDX_NEW_FILE) | (1uLL << WIDX_NEW_FOLDER) | (1uLL << WIDX_UP);
static constexpr auto NumDriveLetters = 26; static constexpr auto NumDriveLetters = 26;
for (int32_t x = 0; x < NumDriveLetters; x++) for (int32_t x = 0; x < NumDriveLetters; x++)
{ {
@ -875,13 +875,13 @@ static void WindowLoadsavePopulateList(
// Disable the Up button if the current directory is the root directory // Disable the Up button if the current directory is the root directory
if (str_is_null_or_empty(_parentDirectory) && !drives) if (str_is_null_or_empty(_parentDirectory) && !drives)
w->disabled_widgets |= (1ULL << WIDX_UP); w->disabled_widgets |= (1uLL << WIDX_UP);
else else
w->disabled_widgets &= ~(1ULL << WIDX_UP); w->disabled_widgets &= ~(1uLL << WIDX_UP);
// Re-enable the "new" buttons if these were disabled // Re-enable the "new" buttons if these were disabled
w->disabled_widgets &= ~(1ULL << WIDX_NEW_FILE); w->disabled_widgets &= ~(1uLL << WIDX_NEW_FILE);
w->disabled_widgets &= ~(1ULL << WIDX_NEW_FOLDER); w->disabled_widgets &= ~(1uLL << WIDX_NEW_FOLDER);
// List all directories // List all directories
auto subDirectories = Path::GetDirectories(absoluteDirectory); auto subDirectories = Path::GetDirectories(absoluteDirectory);

View File

@ -148,9 +148,9 @@ public:
{ {
widgets = window_map_widgets; widgets = window_map_widgets;
hold_down_widgets = (1ULL << WIDX_MAP_SIZE_SPINNER_Y_UP) | (1ULL << WIDX_MAP_SIZE_SPINNER_Y_DOWN) hold_down_widgets = (1uLL << WIDX_MAP_SIZE_SPINNER_Y_UP) | (1uLL << WIDX_MAP_SIZE_SPINNER_Y_DOWN)
| (1ULL << WIDX_MAP_SIZE_SPINNER_X_UP) | (1ULL << WIDX_MAP_SIZE_SPINNER_X_DOWN) | (1ULL << WIDX_LAND_TOOL_LARGER) | (1uLL << WIDX_MAP_SIZE_SPINNER_X_UP) | (1uLL << WIDX_MAP_SIZE_SPINNER_X_DOWN) | (1uLL << WIDX_LAND_TOOL_LARGER)
| (1ULL << WIDX_LAND_TOOL_SMALLER); | (1uLL << WIDX_LAND_TOOL_SMALLER);
InitScrollWidgets(); InitScrollWidgets();
@ -733,20 +733,20 @@ public:
// Set the pressed widgets // Set the pressed widgets
pressed_widgets = 0; pressed_widgets = 0;
SetWidgetPressed(WIDX_MAP_SIZE_LINK, _mapWidthAndHeightLinked); SetWidgetPressed(WIDX_MAP_SIZE_LINK, _mapWidthAndHeightLinked);
pressed_widgets |= (1ULL << (WIDX_PEOPLE_TAB + selected_tab)); pressed_widgets |= (1uLL << (WIDX_PEOPLE_TAB + selected_tab));
pressed_widgets |= (1ULL << WIDX_LAND_TOOL); pressed_widgets |= (1uLL << WIDX_LAND_TOOL);
if (_activeTool & (1 << 3)) if (_activeTool & (1 << 3))
pressed_widgets |= (1ULL << WIDX_LAND_SALE_CHECKBOX); pressed_widgets |= (1uLL << WIDX_LAND_SALE_CHECKBOX);
if (_activeTool & (1 << 2)) if (_activeTool & (1 << 2))
pressed_widgets |= (1ULL << WIDX_CONSTRUCTION_RIGHTS_SALE_CHECKBOX); pressed_widgets |= (1uLL << WIDX_CONSTRUCTION_RIGHTS_SALE_CHECKBOX);
if (_activeTool & (1 << 1)) if (_activeTool & (1 << 1))
pressed_widgets |= (1ULL << WIDX_LAND_OWNED_CHECKBOX); pressed_widgets |= (1uLL << WIDX_LAND_OWNED_CHECKBOX);
if (_activeTool & (1 << 0)) if (_activeTool & (1 << 0))
pressed_widgets |= (1ULL << WIDX_CONSTRUCTION_RIGHTS_OWNED_CHECKBOX); pressed_widgets |= (1uLL << WIDX_CONSTRUCTION_RIGHTS_OWNED_CHECKBOX);
// Set disabled widgets // Set disabled widgets
SetWidgetDisabled(WIDX_MAP_SIZE_LINK, gMapSize.x != gMapSize.y); SetWidgetDisabled(WIDX_MAP_SIZE_LINK, gMapSize.x != gMapSize.y);

View File

@ -284,65 +284,65 @@ static uint64_t PageDisabledWidgets[WINDOW_MAPGEN_PAGE_COUNT] = {
0, 0,
(1ULL << WIDX_HEIGHTMAP_SMOOTH_HEIGHTMAP) | (1uLL << WIDX_HEIGHTMAP_SMOOTH_HEIGHTMAP) |
(1ULL << WIDX_HEIGHTMAP_STRENGTH) | (1uLL << WIDX_HEIGHTMAP_STRENGTH) |
(1ULL << WIDX_HEIGHTMAP_STRENGTH_UP) | (1uLL << WIDX_HEIGHTMAP_STRENGTH_UP) |
(1ULL << WIDX_HEIGHTMAP_STRENGTH_DOWN) | (1uLL << WIDX_HEIGHTMAP_STRENGTH_DOWN) |
(1ULL << WIDX_HEIGHTMAP_NORMALIZE) | (1uLL << WIDX_HEIGHTMAP_NORMALIZE) |
(1ULL << WIDX_HEIGHTMAP_SMOOTH_TILES) | (1uLL << WIDX_HEIGHTMAP_SMOOTH_TILES) |
(1ULL << WIDX_HEIGHTMAP_HIGH) | (1uLL << WIDX_HEIGHTMAP_HIGH) |
(1ULL << WIDX_HEIGHTMAP_HIGH_UP) | (1uLL << WIDX_HEIGHTMAP_HIGH_UP) |
(1ULL << WIDX_HEIGHTMAP_HIGH_DOWN) | (1uLL << WIDX_HEIGHTMAP_HIGH_DOWN) |
(1ULL << WIDX_HEIGHTMAP_LOW) | (1uLL << WIDX_HEIGHTMAP_LOW) |
(1ULL << WIDX_HEIGHTMAP_LOW_UP) | (1uLL << WIDX_HEIGHTMAP_LOW_UP) |
(1ULL << WIDX_HEIGHTMAP_LOW_DOWN) | (1uLL << WIDX_HEIGHTMAP_LOW_DOWN) |
(1ULL << WIDX_HEIGHTMAP_WATER_LEVEL) | (1uLL << WIDX_HEIGHTMAP_WATER_LEVEL) |
(1ULL << WIDX_HEIGHTMAP_WATER_LEVEL_UP) | (1uLL << WIDX_HEIGHTMAP_WATER_LEVEL_UP) |
(1ULL << WIDX_HEIGHTMAP_WATER_LEVEL_DOWN) (1uLL << WIDX_HEIGHTMAP_WATER_LEVEL_DOWN)
}; };
static uint64_t HoldDownWidgets[WINDOW_MAPGEN_PAGE_COUNT] = { static uint64_t HoldDownWidgets[WINDOW_MAPGEN_PAGE_COUNT] = {
(1ULL << WIDX_MAP_SIZE_Y_UP) | (1uLL << WIDX_MAP_SIZE_Y_UP) |
(1ULL << WIDX_MAP_SIZE_Y_DOWN) | (1uLL << WIDX_MAP_SIZE_Y_DOWN) |
(1ULL << WIDX_MAP_SIZE_X_UP) | (1uLL << WIDX_MAP_SIZE_X_UP) |
(1ULL << WIDX_MAP_SIZE_X_DOWN) | (1uLL << WIDX_MAP_SIZE_X_DOWN) |
(1ULL << WIDX_BASE_HEIGHT_UP) | (1uLL << WIDX_BASE_HEIGHT_UP) |
(1ULL << WIDX_BASE_HEIGHT_DOWN) | (1uLL << WIDX_BASE_HEIGHT_DOWN) |
(1ULL << WIDX_WATER_LEVEL_UP) | (1uLL << WIDX_WATER_LEVEL_UP) |
(1ULL << WIDX_WATER_LEVEL_DOWN), (1uLL << WIDX_WATER_LEVEL_DOWN),
0, 0,
(1ULL << WIDX_SIMPLEX_LOW_UP) | (1uLL << WIDX_SIMPLEX_LOW_UP) |
(1ULL << WIDX_SIMPLEX_LOW_DOWN) | (1uLL << WIDX_SIMPLEX_LOW_DOWN) |
(1ULL << WIDX_SIMPLEX_HIGH_UP) | (1uLL << WIDX_SIMPLEX_HIGH_UP) |
(1ULL << WIDX_SIMPLEX_HIGH_DOWN) | (1uLL << WIDX_SIMPLEX_HIGH_DOWN) |
(1ULL << WIDX_SIMPLEX_BASE_FREQ_UP) | (1uLL << WIDX_SIMPLEX_BASE_FREQ_UP) |
(1ULL << WIDX_SIMPLEX_BASE_FREQ_DOWN) | (1uLL << WIDX_SIMPLEX_BASE_FREQ_DOWN) |
(1ULL << WIDX_SIMPLEX_OCTAVES_UP) | (1uLL << WIDX_SIMPLEX_OCTAVES_UP) |
(1ULL << WIDX_SIMPLEX_OCTAVES_DOWN) | (1uLL << WIDX_SIMPLEX_OCTAVES_DOWN) |
(1ULL << WIDX_SIMPLEX_MAP_SIZE_Y_UP) | (1uLL << WIDX_SIMPLEX_MAP_SIZE_Y_UP) |
(1ULL << WIDX_SIMPLEX_MAP_SIZE_Y_DOWN) | (1uLL << WIDX_SIMPLEX_MAP_SIZE_Y_DOWN) |
(1ULL << WIDX_SIMPLEX_MAP_SIZE_X_UP) | (1uLL << WIDX_SIMPLEX_MAP_SIZE_X_UP) |
(1ULL << WIDX_SIMPLEX_MAP_SIZE_X_DOWN) | (1uLL << WIDX_SIMPLEX_MAP_SIZE_X_DOWN) |
(1ULL << WIDX_SIMPLEX_WATER_LEVEL_UP) | (1uLL << WIDX_SIMPLEX_WATER_LEVEL_UP) |
(1ULL << WIDX_SIMPLEX_WATER_LEVEL_DOWN), (1uLL << WIDX_SIMPLEX_WATER_LEVEL_DOWN),
(1ULL << WIDX_HEIGHTMAP_STRENGTH_UP) | (1uLL << WIDX_HEIGHTMAP_STRENGTH_UP) |
(1ULL << WIDX_HEIGHTMAP_STRENGTH_DOWN) | (1uLL << WIDX_HEIGHTMAP_STRENGTH_DOWN) |
(1ULL << WIDX_HEIGHTMAP_LOW_UP) | (1uLL << WIDX_HEIGHTMAP_LOW_UP) |
(1ULL << WIDX_HEIGHTMAP_LOW_DOWN) | (1uLL << WIDX_HEIGHTMAP_LOW_DOWN) |
(1ULL << WIDX_HEIGHTMAP_HIGH_UP) | (1uLL << WIDX_HEIGHTMAP_HIGH_UP) |
(1ULL << WIDX_HEIGHTMAP_HIGH_DOWN) | (1uLL << WIDX_HEIGHTMAP_HIGH_DOWN) |
(1ULL << WIDX_HEIGHTMAP_WATER_LEVEL_UP) | (1uLL << WIDX_HEIGHTMAP_WATER_LEVEL_UP) |
(1ULL << WIDX_HEIGHTMAP_WATER_LEVEL_DOWN) (1uLL << WIDX_HEIGHTMAP_WATER_LEVEL_DOWN)
}; };
static uint64_t PressedWidgets[WINDOW_MAPGEN_PAGE_COUNT] = { static uint64_t PressedWidgets[WINDOW_MAPGEN_PAGE_COUNT] = {
0, 0,
0, 0,
0, 0,
(1ULL << WIDX_HEIGHTMAP_SMOOTH_TILES) (1uLL << WIDX_HEIGHTMAP_SMOOTH_TILES)
}; };
// clang-format on // clang-format on
@ -822,9 +822,9 @@ static void WindowMapgenRandomInvalidate(rct_window* w)
w->pressed_widgets = 0; w->pressed_widgets = 0;
if (_randomTerrain) if (_randomTerrain)
w->pressed_widgets |= 1ULL << WIDX_RANDOM_TERRAIN; w->pressed_widgets |= 1uLL << WIDX_RANDOM_TERRAIN;
if (_placeTrees) if (_placeTrees)
w->pressed_widgets |= 1ULL << WIDX_RANDOM_PLACE_TREES; w->pressed_widgets |= 1uLL << WIDX_RANDOM_PLACE_TREES;
WindowMapgenSetPressedTab(w); WindowMapgenSetPressedTab(w);
} }

View File

@ -161,14 +161,14 @@ public:
if (_rideConstructionState == RideConstructionState::Place) if (_rideConstructionState == RideConstructionState::Place)
{ {
disabledWidgets disabledWidgets
|= ((1ULL << WIDX_MAZE_BUILD_MODE) | (1ULL << WIDX_MAZE_MOVE_MODE) | (1ULL << WIDX_MAZE_FILL_MODE) |= ((1uLL << WIDX_MAZE_BUILD_MODE) | (1uLL << WIDX_MAZE_MOVE_MODE) | (1uLL << WIDX_MAZE_FILL_MODE)
| (1ULL << WIDX_MAZE_DIRECTION_NW) | (1ULL << WIDX_MAZE_DIRECTION_NE) | (1ULL << WIDX_MAZE_DIRECTION_SW) | (1uLL << WIDX_MAZE_DIRECTION_NW) | (1uLL << WIDX_MAZE_DIRECTION_NE) | (1uLL << WIDX_MAZE_DIRECTION_SW)
| (1ULL << WIDX_MAZE_DIRECTION_SE)); | (1uLL << WIDX_MAZE_DIRECTION_SE));
} }
else if (_rideConstructionState == RideConstructionState::EntranceExit) else if (_rideConstructionState == RideConstructionState::EntranceExit)
{ {
disabledWidgets = (1ULL << WIDX_MAZE_DIRECTION_NW) | (1ULL << WIDX_MAZE_DIRECTION_NE) disabledWidgets = (1uLL << WIDX_MAZE_DIRECTION_NW) | (1uLL << WIDX_MAZE_DIRECTION_NE)
| (1ULL << WIDX_MAZE_DIRECTION_SW) | (1ULL << WIDX_MAZE_DIRECTION_SE); | (1uLL << WIDX_MAZE_DIRECTION_SW) | (1uLL << WIDX_MAZE_DIRECTION_SE);
} }
// Set and invalidate the changed widgets // Set and invalidate the changed widgets
@ -178,7 +178,7 @@ public:
for (WidgetIndex i = 0; i < 64; i++) for (WidgetIndex i = 0; i < 64; i++)
{ {
if ((disabledWidgets & (1ULL << i)) != (currentDisabledWidgets & (1ULL << i))) if ((disabledWidgets & (1uLL << i)) != (currentDisabledWidgets & (1uLL << i)))
{ {
widget_invalidate(*this, i); widget_invalidate(*this, i);
} }

View File

@ -155,7 +155,7 @@ public:
void OnOpen() override void OnOpen() override
{ {
widgets = window_new_campaign_widgets; widgets = window_new_campaign_widgets;
hold_down_widgets = (1ULL << WIDX_WEEKS_INCREASE_BUTTON) | (1ULL << WIDX_WEEKS_DECREASE_BUTTON); hold_down_widgets = (1uLL << WIDX_WEEKS_INCREASE_BUTTON) | (1uLL << WIDX_WEEKS_DECREASE_BUTTON);
WindowInitScrollWidgets(*this); WindowInitScrollWidgets(*this);
} }

View File

@ -649,7 +649,7 @@ private:
auto hasFilePicker = OpenRCT2::GetContext()->GetUiContext()->HasFilePicker(); auto hasFilePicker = OpenRCT2::GetContext()->GetUiContext()->HasFilePicker();
if (!hasFilePicker) if (!hasFilePicker)
{ {
disabled_widgets |= (1ULL << WIDX_ALWAYS_NATIVE_LOADSAVE); disabled_widgets |= (1uLL << WIDX_ALWAYS_NATIVE_LOADSAVE);
widgets[WIDX_ALWAYS_NATIVE_LOADSAVE].type = WindowWidgetType::Empty; widgets[WIDX_ALWAYS_NATIVE_LOADSAVE].type = WindowWidgetType::Empty;
} }
} }
@ -865,35 +865,35 @@ private:
// Disable resolution dropdown on "Windowed" and "Fullscreen (desktop)" // Disable resolution dropdown on "Windowed" and "Fullscreen (desktop)"
if (gConfigGeneral.FullscreenMode != static_cast<int32_t>(OpenRCT2::Ui::FULLSCREEN_MODE::FULLSCREEN)) if (gConfigGeneral.FullscreenMode != static_cast<int32_t>(OpenRCT2::Ui::FULLSCREEN_MODE::FULLSCREEN))
{ {
disabled_widgets |= (1ULL << WIDX_RESOLUTION_DROPDOWN); disabled_widgets |= (1uLL << WIDX_RESOLUTION_DROPDOWN);
disabled_widgets |= (1ULL << WIDX_RESOLUTION); disabled_widgets |= (1uLL << WIDX_RESOLUTION);
disabled_widgets |= (1ULL << WIDX_RESOLUTION_LABEL); disabled_widgets |= (1uLL << WIDX_RESOLUTION_LABEL);
} }
else else
{ {
disabled_widgets &= ~(1ULL << WIDX_RESOLUTION_DROPDOWN); disabled_widgets &= ~(1uLL << WIDX_RESOLUTION_DROPDOWN);
disabled_widgets &= ~(1ULL << WIDX_RESOLUTION); disabled_widgets &= ~(1uLL << WIDX_RESOLUTION);
disabled_widgets &= ~(1ULL << WIDX_RESOLUTION_LABEL); disabled_widgets &= ~(1uLL << WIDX_RESOLUTION_LABEL);
} }
// Disable Steam Overlay checkbox when using software or OpenGL rendering. // Disable Steam Overlay checkbox when using software or OpenGL rendering.
if (gConfigGeneral.DrawingEngine == DrawingEngine::Software || gConfigGeneral.DrawingEngine == DrawingEngine::OpenGL) if (gConfigGeneral.DrawingEngine == DrawingEngine::Software || gConfigGeneral.DrawingEngine == DrawingEngine::OpenGL)
{ {
disabled_widgets |= (1ULL << WIDX_STEAM_OVERLAY_PAUSE); disabled_widgets |= (1uLL << WIDX_STEAM_OVERLAY_PAUSE);
} }
else else
{ {
disabled_widgets &= ~(1ULL << WIDX_STEAM_OVERLAY_PAUSE); disabled_widgets &= ~(1uLL << WIDX_STEAM_OVERLAY_PAUSE);
} }
// Disable changing VSync for Software engine, as we can't control its use of VSync // Disable changing VSync for Software engine, as we can't control its use of VSync
if (gConfigGeneral.DrawingEngine == DrawingEngine::Software) if (gConfigGeneral.DrawingEngine == DrawingEngine::Software)
{ {
disabled_widgets |= (1ULL << WIDX_USE_VSYNC_CHECKBOX); disabled_widgets |= (1uLL << WIDX_USE_VSYNC_CHECKBOX);
} }
else else
{ {
disabled_widgets &= ~(1ULL << WIDX_USE_VSYNC_CHECKBOX); disabled_widgets &= ~(1uLL << WIDX_USE_VSYNC_CHECKBOX);
} }
SetCheckboxValue(WIDX_UNCAP_FPS_CHECKBOX, gConfigGeneral.UncapFPS); SetCheckboxValue(WIDX_UNCAP_FPS_CHECKBOX, gConfigGeneral.UncapFPS);
@ -1041,11 +1041,11 @@ private:
SetCheckboxValue(WIDX_ENABLE_LIGHT_FX_CHECKBOX, gConfigGeneral.EnableLightFx); SetCheckboxValue(WIDX_ENABLE_LIGHT_FX_CHECKBOX, gConfigGeneral.EnableLightFx);
if (gConfigGeneral.DayNightCycle && gConfigGeneral.DrawingEngine == DrawingEngine::SoftwareWithHardwareDisplay) if (gConfigGeneral.DayNightCycle && gConfigGeneral.DrawingEngine == DrawingEngine::SoftwareWithHardwareDisplay)
{ {
disabled_widgets &= ~(1ULL << WIDX_ENABLE_LIGHT_FX_CHECKBOX); disabled_widgets &= ~(1uLL << WIDX_ENABLE_LIGHT_FX_CHECKBOX);
} }
else else
{ {
disabled_widgets |= (1ULL << WIDX_ENABLE_LIGHT_FX_CHECKBOX); disabled_widgets |= (1uLL << WIDX_ENABLE_LIGHT_FX_CHECKBOX);
gConfigGeneral.EnableLightFx = false; gConfigGeneral.EnableLightFx = false;
} }
@ -1053,11 +1053,11 @@ private:
if (gConfigGeneral.DayNightCycle && gConfigGeneral.DrawingEngine == DrawingEngine::SoftwareWithHardwareDisplay if (gConfigGeneral.DayNightCycle && gConfigGeneral.DrawingEngine == DrawingEngine::SoftwareWithHardwareDisplay
&& gConfigGeneral.EnableLightFx) && gConfigGeneral.EnableLightFx)
{ {
disabled_widgets &= ~(1ULL << WIDX_ENABLE_LIGHT_FX_FOR_VEHICLES_CHECKBOX); disabled_widgets &= ~(1uLL << WIDX_ENABLE_LIGHT_FX_FOR_VEHICLES_CHECKBOX);
} }
else else
{ {
disabled_widgets |= (1ULL << WIDX_ENABLE_LIGHT_FX_FOR_VEHICLES_CHECKBOX); disabled_widgets |= (1uLL << WIDX_ENABLE_LIGHT_FX_FOR_VEHICLES_CHECKBOX);
gConfigGeneral.EnableLightFxForVehicles = false; gConfigGeneral.EnableLightFxForVehicles = false;
} }
@ -1068,11 +1068,11 @@ private:
if (!gConfigGeneral.RenderWeatherEffects && !gConfigGeneral.RenderWeatherGloom) if (!gConfigGeneral.RenderWeatherEffects && !gConfigGeneral.RenderWeatherGloom)
{ {
SetCheckboxValue(WIDX_DISABLE_LIGHTNING_EFFECT_CHECKBOX, true); SetCheckboxValue(WIDX_DISABLE_LIGHTNING_EFFECT_CHECKBOX, true);
disabled_widgets |= (1ULL << WIDX_DISABLE_LIGHTNING_EFFECT_CHECKBOX); disabled_widgets |= (1uLL << WIDX_DISABLE_LIGHTNING_EFFECT_CHECKBOX);
} }
else else
{ {
disabled_widgets &= ~(1ULL << WIDX_DISABLE_LIGHTNING_EFFECT_CHECKBOX); disabled_widgets &= ~(1uLL << WIDX_DISABLE_LIGHTNING_EFFECT_CHECKBOX);
} }
} }
@ -1825,14 +1825,14 @@ private:
// and the server cannot change the setting during gameplay to prevent desyncs // and the server cannot change the setting during gameplay to prevent desyncs
if (network_get_mode() != NETWORK_MODE_NONE) if (network_get_mode() != NETWORK_MODE_NONE)
{ {
disabled_widgets |= (1ULL << WIDX_REAL_NAME_CHECKBOX); disabled_widgets |= (1uLL << WIDX_REAL_NAME_CHECKBOX);
widgets[WIDX_REAL_NAME_CHECKBOX].tooltip = STR_OPTION_DISABLED_DURING_NETWORK_PLAY; widgets[WIDX_REAL_NAME_CHECKBOX].tooltip = STR_OPTION_DISABLED_DURING_NETWORK_PLAY;
// Disable the use of the allow_early_completion option during network play on clients. // Disable the use of the allow_early_completion option during network play on clients.
// This is to prevent confusion on clients because changing this setting during network play wouldn't change // This is to prevent confusion on clients because changing this setting during network play wouldn't change
// the way scenarios are completed during this network-session // the way scenarios are completed during this network-session
if (network_get_mode() == NETWORK_MODE_CLIENT) if (network_get_mode() == NETWORK_MODE_CLIENT)
{ {
disabled_widgets |= (1ULL << WIDX_ALLOW_EARLY_COMPLETION); disabled_widgets |= (1uLL << WIDX_ALLOW_EARLY_COMPLETION);
widgets[WIDX_ALLOW_EARLY_COMPLETION].tooltip = STR_OPTION_DISABLED_DURING_NETWORK_PLAY; widgets[WIDX_ALLOW_EARLY_COMPLETION].tooltip = STR_OPTION_DISABLED_DURING_NETWORK_PLAY;
} }
} }
@ -1851,11 +1851,11 @@ private:
if (gConfigGeneral.ScenarioSelectMode == SCENARIO_SELECT_MODE_ORIGIN) if (gConfigGeneral.ScenarioSelectMode == SCENARIO_SELECT_MODE_ORIGIN)
{ {
disabled_widgets &= ~(1ULL << WIDX_SCENARIO_UNLOCKING); disabled_widgets &= ~(1uLL << WIDX_SCENARIO_UNLOCKING);
} }
else else
{ {
disabled_widgets |= (1ULL << WIDX_SCENARIO_UNLOCKING); disabled_widgets |= (1uLL << WIDX_SCENARIO_UNLOCKING);
} }
widgets[WIDX_DEFAULT_INSPECTION_INTERVAL].text = RideInspectionIntervalNames[gConfigGeneral.DefaultInspectionInterval]; widgets[WIDX_DEFAULT_INSPECTION_INTERVAL].text = RideInspectionIntervalNames[gConfigGeneral.DefaultInspectionInterval];

View File

@ -155,8 +155,8 @@ static std::array<uint32_t, WINDOW_PARK_PAGE_COUNT> _pagedHoldDownWidgets = {
0, 0,
0, 0,
0, 0,
(1ULL << WIDX_INCREASE_PRICE) | (1uLL << WIDX_INCREASE_PRICE) |
(1ULL << WIDX_DECREASE_PRICE), (1uLL << WIDX_DECREASE_PRICE),
0, 0,
0, 0,
0, 0,
@ -394,7 +394,7 @@ private:
void SetDisabledTabs() void SetDisabledTabs()
{ {
// Disable price tab if money is disabled // Disable price tab if money is disabled
disabled_widgets = (gParkFlags & PARK_FLAGS_NO_MONEY) ? (1ULL << WIDX_TAB_4) : 0; disabled_widgets = (gParkFlags & PARK_FLAGS_NO_MONEY) ? (1uLL << WIDX_TAB_4) : 0;
} }
void PrepareWindowTitleText() void PrepareWindowTitleText()
@ -522,9 +522,9 @@ private:
// Only allow closing of park for guest / rating objective // Only allow closing of park for guest / rating objective
if (gScenarioObjective.Type == OBJECTIVE_GUESTS_AND_RATING) if (gScenarioObjective.Type == OBJECTIVE_GUESTS_AND_RATING)
disabled_widgets |= (1ULL << WIDX_OPEN_OR_CLOSE) | (1ULL << WIDX_CLOSE_LIGHT) | (1ULL << WIDX_OPEN_LIGHT); disabled_widgets |= (1uLL << WIDX_OPEN_OR_CLOSE) | (1uLL << WIDX_CLOSE_LIGHT) | (1uLL << WIDX_OPEN_LIGHT);
else else
disabled_widgets &= ~((1ULL << WIDX_OPEN_OR_CLOSE) | (1ULL << WIDX_CLOSE_LIGHT) | (1ULL << WIDX_OPEN_LIGHT)); disabled_widgets &= ~((1uLL << WIDX_OPEN_OR_CLOSE) | (1uLL << WIDX_CLOSE_LIGHT) | (1uLL << WIDX_OPEN_LIGHT));
// Only allow purchase of land when there is money // Only allow purchase of land when there is money
if (gParkFlags & PARK_FLAGS_NO_MONEY) if (gParkFlags & PARK_FLAGS_NO_MONEY)

View File

@ -55,7 +55,7 @@ public:
void OnOpen() override void OnOpen() override
{ {
widgets = PatrolAreaWidgets; widgets = PatrolAreaWidgets;
hold_down_widgets = (1ULL << WIDX_INCREMENT) | (1ULL << WIDX_DECREMENT); hold_down_widgets = (1uLL << WIDX_INCREMENT) | (1uLL << WIDX_DECREMENT);
WindowInitScrollWidgets(*this); WindowInitScrollWidgets(*this);
window_push_others_below(*this); window_push_others_below(*this);
gLandToolSize = 4; gLandToolSize = 4;

View File

@ -375,7 +375,7 @@ void WindowPlayerOverviewInvalidate(rct_window* w)
w->pressed_widgets &= ~(WIDX_TAB_1); w->pressed_widgets &= ~(WIDX_TAB_1);
w->pressed_widgets &= ~(WIDX_TAB_2); w->pressed_widgets &= ~(WIDX_TAB_2);
w->pressed_widgets |= 1ULL << (w->page + WIDX_TAB_1); w->pressed_widgets |= 1uLL << (w->page + WIDX_TAB_1);
WindowPlayerUpdateTitle(w); WindowPlayerUpdateTitle(w);
@ -468,7 +468,7 @@ void WindowPlayerStatisticsInvalidate(rct_window* w)
w->pressed_widgets &= ~(WIDX_TAB_1); w->pressed_widgets &= ~(WIDX_TAB_1);
w->pressed_widgets &= ~(WIDX_TAB_2); w->pressed_widgets &= ~(WIDX_TAB_2);
w->pressed_widgets |= 1ULL << (w->page + WIDX_TAB_1); w->pressed_widgets |= 1uLL << (w->page + WIDX_TAB_1);
WindowPlayerUpdateTitle(w); WindowPlayerUpdateTitle(w);

View File

@ -398,29 +398,29 @@ static rct_widget *window_ride_page_widgets[] = {
static constexpr const uint64_t window_ride_page_hold_down_widgets[] = { static constexpr const uint64_t window_ride_page_hold_down_widgets[] = {
0, 0,
(1ULL << WIDX_VEHICLE_TRAINS_INCREASE) | (1uLL << WIDX_VEHICLE_TRAINS_INCREASE) |
(1ULL << WIDX_VEHICLE_TRAINS_DECREASE) | (1uLL << WIDX_VEHICLE_TRAINS_DECREASE) |
(1ULL << WIDX_VEHICLE_CARS_PER_TRAIN_INCREASE) | (1uLL << WIDX_VEHICLE_CARS_PER_TRAIN_INCREASE) |
(1ULL << WIDX_VEHICLE_CARS_PER_TRAIN_DECREASE), (1uLL << WIDX_VEHICLE_CARS_PER_TRAIN_DECREASE),
(1ULL << WIDX_MODE_TWEAK_INCREASE) | (1uLL << WIDX_MODE_TWEAK_INCREASE) |
(1ULL << WIDX_MODE_TWEAK_DECREASE) | (1uLL << WIDX_MODE_TWEAK_DECREASE) |
(1ULL << WIDX_LIFT_HILL_SPEED_INCREASE) | (1uLL << WIDX_LIFT_HILL_SPEED_INCREASE) |
(1ULL << WIDX_LIFT_HILL_SPEED_DECREASE) | (1uLL << WIDX_LIFT_HILL_SPEED_DECREASE) |
(1ULL << WIDX_MINIMUM_LENGTH_INCREASE) | (1uLL << WIDX_MINIMUM_LENGTH_INCREASE) |
(1ULL << WIDX_MINIMUM_LENGTH_DECREASE) | (1uLL << WIDX_MINIMUM_LENGTH_DECREASE) |
(1ULL << WIDX_MAXIMUM_LENGTH_INCREASE) | (1uLL << WIDX_MAXIMUM_LENGTH_INCREASE) |
(1ULL << WIDX_MAXIMUM_LENGTH_DECREASE) | (1uLL << WIDX_MAXIMUM_LENGTH_DECREASE) |
(1ULL << WIDX_OPERATE_NUMBER_OF_CIRCUITS_INCREASE) | (1uLL << WIDX_OPERATE_NUMBER_OF_CIRCUITS_INCREASE) |
(1ULL << WIDX_OPERATE_NUMBER_OF_CIRCUITS_DECREASE), (1uLL << WIDX_OPERATE_NUMBER_OF_CIRCUITS_DECREASE),
0, 0,
0, 0,
0, 0,
0, 0,
0, 0,
(1ULL << WIDX_PRIMARY_PRICE_INCREASE) | (1uLL << WIDX_PRIMARY_PRICE_INCREASE) |
(1ULL << WIDX_PRIMARY_PRICE_DECREASE) | (1uLL << WIDX_PRIMARY_PRICE_DECREASE) |
(1ULL << WIDX_SECONDARY_PRICE_INCREASE) | (1uLL << WIDX_SECONDARY_PRICE_INCREASE) |
(1ULL << WIDX_SECONDARY_PRICE_DECREASE), (1uLL << WIDX_SECONDARY_PRICE_DECREASE),
0, 0,
}; };
// clang-format on // clang-format on
@ -1043,46 +1043,46 @@ static void WindowRideDisableTabs(rct_window* w)
const auto& rtd = ride->GetRideTypeDescriptor(); const auto& rtd = ride->GetRideTypeDescriptor();
if (!rtd.HasFlag(RIDE_TYPE_FLAG_HAS_DATA_LOGGING)) if (!rtd.HasFlag(RIDE_TYPE_FLAG_HAS_DATA_LOGGING))
disabled_tabs |= (1ULL << WIDX_TAB_8); // 0x800 disabled_tabs |= (1uLL << WIDX_TAB_8); // 0x800
if (ride->type == RIDE_TYPE_MINI_GOLF) if (ride->type == RIDE_TYPE_MINI_GOLF)
disabled_tabs |= (1ULL << WIDX_TAB_2 | 1ULL << WIDX_TAB_3 | 1ULL << WIDX_TAB_4); // 0xE0 disabled_tabs |= (1uLL << WIDX_TAB_2 | 1uLL << WIDX_TAB_3 | 1uLL << WIDX_TAB_4); // 0xE0
if (rtd.HasFlag(RIDE_TYPE_FLAG_NO_VEHICLES)) if (rtd.HasFlag(RIDE_TYPE_FLAG_NO_VEHICLES))
disabled_tabs |= (1ULL << WIDX_TAB_2); // 0x20 disabled_tabs |= (1uLL << WIDX_TAB_2); // 0x20
if (!rtd.HasFlag(RIDE_TYPE_FLAG_HAS_TRACK_COLOUR_MAIN) && !rtd.HasFlag(RIDE_TYPE_FLAG_HAS_TRACK_COLOUR_ADDITIONAL) if (!rtd.HasFlag(RIDE_TYPE_FLAG_HAS_TRACK_COLOUR_MAIN) && !rtd.HasFlag(RIDE_TYPE_FLAG_HAS_TRACK_COLOUR_ADDITIONAL)
&& !rtd.HasFlag(RIDE_TYPE_FLAG_HAS_TRACK_COLOUR_SUPPORTS) && !rtd.HasFlag(RIDE_TYPE_FLAG_HAS_VEHICLE_COLOURS) && !rtd.HasFlag(RIDE_TYPE_FLAG_HAS_TRACK_COLOUR_SUPPORTS) && !rtd.HasFlag(RIDE_TYPE_FLAG_HAS_VEHICLE_COLOURS)
&& !rtd.HasFlag(RIDE_TYPE_FLAG_HAS_ENTRANCE_EXIT)) && !rtd.HasFlag(RIDE_TYPE_FLAG_HAS_ENTRANCE_EXIT))
{ {
disabled_tabs |= (1ULL << WIDX_TAB_5); // 0x100 disabled_tabs |= (1uLL << WIDX_TAB_5); // 0x100
} }
if (rtd.HasFlag(RIDE_TYPE_FLAG_IS_SHOP_OR_FACILITY)) if (rtd.HasFlag(RIDE_TYPE_FLAG_IS_SHOP_OR_FACILITY))
disabled_tabs |= (1ULL << WIDX_TAB_3 | 1ULL << WIDX_TAB_4 | 1ULL << WIDX_TAB_7); // 0x4C0 disabled_tabs |= (1uLL << WIDX_TAB_3 | 1uLL << WIDX_TAB_4 | 1uLL << WIDX_TAB_7); // 0x4C0
if (!rtd.HasFlag(RIDE_TYPE_FLAG_ALLOW_MUSIC)) if (!rtd.HasFlag(RIDE_TYPE_FLAG_ALLOW_MUSIC))
{ {
disabled_tabs |= (1ULL << WIDX_TAB_6); // 0x200 disabled_tabs |= (1uLL << WIDX_TAB_6); // 0x200
} }
if (rtd.HasFlag(RIDE_TYPE_FLAG_IS_CASH_MACHINE) || rtd.HasFlag(RIDE_TYPE_FLAG_IS_FIRST_AID) if (rtd.HasFlag(RIDE_TYPE_FLAG_IS_CASH_MACHINE) || rtd.HasFlag(RIDE_TYPE_FLAG_IS_FIRST_AID)
|| (gParkFlags & PARK_FLAGS_NO_MONEY) != 0) || (gParkFlags & PARK_FLAGS_NO_MONEY) != 0)
disabled_tabs |= (1ULL << WIDX_TAB_9); // 0x1000 disabled_tabs |= (1uLL << WIDX_TAB_9); // 0x1000
if ((gScreenFlags & SCREEN_FLAGS_TRACK_DESIGNER) != 0) if ((gScreenFlags & SCREEN_FLAGS_TRACK_DESIGNER) != 0)
disabled_tabs |= (1ULL << WIDX_TAB_4 | 1ULL << WIDX_TAB_6 | 1ULL << WIDX_TAB_9 | 1ULL << WIDX_TAB_10); // 0x3280 disabled_tabs |= (1uLL << WIDX_TAB_4 | 1uLL << WIDX_TAB_6 | 1uLL << WIDX_TAB_9 | 1uLL << WIDX_TAB_10); // 0x3280
rct_ride_entry* rideEntry = get_ride_entry(ride->subtype); rct_ride_entry* rideEntry = get_ride_entry(ride->subtype);
if (rideEntry == nullptr) if (rideEntry == nullptr)
{ {
disabled_tabs |= 1ULL << WIDX_TAB_2 | 1ULL << WIDX_TAB_3 | 1ULL << WIDX_TAB_4 | 1ULL << WIDX_TAB_5 | 1ULL << WIDX_TAB_6 disabled_tabs |= 1uLL << WIDX_TAB_2 | 1uLL << WIDX_TAB_3 | 1uLL << WIDX_TAB_4 | 1uLL << WIDX_TAB_5 | 1uLL << WIDX_TAB_6
| 1ULL << WIDX_TAB_7 | 1ULL << WIDX_TAB_8 | 1ULL << WIDX_TAB_9 | 1ULL << WIDX_TAB_10; | 1uLL << WIDX_TAB_7 | 1uLL << WIDX_TAB_8 | 1uLL << WIDX_TAB_9 | 1uLL << WIDX_TAB_10;
} }
else if ((rideEntry->flags & RIDE_ENTRY_FLAG_DISABLE_COLOUR_TAB) != 0) else if ((rideEntry->flags & RIDE_ENTRY_FLAG_DISABLE_COLOUR_TAB) != 0)
{ {
disabled_tabs |= (1ULL << WIDX_TAB_5); disabled_tabs |= (1uLL << WIDX_TAB_5);
} }
w->disabled_widgets = disabled_tabs; w->disabled_widgets = disabled_tabs;
@ -2300,9 +2300,9 @@ static void WindowRideMainInvalidate(rct_window* w)
if (ride == nullptr) if (ride == nullptr)
return; return;
w->disabled_widgets &= ~((1ULL << WIDX_DEMOLISH) | (1ULL << WIDX_CONSTRUCTION)); w->disabled_widgets &= ~((1uLL << WIDX_DEMOLISH) | (1uLL << WIDX_CONSTRUCTION));
if (ride->lifecycle_flags & (RIDE_LIFECYCLE_INDESTRUCTIBLE | RIDE_LIFECYCLE_INDESTRUCTIBLE_TRACK)) if (ride->lifecycle_flags & (RIDE_LIFECYCLE_INDESTRUCTIBLE | RIDE_LIFECYCLE_INDESTRUCTIBLE_TRACK))
w->disabled_widgets |= (1ULL << WIDX_DEMOLISH); w->disabled_widgets |= (1uLL << WIDX_DEMOLISH);
auto ft = Formatter::Common(); auto ft = Formatter::Common();
ride->FormatNameTo(ft); ride->FormatNameTo(ft);
@ -3097,7 +3097,7 @@ static void WindowRideModeDropdown(rct_window* w, rct_widget* widget)
auto checkedIndex = -1; auto checkedIndex = -1;
for (auto i = 0; i < static_cast<uint8_t>(RideMode::Count); i++) for (auto i = 0; i < static_cast<uint8_t>(RideMode::Count); i++)
{ {
if (availableModes & (1ULL << i)) if (availableModes & (1uLL << i))
{ {
gDropdownItems[numAvailableModes].Format = STR_DROPDOWN_MENU_LABEL; gDropdownItems[numAvailableModes].Format = STR_DROPDOWN_MENU_LABEL;
gDropdownItems[numAvailableModes].Args = RideModeNames[i]; gDropdownItems[numAvailableModes].Args = RideModeNames[i];
@ -3481,9 +3481,9 @@ static void WindowRideOperatingInvalidate(rct_window* w)
// Widget setup // Widget setup
w->pressed_widgets &= ~( w->pressed_widgets &= ~(
(1ULL << WIDX_LOAD_CHECKBOX) | (1ULL << WIDX_LEAVE_WHEN_ANOTHER_ARRIVES_CHECKBOX) (1uLL << WIDX_LOAD_CHECKBOX) | (1uLL << WIDX_LEAVE_WHEN_ANOTHER_ARRIVES_CHECKBOX)
| (1ULL << WIDX_MINIMUM_LENGTH_CHECKBOX) | (1ULL << WIDX_MAXIMUM_LENGTH_CHECKBOX) | (1uLL << WIDX_MINIMUM_LENGTH_CHECKBOX) | (1uLL << WIDX_MAXIMUM_LENGTH_CHECKBOX)
| (1ULL << WIDX_SYNCHRONISE_WITH_ADJACENT_STATIONS_CHECKBOX)); | (1uLL << WIDX_SYNCHRONISE_WITH_ADJACENT_STATIONS_CHECKBOX));
// Sometimes, only one of the alternatives support lift hill pieces. Make sure to check both. // Sometimes, only one of the alternatives support lift hill pieces. Make sure to check both.
bool hasAlternativeType = ride->GetRideTypeDescriptor().HasFlag(RIDE_TYPE_FLAG_HAS_ALTERNATIVE_TRACK_TYPE); bool hasAlternativeType = ride->GetRideTypeDescriptor().HasFlag(RIDE_TYPE_FLAG_HAS_ALTERNATIVE_TRACK_TYPE);
@ -3587,7 +3587,7 @@ static void WindowRideOperatingInvalidate(rct_window* w)
ft.Add<uint16_t>(ride->max_waiting_time); ft.Add<uint16_t>(ride->max_waiting_time);
if (ride->depart_flags & RIDE_DEPART_WAIT_FOR_LOAD) if (ride->depart_flags & RIDE_DEPART_WAIT_FOR_LOAD)
w->pressed_widgets |= (1ULL << WIDX_LOAD_CHECKBOX); w->pressed_widgets |= (1uLL << WIDX_LOAD_CHECKBOX);
} }
else else
{ {
@ -3607,13 +3607,13 @@ static void WindowRideOperatingInvalidate(rct_window* w)
} }
if (ride->depart_flags & RIDE_DEPART_LEAVE_WHEN_ANOTHER_ARRIVES) if (ride->depart_flags & RIDE_DEPART_LEAVE_WHEN_ANOTHER_ARRIVES)
w->pressed_widgets |= (1ULL << WIDX_LEAVE_WHEN_ANOTHER_ARRIVES_CHECKBOX); w->pressed_widgets |= (1uLL << WIDX_LEAVE_WHEN_ANOTHER_ARRIVES_CHECKBOX);
if (ride->depart_flags & RIDE_DEPART_SYNCHRONISE_WITH_ADJACENT_STATIONS) if (ride->depart_flags & RIDE_DEPART_SYNCHRONISE_WITH_ADJACENT_STATIONS)
w->pressed_widgets |= (1ULL << WIDX_SYNCHRONISE_WITH_ADJACENT_STATIONS_CHECKBOX); w->pressed_widgets |= (1uLL << WIDX_SYNCHRONISE_WITH_ADJACENT_STATIONS_CHECKBOX);
if (ride->depart_flags & RIDE_DEPART_WAIT_FOR_MINIMUM_LENGTH) if (ride->depart_flags & RIDE_DEPART_WAIT_FOR_MINIMUM_LENGTH)
w->pressed_widgets |= (1ULL << WIDX_MINIMUM_LENGTH_CHECKBOX); w->pressed_widgets |= (1uLL << WIDX_MINIMUM_LENGTH_CHECKBOX);
if (ride->depart_flags & RIDE_DEPART_WAIT_FOR_MAXIMUM_LENGTH) if (ride->depart_flags & RIDE_DEPART_WAIT_FOR_MAXIMUM_LENGTH)
w->pressed_widgets |= (1ULL << WIDX_MAXIMUM_LENGTH_CHECKBOX); w->pressed_widgets |= (1uLL << WIDX_MAXIMUM_LENGTH_CHECKBOX);
// Mode specific functionality // Mode specific functionality
auto multiplier = ride->GetRideTypeDescriptor().OperatingSettings.OperatingSettingMultiplier; auto multiplier = ride->GetRideTypeDescriptor().OperatingSettings.OperatingSettingMultiplier;
@ -3684,7 +3684,7 @@ static void WindowRideOperatingInvalidate(rct_window* w)
window_ride_operating_widgets[WIDX_MODE_TWEAK].text = format; window_ride_operating_widgets[WIDX_MODE_TWEAK].text = format;
window_ride_operating_widgets[WIDX_MODE_TWEAK_INCREASE].type = WindowWidgetType::Button; window_ride_operating_widgets[WIDX_MODE_TWEAK_INCREASE].type = WindowWidgetType::Button;
window_ride_operating_widgets[WIDX_MODE_TWEAK_DECREASE].type = WindowWidgetType::Button; window_ride_operating_widgets[WIDX_MODE_TWEAK_DECREASE].type = WindowWidgetType::Button;
w->pressed_widgets &= ~(1ULL << WIDX_LEAVE_WHEN_ANOTHER_ARRIVES_CHECKBOX); w->pressed_widgets &= ~(1uLL << WIDX_LEAVE_WHEN_ANOTHER_ARRIVES_CHECKBOX);
} }
else else
{ {
@ -4085,12 +4085,12 @@ static void WindowRideMaintenanceInvalidate(rct_window* w)
if (ride->GetRideTypeDescriptor().AvailableBreakdowns == 0 || !(ride->lifecycle_flags & RIDE_LIFECYCLE_EVER_BEEN_OPENED)) if (ride->GetRideTypeDescriptor().AvailableBreakdowns == 0 || !(ride->lifecycle_flags & RIDE_LIFECYCLE_EVER_BEEN_OPENED))
{ {
w->disabled_widgets |= (1ULL << WIDX_REFURBISH_RIDE); w->disabled_widgets |= (1uLL << WIDX_REFURBISH_RIDE);
window_ride_maintenance_widgets[WIDX_REFURBISH_RIDE].tooltip = STR_CANT_REFURBISH_NOT_NEEDED; window_ride_maintenance_widgets[WIDX_REFURBISH_RIDE].tooltip = STR_CANT_REFURBISH_NOT_NEEDED;
} }
else else
{ {
w->disabled_widgets &= ~(1ULL << WIDX_REFURBISH_RIDE); w->disabled_widgets &= ~(1uLL << WIDX_REFURBISH_RIDE);
window_ride_maintenance_widgets[WIDX_REFURBISH_RIDE].tooltip = STR_REFURBISH_RIDE_TIP; window_ride_maintenance_widgets[WIDX_REFURBISH_RIDE].tooltip = STR_REFURBISH_RIDE_TIP;
} }
} }
@ -4695,11 +4695,11 @@ static void WindowRideColourInvalidate(rct_window* w)
window_ride_colour_widgets[WIDX_SELL_ITEM_RANDOM_COLOUR_CHECKBOX].type = WindowWidgetType::Checkbox; window_ride_colour_widgets[WIDX_SELL_ITEM_RANDOM_COLOUR_CHECKBOX].type = WindowWidgetType::Checkbox;
if (ride->HasLifecycleFlag(RIDE_LIFECYCLE_RANDOM_SHOP_COLOURS)) if (ride->HasLifecycleFlag(RIDE_LIFECYCLE_RANDOM_SHOP_COLOURS))
{ {
w->pressed_widgets |= (1ULL << WIDX_SELL_ITEM_RANDOM_COLOUR_CHECKBOX); w->pressed_widgets |= (1uLL << WIDX_SELL_ITEM_RANDOM_COLOUR_CHECKBOX);
} }
else else
{ {
w->pressed_widgets &= ~(1ULL << WIDX_SELL_ITEM_RANDOM_COLOUR_CHECKBOX); w->pressed_widgets &= ~(1uLL << WIDX_SELL_ITEM_RANDOM_COLOUR_CHECKBOX);
} }
} }
else else
@ -5222,15 +5222,15 @@ static void WindowRideMusicInvalidate(rct_window* w)
auto isMusicActivated = (ride->lifecycle_flags & RIDE_LIFECYCLE_MUSIC) != 0; auto isMusicActivated = (ride->lifecycle_flags & RIDE_LIFECYCLE_MUSIC) != 0;
if (isMusicActivated) if (isMusicActivated)
{ {
w->pressed_widgets |= (1ULL << WIDX_PLAY_MUSIC); w->pressed_widgets |= (1uLL << WIDX_PLAY_MUSIC);
w->disabled_widgets &= ~(1ULL << WIDX_MUSIC); w->disabled_widgets &= ~(1uLL << WIDX_MUSIC);
w->disabled_widgets &= ~(1ULL << WIDX_MUSIC_DROPDOWN); w->disabled_widgets &= ~(1uLL << WIDX_MUSIC_DROPDOWN);
} }
else else
{ {
w->pressed_widgets &= ~(1ULL << WIDX_PLAY_MUSIC); w->pressed_widgets &= ~(1uLL << WIDX_PLAY_MUSIC);
w->disabled_widgets |= (1ULL << WIDX_MUSIC); w->disabled_widgets |= (1uLL << WIDX_MUSIC);
w->disabled_widgets |= (1ULL << WIDX_MUSIC_DROPDOWN); w->disabled_widgets |= (1uLL << WIDX_MUSIC_DROPDOWN);
} }
WindowRideAnchorBorderWidgets(w); WindowRideAnchorBorderWidgets(w);
@ -5598,12 +5598,12 @@ static void WindowRideMeasurementsInvalidate(rct_window* w)
window_ride_measurements_widgets[WIDX_CANCEL_DESIGN].type = WindowWidgetType::Empty; window_ride_measurements_widgets[WIDX_CANCEL_DESIGN].type = WindowWidgetType::Empty;
window_ride_measurements_widgets[WIDX_SAVE_TRACK_DESIGN].type = WindowWidgetType::FlatBtn; window_ride_measurements_widgets[WIDX_SAVE_TRACK_DESIGN].type = WindowWidgetType::FlatBtn;
w->disabled_widgets |= (1ULL << WIDX_SAVE_TRACK_DESIGN); w->disabled_widgets |= (1uLL << WIDX_SAVE_TRACK_DESIGN);
if (ride->lifecycle_flags & RIDE_LIFECYCLE_TESTED) if (ride->lifecycle_flags & RIDE_LIFECYCLE_TESTED)
{ {
if (ride->excitement != RIDE_RATING_UNDEFINED) if (ride->excitement != RIDE_RATING_UNDEFINED)
{ {
w->disabled_widgets &= ~(1ULL << WIDX_SAVE_TRACK_DESIGN); w->disabled_widgets &= ~(1uLL << WIDX_SAVE_TRACK_DESIGN);
window_ride_measurements_widgets[WIDX_SAVE_TRACK_DESIGN].tooltip = STR_SAVE_TRACK_DESIGN; window_ride_measurements_widgets[WIDX_SAVE_TRACK_DESIGN].tooltip = STR_SAVE_TRACK_DESIGN;
} }
} }
@ -6061,10 +6061,10 @@ static void WindowRideGraphsInvalidate(rct_window* w)
ride->FormatNameTo(ft); ride->FormatNameTo(ft);
// Set pressed graph button type // Set pressed graph button type
w->pressed_widgets &= ~(1ULL << WIDX_GRAPH_VELOCITY); w->pressed_widgets &= ~(1uLL << WIDX_GRAPH_VELOCITY);
w->pressed_widgets &= ~(1ULL << WIDX_GRAPH_ALTITUDE); w->pressed_widgets &= ~(1uLL << WIDX_GRAPH_ALTITUDE);
w->pressed_widgets &= ~(1ULL << WIDX_GRAPH_VERTICAL); w->pressed_widgets &= ~(1uLL << WIDX_GRAPH_VERTICAL);
w->pressed_widgets &= ~(1ULL << WIDX_GRAPH_LATERAL); w->pressed_widgets &= ~(1uLL << WIDX_GRAPH_LATERAL);
w->pressed_widgets |= (1LL << (WIDX_GRAPH_VELOCITY + (w->list_information_type & 0xFF))); w->pressed_widgets |= (1LL << (WIDX_GRAPH_VELOCITY + (w->list_information_type & 0xFF)));
// Hide graph buttons that are not applicable // Hide graph buttons that are not applicable
@ -6635,8 +6635,8 @@ static void WindowRideIncomeInvalidate(rct_window* w)
return; return;
// Primary item // Primary item
w->pressed_widgets &= ~(1ULL << WIDX_PRIMARY_PRICE_SAME_THROUGHOUT_PARK); w->pressed_widgets &= ~(1uLL << WIDX_PRIMARY_PRICE_SAME_THROUGHOUT_PARK);
w->disabled_widgets &= ~(1ULL << WIDX_PRIMARY_PRICE); w->disabled_widgets &= ~(1uLL << WIDX_PRIMARY_PRICE);
window_ride_income_widgets[WIDX_PRIMARY_PRICE_LABEL].tooltip = STR_NONE; window_ride_income_widgets[WIDX_PRIMARY_PRICE_LABEL].tooltip = STR_NONE;
window_ride_income_widgets[WIDX_PRIMARY_PRICE].tooltip = STR_NONE; window_ride_income_widgets[WIDX_PRIMARY_PRICE].tooltip = STR_NONE;
@ -6645,7 +6645,7 @@ static void WindowRideIncomeInvalidate(rct_window* w)
const auto& rtd = ride->GetRideTypeDescriptor(); const auto& rtd = ride->GetRideTypeDescriptor();
if (!ParkRidePricesUnlocked() && rideEntry->shop_item[0] == ShopItem::None && !rtd.HasFlag(RIDE_TYPE_FLAG_IS_TOILET)) if (!ParkRidePricesUnlocked() && rideEntry->shop_item[0] == ShopItem::None && !rtd.HasFlag(RIDE_TYPE_FLAG_IS_TOILET))
{ {
w->disabled_widgets |= (1ULL << WIDX_PRIMARY_PRICE); w->disabled_widgets |= (1uLL << WIDX_PRIMARY_PRICE);
window_ride_income_widgets[WIDX_PRIMARY_PRICE_LABEL].tooltip = STR_RIDE_INCOME_ADMISSION_PAY_FOR_ENTRY_TIP; window_ride_income_widgets[WIDX_PRIMARY_PRICE_LABEL].tooltip = STR_RIDE_INCOME_ADMISSION_PAY_FOR_ENTRY_TIP;
window_ride_income_widgets[WIDX_PRIMARY_PRICE].tooltip = STR_RIDE_INCOME_ADMISSION_PAY_FOR_ENTRY_TIP; window_ride_income_widgets[WIDX_PRIMARY_PRICE].tooltip = STR_RIDE_INCOME_ADMISSION_PAY_FOR_ENTRY_TIP;
} }
@ -6667,7 +6667,7 @@ static void WindowRideIncomeInvalidate(rct_window* w)
window_ride_income_widgets[WIDX_PRIMARY_PRICE_SAME_THROUGHOUT_PARK].type = WindowWidgetType::Checkbox; window_ride_income_widgets[WIDX_PRIMARY_PRICE_SAME_THROUGHOUT_PARK].type = WindowWidgetType::Checkbox;
if (shop_item_has_common_price(primaryItem)) if (shop_item_has_common_price(primaryItem))
w->pressed_widgets |= (1ULL << WIDX_PRIMARY_PRICE_SAME_THROUGHOUT_PARK); w->pressed_widgets |= (1uLL << WIDX_PRIMARY_PRICE_SAME_THROUGHOUT_PARK);
window_ride_income_widgets[WIDX_PRIMARY_PRICE_LABEL].text = GetShopItemDescriptor(primaryItem).Naming.PriceLabel; window_ride_income_widgets[WIDX_PRIMARY_PRICE_LABEL].text = GetShopItemDescriptor(primaryItem).Naming.PriceLabel;
} }
@ -6695,9 +6695,9 @@ static void WindowRideIncomeInvalidate(rct_window* w)
else else
{ {
// Set same price throughout park checkbox // Set same price throughout park checkbox
w->pressed_widgets &= ~(1ULL << WIDX_SECONDARY_PRICE_SAME_THROUGHOUT_PARK); w->pressed_widgets &= ~(1uLL << WIDX_SECONDARY_PRICE_SAME_THROUGHOUT_PARK);
if (shop_item_has_common_price(secondaryItem)) if (shop_item_has_common_price(secondaryItem))
w->pressed_widgets |= (1ULL << WIDX_SECONDARY_PRICE_SAME_THROUGHOUT_PARK); w->pressed_widgets |= (1uLL << WIDX_SECONDARY_PRICE_SAME_THROUGHOUT_PARK);
// Show widgets // Show widgets
window_ride_income_widgets[WIDX_SECONDARY_PRICE_LABEL].type = WindowWidgetType::Label; window_ride_income_widgets[WIDX_SECONDARY_PRICE_LABEL].type = WindowWidgetType::Label;

View File

@ -316,24 +316,24 @@ public:
if (_currentTrackCurve & RideConstructionSpecialPieceSelected) if (_currentTrackCurve & RideConstructionSpecialPieceSelected)
{ {
disabledWidgets |= (1ULL << WIDX_SLOPE_GROUPBOX) | (1ULL << WIDX_BANKING_GROUPBOX) | (1ULL << WIDX_SLOPE_DOWN_STEEP) disabledWidgets |= (1uLL << WIDX_SLOPE_GROUPBOX) | (1uLL << WIDX_BANKING_GROUPBOX) | (1uLL << WIDX_SLOPE_DOWN_STEEP)
| (1ULL << WIDX_SLOPE_DOWN) | (1ULL << WIDX_LEVEL) | (1ULL << WIDX_SLOPE_UP) | (1ULL << WIDX_SLOPE_UP_STEEP) | (1uLL << WIDX_SLOPE_DOWN) | (1uLL << WIDX_LEVEL) | (1uLL << WIDX_SLOPE_UP) | (1uLL << WIDX_SLOPE_UP_STEEP)
| (1ULL << WIDX_CHAIN_LIFT) | (1ULL << WIDX_BANK_LEFT) | (1ULL << WIDX_BANK_STRAIGHT) | (1uLL << WIDX_CHAIN_LIFT) | (1uLL << WIDX_BANK_LEFT) | (1uLL << WIDX_BANK_STRAIGHT)
| (1ULL << WIDX_BANK_RIGHT); | (1uLL << WIDX_BANK_RIGHT);
} }
// Disable large curves if the start or end of the track is sloped. // Disable large curves if the start or end of the track is sloped.
if (_previousTrackSlopeEnd != TRACK_SLOPE_NONE || _currentTrackSlopeEnd != TRACK_SLOPE_NONE) if (_previousTrackSlopeEnd != TRACK_SLOPE_NONE || _currentTrackSlopeEnd != TRACK_SLOPE_NONE)
{ {
disabledWidgets |= (1ULL << WIDX_LEFT_CURVE_LARGE) | (1ULL << WIDX_RIGHT_CURVE_LARGE); disabledWidgets |= (1uLL << WIDX_LEFT_CURVE_LARGE) | (1uLL << WIDX_RIGHT_CURVE_LARGE);
} }
if (IsTrackEnabled(TRACK_SLOPE_CURVE) && IsTrackEnabled(TRACK_CURVE_VERY_SMALL)) if (IsTrackEnabled(TRACK_SLOPE_CURVE) && IsTrackEnabled(TRACK_CURVE_VERY_SMALL))
{ {
// Disable small curves if the start or end of the track is sloped. // Disable small curves if the start or end of the track is sloped.
if (_previousTrackSlopeEnd != TRACK_SLOPE_NONE || _currentTrackSlopeEnd != TRACK_SLOPE_NONE) if (_previousTrackSlopeEnd != TRACK_SLOPE_NONE || _currentTrackSlopeEnd != TRACK_SLOPE_NONE)
{ {
disabledWidgets |= (1ULL << WIDX_LEFT_CURVE_VERY_SMALL) | (1ULL << WIDX_LEFT_CURVE) | (1ULL << WIDX_RIGHT_CURVE) disabledWidgets |= (1uLL << WIDX_LEFT_CURVE_VERY_SMALL) | (1uLL << WIDX_LEFT_CURVE) | (1uLL << WIDX_RIGHT_CURVE)
| (1ULL << WIDX_RIGHT_CURVE_VERY_SMALL); | (1uLL << WIDX_RIGHT_CURVE_VERY_SMALL);
} }
} }
if (!IsTrackEnabled(TRACK_SLOPE_CURVE)) if (!IsTrackEnabled(TRACK_SLOPE_CURVE))
@ -345,9 +345,9 @@ public:
{ {
if (_previousTrackSlopeEnd != TRACK_SLOPE_DOWN_90 || _currentTrackSlopeEnd != TRACK_SLOPE_DOWN_90) if (_previousTrackSlopeEnd != TRACK_SLOPE_DOWN_90 || _currentTrackSlopeEnd != TRACK_SLOPE_DOWN_90)
{ {
disabledWidgets |= (1ULL << WIDX_LEFT_CURVE_VERY_SMALL) | (1ULL << WIDX_LEFT_CURVE_SMALL) disabledWidgets |= (1uLL << WIDX_LEFT_CURVE_VERY_SMALL) | (1uLL << WIDX_LEFT_CURVE_SMALL)
| (1ULL << WIDX_LEFT_CURVE) | (1ULL << WIDX_RIGHT_CURVE) | (1ULL << WIDX_RIGHT_CURVE_SMALL) | (1uLL << WIDX_LEFT_CURVE) | (1uLL << WIDX_RIGHT_CURVE) | (1uLL << WIDX_RIGHT_CURVE_SMALL)
| (1ULL << WIDX_RIGHT_CURVE_VERY_SMALL); | (1uLL << WIDX_RIGHT_CURVE_VERY_SMALL);
} }
} }
} }
@ -356,31 +356,31 @@ public:
// Disable all curves on sloped track // Disable all curves on sloped track
if (_previousTrackSlopeEnd != TRACK_SLOPE_NONE || _currentTrackSlopeEnd != TRACK_SLOPE_NONE) if (_previousTrackSlopeEnd != TRACK_SLOPE_NONE || _currentTrackSlopeEnd != TRACK_SLOPE_NONE)
{ {
disabledWidgets |= (1ULL << WIDX_LEFT_CURVE_VERY_SMALL) | (1ULL << WIDX_LEFT_CURVE_SMALL) disabledWidgets |= (1uLL << WIDX_LEFT_CURVE_VERY_SMALL) | (1uLL << WIDX_LEFT_CURVE_SMALL)
| (1ULL << WIDX_LEFT_CURVE) | (1ULL << WIDX_RIGHT_CURVE) | (1ULL << WIDX_RIGHT_CURVE_SMALL) | (1uLL << WIDX_LEFT_CURVE) | (1uLL << WIDX_RIGHT_CURVE) | (1uLL << WIDX_RIGHT_CURVE_SMALL)
| (1ULL << WIDX_RIGHT_CURVE_VERY_SMALL); | (1uLL << WIDX_RIGHT_CURVE_VERY_SMALL);
} }
} }
} }
if (!IsTrackEnabled(TRACK_FLAT_ROLL_BANKING)) if (!IsTrackEnabled(TRACK_FLAT_ROLL_BANKING))
{ {
// Disable banking // Disable banking
disabledWidgets |= (1ULL << WIDX_BANKING_GROUPBOX) | (1ULL << WIDX_BANK_LEFT) | (1ULL << WIDX_BANK_STRAIGHT) disabledWidgets |= (1uLL << WIDX_BANKING_GROUPBOX) | (1uLL << WIDX_BANK_LEFT) | (1uLL << WIDX_BANK_STRAIGHT)
| (1ULL << WIDX_BANK_RIGHT); | (1uLL << WIDX_BANK_RIGHT);
} }
// Disable banking if the start track is steep and the end of the track becomes flat. // Disable banking if the start track is steep and the end of the track becomes flat.
if ((_previousTrackSlopeEnd == TRACK_SLOPE_DOWN_60 || _previousTrackSlopeEnd == TRACK_SLOPE_UP_60) if ((_previousTrackSlopeEnd == TRACK_SLOPE_DOWN_60 || _previousTrackSlopeEnd == TRACK_SLOPE_UP_60)
&& _currentTrackSlopeEnd == TRACK_SLOPE_NONE) && _currentTrackSlopeEnd == TRACK_SLOPE_NONE)
{ {
disabledWidgets |= (1ULL << WIDX_BANK_LEFT) | (1ULL << WIDX_BANK_RIGHT); disabledWidgets |= (1uLL << WIDX_BANK_LEFT) | (1uLL << WIDX_BANK_RIGHT);
} }
if (!IsTrackEnabled(TRACK_SLOPE) && !IsTrackEnabled(TRACK_SLOPE_STEEP_DOWN) && !IsTrackEnabled(TRACK_SLOPE_STEEP_UP)) if (!IsTrackEnabled(TRACK_SLOPE) && !IsTrackEnabled(TRACK_SLOPE_STEEP_DOWN) && !IsTrackEnabled(TRACK_SLOPE_STEEP_UP))
{ {
if (!currentRide->GetRideTypeDescriptor().SupportsTrackPiece(TRACK_REVERSE_FREEFALL)) if (!currentRide->GetRideTypeDescriptor().SupportsTrackPiece(TRACK_REVERSE_FREEFALL))
{ {
// Disable all slopes // Disable all slopes
disabledWidgets |= (1ULL << WIDX_SLOPE_GROUPBOX) | (1ULL << WIDX_SLOPE_DOWN_STEEP) | (1ULL << WIDX_SLOPE_DOWN) disabledWidgets |= (1uLL << WIDX_SLOPE_GROUPBOX) | (1uLL << WIDX_SLOPE_DOWN_STEEP) | (1uLL << WIDX_SLOPE_DOWN)
| (1ULL << WIDX_LEVEL) | (1ULL << WIDX_SLOPE_UP) | (1ULL << WIDX_SLOPE_UP_STEEP); | (1uLL << WIDX_LEVEL) | (1uLL << WIDX_SLOPE_UP) | (1uLL << WIDX_SLOPE_UP_STEEP);
} }
} }
if (currentRide->GetRideTypeDescriptor().HasFlag(RIDE_TYPE_FLAG_UP_INCLINE_REQUIRES_LIFT) if (currentRide->GetRideTypeDescriptor().HasFlag(RIDE_TYPE_FLAG_UP_INCLINE_REQUIRES_LIFT)
@ -389,16 +389,16 @@ public:
// Disable lift hill toggle and banking if current track piece is uphill // Disable lift hill toggle and banking if current track piece is uphill
if (_previousTrackSlopeEnd == TRACK_SLOPE_UP_25 || _previousTrackSlopeEnd == TRACK_SLOPE_UP_60 if (_previousTrackSlopeEnd == TRACK_SLOPE_UP_25 || _previousTrackSlopeEnd == TRACK_SLOPE_UP_60
|| _currentTrackSlopeEnd == TRACK_SLOPE_UP_25 || _currentTrackSlopeEnd == TRACK_SLOPE_UP_60) || _currentTrackSlopeEnd == TRACK_SLOPE_UP_25 || _currentTrackSlopeEnd == TRACK_SLOPE_UP_60)
disabledWidgets |= 1ULL << WIDX_CHAIN_LIFT | (1ULL << WIDX_BANK_LEFT) | (1ULL << WIDX_BANK_RIGHT); disabledWidgets |= 1uLL << WIDX_CHAIN_LIFT | (1uLL << WIDX_BANK_LEFT) | (1uLL << WIDX_BANK_RIGHT);
// Disable upward slope if current track piece is not flat // Disable upward slope if current track piece is not flat
if ((_previousTrackSlopeEnd != TRACK_SLOPE_NONE || _previousTrackBankEnd != TRACK_BANK_NONE) if ((_previousTrackSlopeEnd != TRACK_SLOPE_NONE || _previousTrackBankEnd != TRACK_BANK_NONE)
&& !(_currentTrackLiftHill & CONSTRUCTION_LIFT_HILL_SELECTED)) && !(_currentTrackLiftHill & CONSTRUCTION_LIFT_HILL_SELECTED))
disabledWidgets |= (1ULL << WIDX_SLOPE_UP); disabledWidgets |= (1uLL << WIDX_SLOPE_UP);
} }
if (_rideConstructionState == RideConstructionState::State0) if (_rideConstructionState == RideConstructionState::State0)
{ {
disabledWidgets |= (1ULL << WIDX_CONSTRUCT) | (1ULL << WIDX_DEMOLISH) | (1ULL << WIDX_PREVIOUS_SECTION) disabledWidgets |= (1uLL << WIDX_CONSTRUCT) | (1uLL << WIDX_DEMOLISH) | (1uLL << WIDX_PREVIOUS_SECTION)
| (1ULL << WIDX_NEXT_SECTION); | (1uLL << WIDX_NEXT_SECTION);
} }
switch (_currentTrackCurve) switch (_currentTrackCurve)
{ {
@ -406,28 +406,28 @@ public:
case TRACK_CURVE_LEFT_SMALL: case TRACK_CURVE_LEFT_SMALL:
case TRACK_CURVE_LEFT: case TRACK_CURVE_LEFT:
case TRACK_CURVE_LEFT_LARGE: case TRACK_CURVE_LEFT_LARGE:
disabledWidgets |= (1ULL << WIDX_BANK_RIGHT); disabledWidgets |= (1uLL << WIDX_BANK_RIGHT);
if (_previousTrackBankEnd == TRACK_BANK_NONE) if (_previousTrackBankEnd == TRACK_BANK_NONE)
{ {
disabledWidgets |= (1ULL << WIDX_BANK_LEFT); disabledWidgets |= (1uLL << WIDX_BANK_LEFT);
} }
else else
{ {
disabledWidgets |= (1ULL << WIDX_BANK_STRAIGHT); disabledWidgets |= (1uLL << WIDX_BANK_STRAIGHT);
} }
break; break;
case TRACK_CURVE_RIGHT_LARGE: case TRACK_CURVE_RIGHT_LARGE:
case TRACK_CURVE_RIGHT: case TRACK_CURVE_RIGHT:
case TRACK_CURVE_RIGHT_SMALL: case TRACK_CURVE_RIGHT_SMALL:
case TRACK_CURVE_RIGHT_VERY_SMALL: case TRACK_CURVE_RIGHT_VERY_SMALL:
disabledWidgets |= (1ULL << WIDX_BANK_LEFT); disabledWidgets |= (1uLL << WIDX_BANK_LEFT);
if (_previousTrackBankEnd == TRACK_BANK_NONE) if (_previousTrackBankEnd == TRACK_BANK_NONE)
{ {
disabledWidgets |= (1ULL << WIDX_BANK_RIGHT); disabledWidgets |= (1uLL << WIDX_BANK_RIGHT);
} }
else else
{ {
disabledWidgets |= (1ULL << WIDX_BANK_STRAIGHT); disabledWidgets |= (1uLL << WIDX_BANK_STRAIGHT);
} }
break; break;
} }
@ -435,7 +435,7 @@ public:
{ {
if (_currentTrackBankEnd != TRACK_BANK_NONE) if (_currentTrackBankEnd != TRACK_BANK_NONE)
{ {
disabledWidgets |= (1ULL << WIDX_SLOPE_DOWN) | (1ULL << WIDX_SLOPE_UP); disabledWidgets |= (1uLL << WIDX_SLOPE_DOWN) | (1uLL << WIDX_SLOPE_UP);
} }
} }
if (_previousTrackSlopeEnd == _currentTrackSlopeEnd) if (_previousTrackSlopeEnd == _currentTrackSlopeEnd)
@ -444,20 +444,20 @@ public:
{ {
case TRACK_SLOPE_UP_60: case TRACK_SLOPE_UP_60:
case TRACK_SLOPE_DOWN_60: case TRACK_SLOPE_DOWN_60:
disabledWidgets |= (1ULL << WIDX_LEFT_CURVE_VERY_SMALL) | (1ULL << WIDX_LEFT_CURVE) disabledWidgets |= (1uLL << WIDX_LEFT_CURVE_VERY_SMALL) | (1uLL << WIDX_LEFT_CURVE)
| (1ULL << WIDX_RIGHT_CURVE) | (1ULL << WIDX_RIGHT_CURVE_VERY_SMALL); | (1uLL << WIDX_RIGHT_CURVE) | (1uLL << WIDX_RIGHT_CURVE_VERY_SMALL);
if (!IsTrackEnabled(TRACK_SLOPE_CURVE_STEEP)) if (!IsTrackEnabled(TRACK_SLOPE_CURVE_STEEP))
{ {
disabledWidgets |= (1ULL << WIDX_LEFT_CURVE_SMALL) | (1ULL << WIDX_RIGHT_CURVE_SMALL); disabledWidgets |= (1uLL << WIDX_LEFT_CURVE_SMALL) | (1uLL << WIDX_RIGHT_CURVE_SMALL);
} }
break; break;
case TRACK_SLOPE_UP_90: case TRACK_SLOPE_UP_90:
case TRACK_SLOPE_DOWN_90: case TRACK_SLOPE_DOWN_90:
disabledWidgets |= (1ULL << WIDX_LEFT_CURVE_VERY_SMALL) | (1ULL << WIDX_LEFT_CURVE) disabledWidgets |= (1uLL << WIDX_LEFT_CURVE_VERY_SMALL) | (1uLL << WIDX_LEFT_CURVE)
| (1ULL << WIDX_RIGHT_CURVE) | (1ULL << WIDX_RIGHT_CURVE_VERY_SMALL); | (1uLL << WIDX_RIGHT_CURVE) | (1uLL << WIDX_RIGHT_CURVE_VERY_SMALL);
if (!IsTrackEnabled(TRACK_CURVE_VERTICAL)) if (!IsTrackEnabled(TRACK_CURVE_VERTICAL))
{ {
disabledWidgets |= (1ULL << WIDX_LEFT_CURVE_SMALL) | (1ULL << WIDX_RIGHT_CURVE_SMALL); disabledWidgets |= (1uLL << WIDX_LEFT_CURVE_SMALL) | (1uLL << WIDX_RIGHT_CURVE_SMALL);
} }
break; break;
} }
@ -465,9 +465,9 @@ public:
else else
{ {
// Disable all curves // Disable all curves
disabledWidgets |= (1ULL << WIDX_LEFT_CURVE_VERY_SMALL) | (1ULL << WIDX_LEFT_CURVE_SMALL) disabledWidgets |= (1uLL << WIDX_LEFT_CURVE_VERY_SMALL) | (1uLL << WIDX_LEFT_CURVE_SMALL)
| (1ULL << WIDX_LEFT_CURVE) | (1ULL << WIDX_RIGHT_CURVE) | (1ULL << WIDX_RIGHT_CURVE_SMALL) | (1uLL << WIDX_LEFT_CURVE) | (1uLL << WIDX_RIGHT_CURVE) | (1uLL << WIDX_RIGHT_CURVE_SMALL)
| (1ULL << WIDX_RIGHT_CURVE_VERY_SMALL); | (1uLL << WIDX_RIGHT_CURVE_VERY_SMALL);
} }
switch (_previousTrackSlopeEnd) switch (_previousTrackSlopeEnd)
@ -476,72 +476,72 @@ public:
if (_currentTrackCurve != TRACK_CURVE_NONE if (_currentTrackCurve != TRACK_CURVE_NONE
|| (IsTrackEnabled(TRACK_SLOPE_STEEP_LONG) && TrackPieceDirectionIsDiagonal(_currentTrackPieceDirection))) || (IsTrackEnabled(TRACK_SLOPE_STEEP_LONG) && TrackPieceDirectionIsDiagonal(_currentTrackPieceDirection)))
{ {
disabledWidgets |= (1ULL << WIDX_SLOPE_DOWN_STEEP) | (1ULL << WIDX_SLOPE_UP_STEEP); disabledWidgets |= (1uLL << WIDX_SLOPE_DOWN_STEEP) | (1uLL << WIDX_SLOPE_UP_STEEP);
} }
break; break;
case TRACK_SLOPE_DOWN_25: case TRACK_SLOPE_DOWN_25:
disabledWidgets |= (1ULL << WIDX_SLOPE_UP) | (1ULL << WIDX_SLOPE_UP_STEEP); disabledWidgets |= (1uLL << WIDX_SLOPE_UP) | (1uLL << WIDX_SLOPE_UP_STEEP);
break; break;
case TRACK_SLOPE_DOWN_60: case TRACK_SLOPE_DOWN_60:
disabledWidgets |= (1ULL << WIDX_SLOPE_UP) | (1ULL << WIDX_SLOPE_UP_STEEP); disabledWidgets |= (1uLL << WIDX_SLOPE_UP) | (1uLL << WIDX_SLOPE_UP_STEEP);
if (!IsTrackEnabled(TRACK_SLOPE_LONG) if (!IsTrackEnabled(TRACK_SLOPE_LONG)
&& !(IsTrackEnabled(TRACK_SLOPE_STEEP_LONG) && !TrackPieceDirectionIsDiagonal(_currentTrackPieceDirection))) && !(IsTrackEnabled(TRACK_SLOPE_STEEP_LONG) && !TrackPieceDirectionIsDiagonal(_currentTrackPieceDirection)))
{ {
disabledWidgets |= (1ULL << WIDX_LEVEL); disabledWidgets |= (1uLL << WIDX_LEVEL);
} }
break; break;
case TRACK_SLOPE_UP_25: case TRACK_SLOPE_UP_25:
disabledWidgets |= (1ULL << WIDX_SLOPE_DOWN_STEEP) | (1ULL << WIDX_SLOPE_DOWN); disabledWidgets |= (1uLL << WIDX_SLOPE_DOWN_STEEP) | (1uLL << WIDX_SLOPE_DOWN);
break; break;
case TRACK_SLOPE_UP_60: case TRACK_SLOPE_UP_60:
disabledWidgets |= (1ULL << WIDX_SLOPE_DOWN_STEEP) | (1ULL << WIDX_SLOPE_DOWN); disabledWidgets |= (1uLL << WIDX_SLOPE_DOWN_STEEP) | (1uLL << WIDX_SLOPE_DOWN);
if (!IsTrackEnabled(TRACK_SLOPE_LONG) if (!IsTrackEnabled(TRACK_SLOPE_LONG)
&& !(IsTrackEnabled(TRACK_SLOPE_STEEP_LONG) && !TrackPieceDirectionIsDiagonal(_currentTrackPieceDirection))) && !(IsTrackEnabled(TRACK_SLOPE_STEEP_LONG) && !TrackPieceDirectionIsDiagonal(_currentTrackPieceDirection)))
{ {
disabledWidgets |= (1ULL << WIDX_LEVEL); disabledWidgets |= (1uLL << WIDX_LEVEL);
} }
break; break;
case TRACK_SLOPE_DOWN_90: case TRACK_SLOPE_DOWN_90:
case TRACK_SLOPE_UP_90: case TRACK_SLOPE_UP_90:
disabledWidgets |= (1ULL << WIDX_SLOPE_DOWN) | (1ULL << WIDX_LEVEL) | (1ULL << WIDX_SLOPE_UP); disabledWidgets |= (1uLL << WIDX_SLOPE_DOWN) | (1uLL << WIDX_LEVEL) | (1uLL << WIDX_SLOPE_UP);
break; break;
} }
if (_previousTrackSlopeEnd == TRACK_SLOPE_NONE) if (_previousTrackSlopeEnd == TRACK_SLOPE_NONE)
{ {
if (!IsTrackEnabled(TRACK_SLOPE_LONG) && !IsTrackEnabled(TRACK_SLOPE_STEEP_LONG)) if (!IsTrackEnabled(TRACK_SLOPE_LONG) && !IsTrackEnabled(TRACK_SLOPE_STEEP_LONG))
{ {
disabledWidgets |= (1ULL << WIDX_SLOPE_DOWN_STEEP) | (1ULL << WIDX_SLOPE_UP_STEEP); disabledWidgets |= (1uLL << WIDX_SLOPE_DOWN_STEEP) | (1uLL << WIDX_SLOPE_UP_STEEP);
} }
} }
if (IsTrackEnabled(TRACK_SLOPE_VERTICAL)) if (IsTrackEnabled(TRACK_SLOPE_VERTICAL))
{ {
if (_previousTrackSlopeEnd == TRACK_SLOPE_UP_60 && _currentTrackPieceDirection < 4) if (_previousTrackSlopeEnd == TRACK_SLOPE_UP_60 && _currentTrackPieceDirection < 4)
{ {
disabledWidgets &= ~(1ULL << WIDX_SLOPE_DOWN_STEEP); disabledWidgets &= ~(1uLL << WIDX_SLOPE_DOWN_STEEP);
} }
if (_previousTrackSlopeEnd == TRACK_SLOPE_UP_90) if (_previousTrackSlopeEnd == TRACK_SLOPE_UP_90)
{ {
disabledWidgets &= ~(1ULL << WIDX_SLOPE_DOWN_STEEP); disabledWidgets &= ~(1uLL << WIDX_SLOPE_DOWN_STEEP);
} }
if (_previousTrackSlopeEnd == TRACK_SLOPE_DOWN_60 && _currentTrackPieceDirection < 4) if (_previousTrackSlopeEnd == TRACK_SLOPE_DOWN_60 && _currentTrackPieceDirection < 4)
{ {
disabledWidgets &= ~(1ULL << WIDX_SLOPE_UP_STEEP); disabledWidgets &= ~(1uLL << WIDX_SLOPE_UP_STEEP);
} }
} }
if (_previousTrackBankEnd == TRACK_BANK_LEFT) if (_previousTrackBankEnd == TRACK_BANK_LEFT)
{ {
disabledWidgets |= (1ULL << WIDX_RIGHT_CURVE_SMALL) | (1ULL << WIDX_RIGHT_CURVE) | (1ULL << WIDX_RIGHT_CURVE_LARGE) disabledWidgets |= (1uLL << WIDX_RIGHT_CURVE_SMALL) | (1uLL << WIDX_RIGHT_CURVE) | (1uLL << WIDX_RIGHT_CURVE_LARGE)
| (1ULL << WIDX_BANK_RIGHT); | (1uLL << WIDX_BANK_RIGHT);
} }
if (_previousTrackBankEnd == TRACK_BANK_RIGHT) if (_previousTrackBankEnd == TRACK_BANK_RIGHT)
{ {
disabledWidgets |= (1ULL << WIDX_LEFT_CURVE_SMALL) | (1ULL << WIDX_LEFT_CURVE) | (1ULL << WIDX_LEFT_CURVE_LARGE) disabledWidgets |= (1uLL << WIDX_LEFT_CURVE_SMALL) | (1uLL << WIDX_LEFT_CURVE) | (1uLL << WIDX_LEFT_CURVE_LARGE)
| (1ULL << WIDX_BANK_LEFT); | (1uLL << WIDX_BANK_LEFT);
} }
if (_currentTrackBankEnd != _previousTrackBankEnd) if (_currentTrackBankEnd != _previousTrackBankEnd)
{ {
disabledWidgets |= (1ULL << WIDX_RIGHT_CURVE_SMALL) | (1ULL << WIDX_RIGHT_CURVE) | (1ULL << WIDX_RIGHT_CURVE_LARGE) disabledWidgets |= (1uLL << WIDX_RIGHT_CURVE_SMALL) | (1uLL << WIDX_RIGHT_CURVE) | (1uLL << WIDX_RIGHT_CURVE_LARGE)
| (1ULL << WIDX_LEFT_CURVE_SMALL) | (1ULL << WIDX_LEFT_CURVE) | (1ULL << WIDX_LEFT_CURVE_LARGE); | (1uLL << WIDX_LEFT_CURVE_SMALL) | (1uLL << WIDX_LEFT_CURVE) | (1uLL << WIDX_LEFT_CURVE_LARGE);
} }
if (_currentTrackSlopeEnd != TRACK_SLOPE_NONE) if (_currentTrackSlopeEnd != TRACK_SLOPE_NONE)
{ {
@ -551,194 +551,194 @@ public:
{ {
if (_currentTrackSlopeEnd != TRACK_SLOPE_UP_25 && _currentTrackSlopeEnd != TRACK_SLOPE_DOWN_25) if (_currentTrackSlopeEnd != TRACK_SLOPE_UP_25 && _currentTrackSlopeEnd != TRACK_SLOPE_DOWN_25)
{ {
disabledWidgets |= (1ULL << WIDX_BANK_LEFT) | (1ULL << WIDX_BANK_RIGHT); disabledWidgets |= (1uLL << WIDX_BANK_LEFT) | (1uLL << WIDX_BANK_RIGHT);
} }
} }
else else
{ {
if (_currentTrackSlopeEnd != _previousTrackSlopeEnd) if (_currentTrackSlopeEnd != _previousTrackSlopeEnd)
{ {
disabledWidgets |= (1ULL << WIDX_BANK_LEFT) | (1ULL << WIDX_BANK_RIGHT); disabledWidgets |= (1uLL << WIDX_BANK_LEFT) | (1uLL << WIDX_BANK_RIGHT);
} }
else else
{ {
if (_currentTrackSlopeEnd != TRACK_SLOPE_UP_25 && _currentTrackSlopeEnd != TRACK_SLOPE_DOWN_25) if (_currentTrackSlopeEnd != TRACK_SLOPE_UP_25 && _currentTrackSlopeEnd != TRACK_SLOPE_DOWN_25)
{ {
disabledWidgets |= (1ULL << WIDX_BANK_LEFT) | (1ULL << WIDX_BANK_RIGHT); disabledWidgets |= (1uLL << WIDX_BANK_LEFT) | (1uLL << WIDX_BANK_RIGHT);
} }
} }
} }
} }
else else
{ {
disabledWidgets |= (1ULL << WIDX_BANK_LEFT) | (1ULL << WIDX_BANK_RIGHT); disabledWidgets |= (1uLL << WIDX_BANK_LEFT) | (1uLL << WIDX_BANK_RIGHT);
} }
} }
if (_currentTrackBankEnd != TRACK_BANK_NONE || _previousTrackBankEnd != TRACK_BANK_NONE) if (_currentTrackBankEnd != TRACK_BANK_NONE || _previousTrackBankEnd != TRACK_BANK_NONE)
{ {
disabledWidgets |= (1ULL << WIDX_SLOPE_DOWN_STEEP) | (1ULL << WIDX_SLOPE_UP_STEEP) | (1ULL << WIDX_CHAIN_LIFT); disabledWidgets |= (1uLL << WIDX_SLOPE_DOWN_STEEP) | (1uLL << WIDX_SLOPE_UP_STEEP) | (1uLL << WIDX_CHAIN_LIFT);
} }
if (_currentTrackCurve != TRACK_CURVE_NONE) if (_currentTrackCurve != TRACK_CURVE_NONE)
{ {
if (!IsTrackEnabled(TRACK_LIFT_HILL_CURVE)) if (!IsTrackEnabled(TRACK_LIFT_HILL_CURVE))
{ {
disabledWidgets |= (1ULL << WIDX_CHAIN_LIFT); disabledWidgets |= (1uLL << WIDX_CHAIN_LIFT);
} }
if (_currentTrackSlopeEnd == TRACK_SLOPE_NONE) if (_currentTrackSlopeEnd == TRACK_SLOPE_NONE)
{ {
disabledWidgets |= (1ULL << WIDX_CHAIN_LIFT); disabledWidgets |= (1uLL << WIDX_CHAIN_LIFT);
} }
if (_currentTrackSlopeEnd == TRACK_SLOPE_UP_60) if (_currentTrackSlopeEnd == TRACK_SLOPE_UP_60)
{ {
disabledWidgets |= (1ULL << WIDX_CHAIN_LIFT); disabledWidgets |= (1uLL << WIDX_CHAIN_LIFT);
} }
if (_currentTrackSlopeEnd == TRACK_SLOPE_DOWN_60) if (_currentTrackSlopeEnd == TRACK_SLOPE_DOWN_60)
{ {
disabledWidgets |= (1ULL << WIDX_CHAIN_LIFT); disabledWidgets |= (1uLL << WIDX_CHAIN_LIFT);
} }
} }
if (_currentTrackSlopeEnd == TRACK_SLOPE_UP_90 || _previousTrackSlopeEnd == TRACK_SLOPE_UP_90) if (_currentTrackSlopeEnd == TRACK_SLOPE_UP_90 || _previousTrackSlopeEnd == TRACK_SLOPE_UP_90)
{ {
disabledWidgets |= (1ULL << WIDX_CHAIN_LIFT); disabledWidgets |= (1uLL << WIDX_CHAIN_LIFT);
} }
if (!IsTrackEnabled(TRACK_LIFT_HILL_STEEP)) if (!IsTrackEnabled(TRACK_LIFT_HILL_STEEP))
{ {
if (_previousTrackSlopeEnd == TRACK_SLOPE_UP_60 || _currentTrackSlopeEnd == TRACK_SLOPE_UP_60) if (_previousTrackSlopeEnd == TRACK_SLOPE_UP_60 || _currentTrackSlopeEnd == TRACK_SLOPE_UP_60)
{ {
disabledWidgets |= (1ULL << WIDX_CHAIN_LIFT); disabledWidgets |= (1uLL << WIDX_CHAIN_LIFT);
} }
} }
if (_previousTrackBankEnd == TRACK_BANK_UPSIDE_DOWN) if (_previousTrackBankEnd == TRACK_BANK_UPSIDE_DOWN)
{ {
disabledWidgets |= (1ULL << WIDX_LEFT_CURVE_SMALL) | (1ULL << WIDX_LEFT_CURVE) | (1ULL << WIDX_LEFT_CURVE_LARGE) disabledWidgets |= (1uLL << WIDX_LEFT_CURVE_SMALL) | (1uLL << WIDX_LEFT_CURVE) | (1uLL << WIDX_LEFT_CURVE_LARGE)
| (1ULL << WIDX_STRAIGHT) | (1ULL << WIDX_RIGHT_CURVE_SMALL) | (1ULL << WIDX_RIGHT_CURVE) | (1uLL << WIDX_STRAIGHT) | (1uLL << WIDX_RIGHT_CURVE_SMALL) | (1uLL << WIDX_RIGHT_CURVE)
| (1ULL << WIDX_RIGHT_CURVE_LARGE); | (1uLL << WIDX_RIGHT_CURVE_LARGE);
} }
if (_currentTrackCurve != TRACK_CURVE_NONE) if (_currentTrackCurve != TRACK_CURVE_NONE)
{ {
if (_currentTrackSlopeEnd == TRACK_SLOPE_NONE) if (_currentTrackSlopeEnd == TRACK_SLOPE_NONE)
{ {
disabledWidgets |= (1ULL << WIDX_SLOPE_DOWN) | (1ULL << WIDX_SLOPE_UP); disabledWidgets |= (1uLL << WIDX_SLOPE_DOWN) | (1uLL << WIDX_SLOPE_UP);
} }
if (_currentTrackSlopeEnd == _previousTrackSlopeEnd) if (_currentTrackSlopeEnd == _previousTrackSlopeEnd)
{ {
if (_currentTrackSlopeEnd == TRACK_SLOPE_UP_25) if (_currentTrackSlopeEnd == TRACK_SLOPE_UP_25)
{ {
disabledWidgets |= (1ULL << WIDX_SLOPE_UP_STEEP); disabledWidgets |= (1uLL << WIDX_SLOPE_UP_STEEP);
if (_currentTrackCurve == TRACK_CURVE_LEFT || _currentTrackCurve == TRACK_CURVE_RIGHT if (_currentTrackCurve == TRACK_CURVE_LEFT || _currentTrackCurve == TRACK_CURVE_RIGHT
|| _rideConstructionState != RideConstructionState::Back || !IsTrackEnabled(TRACK_SLOPE_CURVE_BANKED)) || _rideConstructionState != RideConstructionState::Back || !IsTrackEnabled(TRACK_SLOPE_CURVE_BANKED))
{ {
disabledWidgets |= (1ULL << WIDX_LEVEL); disabledWidgets |= (1uLL << WIDX_LEVEL);
} }
} }
if (_currentTrackSlopeEnd == TRACK_SLOPE_DOWN_25) if (_currentTrackSlopeEnd == TRACK_SLOPE_DOWN_25)
{ {
disabledWidgets |= (1ULL << WIDX_SLOPE_DOWN_STEEP); disabledWidgets |= (1uLL << WIDX_SLOPE_DOWN_STEEP);
if (_currentTrackCurve == TRACK_CURVE_LEFT || _currentTrackCurve == TRACK_CURVE_RIGHT if (_currentTrackCurve == TRACK_CURVE_LEFT || _currentTrackCurve == TRACK_CURVE_RIGHT
|| _rideConstructionState != RideConstructionState::Front || !IsTrackEnabled(TRACK_SLOPE_CURVE_BANKED)) || _rideConstructionState != RideConstructionState::Front || !IsTrackEnabled(TRACK_SLOPE_CURVE_BANKED))
{ {
disabledWidgets |= (1ULL << WIDX_LEVEL); disabledWidgets |= (1uLL << WIDX_LEVEL);
} }
} }
} }
else if (IsTrackEnabled(TRACK_SLOPE_CURVE_BANKED)) else if (IsTrackEnabled(TRACK_SLOPE_CURVE_BANKED))
{ {
disabledWidgets |= (1ULL << WIDX_SLOPE_DOWN_STEEP) | (1ULL << WIDX_SLOPE_UP_STEEP); disabledWidgets |= (1uLL << WIDX_SLOPE_DOWN_STEEP) | (1uLL << WIDX_SLOPE_UP_STEEP);
if (_currentTrackBankEnd == TRACK_BANK_LEFT) if (_currentTrackBankEnd == TRACK_BANK_LEFT)
{ {
disabledWidgets |= (1ULL << WIDX_BANK_STRAIGHT) | (1ULL << WIDX_BANK_RIGHT); disabledWidgets |= (1uLL << WIDX_BANK_STRAIGHT) | (1uLL << WIDX_BANK_RIGHT);
disabledWidgets &= ~(1ULL << WIDX_BANK_LEFT); disabledWidgets &= ~(1uLL << WIDX_BANK_LEFT);
} }
if (_currentTrackBankEnd == TRACK_BANK_RIGHT) if (_currentTrackBankEnd == TRACK_BANK_RIGHT)
{ {
disabledWidgets |= (1ULL << WIDX_BANK_LEFT) | (1ULL << WIDX_BANK_STRAIGHT); disabledWidgets |= (1uLL << WIDX_BANK_LEFT) | (1uLL << WIDX_BANK_STRAIGHT);
disabledWidgets &= ~(1ULL << WIDX_BANK_RIGHT); disabledWidgets &= ~(1uLL << WIDX_BANK_RIGHT);
} }
if (_currentTrackBankEnd == TRACK_BANK_NONE) if (_currentTrackBankEnd == TRACK_BANK_NONE)
{ {
disabledWidgets |= (1ULL << WIDX_BANK_LEFT) | (1ULL << WIDX_BANK_RIGHT); disabledWidgets |= (1uLL << WIDX_BANK_LEFT) | (1uLL << WIDX_BANK_RIGHT);
disabledWidgets &= ~(1ULL << WIDX_BANK_STRAIGHT); disabledWidgets &= ~(1uLL << WIDX_BANK_STRAIGHT);
} }
if (_currentTrackSlopeEnd == TRACK_SLOPE_NONE) if (_currentTrackSlopeEnd == TRACK_SLOPE_NONE)
{ {
disabledWidgets |= (1ULL << WIDX_SLOPE_DOWN) | (1ULL << WIDX_SLOPE_UP); disabledWidgets |= (1uLL << WIDX_SLOPE_DOWN) | (1uLL << WIDX_SLOPE_UP);
disabledWidgets &= ~(1ULL << WIDX_LEVEL); disabledWidgets &= ~(1uLL << WIDX_LEVEL);
} }
if (_currentTrackSlopeEnd == TRACK_SLOPE_UP_25) if (_currentTrackSlopeEnd == TRACK_SLOPE_UP_25)
{ {
disabledWidgets |= (1ULL << WIDX_SLOPE_DOWN) | (1ULL << WIDX_LEVEL); disabledWidgets |= (1uLL << WIDX_SLOPE_DOWN) | (1uLL << WIDX_LEVEL);
disabledWidgets &= ~(1ULL << WIDX_SLOPE_UP); disabledWidgets &= ~(1uLL << WIDX_SLOPE_UP);
} }
if (_currentTrackSlopeEnd == TRACK_SLOPE_DOWN_25) if (_currentTrackSlopeEnd == TRACK_SLOPE_DOWN_25)
{ {
disabledWidgets |= (1ULL << WIDX_LEVEL) | (1ULL << WIDX_SLOPE_UP); disabledWidgets |= (1uLL << WIDX_LEVEL) | (1uLL << WIDX_SLOPE_UP);
disabledWidgets &= ~(1ULL << WIDX_SLOPE_DOWN); disabledWidgets &= ~(1uLL << WIDX_SLOPE_DOWN);
} }
if (_currentTrackCurve == TRACK_CURVE_LEFT_SMALL) if (_currentTrackCurve == TRACK_CURVE_LEFT_SMALL)
{ {
disabledWidgets &= ~(1ULL << WIDX_LEFT_CURVE_SMALL); disabledWidgets &= ~(1uLL << WIDX_LEFT_CURVE_SMALL);
} }
if (_currentTrackCurve == TRACK_CURVE_RIGHT_SMALL) if (_currentTrackCurve == TRACK_CURVE_RIGHT_SMALL)
{ {
disabledWidgets &= ~(1ULL << WIDX_RIGHT_CURVE_SMALL); disabledWidgets &= ~(1uLL << WIDX_RIGHT_CURVE_SMALL);
} }
} }
} }
if (_currentTrackCurve != TRACK_CURVE_NONE && _currentTrackSlopeEnd == TRACK_SLOPE_UP_60) if (_currentTrackCurve != TRACK_CURVE_NONE && _currentTrackSlopeEnd == TRACK_SLOPE_UP_60)
{ {
disabledWidgets |= (1ULL << WIDX_SLOPE_UP); disabledWidgets |= (1uLL << WIDX_SLOPE_UP);
} }
if (_currentTrackCurve != TRACK_CURVE_NONE && _currentTrackSlopeEnd == TRACK_SLOPE_DOWN_60) if (_currentTrackCurve != TRACK_CURVE_NONE && _currentTrackSlopeEnd == TRACK_SLOPE_DOWN_60)
{ {
disabledWidgets |= (1ULL << WIDX_SLOPE_DOWN); disabledWidgets |= (1uLL << WIDX_SLOPE_DOWN);
} }
if ((_currentTrackLiftHill & CONSTRUCTION_LIFT_HILL_SELECTED) && !gCheatsEnableChainLiftOnAllTrack) if ((_currentTrackLiftHill & CONSTRUCTION_LIFT_HILL_SELECTED) && !gCheatsEnableChainLiftOnAllTrack)
{ {
if (_currentTrackSlopeEnd != TRACK_SLOPE_NONE && !IsTrackEnabled(TRACK_LIFT_HILL_CURVE)) if (_currentTrackSlopeEnd != TRACK_SLOPE_NONE && !IsTrackEnabled(TRACK_LIFT_HILL_CURVE))
{ {
disabledWidgets |= (1ULL << WIDX_LEFT_CURVE_SMALL) | (1ULL << WIDX_LEFT_CURVE) | (1ULL << WIDX_LEFT_CURVE_LARGE) disabledWidgets |= (1uLL << WIDX_LEFT_CURVE_SMALL) | (1uLL << WIDX_LEFT_CURVE) | (1uLL << WIDX_LEFT_CURVE_LARGE)
| (1ULL << WIDX_RIGHT_CURVE_SMALL) | (1ULL << WIDX_RIGHT_CURVE) | (1ULL << WIDX_RIGHT_CURVE_LARGE); | (1uLL << WIDX_RIGHT_CURVE_SMALL) | (1uLL << WIDX_RIGHT_CURVE) | (1uLL << WIDX_RIGHT_CURVE_LARGE);
} }
if (!IsTrackEnabled(TRACK_LIFT_HILL_STEEP)) if (!IsTrackEnabled(TRACK_LIFT_HILL_STEEP))
{ {
if (widgets[WIDX_SLOPE_UP_STEEP].tooltip == STR_RIDE_CONSTRUCTION_STEEP_SLOPE_UP_TIP) if (widgets[WIDX_SLOPE_UP_STEEP].tooltip == STR_RIDE_CONSTRUCTION_STEEP_SLOPE_UP_TIP)
{ {
disabledWidgets |= (1ULL << WIDX_SLOPE_UP_STEEP); disabledWidgets |= (1uLL << WIDX_SLOPE_UP_STEEP);
} }
} }
} }
if (_previousTrackSlopeEnd == TRACK_SLOPE_UP_60 && _currentTrackCurve != TRACK_CURVE_NONE) if (_previousTrackSlopeEnd == TRACK_SLOPE_UP_60 && _currentTrackCurve != TRACK_CURVE_NONE)
{ {
disabledWidgets |= (1ULL << WIDX_SLOPE_DOWN_STEEP) | (1ULL << WIDX_LEVEL); disabledWidgets |= (1uLL << WIDX_SLOPE_DOWN_STEEP) | (1uLL << WIDX_LEVEL);
} }
if (_previousTrackSlopeEnd == TRACK_SLOPE_DOWN_60 && _currentTrackCurve != TRACK_CURVE_NONE) if (_previousTrackSlopeEnd == TRACK_SLOPE_DOWN_60 && _currentTrackCurve != TRACK_CURVE_NONE)
{ {
disabledWidgets |= (1ULL << WIDX_LEVEL) | (1ULL << WIDX_SLOPE_UP_STEEP); disabledWidgets |= (1uLL << WIDX_LEVEL) | (1uLL << WIDX_SLOPE_UP_STEEP);
} }
if (_currentTrackSlopeEnd == TRACK_SLOPE_UP_90 || _previousTrackSlopeEnd == TRACK_SLOPE_UP_90) if (_currentTrackSlopeEnd == TRACK_SLOPE_UP_90 || _previousTrackSlopeEnd == TRACK_SLOPE_UP_90)
{ {
if (_currentTrackCurve != TRACK_CURVE_NONE) if (_currentTrackCurve != TRACK_CURVE_NONE)
{ {
disabledWidgets |= (1ULL << WIDX_SLOPE_UP_STEEP); disabledWidgets |= (1uLL << WIDX_SLOPE_UP_STEEP);
} }
disabledWidgets |= (1ULL << WIDX_LEFT_CURVE_LARGE) | (1ULL << WIDX_RIGHT_CURVE_LARGE); disabledWidgets |= (1uLL << WIDX_LEFT_CURVE_LARGE) | (1uLL << WIDX_RIGHT_CURVE_LARGE);
if (currentRide->GetRideTypeDescriptor().SupportsTrackPiece(TRACK_REVERSE_FREEFALL)) if (currentRide->GetRideTypeDescriptor().SupportsTrackPiece(TRACK_REVERSE_FREEFALL))
{ {
disabledWidgets |= (1ULL << WIDX_STRAIGHT) | (1ULL << WIDX_RIGHT_CURVE) | (1ULL << WIDX_RIGHT_CURVE_SMALL) disabledWidgets |= (1uLL << WIDX_STRAIGHT) | (1uLL << WIDX_RIGHT_CURVE) | (1uLL << WIDX_RIGHT_CURVE_SMALL)
| (1ULL << WIDX_LEFT_CURVE_SMALL) | (1ULL << WIDX_LEFT_CURVE); | (1uLL << WIDX_LEFT_CURVE_SMALL) | (1uLL << WIDX_LEFT_CURVE);
} }
} }
else if (_currentTrackSlopeEnd == TRACK_SLOPE_DOWN_90 || _previousTrackSlopeEnd == TRACK_SLOPE_DOWN_90) else if (_currentTrackSlopeEnd == TRACK_SLOPE_DOWN_90 || _previousTrackSlopeEnd == TRACK_SLOPE_DOWN_90)
{ {
if (_currentTrackCurve != TRACK_CURVE_NONE) if (_currentTrackCurve != TRACK_CURVE_NONE)
{ {
disabledWidgets |= (1ULL << WIDX_SLOPE_DOWN_STEEP); disabledWidgets |= (1uLL << WIDX_SLOPE_DOWN_STEEP);
} }
disabledWidgets |= (1ULL << WIDX_LEFT_CURVE_LARGE) | (1ULL << WIDX_RIGHT_CURVE_LARGE); disabledWidgets |= (1uLL << WIDX_LEFT_CURVE_LARGE) | (1uLL << WIDX_RIGHT_CURVE_LARGE);
if (currentRide->GetRideTypeDescriptor().SupportsTrackPiece(TRACK_REVERSE_FREEFALL)) if (currentRide->GetRideTypeDescriptor().SupportsTrackPiece(TRACK_REVERSE_FREEFALL))
{ {
disabledWidgets |= (1ULL << WIDX_STRAIGHT) | (1ULL << WIDX_RIGHT_CURVE) | (1ULL << WIDX_RIGHT_CURVE_SMALL) disabledWidgets |= (1uLL << WIDX_STRAIGHT) | (1uLL << WIDX_RIGHT_CURVE) | (1uLL << WIDX_RIGHT_CURVE_SMALL)
| (1ULL << WIDX_LEFT_CURVE_SMALL) | (1ULL << WIDX_LEFT_CURVE); | (1uLL << WIDX_LEFT_CURVE_SMALL) | (1uLL << WIDX_LEFT_CURVE);
} }
} }
if (IsTrackEnabled(TRACK_HELIX_LARGE_UNBANKED)) if (IsTrackEnabled(TRACK_HELIX_LARGE_UNBANKED))
@ -749,8 +749,8 @@ public:
{ {
if (_currentTrackSlopeEnd == _previousTrackSlopeEnd) if (_currentTrackSlopeEnd == _previousTrackSlopeEnd)
{ {
disabledWidgets &= ~(1ULL << WIDX_SLOPE_DOWN_STEEP); disabledWidgets &= ~(1uLL << WIDX_SLOPE_DOWN_STEEP);
disabledWidgets &= ~(1ULL << WIDX_SLOPE_UP_STEEP); disabledWidgets &= ~(1uLL << WIDX_SLOPE_UP_STEEP);
} }
} }
} }
@ -766,10 +766,10 @@ public:
if (_previousTrackSlopeEnd == _currentTrackSlopeEnd) if (_previousTrackSlopeEnd == _currentTrackSlopeEnd)
{ {
// Enable helix // Enable helix
disabledWidgets &= ~(1ULL << WIDX_SLOPE_DOWN_STEEP); disabledWidgets &= ~(1uLL << WIDX_SLOPE_DOWN_STEEP);
if (!currentRide->GetRideTypeDescriptor().HasFlag(RIDE_TYPE_FLAG_UP_INCLINE_REQUIRES_LIFT) if (!currentRide->GetRideTypeDescriptor().HasFlag(RIDE_TYPE_FLAG_UP_INCLINE_REQUIRES_LIFT)
|| gCheatsEnableAllDrawableTrackPieces) || gCheatsEnableAllDrawableTrackPieces)
disabledWidgets &= ~(1ULL << WIDX_SLOPE_UP_STEEP); disabledWidgets &= ~(1uLL << WIDX_SLOPE_UP_STEEP);
} }
} }
if (IsTrackEnabled(TRACK_SLOPE_CURVE_BANKED)) if (IsTrackEnabled(TRACK_SLOPE_CURVE_BANKED))
@ -782,7 +782,7 @@ public:
&& (!currentRide->GetRideTypeDescriptor().HasFlag(RIDE_TYPE_FLAG_UP_INCLINE_REQUIRES_LIFT) && (!currentRide->GetRideTypeDescriptor().HasFlag(RIDE_TYPE_FLAG_UP_INCLINE_REQUIRES_LIFT)
|| gCheatsEnableAllDrawableTrackPieces)) || gCheatsEnableAllDrawableTrackPieces))
{ {
disabledWidgets &= ~(1ULL << WIDX_SLOPE_UP); disabledWidgets &= ~(1uLL << WIDX_SLOPE_UP);
} }
} }
} }
@ -792,61 +792,61 @@ public:
{ {
if (_currentTrackSlopeEnd == TRACK_SLOPE_NONE && _previousTrackBankEnd != TRACK_BANK_NONE) if (_currentTrackSlopeEnd == TRACK_SLOPE_NONE && _previousTrackBankEnd != TRACK_BANK_NONE)
{ {
disabledWidgets &= ~(1ULL << WIDX_SLOPE_DOWN); disabledWidgets &= ~(1uLL << WIDX_SLOPE_DOWN);
} }
} }
} }
} }
if (_currentTrackPieceDirection >= 4) if (_currentTrackPieceDirection >= 4)
{ {
disabledWidgets |= (1ULL << WIDX_LEFT_CURVE_VERY_SMALL) | (1ULL << WIDX_LEFT_CURVE_SMALL) disabledWidgets |= (1uLL << WIDX_LEFT_CURVE_VERY_SMALL) | (1uLL << WIDX_LEFT_CURVE_SMALL)
| (1ULL << WIDX_LEFT_CURVE) | (1ULL << WIDX_RIGHT_CURVE) | (1ULL << WIDX_RIGHT_CURVE_SMALL) | (1uLL << WIDX_LEFT_CURVE) | (1uLL << WIDX_RIGHT_CURVE) | (1uLL << WIDX_RIGHT_CURVE_SMALL)
| (1ULL << WIDX_RIGHT_CURVE_VERY_SMALL); | (1uLL << WIDX_RIGHT_CURVE_VERY_SMALL);
} }
if (_rideConstructionState == RideConstructionState::Front) if (_rideConstructionState == RideConstructionState::Front)
{ {
disabledWidgets |= (1ULL << WIDX_NEXT_SECTION); disabledWidgets |= (1uLL << WIDX_NEXT_SECTION);
if (window_ride_construction_update_state(nullptr, nullptr, nullptr, nullptr, nullptr, nullptr)) if (window_ride_construction_update_state(nullptr, nullptr, nullptr, nullptr, nullptr, nullptr))
{ {
disabledWidgets |= (1ULL << WIDX_CONSTRUCT); disabledWidgets |= (1uLL << WIDX_CONSTRUCT);
} }
} }
else if (_rideConstructionState == RideConstructionState::Back) else if (_rideConstructionState == RideConstructionState::Back)
{ {
disabledWidgets |= (1ULL << WIDX_PREVIOUS_SECTION); disabledWidgets |= (1uLL << WIDX_PREVIOUS_SECTION);
if (window_ride_construction_update_state(nullptr, nullptr, nullptr, nullptr, nullptr, nullptr)) if (window_ride_construction_update_state(nullptr, nullptr, nullptr, nullptr, nullptr, nullptr))
{ {
disabledWidgets |= (1ULL << WIDX_CONSTRUCT); disabledWidgets |= (1uLL << WIDX_CONSTRUCT);
} }
} }
if (GetRideTypeDescriptor(rideType).HasFlag(RIDE_TYPE_FLAG_TRACK_ELEMENTS_HAVE_TWO_VARIETIES)) if (GetRideTypeDescriptor(rideType).HasFlag(RIDE_TYPE_FLAG_TRACK_ELEMENTS_HAVE_TWO_VARIETIES))
{ {
disabledWidgets &= ~(1ULL << WIDX_BANKING_GROUPBOX); disabledWidgets &= ~(1uLL << WIDX_BANKING_GROUPBOX);
} }
if (_rideConstructionState == RideConstructionState::EntranceExit if (_rideConstructionState == RideConstructionState::EntranceExit
|| _rideConstructionState == RideConstructionState::Selected) || _rideConstructionState == RideConstructionState::Selected)
{ {
disabledWidgets |= (1ULL << WIDX_DIRECTION_GROUPBOX) | (1ULL << WIDX_SLOPE_GROUPBOX) disabledWidgets |= (1uLL << WIDX_DIRECTION_GROUPBOX) | (1uLL << WIDX_SLOPE_GROUPBOX)
| (1ULL << WIDX_BANKING_GROUPBOX) | (1ULL << WIDX_LEFT_CURVE_VERY_SMALL) | (1ULL << WIDX_LEFT_CURVE_SMALL) | (1uLL << WIDX_BANKING_GROUPBOX) | (1uLL << WIDX_LEFT_CURVE_VERY_SMALL) | (1uLL << WIDX_LEFT_CURVE_SMALL)
| (1ULL << WIDX_LEFT_CURVE) | (1ULL << WIDX_STRAIGHT) | (1ULL << WIDX_RIGHT_CURVE) | (1uLL << WIDX_LEFT_CURVE) | (1uLL << WIDX_STRAIGHT) | (1uLL << WIDX_RIGHT_CURVE)
| (1ULL << WIDX_RIGHT_CURVE_SMALL) | (1ULL << WIDX_RIGHT_CURVE_VERY_SMALL) | (1uLL << WIDX_RIGHT_CURVE_SMALL) | (1uLL << WIDX_RIGHT_CURVE_VERY_SMALL)
| (1ULL << WIDX_SPECIAL_TRACK_DROPDOWN) | (1ULL << WIDX_SLOPE_DOWN_STEEP) | (1ULL << WIDX_SLOPE_DOWN) | (1uLL << WIDX_SPECIAL_TRACK_DROPDOWN) | (1uLL << WIDX_SLOPE_DOWN_STEEP) | (1uLL << WIDX_SLOPE_DOWN)
| (1ULL << WIDX_LEVEL) | (1ULL << WIDX_SLOPE_UP) | (1ULL << WIDX_SLOPE_UP_STEEP) | (1ULL << WIDX_CHAIN_LIFT) | (1uLL << WIDX_LEVEL) | (1uLL << WIDX_SLOPE_UP) | (1uLL << WIDX_SLOPE_UP_STEEP) | (1uLL << WIDX_CHAIN_LIFT)
| (1ULL << WIDX_BANK_LEFT) | (1ULL << WIDX_BANK_STRAIGHT) | (1ULL << WIDX_BANK_RIGHT) | (1uLL << WIDX_BANK_LEFT) | (1uLL << WIDX_BANK_STRAIGHT) | (1uLL << WIDX_BANK_RIGHT)
| (1ULL << WIDX_LEFT_CURVE_LARGE) | (1ULL << WIDX_RIGHT_CURVE_LARGE); | (1uLL << WIDX_LEFT_CURVE_LARGE) | (1uLL << WIDX_RIGHT_CURVE_LARGE);
} }
if (_currentlyShowingBrakeOrBoosterSpeed) if (_currentlyShowingBrakeOrBoosterSpeed)
{ {
disabledWidgets &= ~(1ULL << WIDX_BANKING_GROUPBOX); disabledWidgets &= ~(1uLL << WIDX_BANKING_GROUPBOX);
disabledWidgets &= ~(1ULL << WIDX_BANK_LEFT); disabledWidgets &= ~(1uLL << WIDX_BANK_LEFT);
disabledWidgets &= ~(1ULL << WIDX_BANK_STRAIGHT); disabledWidgets &= ~(1uLL << WIDX_BANK_STRAIGHT);
disabledWidgets &= ~(1ULL << WIDX_BANK_RIGHT); disabledWidgets &= ~(1uLL << WIDX_BANK_RIGHT);
} }
// If chain lift cheat is enabled then show the chain lift widget no matter what // If chain lift cheat is enabled then show the chain lift widget no matter what
if (gCheatsEnableChainLiftOnAllTrack) if (gCheatsEnableChainLiftOnAllTrack)
{ {
disabledWidgets &= ~(1ULL << WIDX_CHAIN_LIFT); disabledWidgets &= ~(1uLL << WIDX_CHAIN_LIFT);
} }
// Set and invalidate the changed widgets // Set and invalidate the changed widgets
@ -856,7 +856,7 @@ public:
for (WidgetIndex i = 0; i < 64; i++) for (WidgetIndex i = 0; i < 64; i++)
{ {
if ((disabledWidgets & (1ULL << i)) != (currentDisabledWidgets & (1ULL << i))) if ((disabledWidgets & (1uLL << i)) != (currentDisabledWidgets & (1uLL << i)))
{ {
widget_invalidate(*this, i); widget_invalidate(*this, i);
} }
@ -1473,11 +1473,11 @@ public:
simulateWidget.type = WindowWidgetType::FlatBtn; simulateWidget.type = WindowWidgetType::FlatBtn;
if (currentRide->status == RideStatus::Simulating) if (currentRide->status == RideStatus::Simulating)
{ {
pressed_widgets |= (1ULL << WIDX_SIMULATE); pressed_widgets |= (1uLL << WIDX_SIMULATE);
} }
else else
{ {
pressed_widgets &= ~(1ULL << WIDX_SIMULATE); pressed_widgets &= ~(1uLL << WIDX_SIMULATE);
} }
} }
@ -1889,7 +1889,7 @@ public:
widgets[WIDX_BANK_RIGHT].right = 83; widgets[WIDX_BANK_RIGHT].right = 83;
widgets[WIDX_BANK_RIGHT].top = 139; widgets[WIDX_BANK_RIGHT].top = 139;
widgets[WIDX_BANK_RIGHT].bottom = 148; widgets[WIDX_BANK_RIGHT].bottom = 148;
hold_down_widgets |= (1ULL << WIDX_BANK_STRAIGHT) | (1ULL << WIDX_BANK_RIGHT); hold_down_widgets |= (1uLL << WIDX_BANK_STRAIGHT) | (1uLL << WIDX_BANK_RIGHT);
} }
widgets[WIDX_BANKING_GROUPBOX].right = 162; widgets[WIDX_BANKING_GROUPBOX].right = 162;
@ -1918,10 +1918,10 @@ public:
} }
uint64_t pressedWidgets = pressed_widgets uint64_t pressedWidgets = pressed_widgets
& ((1ULL << WIDX_BACKGROUND) | (1ULL << WIDX_TITLE) | (1ULL << WIDX_CLOSE) | (1ULL << WIDX_DIRECTION_GROUPBOX) & ((1uLL << WIDX_BACKGROUND) | (1uLL << WIDX_TITLE) | (1uLL << WIDX_CLOSE) | (1uLL << WIDX_DIRECTION_GROUPBOX)
| (1ULL << WIDX_SLOPE_GROUPBOX) | (1ULL << WIDX_BANKING_GROUPBOX) | (1ULL << WIDX_CONSTRUCT) | (1uLL << WIDX_SLOPE_GROUPBOX) | (1uLL << WIDX_BANKING_GROUPBOX) | (1uLL << WIDX_CONSTRUCT)
| (1ULL << WIDX_DEMOLISH) | (1ULL << WIDX_PREVIOUS_SECTION) | (1ULL << WIDX_NEXT_SECTION) | (1uLL << WIDX_DEMOLISH) | (1uLL << WIDX_PREVIOUS_SECTION) | (1uLL << WIDX_NEXT_SECTION)
| (1ULL << WIDX_ENTRANCE_EXIT_GROUPBOX) | (1ULL << WIDX_ENTRANCE) | (1ULL << WIDX_EXIT)); | (1uLL << WIDX_ENTRANCE_EXIT_GROUPBOX) | (1uLL << WIDX_ENTRANCE) | (1uLL << WIDX_EXIT));
widgets[WIDX_CONSTRUCT].type = WindowWidgetType::Empty; widgets[WIDX_CONSTRUCT].type = WindowWidgetType::Empty;
widgets[WIDX_DEMOLISH].type = WindowWidgetType::FlatBtn; widgets[WIDX_DEMOLISH].type = WindowWidgetType::FlatBtn;
@ -1999,7 +1999,7 @@ public:
widgetIndex = WIDX_SPECIAL_TRACK_DROPDOWN; widgetIndex = WIDX_SPECIAL_TRACK_DROPDOWN;
break; break;
} }
pressedWidgets |= (1ULL << widgetIndex); pressedWidgets |= (1uLL << widgetIndex);
switch (_currentTrackSlopeEnd) switch (_currentTrackSlopeEnd)
{ {
@ -2021,7 +2021,7 @@ public:
widgetIndex = WIDX_LEVEL; widgetIndex = WIDX_LEVEL;
break; break;
} }
pressedWidgets |= (1ULL << widgetIndex); pressedWidgets |= (1uLL << widgetIndex);
if (!_currentlyShowingBrakeOrBoosterSpeed) if (!_currentlyShowingBrakeOrBoosterSpeed)
{ {
@ -2029,11 +2029,11 @@ public:
{ {
if (_currentTrackAlternative & RIDE_TYPE_ALTERNATIVE_TRACK_PIECES) if (_currentTrackAlternative & RIDE_TYPE_ALTERNATIVE_TRACK_PIECES)
{ {
pressed_widgets |= (1ULL << WIDX_O_TRACK); pressed_widgets |= (1uLL << WIDX_O_TRACK);
} }
else else
{ {
pressed_widgets |= (1ULL << WIDX_U_TRACK); pressed_widgets |= (1uLL << WIDX_U_TRACK);
} }
} }
switch (_currentTrackBankEnd) switch (_currentTrackBankEnd)
@ -2048,11 +2048,11 @@ public:
widgetIndex = WIDX_BANK_RIGHT; widgetIndex = WIDX_BANK_RIGHT;
break; break;
} }
pressedWidgets |= (1ULL << widgetIndex); pressedWidgets |= (1uLL << widgetIndex);
} }
if (_currentTrackLiftHill & CONSTRUCTION_LIFT_HILL_SELECTED) if (_currentTrackLiftHill & CONSTRUCTION_LIFT_HILL_SELECTED)
pressedWidgets |= (1ULL << WIDX_CHAIN_LIFT); pressedWidgets |= (1uLL << WIDX_CHAIN_LIFT);
pressed_widgets = pressedWidgets; pressed_widgets = pressedWidgets;
Invalidate(); Invalidate();
@ -2120,12 +2120,12 @@ public:
continue; continue;
_currentPossibleRideConfigurations[currentPossibleRideConfigurationIndex] = trackType; _currentPossibleRideConfigurations[currentPossibleRideConfigurationIndex] = trackType;
_currentDisabledSpecialTrackPieces |= (1ULL << currentPossibleRideConfigurationIndex); _currentDisabledSpecialTrackPieces |= (1uLL << currentPossibleRideConfigurationIndex);
if (_currentTrackPieceDirection < 4 && slope == _previousTrackSlopeEnd && bank == _previousTrackBankEnd if (_currentTrackPieceDirection < 4 && slope == _previousTrackSlopeEnd && bank == _previousTrackBankEnd
&& (trackType != TrackElemType::TowerBase && (trackType != TrackElemType::TowerBase
|| currentRide->GetRideTypeDescriptor().HasFlag(RIDE_TYPE_FLAG_ALLOW_EXTRA_TOWER_BASES))) || currentRide->GetRideTypeDescriptor().HasFlag(RIDE_TYPE_FLAG_ALLOW_EXTRA_TOWER_BASES)))
{ {
_currentDisabledSpecialTrackPieces &= ~(1ULL << currentPossibleRideConfigurationIndex); _currentDisabledSpecialTrackPieces &= ~(1uLL << currentPossibleRideConfigurationIndex);
_numCurrentPossibleSpecialTrackPieces++; _numCurrentPossibleSpecialTrackPieces++;
} }
currentPossibleRideConfigurationIndex++; currentPossibleRideConfigurationIndex++;
@ -2524,7 +2524,7 @@ private:
for (int32_t i = 0; i < 64; i++) for (int32_t i = 0; i < 64; i++)
{ {
if (_currentDisabledSpecialTrackPieces & (1ULL << i)) if (_currentDisabledSpecialTrackPieces & (1uLL << i))
{ {
Dropdown::SetDisabled(i, true); Dropdown::SetDisabled(i, true);
} }

View File

@ -446,9 +446,9 @@ public:
widgets[WIDX_TITLE].text = page_names[page]; widgets[WIDX_TITLE].text = page_names[page];
if (_quickDemolishMode) if (_quickDemolishMode)
pressed_widgets |= (1ULL << WIDX_QUICK_DEMOLISH); pressed_widgets |= (1uLL << WIDX_QUICK_DEMOLISH);
else else
pressed_widgets &= ~(1ULL << WIDX_QUICK_DEMOLISH); pressed_widgets &= ~(1uLL << WIDX_QUICK_DEMOLISH);
widgets[WIDX_BACKGROUND].right = width - 1; widgets[WIDX_BACKGROUND].right = width - 1;
widgets[WIDX_BACKGROUND].bottom = height - 1; widgets[WIDX_BACKGROUND].bottom = height - 1;

View File

@ -407,8 +407,8 @@ static void WindowScenarioselectScrollmouseover(rct_window* w, int32_t scrollInd
static void WindowScenarioselectInvalidate(rct_window* w) static void WindowScenarioselectInvalidate(rct_window* w)
{ {
w->pressed_widgets &= ~( w->pressed_widgets &= ~(
(1ULL << WIDX_CLOSE) | (1ULL << WIDX_TAB1) | (1ULL << WIDX_TAB2) | (1ULL << WIDX_TAB3) | (1ULL << WIDX_TAB4) (1uLL << WIDX_CLOSE) | (1uLL << WIDX_TAB1) | (1uLL << WIDX_TAB2) | (1uLL << WIDX_TAB3) | (1uLL << WIDX_TAB4)
| (1ULL << WIDX_TAB5) | (1ULL << WIDX_TAB6) | (1ULL << WIDX_TAB7) | (1ULL << WIDX_TAB8) | (1ULL << WIDX_TAB9)); | (1uLL << WIDX_TAB5) | (1uLL << WIDX_TAB6) | (1uLL << WIDX_TAB7) | (1uLL << WIDX_TAB8) | (1uLL << WIDX_TAB9));
w->pressed_widgets |= 1LL << (w->selected_tab + WIDX_TAB1); w->pressed_widgets |= 1LL << (w->selected_tab + WIDX_TAB1);

View File

@ -503,13 +503,13 @@ public:
widgets[WIDX_SCENERY_TITLE].text = titleStringId; widgets[WIDX_SCENERY_TITLE].text = titleStringId;
pressed_widgets = 0; pressed_widgets = 0;
pressed_widgets |= 1ULL << (tabIndex + WIDX_SCENERY_TAB_1); pressed_widgets |= 1uLL << (tabIndex + WIDX_SCENERY_TAB_1);
if (gWindowSceneryPaintEnabled == 1) if (gWindowSceneryPaintEnabled == 1)
pressed_widgets |= (1ULL << WIDX_SCENERY_REPAINT_SCENERY_BUTTON); pressed_widgets |= (1uLL << WIDX_SCENERY_REPAINT_SCENERY_BUTTON);
if (gWindowSceneryEyedropperEnabled) if (gWindowSceneryEyedropperEnabled)
pressed_widgets |= (1ULL << WIDX_SCENERY_EYEDROPPER_BUTTON); pressed_widgets |= (1uLL << WIDX_SCENERY_EYEDROPPER_BUTTON);
if (gWindowSceneryScatterEnabled) if (gWindowSceneryScatterEnabled)
pressed_widgets |= (1ULL << WIDX_SCENERY_BUILD_CLUSTER_BUTTON); pressed_widgets |= (1uLL << WIDX_SCENERY_BUILD_CLUSTER_BUTTON);
widgets[WIDX_SCENERY_ROTATE_OBJECTS_BUTTON].type = WindowWidgetType::Empty; widgets[WIDX_SCENERY_ROTATE_OBJECTS_BUTTON].type = WindowWidgetType::Empty;
widgets[WIDX_SCENERY_EYEDROPPER_BUTTON].type = WindowWidgetType::Empty; widgets[WIDX_SCENERY_EYEDROPPER_BUTTON].type = WindowWidgetType::Empty;

View File

@ -58,7 +58,7 @@ public:
void OnOpen() override void OnOpen() override
{ {
widgets = window_scenery_scatter_widgets; widgets = window_scenery_scatter_widgets;
hold_down_widgets = (1ULL << WIDX_INCREMENT) | (1ULL << WIDX_DECREMENT); hold_down_widgets = (1uLL << WIDX_INCREMENT) | (1uLL << WIDX_DECREMENT);
WindowInitScrollWidgets(*this); WindowInitScrollWidgets(*this);
window_push_others_below(*this); window_push_others_below(*this);
@ -154,21 +154,21 @@ public:
void OnPrepareDraw() override void OnPrepareDraw() override
{ {
// Set the preview image button to be pressed down // Set the preview image button to be pressed down
pressed_widgets = (1ULL << WIDX_PREVIEW); pressed_widgets = (1uLL << WIDX_PREVIEW);
// Set density buttons' pressed state. // Set density buttons' pressed state.
switch (gWindowSceneryScatterDensity) switch (gWindowSceneryScatterDensity)
{ {
case ScatterToolDensity::LowDensity: case ScatterToolDensity::LowDensity:
pressed_widgets |= (1ULL << WIDX_DENSITY_LOW); pressed_widgets |= (1uLL << WIDX_DENSITY_LOW);
break; break;
case ScatterToolDensity::MediumDensity: case ScatterToolDensity::MediumDensity:
pressed_widgets |= (1ULL << WIDX_DENSITY_MEDIUM); pressed_widgets |= (1uLL << WIDX_DENSITY_MEDIUM);
break; break;
case ScatterToolDensity::HighDensity: case ScatterToolDensity::HighDensity:
pressed_widgets |= (1ULL << WIDX_DENSITY_HIGH); pressed_widgets |= (1uLL << WIDX_DENSITY_HIGH);
break; break;
} }

View File

@ -442,26 +442,26 @@ static constexpr int32_t ViewportInteractionFlags = EnumsToFlags(
// clang-format off // clang-format off
static uint64_t PageHoldDownWidgets[] = { static uint64_t PageHoldDownWidgets[] = {
(1ULL << WIDX_SPINNER_X_INCREASE) | (1ULL << WIDX_SPINNER_X_DECREASE) | (1ULL << WIDX_SPINNER_Y_INCREASE) | (1ULL << WIDX_SPINNER_Y_DECREASE), (1uLL << WIDX_SPINNER_X_INCREASE) | (1uLL << WIDX_SPINNER_X_DECREASE) | (1uLL << WIDX_SPINNER_Y_INCREASE) | (1uLL << WIDX_SPINNER_Y_DECREASE),
(1ULL << WIDX_SPINNER_X_INCREASE) | (1ULL << WIDX_SPINNER_X_DECREASE) | (1ULL << WIDX_SPINNER_Y_INCREASE) | (1ULL << WIDX_SPINNER_Y_DECREASE) | (1ULL << WIDX_SURFACE_SPINNER_HEIGHT_INCREASE) | (1ULL << WIDX_SURFACE_SPINNER_HEIGHT_DECREASE), (1uLL << WIDX_SPINNER_X_INCREASE) | (1uLL << WIDX_SPINNER_X_DECREASE) | (1uLL << WIDX_SPINNER_Y_INCREASE) | (1uLL << WIDX_SPINNER_Y_DECREASE) | (1uLL << WIDX_SURFACE_SPINNER_HEIGHT_INCREASE) | (1uLL << WIDX_SURFACE_SPINNER_HEIGHT_DECREASE),
(1ULL << WIDX_SPINNER_X_INCREASE) | (1ULL << WIDX_SPINNER_X_DECREASE) | (1ULL << WIDX_SPINNER_Y_INCREASE) | (1ULL << WIDX_SPINNER_Y_DECREASE) | (1ULL << WIDX_PATH_SPINNER_HEIGHT_INCREASE) | (1ULL << WIDX_PATH_SPINNER_HEIGHT_DECREASE), (1uLL << WIDX_SPINNER_X_INCREASE) | (1uLL << WIDX_SPINNER_X_DECREASE) | (1uLL << WIDX_SPINNER_Y_INCREASE) | (1uLL << WIDX_SPINNER_Y_DECREASE) | (1uLL << WIDX_PATH_SPINNER_HEIGHT_INCREASE) | (1uLL << WIDX_PATH_SPINNER_HEIGHT_DECREASE),
(1ULL << WIDX_SPINNER_X_INCREASE) | (1ULL << WIDX_SPINNER_X_DECREASE) | (1ULL << WIDX_SPINNER_Y_INCREASE) | (1ULL << WIDX_SPINNER_Y_DECREASE) | (1ULL << WIDX_TRACK_SPINNER_HEIGHT_INCREASE) | (1ULL << WIDX_TRACK_SPINNER_HEIGHT_DECREASE), (1uLL << WIDX_SPINNER_X_INCREASE) | (1uLL << WIDX_SPINNER_X_DECREASE) | (1uLL << WIDX_SPINNER_Y_INCREASE) | (1uLL << WIDX_SPINNER_Y_DECREASE) | (1uLL << WIDX_TRACK_SPINNER_HEIGHT_INCREASE) | (1uLL << WIDX_TRACK_SPINNER_HEIGHT_DECREASE),
(1ULL << WIDX_SPINNER_X_INCREASE) | (1ULL << WIDX_SPINNER_X_DECREASE) | (1ULL << WIDX_SPINNER_Y_INCREASE) | (1ULL << WIDX_SPINNER_Y_DECREASE) | (1ULL << WIDX_SCENERY_SPINNER_HEIGHT_INCREASE) | (1ULL << WIDX_SCENERY_SPINNER_HEIGHT_DECREASE), (1uLL << WIDX_SPINNER_X_INCREASE) | (1uLL << WIDX_SPINNER_X_DECREASE) | (1uLL << WIDX_SPINNER_Y_INCREASE) | (1uLL << WIDX_SPINNER_Y_DECREASE) | (1uLL << WIDX_SCENERY_SPINNER_HEIGHT_INCREASE) | (1uLL << WIDX_SCENERY_SPINNER_HEIGHT_DECREASE),
(1ULL << WIDX_SPINNER_X_INCREASE) | (1ULL << WIDX_SPINNER_X_DECREASE) | (1ULL << WIDX_SPINNER_Y_INCREASE) | (1ULL << WIDX_SPINNER_Y_DECREASE) | (1ULL << WIDX_ENTRANCE_SPINNER_HEIGHT_INCREASE) | (1ULL << WIDX_ENTRANCE_SPINNER_HEIGHT_DECREASE), (1uLL << WIDX_SPINNER_X_INCREASE) | (1uLL << WIDX_SPINNER_X_DECREASE) | (1uLL << WIDX_SPINNER_Y_INCREASE) | (1uLL << WIDX_SPINNER_Y_DECREASE) | (1uLL << WIDX_ENTRANCE_SPINNER_HEIGHT_INCREASE) | (1uLL << WIDX_ENTRANCE_SPINNER_HEIGHT_DECREASE),
(1ULL << WIDX_SPINNER_X_INCREASE) | (1ULL << WIDX_SPINNER_X_DECREASE) | (1ULL << WIDX_SPINNER_Y_INCREASE) | (1ULL << WIDX_SPINNER_Y_DECREASE) | (1ULL << WIDX_WALL_SPINNER_HEIGHT_INCREASE) | (1ULL << WIDX_WALL_SPINNER_HEIGHT_DECREASE) | (1ULL << WIDX_WALL_SPINNER_ANIMATION_FRAME_INCREASE) | (1ULL << WIDX_WALL_SPINNER_ANIMATION_FRAME_DECREASE), (1uLL << WIDX_SPINNER_X_INCREASE) | (1uLL << WIDX_SPINNER_X_DECREASE) | (1uLL << WIDX_SPINNER_Y_INCREASE) | (1uLL << WIDX_SPINNER_Y_DECREASE) | (1uLL << WIDX_WALL_SPINNER_HEIGHT_INCREASE) | (1uLL << WIDX_WALL_SPINNER_HEIGHT_DECREASE) | (1uLL << WIDX_WALL_SPINNER_ANIMATION_FRAME_INCREASE) | (1uLL << WIDX_WALL_SPINNER_ANIMATION_FRAME_DECREASE),
(1ULL << WIDX_SPINNER_X_INCREASE) | (1ULL << WIDX_SPINNER_X_DECREASE) | (1ULL << WIDX_SPINNER_Y_INCREASE) | (1ULL << WIDX_SPINNER_Y_DECREASE) | (1ULL << WIDX_LARGE_SCENERY_SPINNER_HEIGHT_INCREASE) | (1ULL << WIDX_LARGE_SCENERY_SPINNER_HEIGHT_DECREASE), (1uLL << WIDX_SPINNER_X_INCREASE) | (1uLL << WIDX_SPINNER_X_DECREASE) | (1uLL << WIDX_SPINNER_Y_INCREASE) | (1uLL << WIDX_SPINNER_Y_DECREASE) | (1uLL << WIDX_LARGE_SCENERY_SPINNER_HEIGHT_INCREASE) | (1uLL << WIDX_LARGE_SCENERY_SPINNER_HEIGHT_DECREASE),
(1ULL << WIDX_SPINNER_X_INCREASE) | (1ULL << WIDX_SPINNER_X_DECREASE) | (1ULL << WIDX_SPINNER_Y_INCREASE) | (1ULL << WIDX_SPINNER_Y_DECREASE) | (1ULL << WIDX_BANNER_SPINNER_HEIGHT_INCREASE) | (1ULL << WIDX_BANNER_SPINNER_HEIGHT_DECREASE), (1uLL << WIDX_SPINNER_X_INCREASE) | (1uLL << WIDX_SPINNER_X_DECREASE) | (1uLL << WIDX_SPINNER_Y_INCREASE) | (1uLL << WIDX_SPINNER_Y_DECREASE) | (1uLL << WIDX_BANNER_SPINNER_HEIGHT_INCREASE) | (1uLL << WIDX_BANNER_SPINNER_HEIGHT_DECREASE),
}; };
static uint64_t PageDisabledWidgets[] = { static uint64_t PageDisabledWidgets[] = {
(1ULL << WIDX_BUTTON_MOVE_UP) | (1ULL << WIDX_BUTTON_MOVE_DOWN) | (1ULL << WIDX_BUTTON_REMOVE) | (1ULL << WIDX_BUTTON_ROTATE) | (1ULL << WIDX_BUTTON_COPY), (1uLL << WIDX_BUTTON_MOVE_UP) | (1uLL << WIDX_BUTTON_MOVE_DOWN) | (1uLL << WIDX_BUTTON_REMOVE) | (1uLL << WIDX_BUTTON_ROTATE) | (1uLL << WIDX_BUTTON_COPY),
0, 0,
0, 0,
0, 0,
0, 0,
0, 0,
0, 0,
(1ULL << WIDX_BUTTON_ROTATE), (1uLL << WIDX_BUTTON_ROTATE),
0, 0,
}; };
// clang-format on // clang-format on

View File

@ -826,14 +826,14 @@ static void WindowTopToolbarInvalidate(rct_window* w)
// Footpath button pressed down // Footpath button pressed down
if (window_find_by_class(WindowClass::Footpath) == nullptr) if (window_find_by_class(WindowClass::Footpath) == nullptr)
w->pressed_widgets &= ~(1ULL << WIDX_PATH); w->pressed_widgets &= ~(1uLL << WIDX_PATH);
else else
w->pressed_widgets |= (1ULL << WIDX_PATH); w->pressed_widgets |= (1uLL << WIDX_PATH);
if (gGamePaused & GAME_PAUSED_NORMAL) if (gGamePaused & GAME_PAUSED_NORMAL)
w->pressed_widgets |= (1ULL << WIDX_PAUSE); w->pressed_widgets |= (1uLL << WIDX_PAUSE);
else else
w->pressed_widgets &= ~(1ULL << WIDX_PAUSE); w->pressed_widgets &= ~(1uLL << WIDX_PAUSE);
if (!OpenRCT2::Audio::gGameSoundsOff) if (!OpenRCT2::Audio::gGameSoundsOff)
window_top_toolbar_widgets[WIDX_MUTE].image = IMAGE_TYPE_REMAP | SPR_G2_TOOLBAR_MUTE; window_top_toolbar_widgets[WIDX_MUTE].image = IMAGE_TYPE_REMAP | SPR_G2_TOOLBAR_MUTE;
@ -864,15 +864,15 @@ static void WindowTopToolbarInvalidate(rct_window* w)
if (mainWindow->viewport->zoom == ZoomLevel::min()) if (mainWindow->viewport->zoom == ZoomLevel::min())
{ {
w->disabled_widgets |= (1ULL << WIDX_ZOOM_IN); w->disabled_widgets |= (1uLL << WIDX_ZOOM_IN);
} }
else if (mainWindow->viewport->zoom >= ZoomLevel::max()) else if (mainWindow->viewport->zoom >= ZoomLevel::max())
{ {
w->disabled_widgets |= (1ULL << WIDX_ZOOM_OUT); w->disabled_widgets |= (1uLL << WIDX_ZOOM_OUT);
} }
else else
{ {
w->disabled_widgets &= ~((1ULL << WIDX_ZOOM_IN) | (1ULL << WIDX_ZOOM_OUT)); w->disabled_widgets &= ~((1uLL << WIDX_ZOOM_IN) | (1uLL << WIDX_ZOOM_OUT));
} }
} }

View File

@ -385,23 +385,23 @@ public:
if ((gScreenFlags & SCREEN_FLAGS_TRACK_MANAGER) || selected_list_item != 0) if ((gScreenFlags & SCREEN_FLAGS_TRACK_MANAGER) || selected_list_item != 0)
{ {
pressed_widgets |= 1ULL << WIDX_TRACK_PREVIEW; pressed_widgets |= 1uLL << WIDX_TRACK_PREVIEW;
disabled_widgets &= ~(1ULL << WIDX_TRACK_PREVIEW); disabled_widgets &= ~(1uLL << WIDX_TRACK_PREVIEW);
window_track_list_widgets[WIDX_ROTATE].type = WindowWidgetType::FlatBtn; window_track_list_widgets[WIDX_ROTATE].type = WindowWidgetType::FlatBtn;
window_track_list_widgets[WIDX_TOGGLE_SCENERY].type = WindowWidgetType::FlatBtn; window_track_list_widgets[WIDX_TOGGLE_SCENERY].type = WindowWidgetType::FlatBtn;
if (gTrackDesignSceneryToggle) if (gTrackDesignSceneryToggle)
{ {
pressed_widgets &= ~(1ULL << WIDX_TOGGLE_SCENERY); pressed_widgets &= ~(1uLL << WIDX_TOGGLE_SCENERY);
} }
else else
{ {
pressed_widgets |= (1ULL << WIDX_TOGGLE_SCENERY); pressed_widgets |= (1uLL << WIDX_TOGGLE_SCENERY);
} }
} }
else else
{ {
pressed_widgets &= ~(1ULL << WIDX_TRACK_PREVIEW); pressed_widgets &= ~(1uLL << WIDX_TRACK_PREVIEW);
disabled_widgets |= (1ULL << WIDX_TRACK_PREVIEW); disabled_widgets |= (1uLL << WIDX_TRACK_PREVIEW);
window_track_list_widgets[WIDX_ROTATE].type = WindowWidgetType::Empty; window_track_list_widgets[WIDX_ROTATE].type = WindowWidgetType::Empty;
window_track_list_widgets[WIDX_TOGGLE_SCENERY].type = WindowWidgetType::Empty; window_track_list_widgets[WIDX_TOGGLE_SCENERY].type = WindowWidgetType::Empty;
} }

View File

@ -264,11 +264,11 @@ public:
if (IsActive()) if (IsActive())
{ {
this->pressed_widgets |= 1ULL << WIDX_CLIP_SELECTOR; this->pressed_widgets |= 1uLL << WIDX_CLIP_SELECTOR;
} }
else else
{ {
this->pressed_widgets &= ~(1ULL << WIDX_CLIP_SELECTOR); this->pressed_widgets &= ~(1uLL << WIDX_CLIP_SELECTOR);
} }
} }
@ -344,7 +344,7 @@ public:
void OnOpen() override void OnOpen() override
{ {
this->widgets = window_view_clipping_widgets; this->widgets = window_view_clipping_widgets;
this->hold_down_widgets = (1ULL << WIDX_CLIP_HEIGHT_INCREASE) | (1UL << WIDX_CLIP_HEIGHT_DECREASE); this->hold_down_widgets = (1uLL << WIDX_CLIP_HEIGHT_INCREASE) | (1uL << WIDX_CLIP_HEIGHT_DECREASE);
WindowInitScrollWidgets(*this); WindowInitScrollWidgets(*this);
_clipHeightDisplayType = DisplayType::DisplayUnits; _clipHeightDisplayType = DisplayType::DisplayUnits;

View File

@ -199,9 +199,9 @@ public:
// Set disabled widgets // Set disabled widgets
disabled_widgets = 0; disabled_widgets = 0;
if (viewport != nullptr && viewport->zoom == ZoomLevel::min()) if (viewport != nullptr && viewport->zoom == ZoomLevel::min())
disabled_widgets |= 1ULL << WIDX_ZOOM_IN; disabled_widgets |= 1uLL << WIDX_ZOOM_IN;
if (viewport != nullptr && viewport->zoom >= ZoomLevel::max()) if (viewport != nullptr && viewport->zoom >= ZoomLevel::max())
disabled_widgets |= 1ULL << WIDX_ZOOM_OUT; disabled_widgets |= 1uLL << WIDX_ZOOM_OUT;
if (viewport != nullptr) if (viewport != nullptr)
{ {

View File

@ -46,7 +46,7 @@ public:
void OnOpen() override void OnOpen() override
{ {
widgets = window_water_widgets; widgets = window_water_widgets;
hold_down_widgets = (1ULL << WIDX_INCREMENT) | (1ULL << WIDX_DECREMENT); hold_down_widgets = (1uLL << WIDX_INCREMENT) | (1uLL << WIDX_DECREMENT);
WindowInitScrollWidgets(*this); WindowInitScrollWidgets(*this);
window_push_others_below(*this); window_push_others_below(*this);

View File

@ -116,7 +116,7 @@ enum : uint32_t
GAME_COMMAND_FLAG_NO_SPEND = (1 << 5), // Game command is not networked GAME_COMMAND_FLAG_NO_SPEND = (1 << 5), // Game command is not networked
GAME_COMMAND_FLAG_GHOST = (1 << 6), // Game command is not networked GAME_COMMAND_FLAG_GHOST = (1 << 6), // Game command is not networked
GAME_COMMAND_FLAG_TRACK_DESIGN = (1 << 7), GAME_COMMAND_FLAG_TRACK_DESIGN = (1 << 7),
GAME_COMMAND_FLAG_NETWORKED = (1U << 31) // Game command is coming from network GAME_COMMAND_FLAG_NETWORKED = (1u << 31) // Game command is coming from network
}; };
enum enum

View File

@ -242,7 +242,7 @@ GameActions::Result RideSetSettingAction::Execute() const
bool RideSetSettingAction::ride_is_mode_valid(Ride* ride) const bool RideSetSettingAction::ride_is_mode_valid(Ride* ride) const
{ {
return ride->GetRideTypeDescriptor().RideModes & (1ULL << _value); return ride->GetRideTypeDescriptor().RideModes & (1uLL << _value);
} }
bool RideSetSettingAction::ride_is_valid_lift_hill_speed(Ride* ride) const bool RideSetSettingAction::ride_is_valid_lift_hill_speed(Ride* ride) const

View File

@ -27,7 +27,7 @@ namespace OpenRCT2
template<size_t TNumBits> static constexpr size_t ByteAlignBits() template<size_t TNumBits> static constexpr size_t ByteAlignBits()
{ {
const auto reminder = TNumBits % BitsPerByte; const auto reminder = TNumBits % BitsPerByte;
if constexpr (reminder == 0U) if constexpr (reminder == 0u)
{ {
return TNumBits; return TNumBits;
} }
@ -57,10 +57,10 @@ namespace OpenRCT2
else else
{ {
const auto numBytes = numBits / BitsPerByte; const auto numBytes = numBits / BitsPerByte;
auto mask = 1U; auto mask = 1u;
while (mask < numBytes) while (mask < numBytes)
{ {
mask <<= 1U; mask <<= 1u;
} }
return mask; return mask;
} }
@ -93,11 +93,11 @@ namespace OpenRCT2
{ {
size_t res = 0; size_t res = 0;
auto x = static_cast<std::make_unsigned_t<T>>(val); auto x = static_cast<std::make_unsigned_t<T>>(val);
while (x > 0U) while (x > 0u)
{ {
if (x & 1U) if (x & 1u)
res++; res++;
x >>= 1U; x >>= 1u;
} }
return res; return res;
} }
@ -142,8 +142,8 @@ namespace OpenRCT2
static constexpr size_t BlockCount = Detail::BitSet::ComputeBlockCount<ByteAlignedBitSize, BlockByteSize>(); static constexpr size_t BlockCount = Detail::BitSet::ComputeBlockCount<ByteAlignedBitSize, BlockByteSize>();
static constexpr size_t CapacityBits = BlockCount * BlockBitSize; static constexpr size_t CapacityBits = BlockCount * BlockBitSize;
static constexpr StorageBlockType BlockValueZero = StorageBlockType{ 0U }; static constexpr StorageBlockType BlockValueZero = StorageBlockType{ 0u };
static constexpr StorageBlockType BlockValueOne = StorageBlockType{ 1U }; static constexpr StorageBlockType BlockValueOne = StorageBlockType{ 1u };
static constexpr StorageBlockType BlockValueMask = static_cast<StorageBlockType>(~BlockValueZero); static constexpr StorageBlockType BlockValueMask = static_cast<StorageBlockType>(~BlockValueZero);
static constexpr bool RequiresTrim = TBitSize != CapacityBits; static constexpr bool RequiresTrim = TBitSize != CapacityBits;

View File

@ -254,8 +254,8 @@ private:
else else
{ {
result.Type = DIRECTORY_CHILD_TYPE::DC_FILE; result.Type = DIRECTORY_CHILD_TYPE::DC_FILE;
result.Size = (static_cast<uint64_t>(child->nFileSizeHigh) << 32ULL) | static_cast<uint64_t>(child->nFileSizeLow); result.Size = (static_cast<uint64_t>(child->nFileSizeHigh) << 32uLL) | static_cast<uint64_t>(child->nFileSizeLow);
result.LastModified = (static_cast<uint64_t>(child->ftLastWriteTime.dwHighDateTime) << 32ULL) result.LastModified = (static_cast<uint64_t>(child->ftLastWriteTime.dwHighDateTime) << 32uLL)
| static_cast<uint64_t>(child->ftLastWriteTime.dwLowDateTime); | static_cast<uint64_t>(child->ftLastWriteTime.dwLowDateTime);
} }
return result; return result;

View File

@ -37,7 +37,7 @@ enum : uint32_t
TEXT_DRAW_FLAG_NO_FORMATTING = 1 << 28, TEXT_DRAW_FLAG_NO_FORMATTING = 1 << 28,
TEXT_DRAW_FLAG_Y_OFFSET_EFFECT = 1 << 29, TEXT_DRAW_FLAG_Y_OFFSET_EFFECT = 1 << 29,
TEXT_DRAW_FLAG_TTF = 1 << 30, TEXT_DRAW_FLAG_TTF = 1 << 30,
TEXT_DRAW_FLAG_NO_DRAW = 1U << 31 TEXT_DRAW_FLAG_NO_DRAW = 1u << 31
}; };
static int32_t ttf_get_string_width(std::string_view text, FontStyle fontStyle, bool noFormatting); static int32_t ttf_get_string_width(std::string_view text, FontStyle fontStyle, bool noFormatting);

View File

@ -159,7 +159,7 @@ enum : uint32_t
IMAGE_TYPE_DEFAULT = 0, IMAGE_TYPE_DEFAULT = 0,
IMAGE_TYPE_REMAP = (1 << 29), IMAGE_TYPE_REMAP = (1 << 29),
IMAGE_TYPE_TRANSPARENT = (1 << 30), IMAGE_TYPE_TRANSPARENT = (1 << 30),
IMAGE_TYPE_REMAP_2_PLUS = (1U << 31) IMAGE_TYPE_REMAP_2_PLUS = (1u << 31)
// REMAP_2_PLUS + REMAP = REMAP 2 // REMAP_2_PLUS + REMAP = REMAP 2
// REMAP_2_PLUS = REMAP 3 // REMAP_2_PLUS = REMAP 3
}; };

View File

@ -1022,7 +1022,7 @@ void Guest::Tick128UpdateGuest(int32_t index)
} }
} }
if ((scenario_rand() & 0xFFFF) <= ((HasItem(ShopItem::Map)) ? 8192U : 2184U)) if ((scenario_rand() & 0xFFFF) <= ((HasItem(ShopItem::Map)) ? 8192u : 2184u))
{ {
PickRideToGoOn(); PickRideToGoOn();
} }
@ -2839,7 +2839,7 @@ static void peep_update_ride_nausea_growth(Guest* peep, Ride* ride)
uint32_t nauseaGrowthRateChange = (ride->nausea * nauseaMultiplier) / 512; uint32_t nauseaGrowthRateChange = (ride->nausea * nauseaMultiplier) / 512;
nauseaGrowthRateChange *= std::max(static_cast<uint8_t>(128), peep->Hunger) / 64; nauseaGrowthRateChange *= std::max(static_cast<uint8_t>(128), peep->Hunger) / 64;
nauseaGrowthRateChange >>= (EnumValue(peep->NauseaTolerance) & 3); nauseaGrowthRateChange >>= (EnumValue(peep->NauseaTolerance) & 3);
peep->NauseaTarget = static_cast<uint8_t>(std::min(peep->NauseaTarget + nauseaGrowthRateChange, 255U)); peep->NauseaTarget = static_cast<uint8_t>(std::min(peep->NauseaTarget + nauseaGrowthRateChange, 255u));
} }
static bool peep_should_go_on_ride_again(Guest* peep, Ride* ride) static bool peep_should_go_on_ride_again(Guest* peep, Ride* ride)
@ -5795,7 +5795,7 @@ void Guest::UpdateUsingBin()
for (uint8_t curContainer = 0; curContainer < 64; curContainer++) for (uint8_t curContainer = 0; curContainer < 64; curContainer++)
{ {
if (!(emptyContainers & (1ULL << curContainer))) if (!(emptyContainers & (1uLL << curContainer)))
continue; continue;
auto item = ShopItem(curContainer); auto item = ShopItem(curContainer);

View File

@ -228,7 +228,7 @@ enum PeepFlags : uint32_t
PEEP_FLAGS_INTAMIN_DEPRECATED = (1 << 27), // Used to make the peep think "I'm so excited - It's an Intamin ride!" while PEEP_FLAGS_INTAMIN_DEPRECATED = (1 << 27), // Used to make the peep think "I'm so excited - It's an Intamin ride!" while
// riding on a Intamin ride. // riding on a Intamin ride.
PEEP_FLAGS_HERE_WE_ARE = (1 << 28), // Makes the peep think "...and here we are on X!" while riding a ride PEEP_FLAGS_HERE_WE_ARE = (1 << 28), // Makes the peep think "...and here we are on X!" while riding a ride
PEEP_FLAGS_TWITCH_DEPRECATED = (1U << 31), // Formerly used for twitch integration PEEP_FLAGS_TWITCH_DEPRECATED = (1u << 31), // Formerly used for twitch integration
}; };
enum PeepNextFlags enum PeepNextFlags

View File

@ -154,7 +154,7 @@ bool Staff::CanIgnoreWideFlag(const CoordsXYZ& staffPos, TileElement* path) cons
total++; total++;
/* Check if path has an edge in adjac_dir */ /* Check if path has an edge in adjac_dir */
if (!(path->AsPath()->GetEdges() & (1U << adjac_dir))) if (!(path->AsPath()->GetEdges() & (1u << adjac_dir)))
{ {
continue; continue;
} }

View File

@ -41,7 +41,7 @@ enum class WindowWidgetType : uint8_t
}; };
constexpr const auto WIDGETS_END = rct_widget{ WindowWidgetType::Last, 0, 0, 0, 0, 0, 0, 0 }; constexpr const auto WIDGETS_END = rct_widget{ WindowWidgetType::Last, 0, 0, 0, 0, 0, 0, 0 };
#define BAR_BLINK (1U << 31) #define BAR_BLINK (1u << 31)
enum enum
{ {

View File

@ -33,7 +33,7 @@ namespace OpenRCT2
uint32_t _capacity; uint32_t _capacity;
TTraits _traits; TTraits _traits;
static constexpr uint32_t FlagLocalStorage = (1U << 31); static constexpr uint32_t FlagLocalStorage = (1u << 31);
public: public:
explicit FormatBufferBase() explicit FormatBufferBase()

View File

@ -385,7 +385,7 @@ static bool award_is_deserved_best_toilets([[maybe_unused]] int32_t activeAwardT
return false; return false;
// At least one open toilet for every 128 guests // At least one open toilet for every 128 guests
if (numToilets < gNumGuestsInPark / 128U) if (numToilets < gNumGuestsInPark / 128u)
return false; return false;
// Count number of guests who are thinking they need the toilet // Count number of guests who are thinking they need the toilet
@ -630,7 +630,7 @@ void award_update_all()
if (award_is_deserved(awardType, activeAwardTypes)) if (award_is_deserved(awardType, activeAwardTypes))
{ {
// Add award // Add award
_currentAwards.push_back(Award{ 5U, awardType }); _currentAwards.push_back(Award{ 5u, awardType });
if (gConfigNotifications.ParkAward) if (gConfigNotifications.ParkAward)
{ {
News::AddItemToQueue(News::ItemType::Award, AwardNewsStrings[EnumValue(awardType)], 0, {}); News::AddItemToQueue(News::ItemType::Award, AwardNewsStrings[EnumValue(awardType)], 0, {});

View File

@ -567,7 +567,7 @@ private:
auto fileName = GetFileNameForNewObject(generation, name); auto fileName = GetFileNameForNewObject(generation, name);
auto extension = (generation == ObjectGeneration::DAT ? u8".DAT" : u8".parkobj"); auto extension = (generation == ObjectGeneration::DAT ? u8".DAT" : u8".parkobj");
auto fullPath = Path::Combine(userObjPath, fileName + extension); auto fullPath = Path::Combine(userObjPath, fileName + extension);
auto counter = 1U; auto counter = 1u;
while (File::Exists(fullPath)) while (File::Exists(fullPath))
{ {
counter++; counter++;

View File

@ -48,7 +48,7 @@ void WallObject::ReadLegacy(IReadObjectContext* context, OpenRCT2::IStream* stre
if (identifier == "XXWLBR03") if (identifier == "XXWLBR03")
{ {
_legacyType.flags2 &= ~WALL_SCENERY_2_DOOR_SOUND_MASK; _legacyType.flags2 &= ~WALL_SCENERY_2_DOOR_SOUND_MASK;
_legacyType.flags2 |= (1U << WALL_SCENERY_2_DOOR_SOUND_SHIFT) & WALL_SCENERY_2_DOOR_SOUND_MASK; _legacyType.flags2 |= (1u << WALL_SCENERY_2_DOOR_SOUND_SHIFT) & WALL_SCENERY_2_DOOR_SOUND_MASK;
} }
} }

View File

@ -311,9 +311,9 @@ template<> bool CheckBoundingBox<3>(const PaintStructBoundBox& initialBBox, cons
namespace PaintSortFlags namespace PaintSortFlags
{ {
static constexpr uint8_t None = 0; static constexpr uint8_t None = 0;
static constexpr uint8_t PendingVisit = (1U << 0); static constexpr uint8_t PendingVisit = (1u << 0);
static constexpr uint8_t Neighbour = (1U << 1); static constexpr uint8_t Neighbour = (1u << 1);
static constexpr uint8_t OutsideQuadrant = (1U << 7); static constexpr uint8_t OutsideQuadrant = (1u << 7);
} // namespace PaintSortFlags } // namespace PaintSortFlags
template<uint8_t TRotation> template<uint8_t TRotation>

View File

@ -73,8 +73,8 @@ enum
namespace PaintSessionFlags namespace PaintSessionFlags
{ {
constexpr uint8_t PassedSurface = 1U << 0; constexpr uint8_t PassedSurface = 1u << 0;
constexpr uint8_t IsTrackPiecePreview = 1U << 1; constexpr uint8_t IsTrackPiecePreview = 1u << 1;
} // namespace PaintSessionFlags } // namespace PaintSessionFlags
extern const int32_t SEGMENTS_ALL; extern const int32_t SEGMENTS_ALL;

View File

@ -2277,7 +2277,7 @@ enum : uint32_t
{ {
S6_SAVE_FLAG_EXPORT = 1 << 0, S6_SAVE_FLAG_EXPORT = 1 << 0,
S6_SAVE_FLAG_SCENARIO = 1 << 1, S6_SAVE_FLAG_SCENARIO = 1 << 1,
S6_SAVE_FLAG_AUTOMATIC = 1U << 31, S6_SAVE_FLAG_AUTOMATIC = 1u << 31,
}; };
int32_t scenario_save(u8string_view path, int32_t flags) int32_t scenario_save(u8string_view path, int32_t flags)

View File

@ -417,7 +417,7 @@ namespace Platform
// Epoch starts from: 1970-01-01T00:00:00Z // Epoch starts from: 1970-01-01T00:00:00Z
// Convert to ticks from 0001-01-01T00:00:00Z // Convert to ticks from 0001-01-01T00:00:00Z
uint64_t utcEpochTicks = static_cast<uint64_t>(tv.tv_sec) * 10000000ULL + tv.tv_usec * 10; uint64_t utcEpochTicks = static_cast<uint64_t>(tv.tv_sec) * 10000000uLL + tv.tv_usec * 10;
datetime64 utcNow = epochAsTicks + utcEpochTicks; datetime64 utcNow = epochAsTicks + utcEpochTicks;
return utcNow; return utcNow;
} }

View File

@ -524,7 +524,7 @@ namespace Platform
FILETIME ftCreate, ftAccess, ftWrite; FILETIME ftCreate, ftAccess, ftWrite;
if (GetFileTime(hFile, &ftCreate, &ftAccess, &ftWrite)) if (GetFileTime(hFile, &ftCreate, &ftAccess, &ftWrite))
{ {
lastModified = (static_cast<uint64_t>(ftWrite.dwHighDateTime) << 32ULL) lastModified = (static_cast<uint64_t>(ftWrite.dwHighDateTime) << 32uLL)
| static_cast<uint64_t>(ftWrite.dwLowDateTime); | static_cast<uint64_t>(ftWrite.dwLowDateTime);
} }
CloseHandle(hFile); CloseHandle(hFile);
@ -838,7 +838,7 @@ namespace Platform
ULARGE_INTEGER ull{}; ULARGE_INTEGER ull{};
ull.LowPart = localFileTime.dwLowDateTime; ull.LowPart = localFileTime.dwLowDateTime;
ull.HighPart = localFileTime.dwHighDateTime; ull.HighPart = localFileTime.dwHighDateTime;
return ull.QuadPart / 10000000ULL - 11644473600ULL; return ull.QuadPart / 10000000uLL - 11644473600uLL;
} }
} }
return 0; return 0;
@ -849,12 +849,12 @@ namespace Platform
// Get file time // Get file time
FILETIME fileTime; FILETIME fileTime;
GetSystemTimeAsFileTime(&fileTime); GetSystemTimeAsFileTime(&fileTime);
uint64_t fileTime64 = (static_cast<uint64_t>(fileTime.dwHighDateTime) << 32ULL) uint64_t fileTime64 = (static_cast<uint64_t>(fileTime.dwHighDateTime) << 32uLL)
| (static_cast<uint64_t>(fileTime.dwLowDateTime)); | (static_cast<uint64_t>(fileTime.dwLowDateTime));
// File time starts from: 1601-01-01T00:00:00Z // File time starts from: 1601-01-01T00:00:00Z
// Convert to start from: 0001-01-01T00:00:00Z // Convert to start from: 0001-01-01T00:00:00Z
datetime64 utcNow = fileTime64 - 504911232000000000ULL; datetime64 utcNow = fileTime64 - 504911232000000000uLL;
return utcNow; return utcNow;
} }

View File

@ -136,7 +136,7 @@ size_t RideManager::size() const
RideManager::Iterator RideManager::begin() RideManager::Iterator RideManager::begin()
{ {
const auto endIndex = static_cast<RideId::UnderlyingType>(_rides.size()); const auto endIndex = static_cast<RideId::UnderlyingType>(_rides.size());
return RideManager::Iterator(*this, 0U, endIndex); return RideManager::Iterator(*this, 0u, endIndex);
} }
RideManager::Iterator RideManager::end() RideManager::Iterator RideManager::end()

View File

@ -271,73 +271,73 @@ enum
enum ride_type_flags : uint64_t enum ride_type_flags : uint64_t
{ {
RIDE_TYPE_FLAG_HAS_TRACK_COLOUR_MAIN = (1ULL << 0), RIDE_TYPE_FLAG_HAS_TRACK_COLOUR_MAIN = (1uLL << 0),
RIDE_TYPE_FLAG_HAS_TRACK_COLOUR_ADDITIONAL = (1ULL << 1), RIDE_TYPE_FLAG_HAS_TRACK_COLOUR_ADDITIONAL = (1uLL << 1),
RIDE_TYPE_FLAG_HAS_TRACK_COLOUR_SUPPORTS = (1ULL << 2), RIDE_TYPE_FLAG_HAS_TRACK_COLOUR_SUPPORTS = (1uLL << 2),
RIDE_TYPE_FLAG_HAS_SINGLE_PIECE_STATION = (1ULL << 3), // Set by flat rides, tower rides and shops/stalls. RIDE_TYPE_FLAG_HAS_SINGLE_PIECE_STATION = (1uLL << 3), // Set by flat rides, tower rides and shops/stalls.
RIDE_TYPE_FLAG_HAS_LEAVE_WHEN_ANOTHER_VEHICLE_ARRIVES_AT_STATION = (1ULL << 4), RIDE_TYPE_FLAG_HAS_LEAVE_WHEN_ANOTHER_VEHICLE_ARRIVES_AT_STATION = (1uLL << 4),
RIDE_TYPE_FLAG_CAN_SYNCHRONISE_ADJACENT_STATIONS = (1ULL << 5), RIDE_TYPE_FLAG_CAN_SYNCHRONISE_ADJACENT_STATIONS = (1uLL << 5),
RIDE_TYPE_FLAG_TRACK_MUST_BE_ON_WATER = (1ULL << 6), // used only by boat Hire and submarine ride RIDE_TYPE_FLAG_TRACK_MUST_BE_ON_WATER = (1uLL << 6), // used only by boat Hire and submarine ride
RIDE_TYPE_FLAG_HAS_G_FORCES = (1ULL << 7), RIDE_TYPE_FLAG_HAS_G_FORCES = (1uLL << 7),
RIDE_TYPE_FLAG_CANNOT_HAVE_GAPS = (1ULL << 8), // used by rides that can't have gaps, like those with a vertical tower, such RIDE_TYPE_FLAG_CANNOT_HAVE_GAPS = (1uLL << 8), // used by rides that can't have gaps, like those with a vertical tower, such
// as the observation tower // as the observation tower
RIDE_TYPE_FLAG_HAS_DATA_LOGGING = (1ULL << 9), RIDE_TYPE_FLAG_HAS_DATA_LOGGING = (1uLL << 9),
RIDE_TYPE_FLAG_HAS_DROPS = (1ULL << 10), RIDE_TYPE_FLAG_HAS_DROPS = (1uLL << 10),
RIDE_TYPE_FLAG_NO_TEST_MODE = (1ULL << 11), RIDE_TYPE_FLAG_NO_TEST_MODE = (1uLL << 11),
RIDE_TYPE_FLAG_TRACK_ELEMENTS_HAVE_TWO_VARIETIES = (1ULL << 12), // used by rides with two varieties, like the u and o RIDE_TYPE_FLAG_TRACK_ELEMENTS_HAVE_TWO_VARIETIES = (1uLL << 12), // used by rides with two varieties, like the u and o
// shapes of the dinghy slide and the dry and submerged // shapes of the dinghy slide and the dry and submerged
// track of the water coaster // track of the water coaster
RIDE_TYPE_FLAG_NO_VEHICLES = (1ULL << 13), // used only by maze, spiral slide and shops RIDE_TYPE_FLAG_NO_VEHICLES = (1uLL << 13), // used only by maze, spiral slide and shops
RIDE_TYPE_FLAG_HAS_LOAD_OPTIONS = (1ULL << 14), RIDE_TYPE_FLAG_HAS_LOAD_OPTIONS = (1uLL << 14),
RIDE_TYPE_FLAG_HAS_NO_TRACK = (1ULL << 15), RIDE_TYPE_FLAG_HAS_NO_TRACK = (1uLL << 15),
RIDE_TYPE_FLAG_VEHICLE_IS_INTEGRAL = (1ULL << 16), // Set by flat rides where the vehicle is integral to the structure, like RIDE_TYPE_FLAG_VEHICLE_IS_INTEGRAL = (1uLL << 16), // Set by flat rides where the vehicle is integral to the structure, like
// Merry-go-round and swinging ships. (Contrast with rides like dodgems.) // Merry-go-round and swinging ships. (Contrast with rides like dodgems.)
RIDE_TYPE_FLAG_IS_SHOP_OR_FACILITY = (1ULL << 17), RIDE_TYPE_FLAG_IS_SHOP_OR_FACILITY = (1uLL << 17),
RIDE_TYPE_FLAG_TRACK_NO_WALLS = (1ULL << 18), // if set, wall scenery can not share a tile with the ride's track RIDE_TYPE_FLAG_TRACK_NO_WALLS = (1uLL << 18), // if set, wall scenery can not share a tile with the ride's track
RIDE_TYPE_FLAG_FLAT_RIDE = (1ULL << 19), RIDE_TYPE_FLAG_FLAT_RIDE = (1uLL << 19),
RIDE_TYPE_FLAG_PEEP_WILL_RIDE_AGAIN = (1ULL << 20), // whether or not guests will go on the ride again if they liked it RIDE_TYPE_FLAG_PEEP_WILL_RIDE_AGAIN = (1uLL << 20), // whether or not guests will go on the ride again if they liked it
// (this is // (this is
// usually applied to everything apart from transport rides) // usually applied to everything apart from transport rides)
RIDE_TYPE_FLAG_PEEP_SHOULD_GO_INSIDE_FACILITY = (1ULL << 21), // used by toilets and first aid to mark that peep should go RIDE_TYPE_FLAG_PEEP_SHOULD_GO_INSIDE_FACILITY = (1uLL << 21), // used by toilets and first aid to mark that peep should go
// inside the building (rather than 'buying' at the counter) // inside the building (rather than 'buying' at the counter)
RIDE_TYPE_FLAG_IN_RIDE = (1ULL << 22), // peeps are "IN" (ride) rather than "ON" (ride) RIDE_TYPE_FLAG_IN_RIDE = (1uLL << 22), // peeps are "IN" (ride) rather than "ON" (ride)
RIDE_TYPE_FLAG_SELLS_FOOD = (1ULL << 23), RIDE_TYPE_FLAG_SELLS_FOOD = (1uLL << 23),
RIDE_TYPE_FLAG_SELLS_DRINKS = (1ULL << 24), RIDE_TYPE_FLAG_SELLS_DRINKS = (1uLL << 24),
RIDE_TYPE_FLAG_IS_TOILET = (1ULL << 25), RIDE_TYPE_FLAG_IS_TOILET = (1uLL << 25),
RIDE_TYPE_FLAG_HAS_VEHICLE_COLOURS = (1ULL << 26), // whether or not vehicle colours can be set RIDE_TYPE_FLAG_HAS_VEHICLE_COLOURS = (1uLL << 26), // whether or not vehicle colours can be set
RIDE_TYPE_FLAG_CHECK_FOR_STALLING = (1ULL << 27), RIDE_TYPE_FLAG_CHECK_FOR_STALLING = (1uLL << 27),
RIDE_TYPE_FLAG_HAS_TRACK = (1ULL << 28), RIDE_TYPE_FLAG_HAS_TRACK = (1uLL << 28),
RIDE_TYPE_FLAG_ALLOW_EXTRA_TOWER_BASES = (1ULL << 29), // Only set by lift RIDE_TYPE_FLAG_ALLOW_EXTRA_TOWER_BASES = (1uLL << 29), // Only set by lift
RIDE_TYPE_FLAG_HAS_LARGE_CURVES = (1ULL << 30), // whether the ride supports large (45 degree turn) curves RIDE_TYPE_FLAG_HAS_LARGE_CURVES = (1uLL << 30), // whether the ride supports large (45 degree turn) curves
RIDE_TYPE_FLAG_SUPPORTS_MULTIPLE_TRACK_COLOUR = (1ULL << 31), RIDE_TYPE_FLAG_SUPPORTS_MULTIPLE_TRACK_COLOUR = (1uLL << 31),
RIDE_TYPE_FLAG_ALLOW_DOORS_ON_TRACK = (1ULL << 32), RIDE_TYPE_FLAG_ALLOW_DOORS_ON_TRACK = (1uLL << 32),
RIDE_TYPE_FLAG_MUSIC_ON_DEFAULT = (1ULL << 33), RIDE_TYPE_FLAG_MUSIC_ON_DEFAULT = (1uLL << 33),
RIDE_TYPE_FLAG_ALLOW_MUSIC = (1ULL << 34), RIDE_TYPE_FLAG_ALLOW_MUSIC = (1uLL << 34),
RIDE_TYPE_FLAG_HAS_ALTERNATIVE_TRACK_TYPE = (1ULL << 35), // Used by the Flying RC, Lay-down RC, Multi-dimension RC RIDE_TYPE_FLAG_HAS_ALTERNATIVE_TRACK_TYPE = (1uLL << 35), // Used by the Flying RC, Lay-down RC, Multi-dimension RC
RIDE_TYPE_FLAG_PEEP_CHECK_GFORCES = (1ULL << 36), RIDE_TYPE_FLAG_PEEP_CHECK_GFORCES = (1uLL << 36),
RIDE_TYPE_FLAG_HAS_ENTRANCE_EXIT = (1ULL << 37), RIDE_TYPE_FLAG_HAS_ENTRANCE_EXIT = (1uLL << 37),
RIDE_TYPE_FLAG_ALLOW_MORE_VEHICLES_THAN_STATION_FITS = (1ULL << 38), RIDE_TYPE_FLAG_ALLOW_MORE_VEHICLES_THAN_STATION_FITS = (1uLL << 38),
RIDE_TYPE_FLAG_HAS_AIR_TIME = (1ULL << 39), RIDE_TYPE_FLAG_HAS_AIR_TIME = (1uLL << 39),
RIDE_TYPE_FLAG_SINGLE_SESSION = (1ULL << 40), RIDE_TYPE_FLAG_SINGLE_SESSION = (1uLL << 40),
RIDE_TYPE_FLAG_ALLOW_MULTIPLE_CIRCUITS = (1ULL << 41), RIDE_TYPE_FLAG_ALLOW_MULTIPLE_CIRCUITS = (1uLL << 41),
RIDE_TYPE_FLAG_ALLOW_CABLE_LIFT_HILL = (1ULL << 42), RIDE_TYPE_FLAG_ALLOW_CABLE_LIFT_HILL = (1uLL << 42),
RIDE_TYPE_FLAG_SHOW_IN_TRACK_DESIGNER = (1ULL << 43), RIDE_TYPE_FLAG_SHOW_IN_TRACK_DESIGNER = (1uLL << 43),
RIDE_TYPE_FLAG_TRANSPORT_RIDE = (1ULL << 44), RIDE_TYPE_FLAG_TRANSPORT_RIDE = (1uLL << 44),
RIDE_TYPE_FLAG_INTERESTING_TO_LOOK_AT = (1ULL << 45), RIDE_TYPE_FLAG_INTERESTING_TO_LOOK_AT = (1uLL << 45),
RIDE_TYPE_FLAG_SLIGHTLY_INTERESTING_TO_LOOK_AT = (1ULL << 46), RIDE_TYPE_FLAG_SLIGHTLY_INTERESTING_TO_LOOK_AT = (1uLL << 46),
RIDE_TYPE_FLAG_START_CONSTRUCTION_INVERTED = (1ULL << 47), // This is only set on the Flying RC and its alternative type. RIDE_TYPE_FLAG_START_CONSTRUCTION_INVERTED = (1uLL << 47), // This is only set on the Flying RC and its alternative type.
RIDE_TYPE_FLAG_LIST_VEHICLES_SEPARATELY = (1ULL << 48), RIDE_TYPE_FLAG_LIST_VEHICLES_SEPARATELY = (1uLL << 48),
RIDE_TYPE_FLAG_SUPPORTS_LEVEL_CROSSINGS = (1ULL << 49), RIDE_TYPE_FLAG_SUPPORTS_LEVEL_CROSSINGS = (1uLL << 49),
RIDE_TYPE_FLAG_IS_SUSPENDED = (1ULL << 50), RIDE_TYPE_FLAG_IS_SUSPENDED = (1uLL << 50),
RIDE_TYPE_FLAG_HAS_LANDSCAPE_DOORS = (1ULL << 51), RIDE_TYPE_FLAG_HAS_LANDSCAPE_DOORS = (1uLL << 51),
RIDE_TYPE_FLAG_UP_INCLINE_REQUIRES_LIFT = (1ULL << 52), RIDE_TYPE_FLAG_UP_INCLINE_REQUIRES_LIFT = (1uLL << 52),
RIDE_TYPE_FLAG_PEEP_CAN_USE_UMBRELLA = (1ULL << 53), RIDE_TYPE_FLAG_PEEP_CAN_USE_UMBRELLA = (1uLL << 53),
RIDE_TYPE_FLAG_IS_CASH_MACHINE = (1ULL << 54), RIDE_TYPE_FLAG_IS_CASH_MACHINE = (1uLL << 54),
RIDE_TYPE_FLAG_HAS_ONE_STATION = (1ULL << 55), RIDE_TYPE_FLAG_HAS_ONE_STATION = (1uLL << 55),
RIDE_TYPE_FLAG_HAS_SEAT_ROTATION = (1ULL << 56), RIDE_TYPE_FLAG_HAS_SEAT_ROTATION = (1uLL << 56),
RIDE_TYPE_FLAG_IS_FIRST_AID = (1ULL << 57), RIDE_TYPE_FLAG_IS_FIRST_AID = (1uLL << 57),
}; };
// Set on ride types that have a main colour, additional colour and support colour. // Set on ride types that have a main colour, additional colour and support colour.

View File

@ -91,7 +91,7 @@ constexpr uint64_t GetAllShopItemsWithFlag(uint16_t flag)
const auto& sid = ShopItems[i]; const auto& sid = ShopItems[i];
if (sid.HasFlag(flag)) if (sid.HasFlag(flag))
{ {
ret |= (1ULL << i); ret |= (1uLL << i);
} }
} }
return ret; return ret;

View File

@ -169,13 +169,13 @@ enum : uint32_t
TRACK_FLAGS_CONTAINS_WATER_SPLASH = (1 << 27), TRACK_FLAGS_CONTAINS_WATER_SPLASH = (1 << 27),
TRACK_FLAGS_CONTAINS_BARREL_ROLL = (1 << 29), TRACK_FLAGS_CONTAINS_BARREL_ROLL = (1 << 29),
TRACK_FLAGS_CONTAINS_POWERED_LIFT = (1 << 30), TRACK_FLAGS_CONTAINS_POWERED_LIFT = (1 << 30),
TRACK_FLAGS_CONTAINS_LARGE_HALF_LOOP = (1U << 31), TRACK_FLAGS_CONTAINS_LARGE_HALF_LOOP = (1u << 31),
}; };
enum : uint32_t enum : uint32_t
{ {
TRACK_FLAGS2_CONTAINS_LOG_FLUME_REVERSER = (1 << 1), TRACK_FLAGS2_CONTAINS_LOG_FLUME_REVERSER = (1 << 1),
TRACK_FLAGS2_SIX_FLAGS_RIDE_DEPRECATED = (1U << 31) // Not used anymore. TRACK_FLAGS2_SIX_FLAGS_RIDE_DEPRECATED = (1u << 31) // Not used anymore.
}; };
enum enum

View File

@ -2959,7 +2959,7 @@ static void test_finish(Ride& ride)
totalTime += rideStations[i].SegmentTime; totalTime += rideStations[i].SegmentTime;
} }
totalTime = std::max(totalTime, 1U); totalTime = std::max(totalTime, 1u);
ride.average_speed = ride.average_speed / totalTime; ride.average_speed = ride.average_speed / totalTime;
window_invalidate_by_number(WindowClass::Ride, ride.id.ToUnderlying()); window_invalidate_by_number(WindowClass::Ride, ride.id.ToUnderlying());
} }
@ -6800,7 +6800,7 @@ void Vehicle::UpdateAdditionalAnimation()
UpdateAnimationAnimalFlying(); UpdateAnimationAnimalFlying();
// makes animation play faster with vehicle speed // makes animation play faster with vehicle speed
targetFrame = abs(_vehicleVelocityF64E08) >> 24; targetFrame = abs(_vehicleVelocityF64E08) >> 24;
animationState = std::max(animationState - targetFrame, 0U); animationState = std::max(animationState - targetFrame, 0u);
break; break;
} }
} }
@ -6949,7 +6949,7 @@ void Vehicle::UpdateGoKartAttemptSwitchLanes()
if ((scenario_rand() & 0xFFFF) <= probability) if ((scenario_rand() & 0xFFFF) <= probability)
{ {
// This changes "riding left" to "moving to right lane" and "riding right" to "moving to left lane". // This changes "riding left" to "moving to right lane" and "riding right" to "moving to left lane".
TrackSubposition = VehicleTrackSubposition{ static_cast<uint8_t>(static_cast<uint8_t>(TrackSubposition) + 2U) }; TrackSubposition = VehicleTrackSubposition{ static_cast<uint8_t>(static_cast<uint8_t>(TrackSubposition) + 2u) };
} }
} }
@ -8282,7 +8282,7 @@ loc_6DC476:
} }
if (TrackSubposition != VehicleTrackSubposition::MiniGolfStart9) if (TrackSubposition != VehicleTrackSubposition::MiniGolfStart9)
{ {
TrackSubposition = VehicleTrackSubposition{ static_cast<uint8_t>(static_cast<uint8_t>(TrackSubposition) - 1U) }; TrackSubposition = VehicleTrackSubposition{ static_cast<uint8_t>(static_cast<uint8_t>(TrackSubposition) - 1u) };
} }
} }

View File

@ -70,7 +70,7 @@ enum : uint32_t
CAR_ENTRY_FLAG_CHAIRLIFT = 1 << 28, CAR_ENTRY_FLAG_CHAIRLIFT = 1 << 28,
CAR_ENTRY_FLAG_WATER_RIDE = 1 << 29, // Set on rides where water would provide continuous propulsion. CAR_ENTRY_FLAG_WATER_RIDE = 1 << 29, // Set on rides where water would provide continuous propulsion.
CAR_ENTRY_FLAG_GO_KART = 1 << 30, CAR_ENTRY_FLAG_GO_KART = 1 << 30,
CAR_ENTRY_FLAG_DODGEM_CAR_PLACEMENT = 1U << 31, CAR_ENTRY_FLAG_DODGEM_CAR_PLACEMENT = 1u << 31,
}; };
enum : uint32_t enum : uint32_t

View File

@ -30,7 +30,7 @@ constexpr const RideTypeDescriptor MonsterTrucksRTD =
RIDE_TYPE_FLAG_ALLOW_MUSIC | RIDE_TYPE_FLAG_HAS_ENTRANCE_EXIT | RIDE_TYPE_FLAG_ALLOW_MUSIC | RIDE_TYPE_FLAG_HAS_ENTRANCE_EXIT |
RIDE_TYPE_FLAG_ALLOW_MORE_VEHICLES_THAN_STATION_FITS | RIDE_TYPE_FLAG_SHOW_IN_TRACK_DESIGNER | RIDE_TYPE_FLAG_ALLOW_MORE_VEHICLES_THAN_STATION_FITS | RIDE_TYPE_FLAG_SHOW_IN_TRACK_DESIGNER |
RIDE_TYPE_FLAG_SLIGHTLY_INTERESTING_TO_LOOK_AT), RIDE_TYPE_FLAG_SLIGHTLY_INTERESTING_TO_LOOK_AT),
SET_FIELD(RideModes, (1ULL << static_cast<uint8_t>(RideMode::ContinuousCircuit))), SET_FIELD(RideModes, (1uLL << static_cast<uint8_t>(RideMode::ContinuousCircuit))),
SET_FIELD(DefaultMode, RideMode::ContinuousCircuit), SET_FIELD(DefaultMode, RideMode::ContinuousCircuit),
SET_FIELD(OperatingSettings, { 0, 0, 0, 0, 0, 0 }), SET_FIELD(OperatingSettings, { 0, 0, 0, 0, 0, 0 }),
SET_FIELD(Naming, { STR_RIDE_NAME_MONSTER_TRUCKS, STR_RIDE_DESCRIPTION_MONSTER_TRUCKS_GROUP }), SET_FIELD(Naming, { STR_RIDE_NAME_MONSTER_TRUCKS, STR_RIDE_DESCRIPTION_MONSTER_TRUCKS_GROUP }),

View File

@ -66,7 +66,7 @@ int32_t bitscanforward(int32_t source)
// any intrinsic. // any intrinsic.
// cf. https://github.com/OpenRCT2/OpenRCT2/pull/2093 // cf. https://github.com/OpenRCT2/OpenRCT2/pull/2093
for (int32_t i = 0; i < 32; i++) for (int32_t i = 0; i < 32; i++)
if (source & (1U << i)) if (source & (1u << i))
return i; return i;
return -1; return -1;
@ -88,7 +88,7 @@ int32_t bitscanforward(int64_t source)
// any intrinsic. // any intrinsic.
// cf. https://github.com/OpenRCT2/OpenRCT2/pull/2093 // cf. https://github.com/OpenRCT2/OpenRCT2/pull/2093
for (int32_t i = 0; i < 64; i++) for (int32_t i = 0; i < 64; i++)
if (source & (1ULL << i)) if (source & (1uLL << i))
return i; return i;
return -1; return -1;

View File

@ -65,7 +65,7 @@ size_t strcatftime(char* buffer, size_t bufferSize, const char* format, const st
template<typename T> [[nodiscard]] constexpr uint64_t EnumToFlag(T v) template<typename T> [[nodiscard]] constexpr uint64_t EnumToFlag(T v)
{ {
static_assert(std::is_enum_v<T>); static_assert(std::is_enum_v<T>);
return 1ULL << static_cast<std::underlying_type_t<T>>(v); return 1uLL << static_cast<std::underlying_type_t<T>>(v);
} }
template<typename... T> [[nodiscard]] constexpr uint64_t EnumsToFlags(T... types) template<typename... T> [[nodiscard]] constexpr uint64_t EnumsToFlags(T... types)

View File

@ -403,7 +403,7 @@ int32_t Park::CalculateParkRating() const
result -= 500; result -= 500;
if (gNumGuestsInPark > 0) if (gNumGuestsInPark > 0)
{ {
result += 2 * std::min(250U, (happyGuestCount * 300) / gNumGuestsInPark); result += 2 * std::min(250u, (happyGuestCount * 300) / gNumGuestsInPark);
} }
// Up to 25 guests can be lost without affecting the park rating. // Up to 25 guests can be lost without affecting the park rating.

View File

@ -40,7 +40,7 @@ enum : uint32_t
PARK_FLAGS_NO_MONEY_SCENARIO = (1 << 17), // Deprecated, originally used in scenario editor PARK_FLAGS_NO_MONEY_SCENARIO = (1 << 17), // Deprecated, originally used in scenario editor
PARK_FLAGS_SPRITES_INITIALISED = (1 << 18), // After a scenario is loaded this prevents edits in the scenario editor PARK_FLAGS_SPRITES_INITIALISED = (1 << 18), // After a scenario is loaded this prevents edits in the scenario editor
PARK_FLAGS_SIX_FLAGS_DEPRECATED = (1 << 19), // Not used anymore PARK_FLAGS_SIX_FLAGS_DEPRECATED = (1 << 19), // Not used anymore
PARK_FLAGS_UNLOCK_ALL_PRICES = (1U << 31), // OpenRCT2 only! PARK_FLAGS_UNLOCK_ALL_PRICES = (1u << 31), // OpenRCT2 only!
}; };
struct Guest; struct Guest;

View File

@ -14,14 +14,14 @@ using namespace OpenRCT2;
TEST(BitTest, test_index_construction) TEST(BitTest, test_index_construction)
{ {
BitSet<64U> bits({ 0U, 2U, 4U, 6U, 8U, 10U }); BitSet<64u> bits({ 0u, 2u, 4u, 6u, 8u, 10u });
#if defined(_M_X64) || defined(_M_ARM64) #if defined(_M_X64) || defined(_M_ARM64)
static_assert(std::is_same_v<decltype(bits)::BlockType, uint64_t>); static_assert(std::is_same_v<decltype(bits)::BlockType, uint64_t>);
#else #else
static_assert(std::is_same_v<decltype(bits)::BlockType, uint32_t>); static_assert(std::is_same_v<decltype(bits)::BlockType, uint32_t>);
#endif #endif
constexpr auto size = sizeof(bits); constexpr auto size = sizeof(bits);
static_assert(size == 8U); static_assert(size == 8u);
ASSERT_EQ(bits.data()[0], 0b10101010101U); ASSERT_EQ(bits.data()[0], 0b10101010101U);
ASSERT_EQ(bits.to_string(), std::string("0000000000000000000000000000000000000000000000000000010101010101")); ASSERT_EQ(bits.to_string(), std::string("0000000000000000000000000000000000000000000000000000010101010101"));
@ -29,7 +29,7 @@ TEST(BitTest, test_index_construction)
TEST(BitTest, test_basic) TEST(BitTest, test_basic)
{ {
BitSet<8U> bits; BitSet<8u> bits;
static_assert(std::is_same_v<decltype(bits)::BlockType, uint8_t>); static_assert(std::is_same_v<decltype(bits)::BlockType, uint8_t>);
constexpr auto size = sizeof(bits); constexpr auto size = sizeof(bits);
static_assert(size == sizeof(uint8_t)); static_assert(size == sizeof(uint8_t));
@ -42,26 +42,26 @@ TEST(BitTest, test_basic)
ASSERT_EQ(bits[0], false); ASSERT_EQ(bits[0], false);
bits[0] = bits[6]; bits[0] = bits[6];
ASSERT_EQ(bits[0], true); ASSERT_EQ(bits[0], true);
ASSERT_EQ(bits.data()[0U], 0b01000001U); ASSERT_EQ(bits.data()[0u], 0b01000001U);
ASSERT_EQ(bits.to_string(), std::string("01000001")); ASSERT_EQ(bits.to_string(), std::string("01000001"));
} }
TEST(BitTest, test_flip) TEST(BitTest, test_flip)
{ {
BitSet<8U> bits; BitSet<8u> bits;
static_assert(std::is_same_v<decltype(bits)::BlockType, uint8_t>); static_assert(std::is_same_v<decltype(bits)::BlockType, uint8_t>);
constexpr auto size = sizeof(bits); constexpr auto size = sizeof(bits);
static_assert(size == sizeof(uint8_t)); static_assert(size == sizeof(uint8_t));
bits.flip(); bits.flip();
ASSERT_EQ(bits.data()[0U], 0xFFu); ASSERT_EQ(bits.data()[0u], 0xFFu);
bits.flip(); bits.flip();
ASSERT_EQ(bits.data()[0U], 0x00u); ASSERT_EQ(bits.data()[0u], 0x00u);
} }
TEST(BitTest, test_trim8) TEST(BitTest, test_trim8)
{ {
BitSet<5U> bits; BitSet<5u> bits;
static_assert(std::is_same_v<decltype(bits)::BlockType, uint8_t>); static_assert(std::is_same_v<decltype(bits)::BlockType, uint8_t>);
constexpr auto size = sizeof(bits); constexpr auto size = sizeof(bits);
static_assert(size == sizeof(uint8_t)); static_assert(size == sizeof(uint8_t));
@ -70,12 +70,12 @@ TEST(BitTest, test_trim8)
ASSERT_EQ(bits[5], false); ASSERT_EQ(bits[5], false);
ASSERT_EQ(bits[6], false); ASSERT_EQ(bits[6], false);
ASSERT_EQ(bits[7], false); ASSERT_EQ(bits[7], false);
ASSERT_EQ(bits.data()[0U], 0b00011111u); ASSERT_EQ(bits.data()[0u], 0b00011111u);
} }
TEST(BitTest, test_trim16) TEST(BitTest, test_trim16)
{ {
BitSet<14U> bits; BitSet<14u> bits;
static_assert(std::is_same_v<decltype(bits)::BlockType, uint16_t>); static_assert(std::is_same_v<decltype(bits)::BlockType, uint16_t>);
constexpr auto size = sizeof(bits); constexpr auto size = sizeof(bits);
static_assert(size == sizeof(uint16_t)); static_assert(size == sizeof(uint16_t));
@ -83,42 +83,42 @@ TEST(BitTest, test_trim16)
bits.flip(); bits.flip();
ASSERT_EQ(bits[14], false); ASSERT_EQ(bits[14], false);
ASSERT_EQ(bits[15], false); ASSERT_EQ(bits[15], false);
ASSERT_EQ(bits.data()[0U], 0b0011111111111111u); ASSERT_EQ(bits.data()[0u], 0b0011111111111111u);
ASSERT_EQ(bits.to_string(), std::string("11111111111111")); ASSERT_EQ(bits.to_string(), std::string("11111111111111"));
} }
TEST(BitTest, test_big) TEST(BitTest, test_big)
{ {
BitSet<256U> bits; BitSet<256u> bits;
constexpr auto size = sizeof(bits); constexpr auto size = sizeof(bits);
static_assert(size == 32U); static_assert(size == 32u);
bits.flip(); bits.flip();
#if defined(_M_X64) || defined(_M_ARM64) #if defined(_M_X64) || defined(_M_ARM64)
static_assert(std::is_same_v<decltype(bits)::BlockType, uint64_t>); static_assert(std::is_same_v<decltype(bits)::BlockType, uint64_t>);
static_assert(bits.data().size() == 4); static_assert(bits.data().size() == 4);
ASSERT_EQ(bits.data()[0], ~0ULL); ASSERT_EQ(bits.data()[0], ~0uLL);
ASSERT_EQ(bits.data()[1], ~0ULL); ASSERT_EQ(bits.data()[1], ~0uLL);
ASSERT_EQ(bits.data()[2], ~0ULL); ASSERT_EQ(bits.data()[2], ~0uLL);
ASSERT_EQ(bits.data()[3], ~0ULL); ASSERT_EQ(bits.data()[3], ~0uLL);
#else #else
static_assert(std::is_same_v<decltype(bits)::BlockType, uint32_t>); static_assert(std::is_same_v<decltype(bits)::BlockType, uint32_t>);
static_assert(bits.data().size() == 8); static_assert(bits.data().size() == 8);
ASSERT_EQ(bits.data()[0], ~0UL); ASSERT_EQ(bits.data()[0], ~0uL);
ASSERT_EQ(bits.data()[1], ~0UL); ASSERT_EQ(bits.data()[1], ~0uL);
ASSERT_EQ(bits.data()[2], ~0UL); ASSERT_EQ(bits.data()[2], ~0uL);
ASSERT_EQ(bits.data()[3], ~0UL); ASSERT_EQ(bits.data()[3], ~0uL);
ASSERT_EQ(bits.data()[4], ~0UL); ASSERT_EQ(bits.data()[4], ~0uL);
ASSERT_EQ(bits.data()[5], ~0UL); ASSERT_EQ(bits.data()[5], ~0uL);
ASSERT_EQ(bits.data()[6], ~0UL); ASSERT_EQ(bits.data()[6], ~0uL);
ASSERT_EQ(bits.data()[7], ~0UL); ASSERT_EQ(bits.data()[7], ~0uL);
#endif #endif
} }
TEST(BitTest, test_xor5) TEST(BitTest, test_xor5)
{ {
BitSet<5U> bits1({ 0U, 2U, 4U }); BitSet<5u> bits1({ 0u, 2u, 4u });
BitSet<5U> bits2({ 0U, 1U, 3U }); BitSet<5u> bits2({ 0u, 1u, 3u });
auto res = bits1 ^ bits2; auto res = bits1 ^ bits2;
ASSERT_EQ(res.data()[0], 0b11110u); ASSERT_EQ(res.data()[0], 0b11110u);
@ -127,8 +127,8 @@ TEST(BitTest, test_xor5)
TEST(BitTest, test_xor15) TEST(BitTest, test_xor15)
{ {
BitSet<15U> bits1({ 0U, 2U, 4U }); BitSet<15u> bits1({ 0u, 2u, 4u });
BitSet<15U> bits2({ 0U, 1U, 3U, 14U }); BitSet<15u> bits2({ 0u, 1u, 3u, 14u });
auto res = bits1 ^ bits2; auto res = bits1 ^ bits2;
ASSERT_EQ(res.data()[0], 0b0100000000011110u); ASSERT_EQ(res.data()[0], 0b0100000000011110u);
@ -137,8 +137,8 @@ TEST(BitTest, test_xor15)
TEST(BitTest, test_or5) TEST(BitTest, test_or5)
{ {
BitSet<5U> bits1({ 0U, 2U, 4U }); BitSet<5u> bits1({ 0u, 2u, 4u });
BitSet<5U> bits2({ 0U, 1U, 3U }); BitSet<5u> bits2({ 0u, 1u, 3u });
auto res = bits1 | bits2; auto res = bits1 | bits2;
ASSERT_EQ(res.data()[0], 0b11111); ASSERT_EQ(res.data()[0], 0b11111);
@ -147,8 +147,8 @@ TEST(BitTest, test_or5)
TEST(BitTest, test_or15) TEST(BitTest, test_or15)
{ {
BitSet<15U> bits1({ 0U, 2U, 4U }); BitSet<15u> bits1({ 0u, 2u, 4u });
BitSet<15U> bits2({ 0U, 1U, 3U, 14U }); BitSet<15u> bits2({ 0u, 1u, 3u, 14u });
auto res = bits1 | bits2; auto res = bits1 | bits2;
ASSERT_EQ(res.data()[0], 0b0100000000011111u); ASSERT_EQ(res.data()[0], 0b0100000000011111u);
@ -157,8 +157,8 @@ TEST(BitTest, test_or15)
TEST(BitTest, test_and5) TEST(BitTest, test_and5)
{ {
BitSet<5U> bits1({ 0U, 2U, 4U }); BitSet<5u> bits1({ 0u, 2u, 4u });
BitSet<5U> bits2({ 0U, 1U, 3U }); BitSet<5u> bits2({ 0u, 1u, 3u });
auto res = bits1 & bits2; auto res = bits1 & bits2;
ASSERT_EQ(res.data()[0], 0b1); ASSERT_EQ(res.data()[0], 0b1);
@ -167,8 +167,8 @@ TEST(BitTest, test_and5)
TEST(BitTest, test_and15) TEST(BitTest, test_and15)
{ {
BitSet<15U> bits1({ 0U, 2U, 4U }); BitSet<15u> bits1({ 0u, 2u, 4u });
BitSet<15U> bits2({ 0U, 1U, 3U, 14U }); BitSet<15u> bits2({ 0u, 1u, 3u, 14u });
auto res = bits1 & bits2; auto res = bits1 & bits2;
ASSERT_EQ(res.data()[0], 0b1); ASSERT_EQ(res.data()[0], 0b1);
@ -177,7 +177,7 @@ TEST(BitTest, test_and15)
TEST(BitTest, test_neg5) TEST(BitTest, test_neg5)
{ {
BitSet<5U> bits1({ 0U, 2U, 4U }); BitSet<5u> bits1({ 0u, 2u, 4u });
auto res = ~bits1; auto res = ~bits1;
ASSERT_EQ(res.data()[0], 0b01010u); ASSERT_EQ(res.data()[0], 0b01010u);
@ -186,7 +186,7 @@ TEST(BitTest, test_neg5)
TEST(BitTest, test_neg15) TEST(BitTest, test_neg15)
{ {
BitSet<15U> bits1({ 0U, 2U, 4U }); BitSet<15u> bits1({ 0u, 2u, 4u });
auto res = ~bits1; auto res = ~bits1;
ASSERT_EQ(res.data()[0], 0b111111111101010u); ASSERT_EQ(res.data()[0], 0b111111111101010u);
@ -195,13 +195,13 @@ TEST(BitTest, test_neg15)
TEST(BitTest, test_count) TEST(BitTest, test_count)
{ {
BitSet<31U> bits1({ 0U, 2U, 4U, 7U, 9U, 12U, 16U, 19U, 22U, 29U }); BitSet<31u> bits1({ 0u, 2u, 4u, 7u, 9u, 12u, 16u, 19u, 22u, 29u });
ASSERT_EQ(bits1.count(), 10U); ASSERT_EQ(bits1.count(), 10u);
} }
TEST(BitTest, test_iterator) TEST(BitTest, test_iterator)
{ {
BitSet<31U> bits1({ 0U, 2U, 4U, 7U, 9U, 12U, 16U, 19U, 22U, 29U }); BitSet<31u> bits1({ 0u, 2u, 4u, 7u, 9u, 12u, 16u, 19u, 22u, 29u });
int totalBits = 0; int totalBits = 0;
for (auto v : bits1) for (auto v : bits1)
@ -214,7 +214,7 @@ TEST(BitTest, test_iterator)
TEST(BitTest, test_iterator_const) TEST(BitTest, test_iterator_const)
{ {
BitSet<31U> bits1({ 0U, 2U, 4U, 7U, 9U, 12U, 16U, 19U, 22U, 29U }); BitSet<31u> bits1({ 0u, 2u, 4u, 7u, 9u, 12u, 16u, 19u, 22u, 29u });
int totalBits = 0; int totalBits = 0;
auto test = [&](const auto& b) { auto test = [&](const auto& b) {

View File

@ -318,7 +318,7 @@ TEST_F(FormattingTests, to_fixed_buffer)
char buffer[16]; char buffer[16];
std::memset(buffer, '\xFF', sizeof(buffer)); std::memset(buffer, '\xFF', sizeof(buffer));
auto len = FormatStringId(buffer, 8, STR_GUEST_X, 123); auto len = FormatStringId(buffer, 8, STR_GUEST_X, 123);
ASSERT_EQ(len, 9U); ASSERT_EQ(len, 9u);
ASSERT_STREQ("Guest 1", buffer); ASSERT_STREQ("Guest 1", buffer);
// Ensure rest of the buffer was not overwritten // Ensure rest of the buffer was not overwritten
@ -337,7 +337,7 @@ TEST_F(FormattingTests, using_legacy_buffer_args)
char buffer[32]{}; char buffer[32]{};
auto len = FormatStringLegacy(buffer, sizeof(buffer), STR_QUEUING_FOR, ft.Data()); auto len = FormatStringLegacy(buffer, sizeof(buffer), STR_QUEUING_FOR, ft.Data());
ASSERT_EQ(len, 23U); ASSERT_EQ(len, 23u);
ASSERT_STREQ("Queuing for Boat Hire 2", buffer); ASSERT_STREQ("Queuing for Boat Hire 2", buffer);
} }

View File

@ -25,17 +25,17 @@ TEST_F(LanguagePackTest, create_empty)
{ {
auto empty = LanguagePackFactory::FromText(0, ""); auto empty = LanguagePackFactory::FromText(0, "");
ASSERT_EQ(empty->GetId(), 0); ASSERT_EQ(empty->GetId(), 0);
ASSERT_EQ(empty->GetCount(), 0U); ASSERT_EQ(empty->GetCount(), 0u);
} }
TEST_F(LanguagePackTest, create_mutable_id_1) TEST_F(LanguagePackTest, create_mutable_id_1)
{ {
auto lang = LanguagePackFactory::FromText(1, "STR_0000:\n"); auto lang = LanguagePackFactory::FromText(1, "STR_0000:\n");
ASSERT_EQ(lang->GetId(), 1); ASSERT_EQ(lang->GetId(), 1);
ASSERT_EQ(lang->GetCount(), 1U); ASSERT_EQ(lang->GetCount(), 1u);
ASSERT_STREQ(lang->GetString(0), nullptr); ASSERT_STREQ(lang->GetString(0), nullptr);
lang->SetString(0, "xx"); lang->SetString(0, "xx");
ASSERT_EQ(lang->GetCount(), 1U); ASSERT_EQ(lang->GetCount(), 1u);
ASSERT_STREQ(lang->GetString(0), "xx"); ASSERT_STREQ(lang->GetString(0), "xx");
} }
@ -43,7 +43,7 @@ TEST_F(LanguagePackTest, language_pack_simple)
{ {
auto lang = LanguagePackFactory::FromText(0, LanguageEnGB); auto lang = LanguagePackFactory::FromText(0, LanguageEnGB);
ASSERT_EQ(lang->GetId(), 0); ASSERT_EQ(lang->GetId(), 0);
ASSERT_EQ(lang->GetCount(), 4U); ASSERT_EQ(lang->GetCount(), 4u);
ASSERT_STREQ(lang->GetString(2), "Spiral Roller Coaster"); ASSERT_STREQ(lang->GetString(2), "Spiral Roller Coaster");
ASSERT_EQ(lang->GetScenarioOverrideStringId("Arid Heights", 0), 0x7000); ASSERT_EQ(lang->GetScenarioOverrideStringId("Arid Heights", 0), 0x7000);
ASSERT_STREQ(lang->GetString(0x7000), "Arid Heights scenario string"); ASSERT_STREQ(lang->GetString(0x7000), "Arid Heights scenario string");
@ -59,7 +59,7 @@ TEST_F(LanguagePackTest, language_pack_multibyte)
{ {
auto lang = LanguagePackFactory::FromText(0, reinterpret_cast<const utf8*>(LanguageZhTW)); auto lang = LanguagePackFactory::FromText(0, reinterpret_cast<const utf8*>(LanguageZhTW));
ASSERT_EQ(lang->GetId(), 0); ASSERT_EQ(lang->GetId(), 0);
ASSERT_EQ(lang->GetCount(), 4U); ASSERT_EQ(lang->GetCount(), 4u);
ASSERT_STREQ(lang->GetString(2), u8"懸吊式雲霄飛車"); ASSERT_STREQ(lang->GetString(2), u8"懸吊式雲霄飛車");
ASSERT_EQ(lang->GetScenarioOverrideStringId("Forest Frontiers", 0), 0x7000); ASSERT_EQ(lang->GetScenarioOverrideStringId("Forest Frontiers", 0), 0x7000);
ASSERT_EQ(lang->GetScenarioOverrideStringId("Forest Frontiers", 2), 0x7002); ASSERT_EQ(lang->GetScenarioOverrideStringId("Forest Frontiers", 2), 0x7002);

View File

@ -136,7 +136,7 @@ protected:
static ::testing::AssertionResult AssertIsStartPosition(const char*, const TileCoordsXYZ& location) static ::testing::AssertionResult AssertIsStartPosition(const char*, const TileCoordsXYZ& location)
{ {
const uint32_t expectedSurfaceStyle = 11U; const uint32_t expectedSurfaceStyle = 11u;
const uint32_t style = MapGetSurfaceElementAt(location.ToCoordsXYZ())->GetSurfaceStyle(); const uint32_t style = MapGetSurfaceElementAt(location.ToCoordsXYZ())->GetSurfaceStyle();
if (style != expectedSurfaceStyle) if (style != expectedSurfaceStyle)
@ -150,7 +150,7 @@ protected:
static ::testing::AssertionResult AssertIsNotForbiddenPosition(const char*, const TileCoordsXYZ& location) static ::testing::AssertionResult AssertIsNotForbiddenPosition(const char*, const TileCoordsXYZ& location)
{ {
const uint32_t forbiddenSurfaceStyle = 8U; const uint32_t forbiddenSurfaceStyle = 8u;
const uint32_t style = MapGetSurfaceElementAt(location.ToCoordsXYZ())->GetSurfaceStyle(); const uint32_t style = MapGetSurfaceElementAt(location.ToCoordsXYZ())->GetSurfaceStyle();