mirror of https://github.com/OpenRCT2/OpenRCT2.git
Rename TrackBank to TrackRoll
This commit is contained in:
parent
cffc55e165
commit
95c1adc813
|
@ -42,7 +42,7 @@ void RideConstructNew(RideSelection listItem)
|
||||||
}
|
}
|
||||||
|
|
||||||
SpecialElementsDropdownState BuildSpecialElementsList(
|
SpecialElementsDropdownState BuildSpecialElementsList(
|
||||||
const Ride& currentRide, uint8_t buildDirection, TrackPitch buildSlope, TrackBank buildBank, RideConstructionState state)
|
const Ride& currentRide, uint8_t buildDirection, TrackPitch buildSlope, TrackRoll buildBank, RideConstructionState state)
|
||||||
{
|
{
|
||||||
auto buildDirectionIsDiagonal = TrackPieceDirectionIsDiagonal(buildDirection);
|
auto buildDirectionIsDiagonal = TrackPieceDirectionIsDiagonal(buildDirection);
|
||||||
SpecialElementsDropdownState list;
|
SpecialElementsDropdownState list;
|
||||||
|
|
|
@ -159,6 +159,6 @@ struct SpecialElementsDropdownState
|
||||||
};
|
};
|
||||||
|
|
||||||
SpecialElementsDropdownState BuildSpecialElementsList(
|
SpecialElementsDropdownState BuildSpecialElementsList(
|
||||||
const Ride& currentRide, uint8_t buildDirection, TrackPitch buildSlope, TrackBank buildBank, RideConstructionState state);
|
const Ride& currentRide, uint8_t buildDirection, TrackPitch buildSlope, TrackRoll buildBank, RideConstructionState state);
|
||||||
|
|
||||||
void RideConstructNew(RideSelection listItem);
|
void RideConstructNew(RideSelection listItem);
|
||||||
|
|
|
@ -227,14 +227,14 @@ public:
|
||||||
|
|
||||||
_currentTrackCurve = currentRide->GetRideTypeDescriptor().StartTrackPiece | RideConstructionSpecialPieceSelected;
|
_currentTrackCurve = currentRide->GetRideTypeDescriptor().StartTrackPiece | RideConstructionSpecialPieceSelected;
|
||||||
_currentTrackSlopeEnd = TrackPitch::None;
|
_currentTrackSlopeEnd = TrackPitch::None;
|
||||||
_currentTrackBankEnd = TrackBank::None;
|
_currentTrackRollEnd = TrackRoll::None;
|
||||||
_currentTrackLiftHill = 0;
|
_currentTrackLiftHill = 0;
|
||||||
_currentTrackAlternative = RIDE_TYPE_NO_ALTERNATIVES;
|
_currentTrackAlternative = RIDE_TYPE_NO_ALTERNATIVES;
|
||||||
|
|
||||||
if (currentRide->GetRideTypeDescriptor().HasFlag(RIDE_TYPE_FLAG_START_CONSTRUCTION_INVERTED))
|
if (currentRide->GetRideTypeDescriptor().HasFlag(RIDE_TYPE_FLAG_START_CONSTRUCTION_INVERTED))
|
||||||
_currentTrackAlternative |= RIDE_TYPE_ALTERNATIVE_TRACK_TYPE;
|
_currentTrackAlternative |= RIDE_TYPE_ALTERNATIVE_TRACK_TYPE;
|
||||||
|
|
||||||
_previousTrackBankEnd = TrackBank::None;
|
_previousTrackRollEnd = TrackRoll::None;
|
||||||
_previousTrackSlopeEnd = TrackPitch::None;
|
_previousTrackSlopeEnd = TrackPitch::None;
|
||||||
|
|
||||||
_currentTrackPieceDirection = 0;
|
_currentTrackPieceDirection = 0;
|
||||||
|
@ -396,7 +396,7 @@ public:
|
||||||
{
|
{
|
||||||
disabledWidgets |= (1uLL << WIDX_BANK_LEFT) | (1uLL << WIDX_BANK_RIGHT);
|
disabledWidgets |= (1uLL << WIDX_BANK_LEFT) | (1uLL << WIDX_BANK_RIGHT);
|
||||||
}
|
}
|
||||||
else if (_currentTrackBankEnd != TrackBank::None)
|
else if (_currentTrackRollEnd != TrackRoll::None)
|
||||||
{
|
{
|
||||||
disabledWidgets |= (1uLL << WIDX_SLOPE_DOWN) | (1uLL << WIDX_SLOPE_UP);
|
disabledWidgets |= (1uLL << WIDX_SLOPE_DOWN) | (1uLL << WIDX_SLOPE_UP);
|
||||||
}
|
}
|
||||||
|
@ -409,7 +409,7 @@ public:
|
||||||
|| _currentTrackSlopeEnd == TrackPitch::Up25 || _currentTrackSlopeEnd == TrackPitch::Up60)
|
|| _currentTrackSlopeEnd == TrackPitch::Up25 || _currentTrackSlopeEnd == TrackPitch::Up60)
|
||||||
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 != TrackPitch::None || _previousTrackBankEnd != TrackBank::None)
|
if ((_previousTrackSlopeEnd != TrackPitch::None || _previousTrackRollEnd != TrackRoll::None)
|
||||||
&& !(_currentTrackLiftHill & CONSTRUCTION_LIFT_HILL_SELECTED))
|
&& !(_currentTrackLiftHill & CONSTRUCTION_LIFT_HILL_SELECTED))
|
||||||
disabledWidgets |= (1uLL << WIDX_SLOPE_UP);
|
disabledWidgets |= (1uLL << WIDX_SLOPE_UP);
|
||||||
}
|
}
|
||||||
|
@ -425,7 +425,7 @@ public:
|
||||||
case EnumValue(TrackCurve::Left):
|
case EnumValue(TrackCurve::Left):
|
||||||
case EnumValue(TrackCurve::LeftLarge):
|
case EnumValue(TrackCurve::LeftLarge):
|
||||||
disabledWidgets |= (1uLL << WIDX_BANK_RIGHT);
|
disabledWidgets |= (1uLL << WIDX_BANK_RIGHT);
|
||||||
if (_previousTrackBankEnd == TrackBank::None)
|
if (_previousTrackRollEnd == TrackRoll::None)
|
||||||
{
|
{
|
||||||
disabledWidgets |= (1uLL << WIDX_BANK_LEFT);
|
disabledWidgets |= (1uLL << WIDX_BANK_LEFT);
|
||||||
}
|
}
|
||||||
|
@ -439,7 +439,7 @@ public:
|
||||||
case EnumValue(TrackCurve::RightSmall):
|
case EnumValue(TrackCurve::RightSmall):
|
||||||
case EnumValue(TrackCurve::RightVerySmall):
|
case EnumValue(TrackCurve::RightVerySmall):
|
||||||
disabledWidgets |= (1uLL << WIDX_BANK_LEFT);
|
disabledWidgets |= (1uLL << WIDX_BANK_LEFT);
|
||||||
if (_previousTrackBankEnd == TrackBank::None)
|
if (_previousTrackRollEnd == TrackRoll::None)
|
||||||
{
|
{
|
||||||
disabledWidgets |= (1uLL << WIDX_BANK_RIGHT);
|
disabledWidgets |= (1uLL << WIDX_BANK_RIGHT);
|
||||||
}
|
}
|
||||||
|
@ -451,7 +451,7 @@ public:
|
||||||
}
|
}
|
||||||
if (!IsTrackEnabled(TRACK_SLOPE_ROLL_BANKING))
|
if (!IsTrackEnabled(TRACK_SLOPE_ROLL_BANKING))
|
||||||
{
|
{
|
||||||
if (_currentTrackBankEnd != TrackBank::None)
|
if (_currentTrackRollEnd != TrackRoll::None)
|
||||||
{
|
{
|
||||||
disabledWidgets |= (1uLL << WIDX_SLOPE_DOWN) | (1uLL << WIDX_SLOPE_UP);
|
disabledWidgets |= (1uLL << WIDX_SLOPE_DOWN) | (1uLL << WIDX_SLOPE_UP);
|
||||||
}
|
}
|
||||||
|
@ -548,17 +548,17 @@ public:
|
||||||
disabledWidgets &= ~(1uLL << WIDX_SLOPE_UP_STEEP);
|
disabledWidgets &= ~(1uLL << WIDX_SLOPE_UP_STEEP);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (_previousTrackBankEnd == TrackBank::Left)
|
if (_previousTrackRollEnd == TrackRoll::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 == TrackBank::Right)
|
if (_previousTrackRollEnd == TrackRoll::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 (_currentTrackRollEnd != _previousTrackRollEnd)
|
||||||
{
|
{
|
||||||
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);
|
||||||
|
@ -594,7 +594,7 @@ public:
|
||||||
disabledWidgets |= (1uLL << WIDX_BANK_LEFT) | (1uLL << WIDX_BANK_RIGHT);
|
disabledWidgets |= (1uLL << WIDX_BANK_LEFT) | (1uLL << WIDX_BANK_RIGHT);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (_currentTrackBankEnd != TrackBank::None || _previousTrackBankEnd != TrackBank::None)
|
if (_currentTrackRollEnd != TrackRoll::None || _previousTrackRollEnd != TrackRoll::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);
|
||||||
}
|
}
|
||||||
|
@ -628,7 +628,7 @@ public:
|
||||||
disabledWidgets |= (1uLL << WIDX_CHAIN_LIFT);
|
disabledWidgets |= (1uLL << WIDX_CHAIN_LIFT);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (_previousTrackBankEnd == TrackBank::UpsideDown)
|
if (_previousTrackRollEnd == TrackRoll::UpsideDown)
|
||||||
{
|
{
|
||||||
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)
|
||||||
|
@ -664,17 +664,17 @@ public:
|
||||||
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 == TrackBank::Left)
|
if (_currentTrackRollEnd == TrackRoll::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 == TrackBank::Right)
|
if (_currentTrackRollEnd == TrackRoll::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 == TrackBank::None)
|
if (_currentTrackRollEnd == TrackRoll::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);
|
||||||
|
@ -765,7 +765,7 @@ public:
|
||||||
if (_currentTrackSlopeEnd == TrackPitch::None && _currentTrackSlopeEnd == _previousTrackSlopeEnd)
|
if (_currentTrackSlopeEnd == TrackPitch::None && _currentTrackSlopeEnd == _previousTrackSlopeEnd)
|
||||||
{
|
{
|
||||||
// If the bank is none, attempt to show unbanked quarter helixes
|
// If the bank is none, attempt to show unbanked quarter helixes
|
||||||
if (_currentTrackBankEnd == TrackBank::None
|
if (_currentTrackRollEnd == TrackRoll::None
|
||||||
&& (_currentTrackCurve == EnumValue(TrackCurve::Left) || _currentTrackCurve == EnumValue(TrackCurve::Right)))
|
&& (_currentTrackCurve == EnumValue(TrackCurve::Left) || _currentTrackCurve == EnumValue(TrackCurve::Right)))
|
||||||
{
|
{
|
||||||
if (IsTrackEnabled(TRACK_HELIX_DOWN_UNBANKED_QUARTER))
|
if (IsTrackEnabled(TRACK_HELIX_DOWN_UNBANKED_QUARTER))
|
||||||
|
@ -776,7 +776,7 @@ public:
|
||||||
// If the track is banked left or right and curvature is standard size (2.5 tile radius), attempt to show buttons
|
// If the track is banked left or right and curvature is standard size (2.5 tile radius), attempt to show buttons
|
||||||
// for half or quarter helixes
|
// for half or quarter helixes
|
||||||
else if (
|
else if (
|
||||||
(_currentTrackBankEnd == TrackBank::Left || _currentTrackBankEnd == TrackBank::Right)
|
(_currentTrackRollEnd == TrackRoll::Left || _currentTrackRollEnd == TrackRoll::Right)
|
||||||
&& (_currentTrackCurve == EnumValue(TrackCurve::Left) || _currentTrackCurve == EnumValue(TrackCurve::Right)))
|
&& (_currentTrackCurve == EnumValue(TrackCurve::Left) || _currentTrackCurve == EnumValue(TrackCurve::Right)))
|
||||||
{
|
{
|
||||||
if (IsTrackEnabled(TRACK_HELIX_DOWN_BANKED_HALF) || IsTrackEnabled(TRACK_HELIX_DOWN_BANKED_QUARTER))
|
if (IsTrackEnabled(TRACK_HELIX_DOWN_BANKED_HALF) || IsTrackEnabled(TRACK_HELIX_DOWN_BANKED_QUARTER))
|
||||||
|
@ -787,7 +787,7 @@ public:
|
||||||
// If the track is banked left or right and curvature is small size (1.5 tile radius), attempt to show buttons for
|
// If the track is banked left or right and curvature is small size (1.5 tile radius), attempt to show buttons for
|
||||||
// half helixes
|
// half helixes
|
||||||
else if (
|
else if (
|
||||||
(_currentTrackBankEnd == TrackBank::Left || _currentTrackBankEnd == TrackBank::Right)
|
(_currentTrackRollEnd == TrackRoll::Left || _currentTrackRollEnd == TrackRoll::Right)
|
||||||
&& (_currentTrackCurve == EnumValue(TrackCurve::LeftSmall)
|
&& (_currentTrackCurve == EnumValue(TrackCurve::LeftSmall)
|
||||||
|| _currentTrackCurve == EnumValue(TrackCurve::RightSmall)))
|
|| _currentTrackCurve == EnumValue(TrackCurve::RightSmall)))
|
||||||
{
|
{
|
||||||
|
@ -804,7 +804,7 @@ public:
|
||||||
if (_currentTrackCurve == EnumValue(TrackCurve::LeftSmall)
|
if (_currentTrackCurve == EnumValue(TrackCurve::LeftSmall)
|
||||||
|| _currentTrackCurve == EnumValue(TrackCurve::RightSmall))
|
|| _currentTrackCurve == EnumValue(TrackCurve::RightSmall))
|
||||||
{
|
{
|
||||||
if (_currentTrackSlopeEnd == TrackPitch::None && _previousTrackBankEnd != TrackBank::None
|
if (_currentTrackSlopeEnd == TrackPitch::None && _previousTrackRollEnd != TrackRoll::None
|
||||||
&& (!currentRide->GetRideTypeDescriptor().HasFlag(RIDE_TYPE_FLAG_UP_INCLINE_REQUIRES_LIFT)
|
&& (!currentRide->GetRideTypeDescriptor().HasFlag(RIDE_TYPE_FLAG_UP_INCLINE_REQUIRES_LIFT)
|
||||||
|| gCheatsEnableAllDrawableTrackPieces))
|
|| gCheatsEnableAllDrawableTrackPieces))
|
||||||
{
|
{
|
||||||
|
@ -817,7 +817,7 @@ public:
|
||||||
if (_currentTrackCurve == EnumValue(TrackCurve::LeftSmall)
|
if (_currentTrackCurve == EnumValue(TrackCurve::LeftSmall)
|
||||||
|| _currentTrackCurve == EnumValue(TrackCurve::RightSmall))
|
|| _currentTrackCurve == EnumValue(TrackCurve::RightSmall))
|
||||||
{
|
{
|
||||||
if (_currentTrackSlopeEnd == TrackPitch::None && _previousTrackBankEnd != TrackBank::None)
|
if (_currentTrackSlopeEnd == TrackPitch::None && _previousTrackRollEnd != TrackRoll::None)
|
||||||
{
|
{
|
||||||
disabledWidgets &= ~(1uLL << WIDX_SLOPE_DOWN);
|
disabledWidgets &= ~(1uLL << WIDX_SLOPE_DOWN);
|
||||||
}
|
}
|
||||||
|
@ -1060,7 +1060,7 @@ public:
|
||||||
case WIDX_STRAIGHT:
|
case WIDX_STRAIGHT:
|
||||||
RideConstructionInvalidateCurrentTrack();
|
RideConstructionInvalidateCurrentTrack();
|
||||||
if (_currentTrackCurve != EnumValue(TrackCurve::None))
|
if (_currentTrackCurve != EnumValue(TrackCurve::None))
|
||||||
_currentTrackBankEnd = TrackBank::None;
|
_currentTrackRollEnd = TrackRoll::None;
|
||||||
_currentTrackCurve = EnumValue(TrackCurve::None);
|
_currentTrackCurve = EnumValue(TrackCurve::None);
|
||||||
_currentTrackPrice = MONEY64_UNDEFINED;
|
_currentTrackPrice = MONEY64_UNDEFINED;
|
||||||
WindowRideConstructionUpdateActiveElements();
|
WindowRideConstructionUpdateActiveElements();
|
||||||
|
@ -1069,14 +1069,14 @@ public:
|
||||||
RideConstructionInvalidateCurrentTrack();
|
RideConstructionInvalidateCurrentTrack();
|
||||||
if (IsTrackEnabled(TRACK_HELIX_DOWN_BANKED_HALF) || IsTrackEnabled(TRACK_HELIX_UP_BANKED_HALF))
|
if (IsTrackEnabled(TRACK_HELIX_DOWN_BANKED_HALF) || IsTrackEnabled(TRACK_HELIX_UP_BANKED_HALF))
|
||||||
{
|
{
|
||||||
if (_currentTrackCurve == EnumValue(TrackCurve::Left) && _currentTrackBankEnd == TrackBank::Left)
|
if (_currentTrackCurve == EnumValue(TrackCurve::Left) && _currentTrackRollEnd == TrackRoll::Left)
|
||||||
{
|
{
|
||||||
_currentTrackCurve = TrackElemType::LeftHalfBankedHelixDownLarge | RideConstructionSpecialPieceSelected;
|
_currentTrackCurve = TrackElemType::LeftHalfBankedHelixDownLarge | RideConstructionSpecialPieceSelected;
|
||||||
_currentTrackPrice = MONEY64_UNDEFINED;
|
_currentTrackPrice = MONEY64_UNDEFINED;
|
||||||
WindowRideConstructionUpdateActiveElements();
|
WindowRideConstructionUpdateActiveElements();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
if (_currentTrackCurve == EnumValue(TrackCurve::Right) && _currentTrackBankEnd == TrackBank::Right)
|
if (_currentTrackCurve == EnumValue(TrackCurve::Right) && _currentTrackRollEnd == TrackRoll::Right)
|
||||||
{
|
{
|
||||||
_currentTrackCurve = TrackElemType::RightHalfBankedHelixDownLarge
|
_currentTrackCurve = TrackElemType::RightHalfBankedHelixDownLarge
|
||||||
| RideConstructionSpecialPieceSelected;
|
| RideConstructionSpecialPieceSelected;
|
||||||
|
@ -1084,14 +1084,14 @@ public:
|
||||||
WindowRideConstructionUpdateActiveElements();
|
WindowRideConstructionUpdateActiveElements();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
if (_currentTrackCurve == EnumValue(TrackCurve::LeftSmall) && _currentTrackBankEnd == TrackBank::Left)
|
if (_currentTrackCurve == EnumValue(TrackCurve::LeftSmall) && _currentTrackRollEnd == TrackRoll::Left)
|
||||||
{
|
{
|
||||||
_currentTrackCurve = TrackElemType::LeftHalfBankedHelixDownSmall | RideConstructionSpecialPieceSelected;
|
_currentTrackCurve = TrackElemType::LeftHalfBankedHelixDownSmall | RideConstructionSpecialPieceSelected;
|
||||||
_currentTrackPrice = MONEY64_UNDEFINED;
|
_currentTrackPrice = MONEY64_UNDEFINED;
|
||||||
WindowRideConstructionUpdateActiveElements();
|
WindowRideConstructionUpdateActiveElements();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
if (_currentTrackCurve == EnumValue(TrackCurve::RightSmall) && _currentTrackBankEnd == TrackBank::Right)
|
if (_currentTrackCurve == EnumValue(TrackCurve::RightSmall) && _currentTrackRollEnd == TrackRoll::Right)
|
||||||
{
|
{
|
||||||
_currentTrackCurve = TrackElemType::RightHalfBankedHelixDownSmall
|
_currentTrackCurve = TrackElemType::RightHalfBankedHelixDownSmall
|
||||||
| RideConstructionSpecialPieceSelected;
|
| RideConstructionSpecialPieceSelected;
|
||||||
|
@ -1102,7 +1102,7 @@ public:
|
||||||
}
|
}
|
||||||
if (IsTrackEnabled(TRACK_HELIX_DOWN_BANKED_QUARTER) || IsTrackEnabled(TRACK_HELIX_UP_BANKED_QUARTER))
|
if (IsTrackEnabled(TRACK_HELIX_DOWN_BANKED_QUARTER) || IsTrackEnabled(TRACK_HELIX_UP_BANKED_QUARTER))
|
||||||
{
|
{
|
||||||
if (_currentTrackCurve == EnumValue(TrackCurve::Left) && _currentTrackBankEnd == TrackBank::Left)
|
if (_currentTrackCurve == EnumValue(TrackCurve::Left) && _currentTrackRollEnd == TrackRoll::Left)
|
||||||
{
|
{
|
||||||
_currentTrackCurve = TrackElemType::LeftQuarterBankedHelixLargeDown
|
_currentTrackCurve = TrackElemType::LeftQuarterBankedHelixLargeDown
|
||||||
| RideConstructionSpecialPieceSelected;
|
| RideConstructionSpecialPieceSelected;
|
||||||
|
@ -1110,7 +1110,7 @@ public:
|
||||||
WindowRideConstructionUpdateActiveElements();
|
WindowRideConstructionUpdateActiveElements();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
if (_currentTrackCurve == EnumValue(TrackCurve::Right) && _currentTrackBankEnd == TrackBank::Right)
|
if (_currentTrackCurve == EnumValue(TrackCurve::Right) && _currentTrackRollEnd == TrackRoll::Right)
|
||||||
{
|
{
|
||||||
_currentTrackCurve = TrackElemType::RightQuarterBankedHelixLargeDown
|
_currentTrackCurve = TrackElemType::RightQuarterBankedHelixLargeDown
|
||||||
| RideConstructionSpecialPieceSelected;
|
| RideConstructionSpecialPieceSelected;
|
||||||
|
@ -1121,7 +1121,7 @@ public:
|
||||||
}
|
}
|
||||||
if (IsTrackEnabled(TRACK_HELIX_DOWN_UNBANKED_QUARTER) || IsTrackEnabled(TRACK_HELIX_UP_UNBANKED_QUARTER))
|
if (IsTrackEnabled(TRACK_HELIX_DOWN_UNBANKED_QUARTER) || IsTrackEnabled(TRACK_HELIX_UP_UNBANKED_QUARTER))
|
||||||
{
|
{
|
||||||
if (_currentTrackBankEnd == TrackBank::None)
|
if (_currentTrackRollEnd == TrackRoll::None)
|
||||||
{
|
{
|
||||||
if (_currentTrackCurve == EnumValue(TrackCurve::Left))
|
if (_currentTrackCurve == EnumValue(TrackCurve::Left))
|
||||||
{
|
{
|
||||||
|
@ -1152,9 +1152,9 @@ public:
|
||||||
break;
|
break;
|
||||||
case WIDX_SLOPE_DOWN:
|
case WIDX_SLOPE_DOWN:
|
||||||
RideConstructionInvalidateCurrentTrack();
|
RideConstructionInvalidateCurrentTrack();
|
||||||
if (_rideConstructionState == RideConstructionState::Back && _currentTrackBankEnd != TrackBank::None)
|
if (_rideConstructionState == RideConstructionState::Back && _currentTrackRollEnd != TrackRoll::None)
|
||||||
{
|
{
|
||||||
_currentTrackBankEnd = TrackBank::None;
|
_currentTrackRollEnd = TrackRoll::None;
|
||||||
}
|
}
|
||||||
UpdateLiftHillSelected(TrackPitch::Down25);
|
UpdateLiftHillSelected(TrackPitch::Down25);
|
||||||
break;
|
break;
|
||||||
|
@ -1164,31 +1164,31 @@ public:
|
||||||
{
|
{
|
||||||
if (_currentTrackCurve == EnumValue(TrackCurve::LeftSmall))
|
if (_currentTrackCurve == EnumValue(TrackCurve::LeftSmall))
|
||||||
{
|
{
|
||||||
_currentTrackBankEnd = TrackBank::Left;
|
_currentTrackRollEnd = TrackRoll::Left;
|
||||||
}
|
}
|
||||||
else if (_currentTrackCurve == EnumValue(TrackCurve::RightSmall))
|
else if (_currentTrackCurve == EnumValue(TrackCurve::RightSmall))
|
||||||
{
|
{
|
||||||
_currentTrackBankEnd = TrackBank::Right;
|
_currentTrackRollEnd = TrackRoll::Right;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else if (_rideConstructionState == RideConstructionState::Back && _previousTrackSlopeEnd == TrackPitch::Up25)
|
else if (_rideConstructionState == RideConstructionState::Back && _previousTrackSlopeEnd == TrackPitch::Up25)
|
||||||
{
|
{
|
||||||
if (_currentTrackCurve == EnumValue(TrackCurve::LeftSmall))
|
if (_currentTrackCurve == EnumValue(TrackCurve::LeftSmall))
|
||||||
{
|
{
|
||||||
_currentTrackBankEnd = TrackBank::Left;
|
_currentTrackRollEnd = TrackRoll::Left;
|
||||||
}
|
}
|
||||||
else if (_currentTrackCurve == EnumValue(TrackCurve::RightSmall))
|
else if (_currentTrackCurve == EnumValue(TrackCurve::RightSmall))
|
||||||
{
|
{
|
||||||
_currentTrackBankEnd = TrackBank::Right;
|
_currentTrackRollEnd = TrackRoll::Right;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
UpdateLiftHillSelected(TrackPitch::None);
|
UpdateLiftHillSelected(TrackPitch::None);
|
||||||
break;
|
break;
|
||||||
case WIDX_SLOPE_UP:
|
case WIDX_SLOPE_UP:
|
||||||
RideConstructionInvalidateCurrentTrack();
|
RideConstructionInvalidateCurrentTrack();
|
||||||
if (_rideConstructionState == RideConstructionState::Front && _currentTrackBankEnd != TrackBank::None)
|
if (_rideConstructionState == RideConstructionState::Front && _currentTrackRollEnd != TrackRoll::None)
|
||||||
{
|
{
|
||||||
_currentTrackBankEnd = TrackBank::None;
|
_currentTrackRollEnd = TrackRoll::None;
|
||||||
}
|
}
|
||||||
if (currentRide->GetRideTypeDescriptor().SupportsTrackPiece(TRACK_REVERSE_FREEFALL))
|
if (currentRide->GetRideTypeDescriptor().SupportsTrackPiece(TRACK_REVERSE_FREEFALL))
|
||||||
{
|
{
|
||||||
|
@ -1208,28 +1208,28 @@ public:
|
||||||
RideConstructionInvalidateCurrentTrack();
|
RideConstructionInvalidateCurrentTrack();
|
||||||
if (IsTrackEnabled(TRACK_HELIX_DOWN_BANKED_HALF) || IsTrackEnabled(TRACK_HELIX_UP_BANKED_HALF))
|
if (IsTrackEnabled(TRACK_HELIX_DOWN_BANKED_HALF) || IsTrackEnabled(TRACK_HELIX_UP_BANKED_HALF))
|
||||||
{
|
{
|
||||||
if (_currentTrackCurve == EnumValue(TrackCurve::Left) && _currentTrackBankEnd == TrackBank::Left)
|
if (_currentTrackCurve == EnumValue(TrackCurve::Left) && _currentTrackRollEnd == TrackRoll::Left)
|
||||||
{
|
{
|
||||||
_currentTrackCurve = TrackElemType::LeftHalfBankedHelixUpLarge | RideConstructionSpecialPieceSelected;
|
_currentTrackCurve = TrackElemType::LeftHalfBankedHelixUpLarge | RideConstructionSpecialPieceSelected;
|
||||||
_currentTrackPrice = MONEY64_UNDEFINED;
|
_currentTrackPrice = MONEY64_UNDEFINED;
|
||||||
WindowRideConstructionUpdateActiveElements();
|
WindowRideConstructionUpdateActiveElements();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
if (_currentTrackCurve == EnumValue(TrackCurve::Right) && _currentTrackBankEnd == TrackBank::Right)
|
if (_currentTrackCurve == EnumValue(TrackCurve::Right) && _currentTrackRollEnd == TrackRoll::Right)
|
||||||
{
|
{
|
||||||
_currentTrackCurve = TrackElemType::RightHalfBankedHelixUpLarge | RideConstructionSpecialPieceSelected;
|
_currentTrackCurve = TrackElemType::RightHalfBankedHelixUpLarge | RideConstructionSpecialPieceSelected;
|
||||||
_currentTrackPrice = MONEY64_UNDEFINED;
|
_currentTrackPrice = MONEY64_UNDEFINED;
|
||||||
WindowRideConstructionUpdateActiveElements();
|
WindowRideConstructionUpdateActiveElements();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
if (_currentTrackCurve == EnumValue(TrackCurve::LeftSmall) && _currentTrackBankEnd == TrackBank::Left)
|
if (_currentTrackCurve == EnumValue(TrackCurve::LeftSmall) && _currentTrackRollEnd == TrackRoll::Left)
|
||||||
{
|
{
|
||||||
_currentTrackCurve = TrackElemType::LeftHalfBankedHelixUpSmall | RideConstructionSpecialPieceSelected;
|
_currentTrackCurve = TrackElemType::LeftHalfBankedHelixUpSmall | RideConstructionSpecialPieceSelected;
|
||||||
_currentTrackPrice = MONEY64_UNDEFINED;
|
_currentTrackPrice = MONEY64_UNDEFINED;
|
||||||
WindowRideConstructionUpdateActiveElements();
|
WindowRideConstructionUpdateActiveElements();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
if (_currentTrackCurve == EnumValue(TrackCurve::RightSmall) && _currentTrackBankEnd == TrackBank::Right)
|
if (_currentTrackCurve == EnumValue(TrackCurve::RightSmall) && _currentTrackRollEnd == TrackRoll::Right)
|
||||||
{
|
{
|
||||||
_currentTrackCurve = TrackElemType::RightHalfBankedHelixUpSmall | RideConstructionSpecialPieceSelected;
|
_currentTrackCurve = TrackElemType::RightHalfBankedHelixUpSmall | RideConstructionSpecialPieceSelected;
|
||||||
_currentTrackPrice = MONEY64_UNDEFINED;
|
_currentTrackPrice = MONEY64_UNDEFINED;
|
||||||
|
@ -1239,7 +1239,7 @@ public:
|
||||||
}
|
}
|
||||||
if (IsTrackEnabled(TRACK_HELIX_DOWN_BANKED_QUARTER) || IsTrackEnabled(TRACK_HELIX_UP_BANKED_QUARTER))
|
if (IsTrackEnabled(TRACK_HELIX_DOWN_BANKED_QUARTER) || IsTrackEnabled(TRACK_HELIX_UP_BANKED_QUARTER))
|
||||||
{
|
{
|
||||||
if (_currentTrackCurve == EnumValue(TrackCurve::Left) && _currentTrackBankEnd == TrackBank::Left)
|
if (_currentTrackCurve == EnumValue(TrackCurve::Left) && _currentTrackRollEnd == TrackRoll::Left)
|
||||||
{
|
{
|
||||||
_currentTrackCurve = TrackElemType::LeftQuarterBankedHelixLargeUp
|
_currentTrackCurve = TrackElemType::LeftQuarterBankedHelixLargeUp
|
||||||
| RideConstructionSpecialPieceSelected;
|
| RideConstructionSpecialPieceSelected;
|
||||||
|
@ -1247,7 +1247,7 @@ public:
|
||||||
WindowRideConstructionUpdateActiveElements();
|
WindowRideConstructionUpdateActiveElements();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
if (_currentTrackCurve == EnumValue(TrackCurve::Right) && _currentTrackBankEnd == TrackBank::Right)
|
if (_currentTrackCurve == EnumValue(TrackCurve::Right) && _currentTrackRollEnd == TrackRoll::Right)
|
||||||
{
|
{
|
||||||
_currentTrackCurve = TrackElemType::RightQuarterBankedHelixLargeUp
|
_currentTrackCurve = TrackElemType::RightQuarterBankedHelixLargeUp
|
||||||
| RideConstructionSpecialPieceSelected;
|
| RideConstructionSpecialPieceSelected;
|
||||||
|
@ -1258,7 +1258,7 @@ public:
|
||||||
}
|
}
|
||||||
if (IsTrackEnabled(TRACK_HELIX_DOWN_UNBANKED_QUARTER) || IsTrackEnabled(TRACK_HELIX_UP_UNBANKED_QUARTER))
|
if (IsTrackEnabled(TRACK_HELIX_DOWN_UNBANKED_QUARTER) || IsTrackEnabled(TRACK_HELIX_UP_UNBANKED_QUARTER))
|
||||||
{
|
{
|
||||||
if (_currentTrackBankEnd == TrackBank::None)
|
if (_currentTrackRollEnd == TrackRoll::None)
|
||||||
{
|
{
|
||||||
if (_currentTrackCurve == EnumValue(TrackCurve::Left))
|
if (_currentTrackCurve == EnumValue(TrackCurve::Left))
|
||||||
{
|
{
|
||||||
|
@ -1297,7 +1297,7 @@ public:
|
||||||
RideConstructionInvalidateCurrentTrack();
|
RideConstructionInvalidateCurrentTrack();
|
||||||
if (!_currentlyShowingBrakeOrBoosterSpeed)
|
if (!_currentlyShowingBrakeOrBoosterSpeed)
|
||||||
{
|
{
|
||||||
_currentTrackBankEnd = TrackBank::Left;
|
_currentTrackRollEnd = TrackRoll::Left;
|
||||||
_currentTrackPrice = MONEY64_UNDEFINED;
|
_currentTrackPrice = MONEY64_UNDEFINED;
|
||||||
WindowRideConstructionUpdateActiveElements();
|
WindowRideConstructionUpdateActiveElements();
|
||||||
}
|
}
|
||||||
|
@ -1306,7 +1306,7 @@ public:
|
||||||
RideConstructionInvalidateCurrentTrack();
|
RideConstructionInvalidateCurrentTrack();
|
||||||
if (!_currentlyShowingBrakeOrBoosterSpeed)
|
if (!_currentlyShowingBrakeOrBoosterSpeed)
|
||||||
{
|
{
|
||||||
_currentTrackBankEnd = TrackBank::None;
|
_currentTrackRollEnd = TrackRoll::None;
|
||||||
_currentTrackPrice = MONEY64_UNDEFINED;
|
_currentTrackPrice = MONEY64_UNDEFINED;
|
||||||
WindowRideConstructionUpdateActiveElements();
|
WindowRideConstructionUpdateActiveElements();
|
||||||
}
|
}
|
||||||
|
@ -1333,7 +1333,7 @@ public:
|
||||||
RideConstructionInvalidateCurrentTrack();
|
RideConstructionInvalidateCurrentTrack();
|
||||||
if (!_currentlyShowingBrakeOrBoosterSpeed)
|
if (!_currentlyShowingBrakeOrBoosterSpeed)
|
||||||
{
|
{
|
||||||
_currentTrackBankEnd = TrackBank::Right;
|
_currentTrackRollEnd = TrackRoll::Right;
|
||||||
_currentTrackPrice = MONEY64_UNDEFINED;
|
_currentTrackPrice = MONEY64_UNDEFINED;
|
||||||
WindowRideConstructionUpdateActiveElements();
|
WindowRideConstructionUpdateActiveElements();
|
||||||
}
|
}
|
||||||
|
@ -1422,7 +1422,7 @@ public:
|
||||||
break;
|
break;
|
||||||
case TrackElemType::LeftVerticalLoop:
|
case TrackElemType::LeftVerticalLoop:
|
||||||
case TrackElemType::RightVerticalLoop:
|
case TrackElemType::RightVerticalLoop:
|
||||||
_currentTrackBankEnd = TrackBank::None;
|
_currentTrackRollEnd = TrackRoll::None;
|
||||||
_currentTrackLiftHill &= ~CONSTRUCTION_LIFT_HILL_SELECTED;
|
_currentTrackLiftHill &= ~CONSTRUCTION_LIFT_HILL_SELECTED;
|
||||||
break;
|
break;
|
||||||
case TrackElemType::BlockBrakes:
|
case TrackElemType::BlockBrakes:
|
||||||
|
@ -1662,7 +1662,7 @@ public:
|
||||||
widgets[WIDX_SLOPE_UP].type = WindowWidgetType::FlatBtn;
|
widgets[WIDX_SLOPE_UP].type = WindowWidgetType::FlatBtn;
|
||||||
}
|
}
|
||||||
if ((IsTrackEnabled(TRACK_HELIX_DOWN_BANKED_HALF) || IsTrackEnabled(TRACK_HELIX_UP_BANKED_HALF))
|
if ((IsTrackEnabled(TRACK_HELIX_DOWN_BANKED_HALF) || IsTrackEnabled(TRACK_HELIX_UP_BANKED_HALF))
|
||||||
&& _currentTrackBankEnd != TrackBank::None && _currentTrackSlopeEnd == TrackPitch::None)
|
&& _currentTrackRollEnd != TrackRoll::None && _currentTrackSlopeEnd == TrackPitch::None)
|
||||||
{
|
{
|
||||||
if (_currentTrackCurve >= EnumValue(TrackCurve::Left) && _currentTrackCurve <= EnumValue(TrackCurve::RightSmall))
|
if (_currentTrackCurve >= EnumValue(TrackCurve::Left) && _currentTrackCurve <= EnumValue(TrackCurve::RightSmall))
|
||||||
{
|
{
|
||||||
|
@ -1744,7 +1744,7 @@ public:
|
||||||
}
|
}
|
||||||
|
|
||||||
if ((IsTrackEnabled(TRACK_HELIX_DOWN_UNBANKED_QUARTER) || IsTrackEnabled(TRACK_HELIX_UP_UNBANKED_QUARTER))
|
if ((IsTrackEnabled(TRACK_HELIX_DOWN_UNBANKED_QUARTER) || IsTrackEnabled(TRACK_HELIX_UP_UNBANKED_QUARTER))
|
||||||
&& _currentTrackSlopeEnd == TrackPitch::None && _currentTrackBankEnd == TrackBank::None
|
&& _currentTrackSlopeEnd == TrackPitch::None && _currentTrackRollEnd == TrackRoll::None
|
||||||
&& (_currentTrackCurve == EnumValue(TrackCurve::Left) || _currentTrackCurve == EnumValue(TrackCurve::Right)))
|
&& (_currentTrackCurve == EnumValue(TrackCurve::Left) || _currentTrackCurve == EnumValue(TrackCurve::Right)))
|
||||||
{
|
{
|
||||||
widgets[WIDX_SLOPE_DOWN_STEEP].image = ImageId(SPR_RIDE_CONSTRUCTION_HELIX_DOWN);
|
widgets[WIDX_SLOPE_DOWN_STEEP].image = ImageId(SPR_RIDE_CONSTRUCTION_HELIX_DOWN);
|
||||||
|
@ -1772,7 +1772,7 @@ public:
|
||||||
if ((IsTrackEnabled(TRACK_HELIX_DOWN_BANKED_QUARTER) || IsTrackEnabled(TRACK_HELIX_UP_BANKED_QUARTER)
|
if ((IsTrackEnabled(TRACK_HELIX_DOWN_BANKED_QUARTER) || IsTrackEnabled(TRACK_HELIX_UP_BANKED_QUARTER)
|
||||||
|| IsTrackEnabled(TRACK_HELIX_DOWN_BANKED_HALF) || IsTrackEnabled(TRACK_HELIX_UP_BANKED_HALF))
|
|| IsTrackEnabled(TRACK_HELIX_DOWN_BANKED_HALF) || IsTrackEnabled(TRACK_HELIX_UP_BANKED_HALF))
|
||||||
&& (_currentTrackCurve >= EnumValue(TrackCurve::Left) && _currentTrackCurve <= EnumValue(TrackCurve::RightSmall))
|
&& (_currentTrackCurve >= EnumValue(TrackCurve::Left) && _currentTrackCurve <= EnumValue(TrackCurve::RightSmall))
|
||||||
&& _currentTrackSlopeEnd == TrackPitch::None && _currentTrackBankEnd != TrackBank::None)
|
&& _currentTrackSlopeEnd == TrackPitch::None && _currentTrackRollEnd != TrackRoll::None)
|
||||||
{
|
{
|
||||||
widgets[WIDX_SLOPE_DOWN_STEEP].image = ImageId(SPR_RIDE_CONSTRUCTION_HELIX_DOWN);
|
widgets[WIDX_SLOPE_DOWN_STEEP].image = ImageId(SPR_RIDE_CONSTRUCTION_HELIX_DOWN);
|
||||||
widgets[WIDX_SLOPE_DOWN_STEEP].tooltip = STR_RIDE_CONSTRUCTION_HELIX_DOWN_TIP;
|
widgets[WIDX_SLOPE_DOWN_STEEP].tooltip = STR_RIDE_CONSTRUCTION_HELIX_DOWN_TIP;
|
||||||
|
@ -1854,7 +1854,7 @@ public:
|
||||||
if ((_currentTrackCurve < EnumValue(TrackCurve::LeftSmall)
|
if ((_currentTrackCurve < EnumValue(TrackCurve::LeftSmall)
|
||||||
|| _currentTrackCurve == (RideConstructionSpecialPieceSelected | TrackElemType::SBendLeft)
|
|| _currentTrackCurve == (RideConstructionSpecialPieceSelected | TrackElemType::SBendLeft)
|
||||||
|| _currentTrackCurve == (RideConstructionSpecialPieceSelected | TrackElemType::SBendRight))
|
|| _currentTrackCurve == (RideConstructionSpecialPieceSelected | TrackElemType::SBendRight))
|
||||||
&& _currentTrackSlopeEnd == TrackPitch::None && _currentTrackBankEnd == TrackBank::None)
|
&& _currentTrackSlopeEnd == TrackPitch::None && _currentTrackRollEnd == TrackRoll::None)
|
||||||
{
|
{
|
||||||
widgets[WIDX_BANKING_GROUPBOX].text = STR_RIDE_CONSTRUCTION_TRACK_STYLE;
|
widgets[WIDX_BANKING_GROUPBOX].text = STR_RIDE_CONSTRUCTION_TRACK_STYLE;
|
||||||
widgets[WIDX_U_TRACK].type = WindowWidgetType::FlatBtn;
|
widgets[WIDX_U_TRACK].type = WindowWidgetType::FlatBtn;
|
||||||
|
@ -2063,12 +2063,12 @@ public:
|
||||||
pressed_widgets |= (1uLL << WIDX_U_TRACK);
|
pressed_widgets |= (1uLL << WIDX_U_TRACK);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
switch (_currentTrackBankEnd)
|
switch (_currentTrackRollEnd)
|
||||||
{
|
{
|
||||||
case TrackBank::Left:
|
case TrackRoll::Left:
|
||||||
widgetIndex = WIDX_BANK_LEFT;
|
widgetIndex = WIDX_BANK_LEFT;
|
||||||
break;
|
break;
|
||||||
case TrackBank::None:
|
case TrackRoll::None:
|
||||||
widgetIndex = WIDX_BANK_STRAIGHT;
|
widgetIndex = WIDX_BANK_STRAIGHT;
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
|
@ -2093,7 +2093,7 @@ public:
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
_specialElementDropdownState = BuildSpecialElementsList(
|
_specialElementDropdownState = BuildSpecialElementsList(
|
||||||
*currentRide, _currentTrackPieceDirection, _previousTrackSlopeEnd, _previousTrackBankEnd, _rideConstructionState);
|
*currentRide, _currentTrackPieceDirection, _previousTrackSlopeEnd, _previousTrackRollEnd, _rideConstructionState);
|
||||||
_currentlyShowingBrakeOrBoosterSpeed = false;
|
_currentlyShowingBrakeOrBoosterSpeed = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -3596,8 +3596,8 @@ void RideConstructionTooldownConstruct(const ScreenCoordsXY& screenCoords)
|
||||||
auto saveCurrentTrackCurve = _currentTrackCurve;
|
auto saveCurrentTrackCurve = _currentTrackCurve;
|
||||||
auto savePreviousTrackSlopeEnd = _previousTrackSlopeEnd;
|
auto savePreviousTrackSlopeEnd = _previousTrackSlopeEnd;
|
||||||
auto saveCurrentTrackSlopeEnd = _currentTrackSlopeEnd;
|
auto saveCurrentTrackSlopeEnd = _currentTrackSlopeEnd;
|
||||||
auto savePreviousTrackBankEnd = _previousTrackBankEnd;
|
auto savePreviousTrackRollEnd = _previousTrackRollEnd;
|
||||||
auto saveCurrentTrackBankEnd = _currentTrackBankEnd;
|
auto saveCurrentTrackRollEnd = _currentTrackRollEnd;
|
||||||
int32_t saveCurrentTrackAlternative = _currentTrackAlternative;
|
int32_t saveCurrentTrackAlternative = _currentTrackAlternative;
|
||||||
int32_t saveCurrentTrackLiftHill = _currentTrackLiftHill;
|
int32_t saveCurrentTrackLiftHill = _currentTrackLiftHill;
|
||||||
|
|
||||||
|
@ -3607,8 +3607,8 @@ void RideConstructionTooldownConstruct(const ScreenCoordsXY& screenCoords)
|
||||||
_currentTrackCurve = saveCurrentTrackCurve;
|
_currentTrackCurve = saveCurrentTrackCurve;
|
||||||
_previousTrackSlopeEnd = savePreviousTrackSlopeEnd;
|
_previousTrackSlopeEnd = savePreviousTrackSlopeEnd;
|
||||||
_currentTrackSlopeEnd = saveCurrentTrackSlopeEnd;
|
_currentTrackSlopeEnd = saveCurrentTrackSlopeEnd;
|
||||||
_previousTrackBankEnd = savePreviousTrackBankEnd;
|
_previousTrackRollEnd = savePreviousTrackRollEnd;
|
||||||
_currentTrackBankEnd = saveCurrentTrackBankEnd;
|
_currentTrackRollEnd = saveCurrentTrackRollEnd;
|
||||||
_currentTrackAlternative = saveCurrentTrackAlternative;
|
_currentTrackAlternative = saveCurrentTrackAlternative;
|
||||||
_currentTrackLiftHill = saveCurrentTrackLiftHill;
|
_currentTrackLiftHill = saveCurrentTrackLiftHill;
|
||||||
|
|
||||||
|
@ -4383,15 +4383,15 @@ void WindowRideConstructionKeyboardShortcutBankLeft()
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
switch (_currentTrackBankEnd)
|
switch (_currentTrackRollEnd)
|
||||||
{
|
{
|
||||||
case TrackBank::None:
|
case TrackRoll::None:
|
||||||
if (!WidgetIsDisabled(*w, WIDX_BANK_LEFT) && w->widgets[WIDX_BANK_LEFT].type != WindowWidgetType::Empty)
|
if (!WidgetIsDisabled(*w, WIDX_BANK_LEFT) && w->widgets[WIDX_BANK_LEFT].type != WindowWidgetType::Empty)
|
||||||
{
|
{
|
||||||
WindowEventMouseDownCall(w, WIDX_BANK_LEFT);
|
WindowEventMouseDownCall(w, WIDX_BANK_LEFT);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case TrackBank::Right:
|
case TrackRoll::Right:
|
||||||
if (!WidgetIsDisabled(*w, WIDX_BANK_STRAIGHT) && w->widgets[WIDX_BANK_STRAIGHT].type != WindowWidgetType::Empty)
|
if (!WidgetIsDisabled(*w, WIDX_BANK_STRAIGHT) && w->widgets[WIDX_BANK_STRAIGHT].type != WindowWidgetType::Empty)
|
||||||
{
|
{
|
||||||
WindowEventMouseDownCall(w, WIDX_BANK_STRAIGHT);
|
WindowEventMouseDownCall(w, WIDX_BANK_STRAIGHT);
|
||||||
|
@ -4419,15 +4419,15 @@ void WindowRideConstructionKeyboardShortcutBankRight()
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
switch (_currentTrackBankEnd)
|
switch (_currentTrackRollEnd)
|
||||||
{
|
{
|
||||||
case TrackBank::None:
|
case TrackRoll::None:
|
||||||
if (!WidgetIsDisabled(*w, WIDX_BANK_RIGHT) && w->widgets[WIDX_BANK_RIGHT].type != WindowWidgetType::Empty)
|
if (!WidgetIsDisabled(*w, WIDX_BANK_RIGHT) && w->widgets[WIDX_BANK_RIGHT].type != WindowWidgetType::Empty)
|
||||||
{
|
{
|
||||||
WindowEventMouseDownCall(w, WIDX_BANK_RIGHT);
|
WindowEventMouseDownCall(w, WIDX_BANK_RIGHT);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case TrackBank::Left:
|
case TrackRoll::Left:
|
||||||
if (!WidgetIsDisabled(*w, WIDX_BANK_STRAIGHT) && w->widgets[WIDX_BANK_STRAIGHT].type != WindowWidgetType::Empty)
|
if (!WidgetIsDisabled(*w, WIDX_BANK_STRAIGHT) && w->widgets[WIDX_BANK_STRAIGHT].type != WindowWidgetType::Empty)
|
||||||
{
|
{
|
||||||
WindowEventMouseDownCall(w, WIDX_BANK_STRAIGHT);
|
WindowEventMouseDownCall(w, WIDX_BANK_STRAIGHT);
|
||||||
|
@ -4503,8 +4503,8 @@ static void WindowRideConstructionMouseUpDemolishNextPiece(const CoordsXYZD& pie
|
||||||
auto savedCurrentTrackCurve = _currentTrackCurve;
|
auto savedCurrentTrackCurve = _currentTrackCurve;
|
||||||
auto savedPreviousTrackSlopeEnd = _previousTrackSlopeEnd;
|
auto savedPreviousTrackSlopeEnd = _previousTrackSlopeEnd;
|
||||||
auto savedCurrentTrackSlopeEnd = _currentTrackSlopeEnd;
|
auto savedCurrentTrackSlopeEnd = _currentTrackSlopeEnd;
|
||||||
auto savedPreviousTrackBankEnd = _previousTrackBankEnd;
|
auto savedPreviousTrackRollEnd = _previousTrackRollEnd;
|
||||||
auto savedCurrentTrackBankEnd = _currentTrackBankEnd;
|
auto savedCurrentTrackRollEnd = _currentTrackRollEnd;
|
||||||
int32_t savedCurrentTrackAlternative = _currentTrackAlternative;
|
int32_t savedCurrentTrackAlternative = _currentTrackAlternative;
|
||||||
int32_t savedCurrentTrackLiftHill = _currentTrackLiftHill;
|
int32_t savedCurrentTrackLiftHill = _currentTrackLiftHill;
|
||||||
RideConstructionSetDefaultNextPiece();
|
RideConstructionSetDefaultNextPiece();
|
||||||
|
@ -4519,8 +4519,8 @@ static void WindowRideConstructionMouseUpDemolishNextPiece(const CoordsXYZD& pie
|
||||||
_currentTrackCurve = savedCurrentTrackCurve;
|
_currentTrackCurve = savedCurrentTrackCurve;
|
||||||
_previousTrackSlopeEnd = savedPreviousTrackSlopeEnd;
|
_previousTrackSlopeEnd = savedPreviousTrackSlopeEnd;
|
||||||
_currentTrackSlopeEnd = savedCurrentTrackSlopeEnd;
|
_currentTrackSlopeEnd = savedCurrentTrackSlopeEnd;
|
||||||
_previousTrackBankEnd = savedPreviousTrackBankEnd;
|
_previousTrackRollEnd = savedPreviousTrackRollEnd;
|
||||||
_currentTrackBankEnd = savedCurrentTrackBankEnd;
|
_currentTrackRollEnd = savedCurrentTrackRollEnd;
|
||||||
_currentTrackAlternative = savedCurrentTrackAlternative;
|
_currentTrackAlternative = savedCurrentTrackAlternative;
|
||||||
_currentTrackLiftHill = savedCurrentTrackLiftHill;
|
_currentTrackLiftHill = savedCurrentTrackLiftHill;
|
||||||
WindowRideConstructionUpdateActiveElements();
|
WindowRideConstructionUpdateActiveElements();
|
||||||
|
|
|
@ -442,7 +442,7 @@ bool WallPlaceAction::WallCheckObstructionWithTrack(
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (ted.Definition.RollStart == TrackBank::None)
|
if (ted.Definition.RollStart == TrackRoll::None)
|
||||||
{
|
{
|
||||||
if (!(ted.Coordinates.rotation_begin & 4))
|
if (!(ted.Coordinates.rotation_begin & 4))
|
||||||
{
|
{
|
||||||
|
@ -467,7 +467,7 @@ bool WallPlaceAction::WallCheckObstructionWithTrack(
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (ted.Definition.RollEnd != TrackBank::None)
|
if (ted.Definition.RollEnd != TrackRoll::None)
|
||||||
{
|
{
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
|
@ -65,12 +65,12 @@ track_type_t _currentTrackPieceType;
|
||||||
uint8_t _currentTrackSelectionFlags;
|
uint8_t _currentTrackSelectionFlags;
|
||||||
uint32_t _rideConstructionNextArrowPulse = 0;
|
uint32_t _rideConstructionNextArrowPulse = 0;
|
||||||
TrackPitch _currentTrackSlopeEnd;
|
TrackPitch _currentTrackSlopeEnd;
|
||||||
TrackBank _currentTrackBankEnd;
|
TrackRoll _currentTrackRollEnd;
|
||||||
uint8_t _currentTrackLiftHill;
|
uint8_t _currentTrackLiftHill;
|
||||||
uint8_t _currentTrackAlternative;
|
uint8_t _currentTrackAlternative;
|
||||||
track_type_t _selectedTrackType;
|
track_type_t _selectedTrackType;
|
||||||
|
|
||||||
TrackBank _previousTrackBankEnd;
|
TrackRoll _previousTrackRollEnd;
|
||||||
TrackPitch _previousTrackSlopeEnd;
|
TrackPitch _previousTrackSlopeEnd;
|
||||||
|
|
||||||
CoordsXYZ _previousTrackPiece;
|
CoordsXYZ _previousTrackPiece;
|
||||||
|
@ -607,7 +607,7 @@ static void ride_construction_reset_current_piece()
|
||||||
{
|
{
|
||||||
_currentTrackCurve = rtd.StartTrackPiece | RideConstructionSpecialPieceSelected;
|
_currentTrackCurve = rtd.StartTrackPiece | RideConstructionSpecialPieceSelected;
|
||||||
_currentTrackSlopeEnd = TrackPitch::None;
|
_currentTrackSlopeEnd = TrackPitch::None;
|
||||||
_currentTrackBankEnd = TrackBank::None;
|
_currentTrackRollEnd = TrackRoll::None;
|
||||||
_currentTrackLiftHill = 0;
|
_currentTrackLiftHill = 0;
|
||||||
_currentTrackAlternative = RIDE_TYPE_NO_ALTERNATIVES;
|
_currentTrackAlternative = RIDE_TYPE_NO_ALTERNATIVES;
|
||||||
if (rtd.HasFlag(RIDE_TYPE_FLAG_START_CONSTRUCTION_INVERTED))
|
if (rtd.HasFlag(RIDE_TYPE_FLAG_START_CONSTRUCTION_INVERTED))
|
||||||
|
@ -615,7 +615,7 @@ static void ride_construction_reset_current_piece()
|
||||||
_currentTrackAlternative |= RIDE_TYPE_ALTERNATIVE_TRACK_TYPE;
|
_currentTrackAlternative |= RIDE_TYPE_ALTERNATIVE_TRACK_TYPE;
|
||||||
}
|
}
|
||||||
_previousTrackSlopeEnd = TrackPitch::None;
|
_previousTrackSlopeEnd = TrackPitch::None;
|
||||||
_previousTrackBankEnd = TrackBank::None;
|
_previousTrackRollEnd = TrackRoll::None;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
@ -684,14 +684,14 @@ void RideConstructionSetDefaultNextPiece()
|
||||||
// Set track banking
|
// Set track banking
|
||||||
if (rtd.HasFlag(RIDE_TYPE_FLAG_HAS_ALTERNATIVE_TRACK_TYPE))
|
if (rtd.HasFlag(RIDE_TYPE_FLAG_HAS_ALTERNATIVE_TRACK_TYPE))
|
||||||
{
|
{
|
||||||
if (bank == TrackBank::UpsideDown)
|
if (bank == TrackRoll::UpsideDown)
|
||||||
{
|
{
|
||||||
bank = TrackBank::None;
|
bank = TrackRoll::None;
|
||||||
_currentTrackAlternative ^= RIDE_TYPE_ALTERNATIVE_TRACK_TYPE;
|
_currentTrackAlternative ^= RIDE_TYPE_ALTERNATIVE_TRACK_TYPE;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
_currentTrackBankEnd = bank;
|
_currentTrackRollEnd = bank;
|
||||||
_previousTrackBankEnd = bank;
|
_previousTrackRollEnd = bank;
|
||||||
|
|
||||||
// Set track slope and lift hill
|
// Set track slope and lift hill
|
||||||
_currentTrackSlopeEnd = slope;
|
_currentTrackSlopeEnd = slope;
|
||||||
|
@ -732,14 +732,14 @@ void RideConstructionSetDefaultNextPiece()
|
||||||
// Set track banking
|
// Set track banking
|
||||||
if (rtd.HasFlag(RIDE_TYPE_FLAG_HAS_ALTERNATIVE_TRACK_TYPE))
|
if (rtd.HasFlag(RIDE_TYPE_FLAG_HAS_ALTERNATIVE_TRACK_TYPE))
|
||||||
{
|
{
|
||||||
if (bank == TrackBank::UpsideDown)
|
if (bank == TrackRoll::UpsideDown)
|
||||||
{
|
{
|
||||||
bank = TrackBank::None;
|
bank = TrackRoll::None;
|
||||||
_currentTrackAlternative ^= RIDE_TYPE_ALTERNATIVE_TRACK_TYPE;
|
_currentTrackAlternative ^= RIDE_TYPE_ALTERNATIVE_TRACK_TYPE;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
_currentTrackBankEnd = bank;
|
_currentTrackRollEnd = bank;
|
||||||
_previousTrackBankEnd = bank;
|
_previousTrackRollEnd = bank;
|
||||||
|
|
||||||
// Set track slope and lift hill
|
// Set track slope and lift hill
|
||||||
_currentTrackSlopeEnd = slope;
|
_currentTrackSlopeEnd = slope;
|
||||||
|
@ -1124,14 +1124,14 @@ int32_t RideInitialiseConstructionWindow(Ride& ride)
|
||||||
|
|
||||||
_currentTrackCurve = ride.GetRideTypeDescriptor().StartTrackPiece | RideConstructionSpecialPieceSelected;
|
_currentTrackCurve = ride.GetRideTypeDescriptor().StartTrackPiece | RideConstructionSpecialPieceSelected;
|
||||||
_currentTrackSlopeEnd = TrackPitch::None;
|
_currentTrackSlopeEnd = TrackPitch::None;
|
||||||
_currentTrackBankEnd = TrackBank::None;
|
_currentTrackRollEnd = TrackRoll::None;
|
||||||
_currentTrackLiftHill = 0;
|
_currentTrackLiftHill = 0;
|
||||||
_currentTrackAlternative = RIDE_TYPE_NO_ALTERNATIVES;
|
_currentTrackAlternative = RIDE_TYPE_NO_ALTERNATIVES;
|
||||||
|
|
||||||
if (ride.GetRideTypeDescriptor().HasFlag(RIDE_TYPE_FLAG_START_CONSTRUCTION_INVERTED))
|
if (ride.GetRideTypeDescriptor().HasFlag(RIDE_TYPE_FLAG_START_CONSTRUCTION_INVERTED))
|
||||||
_currentTrackAlternative |= RIDE_TYPE_ALTERNATIVE_TRACK_TYPE;
|
_currentTrackAlternative |= RIDE_TYPE_ALTERNATIVE_TRACK_TYPE;
|
||||||
|
|
||||||
_previousTrackBankEnd = TrackBank::None;
|
_previousTrackRollEnd = TrackRoll::None;
|
||||||
_previousTrackSlopeEnd = TrackPitch::None;
|
_previousTrackSlopeEnd = TrackPitch::None;
|
||||||
|
|
||||||
_currentTrackPieceDirection = 0;
|
_currentTrackPieceDirection = 0;
|
||||||
|
|
|
@ -49,12 +49,12 @@ extern track_type_t _currentTrackPieceType;
|
||||||
extern uint8_t _currentTrackSelectionFlags;
|
extern uint8_t _currentTrackSelectionFlags;
|
||||||
extern uint32_t _rideConstructionNextArrowPulse;
|
extern uint32_t _rideConstructionNextArrowPulse;
|
||||||
extern TrackPitch _currentTrackSlopeEnd;
|
extern TrackPitch _currentTrackSlopeEnd;
|
||||||
extern TrackBank _currentTrackBankEnd;
|
extern TrackRoll _currentTrackRollEnd;
|
||||||
extern uint8_t _currentTrackLiftHill;
|
extern uint8_t _currentTrackLiftHill;
|
||||||
extern uint8_t _currentTrackAlternative;
|
extern uint8_t _currentTrackAlternative;
|
||||||
extern track_type_t _selectedTrackType;
|
extern track_type_t _selectedTrackType;
|
||||||
|
|
||||||
extern TrackBank _previousTrackBankEnd;
|
extern TrackRoll _previousTrackRollEnd;
|
||||||
extern TrackPitch _previousTrackSlopeEnd;
|
extern TrackPitch _previousTrackSlopeEnd;
|
||||||
|
|
||||||
extern CoordsXYZ _previousTrackPiece;
|
extern CoordsXYZ _previousTrackPiece;
|
||||||
|
|
|
@ -562,7 +562,7 @@ bool TrackElement::IsBlockStart() const
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
TrackBank TrackGetActualBank(TileElement* tileElement, TrackBank bank)
|
TrackRoll TrackGetActualBank(TileElement* tileElement, TrackRoll bank)
|
||||||
{
|
{
|
||||||
auto ride = GetRide(tileElement->AsTrack()->GetRideIndex());
|
auto ride = GetRide(tileElement->AsTrack()->GetRideIndex());
|
||||||
if (ride != nullptr)
|
if (ride != nullptr)
|
||||||
|
@ -573,26 +573,26 @@ TrackBank TrackGetActualBank(TileElement* tileElement, TrackBank bank)
|
||||||
return bank;
|
return bank;
|
||||||
}
|
}
|
||||||
|
|
||||||
TrackBank TrackGetActualBank2(int32_t rideType, bool isInverted, TrackBank bank)
|
TrackRoll TrackGetActualBank2(int32_t rideType, bool isInverted, TrackRoll bank)
|
||||||
{
|
{
|
||||||
if (GetRideTypeDescriptor(rideType).HasFlag(RIDE_TYPE_FLAG_HAS_ALTERNATIVE_TRACK_TYPE))
|
if (GetRideTypeDescriptor(rideType).HasFlag(RIDE_TYPE_FLAG_HAS_ALTERNATIVE_TRACK_TYPE))
|
||||||
{
|
{
|
||||||
if (isInverted)
|
if (isInverted)
|
||||||
{
|
{
|
||||||
if (bank == TrackBank::None)
|
if (bank == TrackRoll::None)
|
||||||
{
|
{
|
||||||
bank = TrackBank::UpsideDown;
|
bank = TrackRoll::UpsideDown;
|
||||||
}
|
}
|
||||||
else if (bank == TrackBank::UpsideDown)
|
else if (bank == TrackRoll::UpsideDown)
|
||||||
{
|
{
|
||||||
bank = TrackBank::None;
|
bank = TrackRoll::None;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return bank;
|
return bank;
|
||||||
}
|
}
|
||||||
|
|
||||||
TrackBank TrackGetActualBank3(bool useInvertedSprites, TileElement* tileElement)
|
TrackRoll TrackGetActualBank3(bool useInvertedSprites, TileElement* tileElement)
|
||||||
{
|
{
|
||||||
auto trackType = tileElement->AsTrack()->GetTrackType();
|
auto trackType = tileElement->AsTrack()->GetTrackType();
|
||||||
const auto& ted = GetTrackElementDescriptor(trackType);
|
const auto& ted = GetTrackElementDescriptor(trackType);
|
||||||
|
|
|
@ -26,7 +26,7 @@ using track_type_t = uint16_t;
|
||||||
|
|
||||||
struct ResultWithMessage;
|
struct ResultWithMessage;
|
||||||
|
|
||||||
enum class TrackBank : uint8_t
|
enum class TrackRoll : uint8_t
|
||||||
{
|
{
|
||||||
None = 0,
|
None = 0,
|
||||||
Left = 2,
|
Left = 2,
|
||||||
|
@ -53,15 +53,15 @@ struct TrackDefinition
|
||||||
track_type_t Type;
|
track_type_t Type;
|
||||||
TrackPitch PitchEnd;
|
TrackPitch PitchEnd;
|
||||||
TrackPitch PitchStart;
|
TrackPitch PitchStart;
|
||||||
TrackBank RollEnd;
|
TrackRoll RollEnd;
|
||||||
TrackBank RollStart;
|
TrackRoll RollStart;
|
||||||
int8_t PreviewZOffset;
|
int8_t PreviewZOffset;
|
||||||
};
|
};
|
||||||
|
|
||||||
struct PitchAndRoll
|
struct PitchAndRoll
|
||||||
{
|
{
|
||||||
TrackPitch Pitch;
|
TrackPitch Pitch;
|
||||||
TrackBank Roll;
|
TrackRoll Roll;
|
||||||
};
|
};
|
||||||
constexpr bool operator==(const PitchAndRoll& vb1, const PitchAndRoll& vb2)
|
constexpr bool operator==(const PitchAndRoll& vb1, const PitchAndRoll& vb2)
|
||||||
{
|
{
|
||||||
|
@ -686,9 +686,9 @@ bool TrackTypeIsBooster(track_type_t trackType);
|
||||||
std::optional<CoordsXYZ> GetTrackElementOriginAndApplyChanges(
|
std::optional<CoordsXYZ> GetTrackElementOriginAndApplyChanges(
|
||||||
const CoordsXYZD& location, track_type_t type, uint16_t extra_params, TileElement** output_element, uint16_t flags);
|
const CoordsXYZD& location, track_type_t type, uint16_t extra_params, TileElement** output_element, uint16_t flags);
|
||||||
|
|
||||||
TrackBank TrackGetActualBank(TileElement* tileElement, TrackBank bank);
|
TrackRoll TrackGetActualBank(TileElement* tileElement, TrackRoll bank);
|
||||||
TrackBank TrackGetActualBank2(int32_t rideType, bool isInverted, TrackBank bank);
|
TrackRoll TrackGetActualBank2(int32_t rideType, bool isInverted, TrackRoll bank);
|
||||||
TrackBank TrackGetActualBank3(bool useInvertedSprites, TileElement* tileElement);
|
TrackRoll TrackGetActualBank3(bool useInvertedSprites, TileElement* tileElement);
|
||||||
|
|
||||||
ResultWithMessage TrackAddStationElement(CoordsXYZD loc, RideId rideIndex, int32_t flags, bool fromTrackDesign);
|
ResultWithMessage TrackAddStationElement(CoordsXYZD loc, RideId rideIndex, int32_t flags, bool fromTrackDesign);
|
||||||
ResultWithMessage TrackRemoveStationElement(const CoordsXYZD& loc, RideId rideIndex, int32_t flags);
|
ResultWithMessage TrackRemoveStationElement(const CoordsXYZD& loc, RideId rideIndex, int32_t flags);
|
||||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -27,10 +27,10 @@ struct TrackDescriptor
|
||||||
{
|
{
|
||||||
bool starts_diagonal;
|
bool starts_diagonal;
|
||||||
TrackPitch slope_start;
|
TrackPitch slope_start;
|
||||||
TrackBank RollStart;
|
TrackRoll RollStart;
|
||||||
TrackCurve track_curve;
|
TrackCurve track_curve;
|
||||||
TrackPitch slope_end;
|
TrackPitch slope_end;
|
||||||
TrackBank RollEnd;
|
TrackRoll RollEnd;
|
||||||
track_type_t track_element;
|
track_type_t track_element;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -526,10 +526,10 @@ void ScriptEngine::RegisterConstants()
|
||||||
.Constant("Up90", EnumValue(TrackPitch::Up90))
|
.Constant("Up90", EnumValue(TrackPitch::Up90))
|
||||||
.Constant("Down90", EnumValue(TrackPitch::Down90));
|
.Constant("Down90", EnumValue(TrackPitch::Down90));
|
||||||
builder.Namespace("TrackBanking")
|
builder.Namespace("TrackBanking")
|
||||||
.Constant("None", EnumValue(TrackBank::None))
|
.Constant("None", EnumValue(TrackRoll::None))
|
||||||
.Constant("BankLeft", EnumValue(TrackBank::Left))
|
.Constant("BankLeft", EnumValue(TrackRoll::Left))
|
||||||
.Constant("BankRight", EnumValue(TrackBank::Right))
|
.Constant("BankRight", EnumValue(TrackRoll::Right))
|
||||||
.Constant("UpsideDown", EnumValue(TrackBank::UpsideDown));
|
.Constant("UpsideDown", EnumValue(TrackRoll::UpsideDown));
|
||||||
}
|
}
|
||||||
|
|
||||||
void ScriptEngine::RefreshPlugins()
|
void ScriptEngine::RefreshPlugins()
|
||||||
|
|
|
@ -127,15 +127,15 @@ static std::tuple<bool, track_type_t> window_ride_construction_update_state_get_
|
||||||
|
|
||||||
auto startSlope = _previousTrackSlopeEnd;
|
auto startSlope = _previousTrackSlopeEnd;
|
||||||
auto endSlope = _currentTrackSlopeEnd;
|
auto endSlope = _currentTrackSlopeEnd;
|
||||||
auto startBank = _previousTrackBankEnd;
|
auto startBank = _previousTrackRollEnd;
|
||||||
auto endBank = _currentTrackBankEnd;
|
auto endBank = _currentTrackRollEnd;
|
||||||
|
|
||||||
if (_rideConstructionState == RideConstructionState::Back)
|
if (_rideConstructionState == RideConstructionState::Back)
|
||||||
{
|
{
|
||||||
startSlope = _currentTrackSlopeEnd;
|
startSlope = _currentTrackSlopeEnd;
|
||||||
endSlope = _previousTrackSlopeEnd;
|
endSlope = _previousTrackSlopeEnd;
|
||||||
startBank = _currentTrackBankEnd;
|
startBank = _currentTrackRollEnd;
|
||||||
endBank = _previousTrackBankEnd;
|
endBank = _previousTrackRollEnd;
|
||||||
}
|
}
|
||||||
|
|
||||||
auto curve = _currentTrackCurve;
|
auto curve = _currentTrackCurve;
|
||||||
|
@ -188,7 +188,7 @@ static std::tuple<bool, track_type_t> window_ride_construction_update_state_get_
|
||||||
return std::make_tuple(false, 0);
|
return std::make_tuple(false, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (startBank != TrackBank::None || endBank != TrackBank::None)
|
if (startBank != TrackRoll::None || endBank != TrackRoll::None)
|
||||||
{
|
{
|
||||||
return std::make_tuple(false, 0);
|
return std::make_tuple(false, 0);
|
||||||
}
|
}
|
||||||
|
@ -197,7 +197,7 @@ static std::tuple<bool, track_type_t> window_ride_construction_update_state_get_
|
||||||
|
|
||||||
case TrackElemType::LeftVerticalLoop:
|
case TrackElemType::LeftVerticalLoop:
|
||||||
case TrackElemType::RightVerticalLoop:
|
case TrackElemType::RightVerticalLoop:
|
||||||
if (startBank != TrackBank::None || endBank != TrackBank::None)
|
if (startBank != TrackRoll::None || endBank != TrackRoll::None)
|
||||||
{
|
{
|
||||||
return std::make_tuple(false, 0);
|
return std::make_tuple(false, 0);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue