mirror of
https://github.com/OpenRCT2/OpenRCT2
synced 2026-01-18 12:33:17 +01:00
Add small medium and large turns, diagonals and s-bends to Boat Hire
This commit is contained in:
@@ -49,7 +49,7 @@ using namespace OpenRCT2;
|
||||
// It is used for making sure only compatible builds get connected, even within
|
||||
// single OpenRCT2 version.
|
||||
|
||||
constexpr uint8_t kNetworkStreamVersion = 5;
|
||||
constexpr uint8_t kNetworkStreamVersion = 6;
|
||||
|
||||
const std::string kNetworkStreamID = std::string(OPENRCT2_VERSION) + "-" + std::to_string(kNetworkStreamVersion);
|
||||
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -2635,6 +2635,26 @@ bool TrackTypeMustBeMadeInvisible(ride_type_t rideType, OpenRCT2::TrackElemType
|
||||
break;
|
||||
}
|
||||
}
|
||||
else if (rideType == RIDE_TYPE_BOAT_HIRE && parkFileVersion < kExtendedBoatHireVersion)
|
||||
{
|
||||
switch (trackType)
|
||||
{
|
||||
case TrackElemType::LeftQuarterTurn3Tiles:
|
||||
case TrackElemType::RightQuarterTurn3Tiles:
|
||||
case TrackElemType::LeftQuarterTurn5Tiles:
|
||||
case TrackElemType::RightQuarterTurn5Tiles:
|
||||
case TrackElemType::LeftEighthToDiag:
|
||||
case TrackElemType::RightEighthToDiag:
|
||||
case TrackElemType::LeftEighthToOrthogonal:
|
||||
case TrackElemType::RightEighthToOrthogonal:
|
||||
case TrackElemType::DiagFlat:
|
||||
case TrackElemType::SBendLeft:
|
||||
case TrackElemType::SBendRight:
|
||||
return true;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
@@ -11,7 +11,7 @@ namespace OpenRCT2
|
||||
struct GameState_t;
|
||||
|
||||
// Current version that is saved.
|
||||
constexpr uint32_t PARK_FILE_CURRENT_VERSION = 45;
|
||||
constexpr uint32_t PARK_FILE_CURRENT_VERSION = 46;
|
||||
|
||||
// The minimum version that is forwards compatible with the current version.
|
||||
constexpr uint32_t PARK_FILE_MIN_VERSION = 45;
|
||||
@@ -34,6 +34,7 @@ namespace OpenRCT2
|
||||
constexpr uint16_t kWoodenRollerCoasterMediumLargeHalfLoopsVersion = 41;
|
||||
constexpr uint16_t kExtendedCorkscrewCoasterVersion = 42;
|
||||
constexpr uint16_t kExtendedTwisterCoasterVersion = 43;
|
||||
constexpr uint16_t kExtendedBoatHireVersion = 46;
|
||||
} // namespace OpenRCT2
|
||||
|
||||
class ParkFileExporter
|
||||
|
||||
@@ -22,7 +22,7 @@ constexpr RideTypeDescriptor BoatHireRTD =
|
||||
.StartTrackPiece = OpenRCT2::TrackElemType::EndStation,
|
||||
.TrackPaintFunctions = TrackDrawerDescriptor({
|
||||
.Drawer = GetTrackPaintFunctionBoatHire,
|
||||
.enabledTrackGroups = {TrackGroup::straight, TrackGroup::stationEnd, TrackGroup::curveVerySmall},
|
||||
.enabledTrackGroups = {TrackGroup::straight, TrackGroup::stationEnd, TrackGroup::curveVerySmall, TrackGroup::curveSmall, TrackGroup::curve, TrackGroup::curveLarge, TrackGroup::sBend},
|
||||
.extraTrackGroups = {},
|
||||
}),
|
||||
.InvertedTrackPaintFunctions = {},
|
||||
|
||||
@@ -1494,9 +1494,17 @@ enum : ImageIndex
|
||||
SPR_G2_FLUME_60_25_NW_SE_BACK_WATER,
|
||||
SPR_G2_FLUME_60_25_NW_SE_BACK,
|
||||
|
||||
SPR_G2_BOAT_HIRE_BEGIN,
|
||||
SPR_G2_BOAT_HIRE_TRACK_SMALL_CURVE = SPR_G2_BOAT_HIRE_BEGIN,
|
||||
SPR_G2_BOAT_HIRE_TRACK_MEDIUM_CURVE = SPR_G2_BOAT_HIRE_TRACK_SMALL_CURVE + 24,
|
||||
SPR_G2_BOAT_HIRE_TRACK_LARGE_CURVE = SPR_G2_BOAT_HIRE_TRACK_MEDIUM_CURVE + 40,
|
||||
SPR_G2_BOAT_HIRE_TRACK_FLAT_DIAGONAL = SPR_G2_BOAT_HIRE_TRACK_LARGE_CURVE + 68,
|
||||
SPR_G2_BOAT_HIRE_TRACK_S_BEND = SPR_G2_BOAT_HIRE_TRACK_FLAT_DIAGONAL + 3,
|
||||
SPR_G2_BOAT_HIRE_END = SPR_G2_BOAT_HIRE_TRACK_S_BEND + 32,
|
||||
|
||||
// G2 Supports
|
||||
|
||||
SPR_G2_SUPPORT_WOODEN_TRUSS,
|
||||
SPR_G2_SUPPORT_WOODEN_TRUSS = SPR_G2_BOAT_HIRE_END,
|
||||
SPR_G2_SUPPORT_WOODEN_MINE = SPR_G2_SUPPORT_WOODEN_TRUSS + 32,
|
||||
SPR_G2_SUPPORT_END = SPR_G2_SUPPORT_WOODEN_MINE + 32,
|
||||
|
||||
|
||||
Reference in New Issue
Block a user