Skip to content

Commit 7225101

Browse files
committed
Review
1 parent 1aa5012 commit 7225101

File tree

6 files changed

+26
-22
lines changed

6 files changed

+26
-22
lines changed

Client/game_sa/CAutomobileSA.cpp

Lines changed: 11 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,9 @@
1515

1616
extern CGameSA* pGame;
1717

18+
using namespace CarNodes;
19+
using namespace VehicleFeatures;
20+
1821
CAutomobileSA::CAutomobileSA(CAutomobileSAInterface* pInterface)
1922
{
2023
SetInterface(pInterface);
@@ -47,7 +50,7 @@ void CAutomobileSAInterface::SetPanelDamage(std::uint8_t panelId, bool breakGlas
4750
if ((pHandlingData->uiModelFlags & 0x10000000) != 0) // check bouncePanels flag
4851
return;
4952

50-
if (node != CarNodes::Enum::WINDSCREEN && node != CarNodes::Enum::WING_LF && node != CarNodes::Enum::WING_RF)
53+
if (node != WINDSCREEN && node != WING_LF && node != WING_RF)
5154
{
5255
// Get free bouncing panel
5356
for (auto& panel : m_panels)
@@ -99,17 +102,17 @@ void CAutomobileSA::PreRender_End(CAutomobileSAInterface* vehicleInterface)
99102
return;
100103

101104
// Simple turret like in fire truck
102-
if (vehicle->pEntity->IsSpecialFeatureEnabled(VehicleFeatures::Enum::WATER_CANNON) && !vehicle->pEntity->IsSpecialFeatureEnabled(VehicleFeatures::Enum::TURRET))
105+
if (vehicle->pEntity->IsSpecialFeatureEnabled(WATER_CANNON) && !vehicle->pEntity->IsSpecialFeatureEnabled(TURRET))
103106
{
104-
CVehicleSA::SetComponentRotation(vehicleInterface->m_aCarNodes[CarNodes::MISC_A], eComponentRotationAxis::AXIS_X, vehicleInterface->m_fDoomHorizontalRotation, true);
105-
CVehicleSA::SetComponentRotation(vehicleInterface->m_aCarNodes[CarNodes::MISC_A], eComponentRotationAxis::AXIS_Z, vehicleInterface->m_fDoomVerticalRotation, false);
107+
CVehicleSA::SetComponentRotation(vehicleInterface->m_aCarNodes[MISC_A], eComponentRotationAxis::AXIS_X, vehicleInterface->m_fDoomHorizontalRotation, true);
108+
CVehicleSA::SetComponentRotation(vehicleInterface->m_aCarNodes[MISC_A], eComponentRotationAxis::AXIS_Z, vehicleInterface->m_fDoomVerticalRotation, false);
106109
}
107110

108111
// Turret like rhino or swat van
109-
if (vehicle->pEntity->IsSpecialFeatureEnabled(VehicleFeatures::Enum::TURRET))
112+
if (vehicle->pEntity->IsSpecialFeatureEnabled(TURRET))
110113
{
111-
CVehicleSA::SetComponentRotation(vehicleInterface->m_aCarNodes[CarNodes::MISC_A], eComponentRotationAxis::AXIS_Z, vehicleInterface->m_fDoomVerticalRotation, true);
112-
CVehicleSA::SetComponentRotation(vehicleInterface->m_aCarNodes[CarNodes::MISC_B], eComponentRotationAxis::AXIS_X, vehicleInterface->m_fDoomHorizontalRotation, true);
114+
CVehicleSA::SetComponentRotation(vehicleInterface->m_aCarNodes[MISC_A], eComponentRotationAxis::AXIS_Z, vehicleInterface->m_fDoomVerticalRotation, true);
115+
CVehicleSA::SetComponentRotation(vehicleInterface->m_aCarNodes[MISC_B], eComponentRotationAxis::AXIS_X, vehicleInterface->m_fDoomHorizontalRotation, true);
113116
}
114117
}
115118

@@ -124,12 +127,11 @@ bool CAutomobileSA::HasFeatureEnabled(CAutomobileSAInterface* vehicleInterface,
124127

125128
static constexpr std::uintptr_t SKIIP_FIRE_TRUCK = 0x6B1F77;
126129
static constexpr std::uintptr_t CONTINUE_FIRE_TRUCK = 0x6B1F5B;
127-
static constexpr VehicleFeatures::Enum WATER_CANNON_ID = VehicleFeatures::Enum::WATER_CANNON;
128130
static void _declspec(naked) HOOK_CAutomobile_ProcessControl_FireTruckCheck()
129131
{
130132
_asm
131133
{
132-
push WATER_CANNON_ID
134+
push WATER_CANNON
133135
push esi
134136
call CAutomobileSA::HasFeatureEnabled
135137
add esp, 8

Client/game_sa/CGameSA.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -323,8 +323,8 @@ class CGameSA : public CGame
323323

324324
bool SetBuildingPoolSize(size_t size);
325325

326-
bool SetVehicleModelSpecialFeatureEnabled(std::uint16_t model, const VehicleFeatures::Enum& feature, bool enabled) override { return CVehicleSA::SetModelSpecialFeatureEnabled(model, feature, enabled); };
327-
bool IsVehicleModelSpecialFeatureEnabled(std::uint16_t model, const VehicleFeatures::Enum& feature) const override { return CVehicleSA::IsModelSpecialFeatureEnabled(model, feature); };
326+
bool SetVehicleModelSpecialFeatureEnabled(std::uint16_t model, VehicleFeatures::Enum feature, bool enabled) override { return CVehicleSA::SetModelSpecialFeatureEnabled(model, feature, enabled); };
327+
bool IsVehicleModelSpecialFeatureEnabled(std::uint16_t model, VehicleFeatures::Enum feature) const override { return CVehicleSA::IsModelSpecialFeatureEnabled(model, feature); };
328328

329329
ModelFeaturesArray GetModelSpecialFeatures(std::uint16_t model) const noexcept override { return CVehicleSA::GetModelSpecialFeatures(model); }
330330

Client/game_sa/CVehicleSA.cpp

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2422,7 +2422,7 @@ void CVehicleSA::ReinitAudio()
24222422
audioInterface->SoundJoin();
24232423
}
24242424

2425-
bool CVehicleSA::SetSpecialFeatureEnabled(const VehicleFeatures::Enum& feature, bool enabled)
2425+
bool CVehicleSA::SetSpecialFeatureEnabled(VehicleFeatures::Enum feature, bool enabled)
24262426
{
24272427
CVehicleSAInterface* vehicleInterface = GetVehicleInterface();
24282428

@@ -2443,21 +2443,23 @@ bool CVehicleSA::SetSpecialFeatureEnabled(const VehicleFeatures::Enum& feature,
24432443
return true;
24442444
}
24452445

2446-
bool CVehicleSA::SetModelSpecialFeatureEnabled(std::uint16_t model, const VehicleFeatures::Enum& feature, bool enabled)
2446+
bool CVehicleSA::SetModelSpecialFeatureEnabled(std::uint16_t model, VehicleFeatures::Enum feature, bool enabled)
24472447
{
24482448
CModelInfo* modelInfo = pGame->GetModelInfo(model);
24492449
if (!modelInfo)
24502450
return false;
24512451

24522452
if (feature == VehicleFeatures::Enum::WATER_CANNON)
2453+
{
24532454
if (static_cast<VehicleClass>(modelInfo->GetVehicleType()) != VehicleClass::AUTOMOBILE)
24542455
return false;
2456+
}
24552457

24562458
m_modelSpecialFeatures[model][feature] = enabled;
24572459
return true;
24582460
}
24592461

2460-
bool CVehicleSA::IsModelSpecialFeatureEnabled(std::uint16_t model, const VehicleFeatures::Enum& feature)
2462+
bool CVehicleSA::IsModelSpecialFeatureEnabled(std::uint16_t model, VehicleFeatures::Enum feature)
24612463
{
24622464
auto it = m_modelSpecialFeatures.find(model);
24632465
return it == m_modelSpecialFeatures.end() ? false : it->second[feature];

Client/game_sa/CVehicleSA.h

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -730,11 +730,11 @@ class CVehicleSA : public virtual CVehicle, public virtual CPhysicalSA
730730

731731
void SetSpecialFeaturesEnabled(const ModelFeaturesArray& features) noexcept { m_specialFeatures = features; }
732732

733-
bool SetSpecialFeatureEnabled(const VehicleFeatures::Enum& feature, bool enabled) override;
734-
bool IsSpecialFeatureEnabled(const VehicleFeatures::Enum& feature) const noexcept override { return m_specialFeatures[feature]; }
733+
bool SetSpecialFeatureEnabled(VehicleFeatures::Enum feature, bool enabled) override;
734+
bool IsSpecialFeatureEnabled(VehicleFeatures::Enum feature) const noexcept override { return m_specialFeatures[feature]; }
735735

736-
static bool SetModelSpecialFeatureEnabled(std::uint16_t model, const VehicleFeatures::Enum& feature, bool enabled);
737-
static bool IsModelSpecialFeatureEnabled(std::uint16_t model, const VehicleFeatures::Enum& feature);
736+
static bool SetModelSpecialFeatureEnabled(std::uint16_t model, VehicleFeatures::Enum feature, bool enabled);
737+
static bool IsModelSpecialFeatureEnabled(std::uint16_t model, VehicleFeatures::Enum feature);
738738

739739
static ModelFeaturesArray GetModelSpecialFeatures(std::uint16_t model);
740740

Client/sdk/game/CGame.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -289,8 +289,8 @@ class __declspec(novtable) CGame
289289

290290
virtual bool SetBuildingPoolSize(size_t size) = 0;
291291

292-
virtual bool SetVehicleModelSpecialFeatureEnabled(std::uint16_t model, const VehicleFeatures::Enum& feature, bool enabled) = 0;
293-
virtual bool IsVehicleModelSpecialFeatureEnabled(std::uint16_t model, const VehicleFeatures::Enum& feature) const = 0;
292+
virtual bool SetVehicleModelSpecialFeatureEnabled(std::uint16_t model, VehicleFeatures::Enum feature, bool enabled) = 0;
293+
virtual bool IsVehicleModelSpecialFeatureEnabled(std::uint16_t model, VehicleFeatures::Enum feature) const = 0;
294294

295295
virtual std::array<bool, VehicleFeatures::Enum::MAX_FEATURES> GetModelSpecialFeatures(std::uint16_t model) const noexcept = 0;
296296

Client/sdk/game/CVehicle.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -338,6 +338,6 @@ class CVehicle : public virtual CPhysical
338338

339339
virtual void SetSpecialFeaturesEnabled(const ModelFeaturesArray& features) noexcept = 0;
340340

341-
virtual bool SetSpecialFeatureEnabled(const VehicleFeatures::Enum& feature, bool enabled) = 0;
342-
virtual bool IsSpecialFeatureEnabled(const VehicleFeatures::Enum& feature) const noexcept = 0;
341+
virtual bool SetSpecialFeatureEnabled(VehicleFeatures::Enum feature, bool enabled) = 0;
342+
virtual bool IsSpecialFeatureEnabled(VehicleFeatures::Enum feature) const noexcept = 0;
343343
};

0 commit comments

Comments
 (0)