mirror of
https://github.com/OpenRCT2/OpenRCT2
synced 2025-12-24 08:12:53 +01:00
Make TrackDesignTrackElement adhere to new coding style
This commit is contained in:
@@ -477,7 +477,7 @@ static Widget _trackPlaceWidgets[] = {
|
||||
for (const auto& trackElement : td6->trackElements)
|
||||
{
|
||||
// Follow a single track piece shape
|
||||
const auto& ted = GetTrackElementDescriptor(trackElement.Type);
|
||||
const auto& ted = GetTrackElementDescriptor(trackElement.type);
|
||||
const PreviewTrack* trackBlock = ted.Block;
|
||||
while (trackBlock->index != 255)
|
||||
{
|
||||
|
||||
@@ -675,26 +675,26 @@ template<> struct DataSerializerTraitsT<TrackDesignTrackElement>
|
||||
{
|
||||
static void encode(OpenRCT2::IStream* stream, const TrackDesignTrackElement& val)
|
||||
{
|
||||
stream->Write(&val.Type);
|
||||
stream->Write(&val.Flags);
|
||||
stream->Write(&val.ColourScheme);
|
||||
stream->Write(&val.StationIndex);
|
||||
stream->Write(&val.BrakeBoosterSpeed);
|
||||
stream->Write(&val.SeatRotation);
|
||||
stream->Write(&val.type);
|
||||
stream->Write(&val.flags);
|
||||
stream->Write(&val.colourScheme);
|
||||
stream->Write(&val.stationIndex);
|
||||
stream->Write(&val.brakeBoosterSpeed);
|
||||
stream->Write(&val.seatRotation);
|
||||
}
|
||||
static void decode(OpenRCT2::IStream* stream, TrackDesignTrackElement& val)
|
||||
{
|
||||
stream->Read(&val.Type);
|
||||
stream->Read(&val.Flags);
|
||||
stream->Read(&val.ColourScheme);
|
||||
stream->Read(&val.StationIndex);
|
||||
stream->Read(&val.BrakeBoosterSpeed);
|
||||
stream->Read(&val.SeatRotation);
|
||||
stream->Read(&val.type);
|
||||
stream->Read(&val.flags);
|
||||
stream->Read(&val.colourScheme);
|
||||
stream->Read(&val.stationIndex);
|
||||
stream->Read(&val.brakeBoosterSpeed);
|
||||
stream->Read(&val.seatRotation);
|
||||
}
|
||||
static void log(OpenRCT2::IStream* stream, const TrackDesignTrackElement& val)
|
||||
{
|
||||
char msg[128] = {};
|
||||
snprintf(msg, sizeof(msg), "TrackDesignTrackElement(type = %d, flags = %d)", val.Type, val.Flags);
|
||||
snprintf(msg, sizeof(msg), "TrackDesignTrackElement(type = %d, flags = %d)", val.type, val.flags);
|
||||
stream->Write(msg, strlen(msg));
|
||||
}
|
||||
};
|
||||
|
||||
@@ -258,7 +258,7 @@ namespace RCT1
|
||||
_stream.SetPosition(_stream.GetPosition() - 1);
|
||||
_stream.Read(&t4TrackElement, sizeof(TD46TrackElement));
|
||||
TrackDesignTrackElement trackElement{};
|
||||
trackElement.Type = RCT1TrackTypeToOpenRCT2(t4TrackElement.Type, td->type);
|
||||
trackElement.type = RCT1TrackTypeToOpenRCT2(t4TrackElement.Type, td->type);
|
||||
ConvertFromTD46Flags(trackElement, t4TrackElement.Flags);
|
||||
td->trackElements.push_back(trackElement);
|
||||
}
|
||||
|
||||
@@ -882,26 +882,26 @@ ResearchItem RCT12ResearchItem::ToResearchItem() const
|
||||
|
||||
void ConvertFromTD46Flags(TrackDesignTrackElement& target, uint8_t flags)
|
||||
{
|
||||
target.BrakeBoosterSpeed = kRCT2DefaultBlockBrakeSpeed;
|
||||
if (TrackTypeIsStation(target.Type))
|
||||
target.brakeBoosterSpeed = kRCT2DefaultBlockBrakeSpeed;
|
||||
if (TrackTypeIsStation(target.type))
|
||||
{
|
||||
auto stationIndex = flags & EnumValue(TD46Flags::StationId);
|
||||
target.StationIndex = StationIndex::FromUnderlying(stationIndex);
|
||||
target.stationIndex = StationIndex::FromUnderlying(stationIndex);
|
||||
}
|
||||
else
|
||||
{
|
||||
auto speedOrSeatRotation = flags & EnumValue(TD46Flags::SpeedOrSeatRotation);
|
||||
if (TrackTypeHasSpeedSetting(target.Type) && target.Type != TrackElemType::BlockBrakes)
|
||||
if (TrackTypeHasSpeedSetting(target.type) && target.type != TrackElemType::BlockBrakes)
|
||||
{
|
||||
target.BrakeBoosterSpeed = speedOrSeatRotation << 1;
|
||||
target.brakeBoosterSpeed = speedOrSeatRotation << 1;
|
||||
}
|
||||
else
|
||||
{
|
||||
target.SeatRotation = speedOrSeatRotation;
|
||||
target.seatRotation = speedOrSeatRotation;
|
||||
}
|
||||
}
|
||||
|
||||
target.ColourScheme = (flags & EnumValue(TD46Flags::ColourScheme)) >> 4;
|
||||
target.colourScheme = (flags & EnumValue(TD46Flags::ColourScheme)) >> 4;
|
||||
if (flags & EnumValue(TD46Flags::IsInverted))
|
||||
target.SetFlag(TrackDesignTrackElementFlag::isInverted);
|
||||
if (flags & EnumValue(TD46Flags::HasChain))
|
||||
@@ -911,20 +911,20 @@ void ConvertFromTD46Flags(TrackDesignTrackElement& target, uint8_t flags)
|
||||
uint8_t ConvertToTD46Flags(const TrackDesignTrackElement& source)
|
||||
{
|
||||
uint8_t trackFlags = 0;
|
||||
if (TrackTypeIsStation(source.Type))
|
||||
if (TrackTypeIsStation(source.type))
|
||||
{
|
||||
trackFlags = (source.StationIndex.ToUnderlying() & EnumValue(TD46Flags::StationId));
|
||||
trackFlags = (source.stationIndex.ToUnderlying() & EnumValue(TD46Flags::StationId));
|
||||
}
|
||||
else if (TrackTypeHasSpeedSetting(source.Type) && source.Type != TrackElemType::BlockBrakes)
|
||||
else if (TrackTypeHasSpeedSetting(source.type) && source.type != TrackElemType::BlockBrakes)
|
||||
{
|
||||
trackFlags = (source.BrakeBoosterSpeed >> 1);
|
||||
trackFlags = (source.brakeBoosterSpeed >> 1);
|
||||
}
|
||||
else
|
||||
{
|
||||
trackFlags = source.SeatRotation;
|
||||
trackFlags = source.seatRotation;
|
||||
}
|
||||
|
||||
trackFlags |= source.ColourScheme << 4;
|
||||
trackFlags |= source.colourScheme << 4;
|
||||
|
||||
if (source.HasFlag(TrackDesignTrackElementFlag::hasChain))
|
||||
trackFlags |= EnumValue(TD46Flags::HasChain);
|
||||
|
||||
@@ -124,7 +124,7 @@ namespace RCT2
|
||||
{
|
||||
for (const auto& trackElement : _trackDesign->trackElements)
|
||||
{
|
||||
auto trackType = OpenRCT2TrackTypeToRCT2(trackElement.Type);
|
||||
auto trackType = OpenRCT2TrackTypeToRCT2(trackElement.type);
|
||||
if (trackType == TrackElemType::MultiDimInvertedUp90ToFlatQuarterLoop)
|
||||
{
|
||||
trackType = TrackElemType::InvertedUp90ToFlatQuarterLoopAlias;
|
||||
|
||||
@@ -164,7 +164,7 @@ namespace RCT2
|
||||
trackType = TrackElemType::MultiDimInvertedUp90ToFlatQuarterLoop;
|
||||
}
|
||||
|
||||
trackElement.Type = trackType;
|
||||
trackElement.type = trackType;
|
||||
ConvertFromTD46Flags(trackElement, t6TrackElement.Flags);
|
||||
td->trackElements.push_back(trackElement);
|
||||
}
|
||||
|
||||
@@ -234,14 +234,14 @@ ResultWithMessage TrackDesign::CreateTrackDesignTrack(TrackDesignState& tds, con
|
||||
}
|
||||
|
||||
TrackDesignTrackElement track{};
|
||||
track.Type = element->GetTrackType();
|
||||
track.ColourScheme = element->GetColourScheme();
|
||||
track.StationIndex = element->GetStationIndex();
|
||||
track.BrakeBoosterSpeed = element->GetBrakeBoosterSpeed();
|
||||
track.SeatRotation = element->GetSeatRotation();
|
||||
track.type = element->GetTrackType();
|
||||
track.colourScheme = element->GetColourScheme();
|
||||
track.stationIndex = element->GetStationIndex();
|
||||
track.brakeBoosterSpeed = element->GetBrakeBoosterSpeed();
|
||||
track.seatRotation = element->GetSeatRotation();
|
||||
|
||||
// This warning will not apply to new track design format
|
||||
if (track.Type == TrackElemType::BlockBrakes && element->GetBrakeBoosterSpeed() != kRCT2DefaultBlockBrakeSpeed)
|
||||
if (track.type == TrackElemType::BlockBrakes && element->GetBrakeBoosterSpeed() != kRCT2DefaultBlockBrakeSpeed)
|
||||
{
|
||||
warningMessage = STR_TRACK_DESIGN_BLOCK_BRAKE_SPEED_RESET;
|
||||
}
|
||||
@@ -881,8 +881,8 @@ static void TrackDesignMirrorRide(TrackDesign* td6)
|
||||
{
|
||||
for (auto& track : td6->trackElements)
|
||||
{
|
||||
const auto& ted = GetTrackElementDescriptor(track.Type);
|
||||
track.Type = ted.MirrorElement;
|
||||
const auto& ted = GetTrackElementDescriptor(track.type);
|
||||
track.type = ted.MirrorElement;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1572,7 +1572,7 @@ static GameActions::Result TrackDesignPlaceRide(TrackDesignState& tds, TrackDesi
|
||||
auto newCoords = origin;
|
||||
for (const auto& track : td6->trackElements)
|
||||
{
|
||||
auto trackType = track.Type;
|
||||
auto trackType = track.type;
|
||||
const auto& ted = GetTrackElementDescriptor(trackType);
|
||||
|
||||
TrackDesignUpdatePreviewBounds(tds, newCoords);
|
||||
@@ -1643,7 +1643,7 @@ static GameActions::Result TrackDesignPlaceRide(TrackDesignState& tds, TrackDesi
|
||||
|
||||
auto trackPlaceAction = TrackPlaceAction(
|
||||
ride.id, trackType, ride.type, { newCoords, tempZ, static_cast<uint8_t>(rotation) },
|
||||
track.BrakeBoosterSpeed, track.ColourScheme, track.SeatRotation, liftHillAndAlternativeState, true);
|
||||
track.brakeBoosterSpeed, track.colourScheme, track.seatRotation, liftHillAndAlternativeState, true);
|
||||
trackPlaceAction.SetFlags(flags);
|
||||
|
||||
auto res = flags & GAME_COMMAND_FLAG_APPLY ? GameActions::ExecuteNested(&trackPlaceAction)
|
||||
|
||||
@@ -97,26 +97,26 @@ enum class TrackDesignTrackElementFlag : uint8_t
|
||||
|
||||
struct TrackDesignTrackElement
|
||||
{
|
||||
track_type_t Type = 0;
|
||||
uint8_t Flags = 0;
|
||||
uint8_t ColourScheme = 0;
|
||||
::StationIndex StationIndex = StationIndex::FromUnderlying(0);
|
||||
uint8_t BrakeBoosterSpeed = 0;
|
||||
uint8_t SeatRotation = 4;
|
||||
track_type_t type = 0;
|
||||
uint8_t flags = 0;
|
||||
uint8_t colourScheme = 0;
|
||||
::StationIndex stationIndex = StationIndex::FromUnderlying(0);
|
||||
uint8_t brakeBoosterSpeed = 0;
|
||||
uint8_t seatRotation = 4;
|
||||
|
||||
constexpr bool HasFlag(const TrackDesignTrackElementFlag flag) const
|
||||
{
|
||||
return Flags & EnumValue(flag);
|
||||
return flags & EnumValue(flag);
|
||||
}
|
||||
|
||||
constexpr void SetFlag(const TrackDesignTrackElementFlag flag)
|
||||
{
|
||||
Flags |= EnumValue(flag);
|
||||
flags |= EnumValue(flag);
|
||||
}
|
||||
|
||||
constexpr void ClearFlag(const TrackDesignTrackElementFlag flag)
|
||||
{
|
||||
Flags &= ~EnumValue(flag);
|
||||
flags &= ~EnumValue(flag);
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
Reference in New Issue
Block a user