mirror of
https://github.com/OpenRCT2/OpenRCT2
synced 2026-01-26 00:04:43 +01:00
Diagonal Brakes and Block Brakes
This commit is contained in:
@@ -549,6 +549,7 @@ bool TrackElement::IsBlockStart() const
|
||||
case TrackElemType::EndStation:
|
||||
case TrackElemType::CableLiftHill:
|
||||
case TrackElemType::BlockBrakes:
|
||||
case TrackElemType::DiagBlockBrakes:
|
||||
return true;
|
||||
case TrackElemType::Up25ToFlat:
|
||||
case TrackElemType::Up60ToFlat:
|
||||
@@ -563,6 +564,24 @@ bool TrackElement::IsBlockStart() const
|
||||
return false;
|
||||
}
|
||||
|
||||
void TrackElement::SetBrakeClosed2(const CoordsXY& trackLocation, bool isClosed)
|
||||
{
|
||||
switch (GetTrackType())
|
||||
{
|
||||
case TrackElemType::DiagUp25ToFlat:
|
||||
case TrackElemType::DiagUp60ToFlat:
|
||||
case TrackElemType::CableLiftHill:
|
||||
case TrackElemType::DiagBrakes:
|
||||
case TrackElemType::DiagBlockBrakes:
|
||||
GetTrackElementOriginAndApplyChanges(
|
||||
{ trackLocation, GetBaseZ(), GetDirection() }, GetTrackType(), isClosed, nullptr,
|
||||
TRACK_ELEMENT_SET_BRAKE_CLOSED_STATE);
|
||||
break;
|
||||
default:
|
||||
SetBrakeClosed(isClosed);
|
||||
}
|
||||
}
|
||||
|
||||
roll_type_t TrackGetActualBank(TileElement* tileElement, roll_type_t bank)
|
||||
{
|
||||
auto ride = GetRide(tileElement->AsTrack()->GetRideIndex());
|
||||
@@ -624,6 +643,16 @@ bool TrackTypeIsStation(track_type_t trackType)
|
||||
}
|
||||
}
|
||||
|
||||
bool TrackTypeIsBrakes(track_type_t trackType)
|
||||
{
|
||||
return (trackType == TrackElemType::Brakes) || (trackType == TrackElemType::DiagBrakes);
|
||||
}
|
||||
|
||||
bool TrackTypeIsBlockBrakes(track_type_t trackType)
|
||||
{
|
||||
return (trackType == TrackElemType::BlockBrakes) || (trackType == TrackElemType::DiagBlockBrakes);
|
||||
}
|
||||
|
||||
bool TrackElementIsCovered(track_type_t trackElementType)
|
||||
{
|
||||
switch (trackElementType)
|
||||
@@ -655,7 +684,7 @@ bool TrackElementIsCovered(track_type_t trackElementType)
|
||||
|
||||
bool TrackTypeHasSpeedSetting(track_type_t trackType)
|
||||
{
|
||||
return trackType == TrackElemType::Brakes || trackType == TrackElemType::Booster || trackType == TrackElemType::BlockBrakes;
|
||||
return trackType == TrackElemType::Booster || TrackTypeIsBrakes(trackType) || TrackTypeIsBlockBrakes(trackType);
|
||||
}
|
||||
|
||||
bool TrackTypeIsHelix(track_type_t trackType)
|
||||
|
||||
Reference in New Issue
Block a user