1
0
mirror of https://github.com/OpenRCT2/OpenRCT2 synced 2026-01-15 11:03:00 +01:00

Change ScVehicle::isReversed_get/set to template function

This commit is contained in:
spacek531
2024-06-04 04:06:20 -07:00
committed by GitHub
parent 63d1259fd7
commit 4ea55ef415
2 changed files with 11 additions and 8 deletions

View File

@@ -71,7 +71,9 @@ namespace OpenRCT2::Scripting
dukglue_register_property(ctx, &ScVehicle::acceleration_get, &ScVehicle::acceleration_set, "acceleration");
dukglue_register_property(ctx, &ScVehicle::velocity_get, &ScVehicle::velocity_set, "velocity");
dukglue_register_property(ctx, &ScVehicle::bankRotation_get, &ScVehicle::bankRotation_set, "bankRotation");
dukglue_register_property(ctx, &ScVehicle::isReversed_get, &ScVehicle::isReversed_set, "isReversed");
dukglue_register_property(
ctx, &ScVehicle::flag_get<VehicleFlags::CarIsReversed>, &ScVehicle::flag_set<VehicleFlags::CarIsReversed>,
"isReversed");
dukglue_register_property(ctx, &ScVehicle::colours_get, &ScVehicle::colours_set, "colours");
dukglue_register_property(ctx, &ScVehicle::trackLocation_get, &ScVehicle::trackLocation_set, "trackLocation");
dukglue_register_property(ctx, &ScVehicle::trackProgress_get, nullptr, "trackProgress");
@@ -333,12 +335,13 @@ namespace OpenRCT2::Scripting
}
}
bool ScVehicle::isReversed_get() const
template<uint32_t flag> bool ScVehicle::flag_get() const
{
auto vehicle = GetVehicle();
return vehicle != nullptr ? vehicle->HasFlag(VehicleFlags::CarIsReversed) : false;
return vehicle != nullptr ? vehicle->HasFlag(flag) : false;
}
void ScVehicle::isReversed_set(bool value)
template<uint32_t flag> void ScVehicle::flag_set(bool value)
{
ThrowIfGameStateNotMutable();
auto vehicle = GetVehicle();
@@ -346,11 +349,11 @@ namespace OpenRCT2::Scripting
{
if (value)
{
vehicle->SetFlag(VehicleFlags::CarIsReversed);
vehicle->SetFlag(flag);
}
else
{
vehicle->ClearFlag(VehicleFlags::CarIsReversed);
vehicle->ClearFlag(flag);
}
}
}

View File

@@ -67,8 +67,8 @@ namespace OpenRCT2::Scripting
uint8_t bankRotation_get() const;
void bankRotation_set(uint8_t value);
bool isReversed_get() const;
void isReversed_set(bool value);
template<uint32_t flag> bool flag_get() const;
template<uint32_t flag> void flag_set(bool value);
DukValue colours_get() const;
void colours_set(const DukValue& value);