Skip to content

Commit a311d8d

Browse files
committed
Fix warning c4150 when deleting Game SA interface
Visual studio was generating a warning when calling delete operator on hierarchy and sequnece interface in Client Deathmatch, so replaced it with CAnimManager::DeleteCustomAnimHierarchyInterface and CAnimManager::DeleteCustomAnimSequenceInterface in CIFPAnimations::DeleteAnimations and CClientIFP::MoveSequencesWithDummies Also, applied source formatting
1 parent 90ba044 commit a311d8d

19 files changed

+97
-79
lines changed

Client/game_sa/CAnimBlendAssocGroupSA.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,7 @@ class CAnimBlendAssocGroupSA : public CAnimBlendAssocGroup
5151
int GetNumAnimations(void);
5252
CAnimBlock* GetAnimBlock(void);
5353
CAnimBlendStaticAssociation* GetAnimation(unsigned int ID);
54-
AssocGroupId GetGroupID(void) { return m_pInterface->groupID;};
54+
AssocGroupId GetGroupID(void) { return m_pInterface->groupID; };
5555
void CreateAssociations(const char* szBlockName);
5656

5757
bool IsLoaded(void);

Client/game_sa/CAnimBlendSequenceSA.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,7 @@ void CAnimBlendSequenceSA::SetKeyFrames(size_t cKeyFrames, bool bRoot, bool bCom
5858
}
5959
}
6060

61-
void CAnimBlendSequenceSA::CopySequenceProperties( CAnimBlendSequenceSAInterface * pAnimSequenceInterface )
61+
void CAnimBlendSequenceSA::CopySequenceProperties(CAnimBlendSequenceSAInterface* pAnimSequenceInterface)
6262
{
6363
*m_pInterface = *pAnimSequenceInterface;
6464
}

Client/game_sa/CAnimBlendSequenceSA.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@ class CAnimBlendSequenceSA : public CAnimBlendSequence
4444
BYTE* GetKeyFrames(void) { return m_pInterface->pKeyFrames; }
4545
unsigned short GetKeyFramesCount(void) { return m_pInterface->sNumKeyFrames; }
4646
bool IsBigChunkForAllSequences(void) { return ((m_pInterface->sFlags >> 3) & 1); }
47-
void CopySequenceProperties(CAnimBlendSequenceSAInterface * pAnimSequenceInterface);
47+
void CopySequenceProperties(CAnimBlendSequenceSAInterface* pAnimSequenceInterface);
4848
CAnimBlendSequenceSAInterface* GetInterface(void) { return m_pInterface; }
4949

5050
protected:

Client/game_sa/CAnimManagerSA.cpp

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -776,6 +776,16 @@ std::unique_ptr<CAnimBlendSequence> CAnimManagerSA::GetCustomAnimBlendSequence(v
776776
return std::make_unique<CAnimBlendSequenceSA>(pInterface);
777777
}
778778

