Skip to content

Commit 2ee6959

Browse files
committed
Update
1 parent 76c2a87 commit 2ee6959

File tree

2 files changed

+7
-6
lines changed

2 files changed

+7
-6
lines changed

Client/game_sa/CModelInfoSA.h

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -302,7 +302,6 @@ class CVehicleModelInfoSAInterface : public CBaseModelInfoSAInterface
302302
float fSteeringAngle;
303303
CVehicleModelVisualInfoSAInterface* pVisualInfo; // +92
304304
char pad3[464];
305-
//RpMaterial* pDirtMaterial[32];
306305

307306
union
308307
{

Client/multiplayer_sa/CMultiplayerSA_Vehicles.cpp

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,10 @@
1212
#include "..\game_sa\gamesa_renderware.h"
1313

1414
#define FUNC_CVehicleModelInfo_ResetColors 0x4C8490
15-
static RwTexture** ms_aDirtTextures = (RwTexture**)0xC02BD0;
15+
#define FUNC_CBaseModelInfo_Shutdown 0x4C4D50
16+
#define IN_PLACE_BUFFER_DIRT_SIZE 30
17+
18+
static RwTexture** const ms_aDirtTextures = (RwTexture**)0xC02BD0;
1619

1720
static bool __fastcall AreVehicleDoorsUndamageable(CVehicleSAInterface* vehicle)
1821
{
@@ -122,16 +125,15 @@ static void CVehicleModelInfo_Shutdown()
122125
if (!mi)
123126
return;
124127

125-
// Call CBaseModelInfo::Shutdown
126-
((void(__cdecl*)(void*))0x4C4D50)(mi);
128+
((void(__cdecl*)(void*))FUNC_CBaseModelInfo_Shutdown)(mi);
127129

128130
delete[] mi->m_dirtMaterials;
129131
mi->m_dirtMaterials = nullptr;
130132
}
131133

132134
static void SetDirtTextures(CVehicleModelInfoSAInterface* mi, std::uint32_t level)
133135
{
134-
RpMaterial** materials = mi->m_numDirtMaterials > 30 ? mi->m_dirtMaterials : mi->m_staticDirtMaterials;
136+
RpMaterial** materials = mi->m_numDirtMaterials > IN_PLACE_BUFFER_DIRT_SIZE ? mi->m_dirtMaterials : mi->m_staticDirtMaterials;
135137
for (std::uint32_t i = 0; i < mi->m_numDirtMaterials; i++)
136138
RpMaterialSetTexture(materials[i], ms_aDirtTextures[level]);
137139
}
@@ -182,7 +184,7 @@ static void __fastcall FindEditableMaterialList(CVehicleModelInfoSAInterface* mi
182184
GetEditableMaterialListCB(mi->pVisualInfo->m_pExtra[i], &list);
183185

184186
mi->m_numDirtMaterials = list.size();
185-
if (mi->m_numDirtMaterials > 30)
187+
if (mi->m_numDirtMaterials > IN_PLACE_BUFFER_DIRT_SIZE)
186188
{
187189
mi->m_dirtMaterials = new RpMaterial*[mi->m_numDirtMaterials];
188190
std::copy(list.begin(), list.end(), mi->m_dirtMaterials);

0 commit comments

Comments
 (0)