@@ -288,6 +288,8 @@ DWORD RETURN_CTaskSimpleSwim_ProcessSwimmingResistance = 0x68A50E;
288
288
const DWORD HOOKPOS_Idle_CWorld_ProcessPedsAfterPreRender = 0x53EA03 ;
289
289
const DWORD RETURN_Idle_CWorld_ProcessPedsAfterPreRender = 0x53EA08 ;
290
290
291
+ #define HOOKPOS_CHud_RenderHealthBar 0x5892AF
292
+
291
293
#define HOOKPOS_CAEAmbienceTrackManager__UpdateAmbienceTrackAndVolume_StartRadio 0x4D7198
292
294
#define HOOKPOS_CAEAmbienceTrackManager__UpdateAmbienceTrackAndVolume_StopRadio 0x4D71E7
293
295
@@ -530,6 +532,8 @@ void HOOK_CAEVehicleAudioEntity__ProcessDummyProp();
530
532
void HOOK_CTaskSimpleSwim_ProcessSwimmingResistance ();
531
533
void HOOK_Idle_CWorld_ProcessPedsAfterPreRender ();
532
534
535
+ void HOOK_CHud_RenderHealthBar ();
536
+
533
537
void HOOK_CAEAmbienceTrackManager__UpdateAmbienceTrackAndVolume_StartRadio ();
534
538
void HOOK_CAEAmbienceTrackManager__UpdateAmbienceTrackAndVolume_StopRadio ();
535
539
@@ -762,6 +766,8 @@ void CMultiplayerSA::InitHooks()
762
766
HookInstall (HOOKPOS_CAnimManager_AddAnimationAndSync, (DWORD)HOOK_CAnimManager_AddAnimationAndSync, 10 );
763
767
HookInstall (HOOKPOS_CAnimManager_BlendAnimation_Hierarchy, (DWORD)HOOK_CAnimManager_BlendAnimation_Hierarchy, 5 );
764
768
769
+ HookInstall (HOOKPOS_CHud_RenderHealthBar, (DWORD)HOOK_CHud_RenderHealthBar, 9 );
770
+
765
771
HookInstall (HOOKPOS_CAEAmbienceTrackManager__UpdateAmbienceTrackAndVolume_StartRadio,
766
772
(DWORD)HOOK_CAEAmbienceTrackManager__UpdateAmbienceTrackAndVolume_StartRadio, 5 );
767
773
HookInstall (HOOKPOS_CAEAmbienceTrackManager__UpdateAmbienceTrackAndVolume_StopRadio,
@@ -6945,6 +6951,29 @@ void _declspec(naked) HOOK_Idle_CWorld_ProcessPedsAfterPreRender()
6945
6951
}
6946
6952
}
6947
6953
6954
+ const DWORD RETURN_CHud_RenderHealthBar = 0x5892B8 ;
6955
+ const DWORD RETURN_CHud_RenderHealthBarNoRender = 0x58939E ;
6956
+ void _declspec (naked) HOOK_CHud_RenderHealthBar()
6957
+ {
6958
+ __asm {
6959
+ // (CTimer::m_snTimeInMilliseconds / 250) % 2
6960
+ mov eax, 0xB7CB84
6961
+ mov eax, [eax]
6962
+ xor edx, edx
6963
+ mov ecx, 250
6964
+ div ecx
6965
+ xor edx, edx
6966
+ mov ecx, 2
6967
+ div ecx
6968
+ test edx, edx
6969
+ jz norender
6970
+ jmp RETURN_CHud_RenderHealthBar
6971
+
6972
+ norender:
6973
+ jmp RETURN_CHud_RenderHealthBarNoRender
6974
+ }
6975
+ }
6976
+
6948
6977
DWORD dwLastRequestedStation = -1 ;
6949
6978
void CAEAmbienceTrackManager__UpdateAmbienceTrackAndVolume_ChangeStation (DWORD dwStationID)
6950
6979
{
0 commit comments