779+
void CAnimManagerSA::DeleteCustomAnimHierarchyInterface(CAnimBlendHierarchySAInterface* pInterface)
780+
{
781+
delete pInterface;
782+
}
783+
784+
void CAnimManagerSA::DeleteCustomAnimSequenceInterface(CAnimBlendSequenceSAInterface* pInterface)
785+
{
786+
delete pInterface;
787+
}
788+
779789
bool CAnimManagerSA::isGateWayAnimationHierarchy(CAnimBlendHierarchySAInterface* pInterface)
780790
{
781791
return pGame->GetKeyGen()->GetUppercaseKey(m_kGateWayAnimationName.c_str()) == pInterface->iHashKey;

Client/game_sa/CAnimManagerSA.h

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -159,10 +159,13 @@ class CAnimManagerSA : public CAnimManager
159159
std::unique_ptr<CAnimBlendHierarchy> GetCustomAnimBlendHierarchy(CAnimBlendHierarchySAInterface *pInterface);
160160
std::unique_ptr<CAnimBlendSequence> GetCustomAnimBlendSequence(CAnimBlendSequenceSAInterface *pInterface);
161161

162-
// Warning! These two functions will create a new interface ( dynamic memory memory allocation )
162+
// Warning! These two functions will create a new interface ( dynamic memory memory allocation )
163163
std::unique_ptr<CAnimBlendHierarchy> GetCustomAnimBlendHierarchy(void);
164164
std::unique_ptr<CAnimBlendSequence> GetCustomAnimBlendSequence(void);
165165

166+
void DeleteCustomAnimHierarchyInterface(CAnimBlendHierarchySAInterface *pInterface);
167+
void DeleteCustomAnimSequenceInterface(CAnimBlendSequenceSAInterface *pInterface);
168+
166169
bool isGateWayAnimationHierarchy(CAnimBlendHierarchySAInterface *pInterface);
167170
const SString &GetGateWayBlockName(void) { return m_kGateWayBlockName; };
168171
const SString &GetGateWayAnimationName(void) { return m_kGateWayAnimationName; };

Client/mods/deathmatch/logic/CClientGame.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3965,7 +3965,7 @@ bool CClientGame::AssocGroupCopyAnimationHandler(CAnimBlendStaticAssociationSAIn
39653965
{
39663966
bool isCustomAnimationToPlay = false;
39673967
CAnimManager* pAnimationManager = g_pGame->GetAnimManager();
3968-
auto pAnimAssocGroup = pAnimationManager->GetAnimBlendAssocGroup (pAnimAssocGroupInterface);
3968+
auto pAnimAssocGroup = pAnimationManager->GetAnimBlendAssocGroup(pAnimAssocGroupInterface);
39693969
auto pOriginalAnimStaticAssoc = pAnimationManager->GetAnimStaticAssociation(pAnimAssocGroup->GetGroupID(), animID);
39703970
auto pOriginalAnimHierarchyInterface = pOriginalAnimStaticAssoc->GetAnimHierachyInterface();
39713971
auto pOutAnimStaticAssoc = pAnimationManager->GetAnimStaticAssociation(pOutAnimStaticAssocInterface);
@@ -6790,7 +6790,7 @@ void CClientGame::InsertIFPPointerToMap(const unsigned int u32BlockNameHash, con
67906790

67916791
std::shared_ptr<CClientIFP> CClientGame::GetIFPPointerFromMap(const unsigned int u32BlockNameHash)
67926792
{
6793-
auto it = m_mapOfIfpPointers.find(u32BlockNameHash);
6793+
auto it = m_mapOfIfpPointers.find(u32BlockNameHash);
67946794
if (it != m_mapOfIfpPointers.end())
67956795
{
67966796
return it->second;

Client/mods/deathmatch/logic/CClientGame.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -831,8 +831,8 @@ class CClientGame
831831

832832
// (unsigned int) Key is the hash of custom block name that is supplied to engineLoadIFP
833833
std::map<unsigned int, std::shared_ptr<CClientIFP> > m_mapOfIfpPointers;
834-
std::set<CClientPed*> m_setOfPedPointers;
835-
AnimAssociations_type m_mapOfCustomAnimationAssociations;
834+
std::set<CClientPed*> m_setOfPedPointers;
835+
AnimAssociations_type m_mapOfCustomAnimationAssociations;
836836
};
837837

838838
extern CClientGame* g_pClientGame;

Client/mods/deathmatch/logic/CClientIFP.cpp

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -108,7 +108,7 @@ void CClientIFP::ReadIFPVersion2(bool bAnp3)
108108
WORD CClientIFP::ReadSequencesWithDummies(std::unique_ptr<CAnimBlendHierarchy>& pAnimationHierarchy)
109109
{
110110
SequenceMapType MapOfSequences;
111-
WORD wUnknownSequences = ReadSequences(pAnimationHierarchy, MapOfSequences);
111+
WORD wUnknownSequences = ReadSequences(pAnimationHierarchy, MapOfSequences);
112112

113113
MoveSequencesWithDummies(pAnimationHierarchy, MapOfSequences);
114114
WORD cSequences = m_kcIFPSequences + wUnknownSequences;
@@ -140,30 +140,30 @@ WORD CClientIFP::ReadSequencesVersion1(std::unique_ptr<CAnimBlendHierarchy>& pAn
140140
}
141141

142142
std::unique_ptr<CAnimBlendSequence> pAnimationSequence;
143-
bool bUnknownSequence = iBoneID == eBoneType::UNKNOWN;
143+
bool bUnknownSequence = iBoneID == eBoneType::UNKNOWN;
144144
if (bUnknownSequence)
145145
{
146146
size_t UnkownSequenceIndex = m_kcIFPSequences + wUnknownSequences;
147-
auto pAnimationSequenceInterface = pAnimationHierarchy->GetSequence(UnkownSequenceIndex);
147+
auto pAnimationSequenceInterface = pAnimationHierarchy->GetSequence(UnkownSequenceIndex);
148148
pAnimationSequence = m_pAnimManager->GetCustomAnimBlendSequence(pAnimationSequenceInterface);
149149
wUnknownSequences++;
150150
}
151151
else
152-
{
152+
{
153153
pAnimationSequence = m_pAnimManager->GetCustomAnimBlendSequence();
154154
}
155155
InitializeAnimationSequence(pAnimationSequence, Anim.Name, iBoneID);
156156

157157
eFrameType iFrameType = ReadKfrm();
158158
if ((ReadSequenceKeyFrames(pAnimationSequence, iFrameType, Anim.Frames)) && (!bUnknownSequence))
159159
{
160-
MapOfSequences[iBoneID] = std::move (pAnimationSequence);
160+
MapOfSequences[iBoneID] = std::move(pAnimationSequence);
161161
}
162162
}
163163
return wUnknownSequences;
164164
}
165165

166-
WORD CClientIFP::ReadSequencesVersion2(std::unique_ptr<CAnimBlendHierarchy>& pAnimationHierarchy,SequenceMapType& MapOfSequences)
166+
WORD CClientIFP::ReadSequencesVersion2(std::unique_ptr<CAnimBlendHierarchy>& pAnimationHierarchy, SequenceMapType& MapOfSequences)
167167
{
168168
WORD wUnknownSequences = 0;
169169
for (size_t SequenceIndex = 0; SequenceIndex < pAnimationHierarchy->GetNumSequences(); SequenceIndex++)
@@ -177,7 +177,7 @@ WORD CClientIFP::ReadSequencesVersion2(std::unique_ptr<CAnimBlendHierarchy>& pAn
177177
if (bUnknownSequence)
178178
{
179179
size_t UnkownSequenceIndex = m_kcIFPSequences + wUnknownSequences;
180-
auto pAnimationSequenceInterface = pAnimationHierarchy->GetSequence(UnkownSequenceIndex);
180+
auto pAnimationSequenceInterface = pAnimationHierarchy->GetSequence(UnkownSequenceIndex);
181181
pAnimationSequence = m_pAnimManager->GetCustomAnimBlendSequence(pAnimationSequenceInterface);
182182
wUnknownSequences++;
183183
}
@@ -451,13 +451,13 @@ void CClientIFP::MoveSequencesWithDummies(std::unique_ptr<CAnimBlendHierarchy>&
451451

452452
auto pAnimationSequenceInterface = pAnimationHierarchy->GetSequence(SequenceIndex);
453453
auto pAnimationSequence = m_pAnimManager->GetCustomAnimBlendSequence(pAnimationSequenceInterface);
454-
auto it = mapOfSequences.find(BoneID);
454+
auto it = mapOfSequences.find(BoneID);
455455
if (it != mapOfSequences.end())
456456
{
457457
auto pMapAnimSequenceInterface = it->second->GetInterface();
458-
pAnimationSequence->CopySequenceProperties (pMapAnimSequenceInterface);
458+
pAnimationSequence->CopySequenceProperties(pMapAnimSequenceInterface);
459459
// Delete the interface because we are moving, not copying
460-
delete pMapAnimSequenceInterface;
460+
m_pAnimManager->DeleteCustomAnimSequenceInterface(pMapAnimSequenceInterface);
461461
}
462462
else
463463
{

Client/mods/deathmatch/logic/CClientIFP.h

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
class CClientIFP : public CClientEntity, CFileReader
99
{
1010
public:
11-
typedef CIFPAnimations::SAnimation SAnimation;
11+
typedef CIFPAnimations::SAnimation SAnimation;
1212
typedef std::map<DWORD, std::unique_ptr<CAnimBlendSequence>> SequenceMapType;
1313

1414
struct SBase
@@ -212,10 +212,10 @@ class CClientIFP : public CClientEntity, CFileReader
212212
void ReadIFPVersion1(void);
213213
void ReadIFPVersion2(bool bAnp3);
214214

215-
WORD ReadSequencesWithDummies(std::unique_ptr<CAnimBlendHierarchy>& pAnimationHierarchy);
216-
WORD ReadSequences(std::unique_ptr<CAnimBlendHierarchy>& pAnimationHierarchy, SequenceMapType& MapOfSequences);
217-
WORD ReadSequencesVersion1(std::unique_ptr<CAnimBlendHierarchy>& pAnimationHierarchy, SequenceMapType& MapOfSequences);
218-
WORD ReadSequencesVersion2(std::unique_ptr<CAnimBlendHierarchy>& pAnimationHierarchy, SequenceMapType& MapOfSequences);
215+
WORD ReadSequencesWithDummies(std::unique_ptr<CAnimBlendHierarchy>& pAnimationHierarchy);
216+
WORD ReadSequences(std::unique_ptr<CAnimBlendHierarchy>& pAnimationHierarchy, SequenceMapType& MapOfSequences);
217+
WORD ReadSequencesVersion1(std::unique_ptr<CAnimBlendHierarchy>& pAnimationHierarchy, SequenceMapType& MapOfSequences);
218+
WORD ReadSequencesVersion2(std::unique_ptr<CAnimBlendHierarchy>& pAnimationHierarchy, SequenceMapType& MapOfSequences);
219219
std::int32_t ReadSequenceVersion1(SAnim& Anim);
220220
void ReadSequenceVersion2(SSequenceHeaderV2& ObjectNode);
221221

@@ -243,7 +243,8 @@ class CClientIFP : public CClientEntity, CFileReader
243243
const std::int32_t& iSequences);
244244
void InitializeAnimationSequence(std::unique_ptr<CAnimBlendSequence>& pAnimationSequence, const SString& strName, const std::int32_t& iBoneID);
245245
void PreProcessAnimationHierarchy(std::unique_ptr<CAnimBlendHierarchy>& pAnimationHierarchy);
246-
void MoveSequencesWithDummies(std::unique_ptr<CAnimBlendHierarchy>& pAnimationHierarchy, std::map<DWORD, std::unique_ptr<CAnimBlendSequence>>& mapOfSequences);
246+
void MoveSequencesWithDummies(std::unique_ptr<CAnimBlendHierarchy>& pAnimationHierarchy,
247+
std::map<DWORD, std::unique_ptr<CAnimBlendSequence>>& mapOfSequences);
247248
BYTE* AllocateSequencesMemory(std::unique_ptr<CAnimBlendHierarchy>& pAnimationHierarchy);
248249

249250
void InsertAnimationDummySequence(std::unique_ptr<CAnimBlendSequence>& pAnimationSequence, const SString& BoneName, const DWORD& dwBoneID);

Client/mods/deathmatch/logic/CClientPed.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6062,7 +6062,7 @@ void CClientPed::RestoreAnimations(const std::shared_ptr<CClientIFP>& IFP)
60626062

60636063
void CClientPed::RestoreAnimations(CAnimBlock& animationBlock)
60646064
{
6065-
const size_t cAnimations = animationBlock.GetAnimationCount();
6065+
const size_t cAnimations = animationBlock.GetAnimationCount();
60666066
for (size_t i = 0; i < cAnimations; i++)
60676067
{
60686068
auto pAnimHierarchyInterface = animationBlock.GetAnimationHierarchyInterface(i);

Client/mods/deathmatch/logic/CClientPed.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -707,7 +707,7 @@ class CClientPed : public CClientStreamElement, public CAntiCheatModule
707707
std::shared_ptr<CClientIFP> m_pCustomAnimationIFP;
708708

709709
// Key: Internal GTA animation, Value: Custom Animation
710-
ReplacedAnim_type m_mapOfReplacedAnimations;
710+
ReplacedAnim_type m_mapOfReplacedAnimations;
711711
};
712712

713713
#endif

Client/mods/deathmatch/logic/CIFPAnimations.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,6 @@ void CIFPAnimations::DeleteAnimations(void)
3333
}
3434
}
3535
delete Animation.pSequencesMemory;
36-
delete Animation.pHierarchy->GetInterface();
36+
pAnimManager->DeleteCustomAnimHierarchyInterface(Animation.pHierarchy->GetInterface());
3737
}
3838
}

Client/mods/deathmatch/logic/CIFPAnimations.h

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,10 +7,10 @@ class CIFPAnimations
77
public:
88
struct SAnimation
99
{
10-
SString Name;
11-
unsigned int uiNameHash;
10+
SString Name;
11+
unsigned int uiNameHash;
1212
std::unique_ptr<CAnimBlendHierarchy> pHierarchy;
13-
BYTE* pSequencesMemory;
13+
BYTE* pSequencesMemory;
1414
};
1515

1616
std::vector<SAnimation> vecAnimations;

Client/mods/deathmatch/logic/CIFPEngine.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@ bool CIFPEngine::EngineReplaceAnimation(CClientEntity* pEntity, const SString& s
5454
}
5555

5656
bool CIFPEngine::EngineRestoreAnimation(CClientEntity* pEntity, const SString& strInternalBlockName, const SString& strInternalAnimName,
57-
const eRestoreAnimation& eRestoreType)
57+
const eRestoreAnimation& eRestoreType)
5858
{
5959
if (IS_PED(pEntity))
6060
{

Client/multiplayer_sa/CMultiplayerSA.h

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -41,11 +41,11 @@ enum eRadioStationID
4141
};
4242

4343
typedef void(__thiscall* hCAnimBlendStaticAssociation_FreeSequenceArray)(CAnimBlendStaticAssociationSAInterface* pThis);
44-
typedef void(__cdecl * hUncompressAnimation) (CAnimBlendHierarchySAInterface * pAnimBlendHierarchyInterface);
45-
typedef void *(__cdecl * hCAnimBlendAssociation_NewOperator) (size_t iSizeInBytes);
44+
typedef void(__cdecl* hUncompressAnimation)(CAnimBlendHierarchySAInterface* pAnimBlendHierarchyInterface);
45+
typedef void*(__cdecl* hCAnimBlendAssociation_NewOperator)(size_t iSizeInBytes);
4646

47-
typedef CAnimBlendAssociationSAInterface * (__thiscall * hCAnimBlendAssociation_Constructor_staticAssocByReference)
48-
(CAnimBlendAssociationSAInterface * pThis, CAnimBlendStaticAssociationSAInterface& StaticAssociationByReference);
47+
typedef CAnimBlendAssociationSAInterface*(__thiscall* hCAnimBlendAssociation_Constructor_staticAssocByReference)(
48+
CAnimBlendAssociationSAInterface* pThis, CAnimBlendStaticAssociationSAInterface& StaticAssociationByReference);
4949

5050
class CMultiplayerSA : public CMultiplayer
5151
{

Client/multiplayer_sa/CMultiplayerSA_CustomAnimations.cpp

Lines changed: 22 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -21,10 +21,10 @@ auto UncompressAnimation = (hUncompressAnimation)0x4d41c0;
2121
auto CAnimBlendAssociation_NewOperator = (hCAnimBlendAssociation_NewOperator)0x082119A;
2222
auto CAnimBlendAssociation_Constructor_staticAssocByReference = (hCAnimBlendAssociation_Constructor_staticAssocByReference)0x4CF080;
2323

24-
AddAnimationHandler* m_pAddAnimationHandler = nullptr;
25-
AddAnimationAndSyncHandler* m_pAddAnimationAndSyncHandler = nullptr;
26-
AssocGroupCopyAnimationHandler* m_pAssocGroupCopyAnimationHandler = nullptr;
27-
BlendAnimationHierarchyHandler* m_pBlendAnimationHierarchyHandler = nullptr;
24+
AddAnimationHandler* m_pAddAnimationHandler = nullptr;
25+
AddAnimationAndSyncHandler* m_pAddAnimationAndSyncHandler = nullptr;
26+
AssocGroupCopyAnimationHandler* m_pAssocGroupCopyAnimationHandler = nullptr;
27+
BlendAnimationHierarchyHandler* m_pBlendAnimationHierarchyHandler = nullptr;
2828

2929
int _cdecl OnCAnimBlendAssocGroupCopyAnimation(AssocGroupId animGroup, int iAnimId);
3030

@@ -48,22 +48,24 @@ void CMultiplayerSA::SetBlendAnimationHierarchyHandler(BlendAnimationHierarchyHa
4848
m_pBlendAnimationHierarchyHandler = pHandler;
4949
}
5050

51-
CAnimBlendAssociationSAInterface * __cdecl CAnimBlendAssocGroup_CopyAnimation ( RpClump* pClump, CAnimBlendAssocGroupSAInterface* pAnimAssocGroupInterface, AnimationId animID )
51+
CAnimBlendAssociationSAInterface* __cdecl CAnimBlendAssocGroup_CopyAnimation(RpClump* pClump, CAnimBlendAssocGroupSAInterface* pAnimAssocGroupInterface,
52+
AnimationId animID)
5253
{
53-
auto pAnimAssociationInterface = reinterpret_cast < CAnimBlendAssociationSAInterface * > (CAnimBlendAssociation_NewOperator ( sizeof (CAnimBlendAssociationSAInterface)));
54-
if (pAnimAssociationInterface)
55-
{
56-
CAnimBlendStaticAssociationSAInterface staticAnimAssociationInterface;
54+
auto pAnimAssociationInterface =
55+
reinterpret_cast<CAnimBlendAssociationSAInterface*>(CAnimBlendAssociation_NewOperator(sizeof(CAnimBlendAssociationSAInterface)));
56+
if (pAnimAssociationInterface)
57+
{
58+
CAnimBlendStaticAssociationSAInterface staticAnimAssociationInterface;
5759

58-
m_pAssocGroupCopyAnimationHandler(&staticAnimAssociationInterface, pAnimAssociationInterface, pClump, pAnimAssocGroupInterface, animID);
60+
m_pAssocGroupCopyAnimationHandler(&staticAnimAssociationInterface, pAnimAssociationInterface, pClump, pAnimAssocGroupInterface, animID);
5961

60-
UncompressAnimation(staticAnimAssociationInterface.pAnimHeirarchy);
62+
UncompressAnimation(staticAnimAssociationInterface.pAnimHeirarchy);
6163

62-
CAnimBlendAssociation_Constructor_staticAssocByReference(pAnimAssociationInterface, staticAnimAssociationInterface);
64+
CAnimBlendAssociation_Constructor_staticAssocByReference(pAnimAssociationInterface, staticAnimAssociationInterface);
6365

64-
CAnimBlendStaticAssociation_FreeSequenceArray(&staticAnimAssociationInterface);
65-
}
66-
return pAnimAssociationInterface;
66+
CAnimBlendStaticAssociation_FreeSequenceArray(&staticAnimAssociationInterface);
67+
}
68+
return pAnimAssociationInterface;
6769
}
6870

6971
void _declspec(naked) HOOK_CAnimBlendAssocGroup_CopyAnimation()
@@ -79,21 +81,21 @@ void _declspec(naked) HOOK_CAnimBlendAssocGroup_CopyAnimation()
7981
{
8082
popad
8183

82-
push esi
84+
push esi
8385

8486
push eax // animID
8587
push ecx // pAnimAssocGroupInterface
8688
push edi // pClump
87-
call CAnimBlendAssocGroup_CopyAnimation
88-
add esp, 0Ch
89+
call CAnimBlendAssocGroup_CopyAnimation
90+
add esp, 0Ch
8991

9092
test eax, eax
9193
jz ERROR_CopyAnimation
9294

9395
jmp RETURN_CAnimBlendAssocGroup_CopyAnimation
9496

95-
ERROR_CopyAnimation:
96-
jmp RETURN_CAnimBlendAssocGroup_CopyAnimation_ERROR
97+
ERROR_CopyAnimation:
98+
jmp RETURN_CAnimBlendAssocGroup_CopyAnimation_ERROR
9799
}
98100
}
99101

0 commit comments

Comments
 (0)