mirror of
https://github.com/OpenRCT2/OpenRCT2
synced 2026-01-15 11:03:00 +01:00
Change transparent trees to all vegetation
This commit is contained in:
@@ -3659,23 +3659,23 @@ STR_6467 :Nausea: {COMMA2DP32}
|
||||
STR_6468 :Not Yet Known
|
||||
STR_6469 :Adjust smaller area of patrol area
|
||||
STR_6470 :Adjust larger area of patrol area
|
||||
STR_6471 :See-Through Vehicles
|
||||
STR_6472 :See-Through Trees
|
||||
STR_6473 :Invisible Rides
|
||||
STR_6474 :Invisible Scenery
|
||||
STR_6475 :Invisible Trees
|
||||
STR_6476 :Invisible Paths
|
||||
STR_6477 :Invisible Guests
|
||||
STR_6478 :Invisible Staff
|
||||
STR_6479 :Transparency Options
|
||||
STR_6480 :Transparency Options
|
||||
STR_6481 :Invisible Vehicles
|
||||
STR_6482 :See-Through Supports
|
||||
STR_6471 :See-Through Vegetation
|
||||
STR_6472 :See-Through Vehicles
|
||||
STR_6473 :See-Through Supports
|
||||
STR_6474 :See-Through Guests
|
||||
STR_6475 :See-Through Staff
|
||||
STR_6476 :Invisible Vegetation
|
||||
STR_6477 :Invisible Scenery
|
||||
STR_6478 :Invisible Paths
|
||||
STR_6479 :Invisible Rides
|
||||
STR_6480 :Invisible Vehicles
|
||||
STR_6481 :Transparency Options
|
||||
STR_6482 :Transparency Options
|
||||
STR_6483 :Open transparency options
|
||||
STR_6484 :See-through vehicles toggle
|
||||
STR_6485 :See-through trees toggle
|
||||
STR_6486 :Invisible guests toggle
|
||||
STR_6487 :Invisible staff toggle
|
||||
STR_6484 :See-Through vegetation toggle
|
||||
STR_6485 :See-Through vehicles toggle
|
||||
STR_6486 :See-Through guests toggle
|
||||
STR_6487 :See-Through staff toggle
|
||||
|
||||
#############
|
||||
# Scenarios #
|
||||
|
||||
@@ -76,7 +76,7 @@ namespace OpenRCT2::Ui::ShortcutId
|
||||
constexpr std::string_view ViewToggleVerticalLand = "view.toggle.hide_vertical_land";
|
||||
constexpr std::string_view ViewToggleRides = "view.toggle.transparent_rides";
|
||||
constexpr std::string_view ViewToggleVehicles = "view.toggle.transparent_vehicles";
|
||||
constexpr std::string_view ViewToggleTrees = "view.toggle.transparent_trees";
|
||||
constexpr std::string_view ViewToggleVegetation = "view.toggle.transparent_vegetation";
|
||||
constexpr std::string_view ViewToggleScenery = "view.toggle.transparent_scenery";
|
||||
constexpr std::string_view ViewToggleFootpaths = "view.toggle.transparent_footpaths";
|
||||
constexpr std::string_view ViewToggleSupports = "view.toggle.hide_supports";
|
||||
|
||||
@@ -855,12 +855,12 @@ void ShortcutManager::RegisterDefaultShortcuts()
|
||||
RegisterShortcut(ShortcutId::ViewToggleVerticalLand, STR_SHORTCUT_REMOVE_VERTICAL_LAND_TOGGLE, "V", []() { ToggleViewFlag(VIEWPORT_FLAG_HIDE_VERTICAL); });
|
||||
RegisterShortcut(ShortcutId::ViewToggleRides, STR_SHORTCUT_SEE_THROUGH_RIDES_TOGGLE, "3", []() { ToggleViewFlag(VIEWPORT_FLAG_HIDE_RIDES); });
|
||||
RegisterShortcut(ShortcutId::ViewToggleVehicles, STR_SHORTCUT_SEE_THROUGH_VEHICLES_TOGGLE, []() { ToggleViewFlag(VIEWPORT_FLAG_HIDE_VEHICLES); });
|
||||
RegisterShortcut(ShortcutId::ViewToggleTrees, STR_SHORTCUT_SEE_THROUGH_TREES_TOGGLE, []() { ToggleViewFlag(VIEWPORT_FLAG_HIDE_TREES); });
|
||||
RegisterShortcut(ShortcutId::ViewToggleVegetation, STR_SHORTCUT_SEE_THROUGH_VEGETATION_TOGGLE, []() { ToggleViewFlag(VIEWPORT_FLAG_HIDE_VEGETATION); });
|
||||
RegisterShortcut(ShortcutId::ViewToggleScenery, STR_SHORTCUT_SEE_THROUGH_SCENERY_TOGGLE, "4", []() { ToggleViewFlag(VIEWPORT_FLAG_HIDE_SCENERY); });
|
||||
RegisterShortcut(ShortcutId::ViewToggleFootpaths, STR_SHORTCUT_SEE_THROUGH_PATHS_TOGGLE, []() { ToggleViewFlag(VIEWPORT_FLAG_HIDE_PATHS); });
|
||||
RegisterShortcut(ShortcutId::ViewToggleSupports, STR_SHORTCUT_INVISIBLE_SUPPORTS_TOGGLE, "5", []() { ToggleViewFlag(VIEWPORT_FLAG_HIDE_SUPPORTS); });
|
||||
RegisterShortcut(ShortcutId::ViewToggleGuests, STR_SHORTCUT_INVISIBLE_GUESTS_TOGGLE, "6", []() { ToggleViewFlag(VIEWPORT_FLAG_HIDE_GUESTS); });
|
||||
RegisterShortcut(ShortcutId::ViewToggleStaff, STR_SHORTCUT_INVISIBLE_STAFF_TOGGLE, []() { ToggleViewFlag(VIEWPORT_FLAG_HIDE_STAFF); });
|
||||
RegisterShortcut(ShortcutId::ViewToggleGuests, STR_SHORTCUT_SEE_THROUGH_GUESTS_TOGGLE, "6", []() { ToggleViewFlag(VIEWPORT_FLAG_HIDE_GUESTS); });
|
||||
RegisterShortcut(ShortcutId::ViewToggleStaff, STR_SHORTCUT_SEE_THROUGH_STAFF_TOGGLE, []() { ToggleViewFlag(VIEWPORT_FLAG_HIDE_STAFF); });
|
||||
RegisterShortcut(ShortcutId::ViewToggleLandHeightMarkers, STR_SHORTCUT_HEIGHT_MARKS_ON_LAND_TOGGLE, "8", []() { ToggleViewFlag(VIEWPORT_FLAG_LAND_HEIGHTS); });
|
||||
RegisterShortcut(ShortcutId::ViewToggleTrackHeightMarkers, STR_SHORTCUT_HEIGHT_MARKS_ON_RIDE_TRACKS_TOGGLE, "9", []() { ToggleViewFlag(VIEWPORT_FLAG_TRACK_HEIGHTS); });
|
||||
RegisterShortcut(ShortcutId::ViewToggleFootpathHeightMarkers, STR_SHORTCUT_HEIGHT_MARKS_ON_PATHS_TOGGLE, "0", []() { ToggleViewFlag(VIEWPORT_FLAG_PATH_HEIGHTS); });
|
||||
|
||||
@@ -65,7 +65,7 @@ static void WindowMainSetViewportFlags(rct_viewport& viewport)
|
||||
if (gConfigGeneral.invisible_vehicles)
|
||||
viewport.flags |= VIEWPORT_FLAG_INVISIBLE_VEHICLES;
|
||||
if (gConfigGeneral.invisible_trees)
|
||||
viewport.flags |= VIEWPORT_FLAG_INVISIBLE_TREES;
|
||||
viewport.flags |= VIEWPORT_FLAG_INVISIBLE_VEGETATION;
|
||||
if (gConfigGeneral.invisible_scenery)
|
||||
viewport.flags |= VIEWPORT_FLAG_INVISIBLE_SCENERY;
|
||||
if (gConfigGeneral.invisible_paths)
|
||||
|
||||
@@ -138,7 +138,7 @@ enum TopToolbarViewMenuDdidx
|
||||
// separator
|
||||
DDIDX_HIDE_RIDES = 5,
|
||||
DDIDX_HIDE_VEHICLES = 6,
|
||||
DDIDX_HIDE_TREES = 7,
|
||||
DDIDX_HIDE_VEGETATION = 7,
|
||||
DDIDX_HIDE_SCENERY = 8,
|
||||
DDIDX_HIDE_PATHS = 9,
|
||||
DDIDX_HIDE_SUPPORTS = 10,
|
||||
@@ -3630,12 +3630,12 @@ static void TopToolbarInitViewMenu(rct_window* w, rct_widget* widget)
|
||||
Separator(),
|
||||
ToggleOption(DDIDX_HIDE_RIDES, STR_SEE_THROUGH_RIDES),
|
||||
ToggleOption(DDIDX_HIDE_VEHICLES, STR_SEE_THROUGH_VEHICLES),
|
||||
ToggleOption(DDIDX_HIDE_TREES, STR_SEE_THROUGH_TREES),
|
||||
ToggleOption(DDIDX_HIDE_VEGETATION, STR_SEE_THROUGH_VEGETATION),
|
||||
ToggleOption(DDIDX_HIDE_SCENERY, STR_SEE_THROUGH_SCENERY),
|
||||
ToggleOption(DDIDX_HIDE_PATHS, STR_SEE_THROUGH_PATHS),
|
||||
ToggleOption(DDIDX_HIDE_SUPPORTS, STR_SEE_THROUGH_SUPPORTS),
|
||||
ToggleOption(DDIDX_HIDE_GUESTS, STR_INVISIBLE_GUESTS),
|
||||
ToggleOption(DDIDX_HIDE_STAFF, STR_INVISIBLE_STAFF),
|
||||
ToggleOption(DDIDX_HIDE_GUESTS, STR_SEE_THROUGH_GUESTS),
|
||||
ToggleOption(DDIDX_HIDE_STAFF, STR_SEE_THROUGH_STAFF),
|
||||
Separator(),
|
||||
ToggleOption(DDIDX_LAND_HEIGHTS, STR_HEIGHT_MARKS_ON_LAND),
|
||||
ToggleOption(DDIDX_TRACK_HEIGHTS, STR_HEIGHT_MARKS_ON_RIDE_TRACKS),
|
||||
@@ -3669,8 +3669,8 @@ static void TopToolbarInitViewMenu(rct_window* w, rct_widget* widget)
|
||||
Dropdown::SetChecked(DDIDX_HIDE_RIDES, true);
|
||||
if (mainViewport->flags & VIEWPORT_FLAG_HIDE_VEHICLES)
|
||||
Dropdown::SetChecked(DDIDX_HIDE_VEHICLES, true);
|
||||
if (mainViewport->flags & VIEWPORT_FLAG_HIDE_TREES)
|
||||
Dropdown::SetChecked(DDIDX_HIDE_TREES, true);
|
||||
if (mainViewport->flags & VIEWPORT_FLAG_HIDE_VEGETATION)
|
||||
Dropdown::SetChecked(DDIDX_HIDE_VEGETATION, true);
|
||||
if (mainViewport->flags & VIEWPORT_FLAG_HIDE_SCENERY)
|
||||
Dropdown::SetChecked(DDIDX_HIDE_SCENERY, true);
|
||||
if (mainViewport->flags & VIEWPORT_FLAG_HIDE_PATHS)
|
||||
@@ -3731,8 +3731,8 @@ static void TopToolbarViewMenuDropdown(int16_t dropdownIndex)
|
||||
case DDIDX_HIDE_VEHICLES:
|
||||
w->viewport->flags ^= VIEWPORT_FLAG_HIDE_VEHICLES;
|
||||
break;
|
||||
case DDIDX_HIDE_TREES:
|
||||
w->viewport->flags ^= VIEWPORT_FLAG_HIDE_TREES;
|
||||
case DDIDX_HIDE_VEGETATION:
|
||||
w->viewport->flags ^= VIEWPORT_FLAG_HIDE_VEGETATION;
|
||||
break;
|
||||
case DDIDX_HIDE_SCENERY:
|
||||
w->viewport->flags ^= VIEWPORT_FLAG_HIDE_SCENERY;
|
||||
|
||||
@@ -36,7 +36,7 @@ enum WINDOW_TRANSPARENCY_WIDGET_IDX
|
||||
WIDX_TITLE,
|
||||
WIDX_CLOSE,
|
||||
|
||||
WIDX_HIDE_TREES,
|
||||
WIDX_HIDE_VEGETATION,
|
||||
WIDX_HIDE_SCENERY,
|
||||
WIDX_HIDE_PATHS,
|
||||
WIDX_HIDE_RIDES,
|
||||
@@ -44,7 +44,7 @@ enum WINDOW_TRANSPARENCY_WIDGET_IDX
|
||||
WIDX_HIDE_SUPPORTS,
|
||||
WIDX_HIDE_GUESTS,
|
||||
WIDX_HIDE_STAFF,
|
||||
WIDX_INVISIBLE_TREES,
|
||||
WIDX_INVISIBLE_VEGETATION,
|
||||
WIDX_INVISIBLE_SCENERY,
|
||||
WIDX_INVISIBLE_PATHS,
|
||||
WIDX_INVISIBLE_RIDES,
|
||||
@@ -66,16 +66,16 @@ static constexpr ScreenSize INVISIBLE_SIZE = {24, 12};
|
||||
static rct_widget window_transparency_main_widgets[] =
|
||||
{
|
||||
WINDOW_SHIM(WINDOW_TITLE, WW, WH),
|
||||
MakeWidget({ 2, 17}, HIDE_SIZE, WindowWidgetType::FlatBtn, WindowColour::Secondary, SPR_G2_BUTTON_HIDE_VEGETATION, STR_SEE_THROUGH_TREES),
|
||||
MakeWidget({ 2, 17}, HIDE_SIZE, WindowWidgetType::FlatBtn, WindowColour::Secondary, SPR_G2_BUTTON_HIDE_VEGETATION, STR_SEE_THROUGH_VEGETATION),
|
||||
MakeWidget({ 27, 17}, HIDE_SIZE, WindowWidgetType::FlatBtn, WindowColour::Secondary, SPR_G2_BUTTON_HIDE_SCENERY, STR_SEE_THROUGH_SCENERY),
|
||||
MakeWidget({ 52, 17}, HIDE_SIZE, WindowWidgetType::FlatBtn, WindowColour::Secondary, SPR_G2_BUTTON_FOOTPATH, STR_SEE_THROUGH_PATHS),
|
||||
MakeWidget({ 77, 17}, HIDE_SIZE, WindowWidgetType::FlatBtn, WindowColour::Secondary, SPR_RIDE, STR_SEE_THROUGH_RIDES),
|
||||
MakeWidget({102, 17}, HIDE_SIZE, WindowWidgetType::FlatBtn, WindowColour::Secondary, SPR_G2_BUTTON_HIDE_VEHICLES, STR_SEE_THROUGH_VEHICLES),
|
||||
MakeWidget({127, 17}, HIDE_SIZE, WindowWidgetType::FlatBtn, WindowColour::Secondary, SPR_G2_BUTTON_HIDE_SUPPORTS, STR_SEE_THROUGH_SUPPORTS),
|
||||
MakeWidget({152, 17}, HIDE_SIZE, WindowWidgetType::FlatBtn, WindowColour::Secondary, SPR_GUESTS, STR_INVISIBLE_GUESTS),
|
||||
MakeWidget({177, 17}, HIDE_SIZE, WindowWidgetType::FlatBtn, WindowColour::Secondary, 0xFFFFFFFF, STR_INVISIBLE_STAFF),
|
||||
MakeWidget({152, 17}, HIDE_SIZE, WindowWidgetType::FlatBtn, WindowColour::Secondary, SPR_GUESTS, STR_SEE_THROUGH_GUESTS),
|
||||
MakeWidget({177, 17}, HIDE_SIZE, WindowWidgetType::FlatBtn, WindowColour::Secondary, 0xFFFFFFFF, STR_SEE_THROUGH_STAFF),
|
||||
|
||||
MakeWidget({ 2, 42}, INVISIBLE_SIZE, WindowWidgetType::FlatBtn, WindowColour::Tertiary, STR_NONE, STR_INVISIBLE_TREES),
|
||||
MakeWidget({ 2, 42}, INVISIBLE_SIZE, WindowWidgetType::FlatBtn, WindowColour::Tertiary, STR_NONE, STR_INVISIBLE_VEGETATION),
|
||||
MakeWidget({ 27, 42}, INVISIBLE_SIZE, WindowWidgetType::FlatBtn, WindowColour::Tertiary, STR_NONE, STR_INVISIBLE_SCENERY),
|
||||
MakeWidget({ 52, 42}, INVISIBLE_SIZE, WindowWidgetType::FlatBtn, WindowColour::Tertiary, STR_NONE, STR_INVISIBLE_PATHS),
|
||||
MakeWidget({ 77, 42}, INVISIBLE_SIZE, WindowWidgetType::FlatBtn, WindowColour::Tertiary, STR_NONE, STR_INVISIBLE_RIDES),
|
||||
@@ -124,7 +124,7 @@ public:
|
||||
if (w != nullptr)
|
||||
wflags = w->viewport->flags;
|
||||
|
||||
SetWidgetPressed(WIDX_HIDE_TREES, (wflags & VIEWPORT_FLAG_HIDE_TREES));
|
||||
SetWidgetPressed(WIDX_HIDE_VEGETATION, (wflags & VIEWPORT_FLAG_HIDE_VEGETATION));
|
||||
SetWidgetPressed(WIDX_HIDE_SCENERY, (wflags & VIEWPORT_FLAG_HIDE_SCENERY));
|
||||
SetWidgetPressed(WIDX_HIDE_PATHS, (wflags & VIEWPORT_FLAG_HIDE_PATHS));
|
||||
SetWidgetPressed(WIDX_HIDE_RIDES, (wflags & VIEWPORT_FLAG_HIDE_RIDES));
|
||||
@@ -132,14 +132,14 @@ public:
|
||||
SetWidgetPressed(WIDX_HIDE_SUPPORTS, (wflags & VIEWPORT_FLAG_HIDE_SUPPORTS));
|
||||
SetWidgetPressed(WIDX_HIDE_GUESTS, (wflags & VIEWPORT_FLAG_HIDE_GUESTS));
|
||||
SetWidgetPressed(WIDX_HIDE_STAFF, (wflags & VIEWPORT_FLAG_HIDE_STAFF));
|
||||
SetWidgetPressed(WIDX_INVISIBLE_TREES, (wflags & VIEWPORT_FLAG_INVISIBLE_TREES));
|
||||
SetWidgetPressed(WIDX_INVISIBLE_VEGETATION, (wflags & VIEWPORT_FLAG_INVISIBLE_VEGETATION));
|
||||
SetWidgetPressed(WIDX_INVISIBLE_SCENERY, (wflags & VIEWPORT_FLAG_INVISIBLE_SCENERY));
|
||||
SetWidgetPressed(WIDX_INVISIBLE_PATHS, (wflags & VIEWPORT_FLAG_INVISIBLE_PATHS));
|
||||
SetWidgetPressed(WIDX_INVISIBLE_RIDES, (wflags & VIEWPORT_FLAG_INVISIBLE_RIDES));
|
||||
SetWidgetPressed(WIDX_INVISIBLE_VEHICLES, (wflags & VIEWPORT_FLAG_INVISIBLE_VEHICLES));
|
||||
SetWidgetPressed(WIDX_INVISIBLE_SUPPORTS, (wflags & VIEWPORT_FLAG_INVISIBLE_SUPPORTS));
|
||||
|
||||
for (rct_widgetindex i = WIDX_INVISIBLE_TREES; i <= WIDX_INVISIBLE_SUPPORTS; i++)
|
||||
for (rct_widgetindex i = WIDX_INVISIBLE_VEGETATION; i <= WIDX_INVISIBLE_SUPPORTS; i++)
|
||||
{
|
||||
widgets[i].image = IsWidgetPressed(i) ? SPR_G2_BUTTON_HIDE_FULL : SPR_G2_BUTTON_HIDE_PARTIAL;
|
||||
}
|
||||
@@ -177,8 +177,8 @@ private:
|
||||
case WIDX_HIDE_SCENERY:
|
||||
wflags ^= VIEWPORT_FLAG_HIDE_SCENERY;
|
||||
break;
|
||||
case WIDX_HIDE_TREES:
|
||||
wflags ^= VIEWPORT_FLAG_HIDE_TREES;
|
||||
case WIDX_HIDE_VEGETATION:
|
||||
wflags ^= VIEWPORT_FLAG_HIDE_VEGETATION;
|
||||
break;
|
||||
case WIDX_HIDE_PATHS:
|
||||
wflags ^= VIEWPORT_FLAG_HIDE_PATHS;
|
||||
@@ -201,9 +201,9 @@ private:
|
||||
gConfigGeneral.invisible_scenery = wflags & VIEWPORT_FLAG_INVISIBLE_SCENERY;
|
||||
config_save_default();
|
||||
break;
|
||||
case WIDX_INVISIBLE_TREES:
|
||||
wflags ^= VIEWPORT_FLAG_INVISIBLE_TREES;
|
||||
gConfigGeneral.invisible_trees = wflags & VIEWPORT_FLAG_INVISIBLE_TREES;
|
||||
case WIDX_INVISIBLE_VEGETATION:
|
||||
wflags ^= VIEWPORT_FLAG_INVISIBLE_VEGETATION;
|
||||
gConfigGeneral.invisible_trees = wflags & VIEWPORT_FLAG_INVISIBLE_VEGETATION;
|
||||
config_save_default();
|
||||
break;
|
||||
case WIDX_INVISIBLE_PATHS:
|
||||
|
||||
@@ -1324,7 +1324,7 @@ void viewport_set_visibility(uint8_t mode)
|
||||
| VIEWPORT_FLAG_HIDE_STAFF | VIEWPORT_FLAG_HIDE_BASE | VIEWPORT_FLAG_HIDE_VERTICAL
|
||||
| VIEWPORT_FLAG_HIDE_VEHICLES | VIEWPORT_FLAG_INVISIBLE_RIDES | VIEWPORT_FLAG_INVISIBLE_VEHICLES
|
||||
| VIEWPORT_FLAG_HIDE_SUPPORTS | VIEWPORT_FLAG_INVISIBLE_PATHS | VIEWPORT_FLAG_INVISIBLE_SCENERY
|
||||
| VIEWPORT_FLAG_HIDE_TREES | VIEWPORT_FLAG_INVISIBLE_TREES;
|
||||
| VIEWPORT_FLAG_HIDE_VEGETATION | VIEWPORT_FLAG_INVISIBLE_VEGETATION;
|
||||
|
||||
invalidate += vp->flags & mask;
|
||||
vp->flags &= ~mask;
|
||||
@@ -1353,16 +1353,55 @@ void viewport_set_visibility(uint8_t mode)
|
||||
}
|
||||
}
|
||||
|
||||
static bool IsTileElementTree(const TileElement* tileElement)
|
||||
static bool IsCursorIdVegetation(CursorID cursor)
|
||||
{
|
||||
auto sceneryItem = tileElement->AsSmallScenery();
|
||||
if (sceneryItem != nullptr)
|
||||
switch (cursor)
|
||||
{
|
||||
auto sceneryEntry = sceneryItem->GetEntry();
|
||||
if (sceneryEntry != nullptr && sceneryEntry->HasFlag(SMALL_SCENERY_FLAG_IS_TREE))
|
||||
{
|
||||
case CursorID::TreeDown:
|
||||
case CursorID::FlowerDown:
|
||||
return true;
|
||||
default:
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
static bool IsTileElementVegetation(const TileElement* tileElement)
|
||||
{
|
||||
switch (tileElement->GetType())
|
||||
{
|
||||
case TileElementType::SmallScenery:
|
||||
{
|
||||
auto sceneryItem = tileElement->AsSmallScenery();
|
||||
auto sceneryEntry = sceneryItem->GetEntry();
|
||||
if (sceneryEntry != nullptr
|
||||
&& (sceneryEntry->HasFlag(SMALL_SCENERY_FLAG_IS_TREE) || IsCursorIdVegetation(sceneryEntry->tool_id)))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
break;
|
||||
}
|
||||
case TileElementType::LargeScenery:
|
||||
{
|
||||
auto sceneryItem = tileElement->AsLargeScenery();
|
||||
auto sceneryEntry = sceneryItem->GetEntry();
|
||||
if (sceneryEntry != nullptr && IsCursorIdVegetation(sceneryEntry->tool_id))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
break;
|
||||
}
|
||||
case TileElementType::Wall:
|
||||
{
|
||||
auto sceneryItem = tileElement->AsWall();
|
||||
auto sceneryEntry = sceneryItem->GetEntry();
|
||||
if (sceneryEntry != nullptr && IsCursorIdVegetation(sceneryEntry->tool_id))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
break;
|
||||
}
|
||||
default:
|
||||
break;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
@@ -1415,34 +1454,31 @@ VisibilityKind GetPaintStructVisibility(const paint_struct* ps, uint32_t viewFla
|
||||
}
|
||||
break;
|
||||
case ViewportInteractionItem::Scenery:
|
||||
if (ps->tileElement != nullptr && IsTileElementTree(ps->tileElement))
|
||||
case ViewportInteractionItem::LargeScenery:
|
||||
case ViewportInteractionItem::Wall:
|
||||
if (ps->tileElement != nullptr)
|
||||
{
|
||||
if (viewFlags & VIEWPORT_FLAG_HIDE_TREES)
|
||||
if (IsTileElementVegetation(ps->tileElement))
|
||||
{
|
||||
return (viewFlags & VIEWPORT_FLAG_INVISIBLE_TREES) ? VisibilityKind::Hidden : VisibilityKind::Partial;
|
||||
if (viewFlags & VIEWPORT_FLAG_HIDE_VEGETATION)
|
||||
{
|
||||
return (viewFlags & VIEWPORT_FLAG_INVISIBLE_VEGETATION) ? VisibilityKind::Hidden
|
||||
: VisibilityKind::Partial;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if (viewFlags & VIEWPORT_FLAG_HIDE_SCENERY)
|
||||
{
|
||||
return (viewFlags & VIEWPORT_FLAG_INVISIBLE_SCENERY) ? VisibilityKind::Hidden : VisibilityKind::Partial;
|
||||
}
|
||||
}
|
||||
}
|
||||
else if (viewFlags & VIEWPORT_FLAG_HIDE_SCENERY)
|
||||
{
|
||||
return (viewFlags & VIEWPORT_FLAG_INVISIBLE_SCENERY) ? VisibilityKind::Hidden : VisibilityKind::Partial;
|
||||
}
|
||||
break;
|
||||
case ViewportInteractionItem::Wall:
|
||||
if (viewFlags & VIEWPORT_FLAG_HIDE_SCENERY)
|
||||
{
|
||||
return (viewFlags & VIEWPORT_FLAG_INVISIBLE_SCENERY) ? VisibilityKind::Hidden : VisibilityKind::Partial;
|
||||
}
|
||||
if (viewFlags & VIEWPORT_FLAG_UNDERGROUND_INSIDE)
|
||||
if (ps->sprite_type == ViewportInteractionItem::Wall && (viewFlags & VIEWPORT_FLAG_UNDERGROUND_INSIDE))
|
||||
{
|
||||
return VisibilityKind::Partial;
|
||||
}
|
||||
break;
|
||||
case ViewportInteractionItem::LargeScenery:
|
||||
if (viewFlags & VIEWPORT_FLAG_HIDE_SCENERY)
|
||||
{
|
||||
return (viewFlags & VIEWPORT_FLAG_INVISIBLE_SCENERY) ? VisibilityKind::Hidden : VisibilityKind::Partial;
|
||||
}
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
@@ -50,7 +50,7 @@ enum
|
||||
|
||||
VIEWPORT_FLAG_HIDE_RIDES = (1 << 1),
|
||||
VIEWPORT_FLAG_HIDE_VEHICLES = (1 << 20),
|
||||
VIEWPORT_FLAG_HIDE_TREES = (1 << 21),
|
||||
VIEWPORT_FLAG_HIDE_VEGETATION = (1 << 21),
|
||||
VIEWPORT_FLAG_HIDE_SCENERY = (1 << 2),
|
||||
VIEWPORT_FLAG_HIDE_PATHS = (1 << 16),
|
||||
VIEWPORT_FLAG_HIDE_SUPPORTS = (1 << 3),
|
||||
@@ -59,7 +59,7 @@ enum
|
||||
|
||||
VIEWPORT_FLAG_INVISIBLE_RIDES = (1 << 24),
|
||||
VIEWPORT_FLAG_INVISIBLE_VEHICLES = (1 << 25),
|
||||
VIEWPORT_FLAG_INVISIBLE_TREES = (1 << 26),
|
||||
VIEWPORT_FLAG_INVISIBLE_VEGETATION = (1 << 26),
|
||||
VIEWPORT_FLAG_INVISIBLE_SCENERY = (1 << 27),
|
||||
VIEWPORT_FLAG_INVISIBLE_PATHS = (1 << 28),
|
||||
VIEWPORT_FLAG_INVISIBLE_SUPPORTS = (1 << 29),
|
||||
|
||||
@@ -3928,23 +3928,23 @@ enum : uint16_t
|
||||
STR_ADJUST_SMALLER_PATROL_AREA_TIP = 6469,
|
||||
STR_ADJUST_LARGER_PATROL_AREA_TIP = 6470,
|
||||
|
||||
STR_SEE_THROUGH_VEHICLES = 6471,
|
||||
STR_SEE_THROUGH_TREES = 6472,
|
||||
STR_INVISIBLE_RIDES = 6473,
|
||||
STR_INVISIBLE_SCENERY = 6474,
|
||||
STR_INVISIBLE_TREES = 6475,
|
||||
STR_INVISIBLE_PATHS = 6476,
|
||||
STR_INVISIBLE_GUESTS = 6477,
|
||||
STR_INVISIBLE_STAFF = 6478,
|
||||
STR_TRANSPARENCY_OPTIONS = 6479,
|
||||
STR_TRANSPARENCY_OPTIONS_TITLE = 6480,
|
||||
STR_INVISIBLE_VEHICLES = 6481,
|
||||
STR_SEE_THROUGH_SUPPORTS = 6482,
|
||||
STR_SEE_THROUGH_VEGETATION = 6471,
|
||||
STR_SEE_THROUGH_VEHICLES = 6472,
|
||||
STR_SEE_THROUGH_SUPPORTS = 6473,
|
||||
STR_SEE_THROUGH_GUESTS = 6474,
|
||||
STR_SEE_THROUGH_STAFF = 6475,
|
||||
STR_INVISIBLE_VEGETATION = 6476,
|
||||
STR_INVISIBLE_SCENERY = 6477,
|
||||
STR_INVISIBLE_PATHS = 6478,
|
||||
STR_INVISIBLE_RIDES = 6479,
|
||||
STR_INVISIBLE_VEHICLES = 6480,
|
||||
STR_TRANSPARENCY_OPTIONS = 6481,
|
||||
STR_TRANSPARENCY_OPTIONS_TITLE = 6482,
|
||||
STR_SHORTCUT_OPEN_TRANSPARENCY_OPTIONS = 6483,
|
||||
STR_SHORTCUT_SEE_THROUGH_VEHICLES_TOGGLE = 6484,
|
||||
STR_SHORTCUT_SEE_THROUGH_TREES_TOGGLE = 6485,
|
||||
STR_SHORTCUT_INVISIBLE_GUESTS_TOGGLE = 6486,
|
||||
STR_SHORTCUT_INVISIBLE_STAFF_TOGGLE = 6487,
|
||||
STR_SHORTCUT_SEE_THROUGH_VEGETATION_TOGGLE = 6484,
|
||||
STR_SHORTCUT_SEE_THROUGH_VEHICLES_TOGGLE = 6485,
|
||||
STR_SHORTCUT_SEE_THROUGH_GUESTS_TOGGLE = 6486,
|
||||
STR_SHORTCUT_SEE_THROUGH_STAFF_TOGGLE = 6487,
|
||||
|
||||
// Have to include resource strings (from scenarios and objects) for the time being now that language is partially working
|
||||
/* MAX_STR_COUNT = 32768 */ // MAX_STR_COUNT - upper limit for number of strings, not the current count strings
|
||||
|
||||
Reference in New Issue
Block a user