bool csgo_CSkyBoxView_Draw_Install(void) { static bool firstResult = false; static bool firstRun = true; if(!firstRun) return firstResult; firstRun = false; if(AFXADDR_GET(csgo_CSkyboxView_Draw)) { detoured_csgo_CSkyBoxView_Draw = (csgo_CSkyBoxView_Draw_t)DetourClassFunc((BYTE *)AFXADDR_GET(csgo_CSkyboxView_Draw), (BYTE *)touring_csgo_CSkyBoxView_Draw, (int)AFXADDR_GET(csgo_CSkyboxView_Draw_DSZ)); firstResult = true; } return firstResult; }
bool csgo_ScaleFormDll_Hooks_Init(void) { static bool firstResult = false; static bool firstRun = true; if(!firstRun) return firstResult; firstRun = false; if(AFXADDR_GET(csgo_Scaleformui_CUnkown_Loader)) { detoured_csgo_Scaleformui_CUnkown_Loader = (csgo_Scaleformui_CUnkown_Loader_t)DetourClassFunc((BYTE *)AFXADDR_GET(csgo_Scaleformui_CUnkown_Loader), (BYTE *)touring_csgo_Scaleformui_CUnkown_Loader, (int)AFXADDR_GET(csgo_Scaleformui_CUnkown_Loader_DSZ)); firstResult = true; } return firstResult; }
void Hook_Cstrike_CrossHair_Fix() { static bool firstRun = true; if(!firstRun) return; firstRun = false; double * addrMul = (double *)HL_ADDR_GET(cstrike_UnkCrosshairFn_mul_fac); double * addrAdd = (double *)HL_ADDR_GET(cstrike_UnkCrosshairFn_add_fac); BYTE * addrFn = (BYTE *)HL_ADDR_GET(cstrike_UnkCrosshairFn); int addrFnDsz = (int)HL_ADDR_GET(cstrike_UnkCrosshairFn_DSZ); if(!( addrMul && addrAdd && addrFn && addrFnDsz )) return; g_pfnCrosshairFix_Hooked_Func = (UnkCstrikeCrosshairFn_t)DetourClassFunc(addrFn, (BYTE *)CrosshairFix_Hooking_Func, addrFnDsz); g_f_ch_mul_fac = addrMul; g_f_ch_add_fac = addrAdd; }