[TextRenderer]: Added hooks for UI_GetFontHandle function
This commit is contained in:
parent
f319fe20bb
commit
2c353466ef
@ -252,6 +252,137 @@ namespace Components
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void __declspec(naked) TextRenderer::UI_GetFontHandleStub1()
|
||||||
|
{
|
||||||
|
const static uint32_t retn_addr = 0x410E3A;
|
||||||
|
__asm
|
||||||
|
{
|
||||||
|
push ecx; //scrPlace
|
||||||
|
push eax; //fontEnum
|
||||||
|
call Game::UI_GetFontHandle;
|
||||||
|
add esp, 8;
|
||||||
|
jmp retn_addr;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void __declspec(naked) TextRenderer::UI_GetFontHandleStub2()
|
||||||
|
{
|
||||||
|
const static uint32_t retn_addr = 0x41B649;
|
||||||
|
__asm
|
||||||
|
{
|
||||||
|
push ecx; //scrPlace
|
||||||
|
push eax; //fontEnum
|
||||||
|
call Game::UI_GetFontHandle;
|
||||||
|
add esp, 8;
|
||||||
|
jmp retn_addr;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void __declspec(naked) TextRenderer::UI_GetFontHandleStub3()
|
||||||
|
{
|
||||||
|
const static uint32_t retn_addr = 0x43A21D;
|
||||||
|
__asm
|
||||||
|
{
|
||||||
|
push ecx; //scrPlace
|
||||||
|
push eax; //fontEnum
|
||||||
|
call Game::UI_GetFontHandle;
|
||||||
|
add esp, 8;
|
||||||
|
jmp retn_addr;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void __declspec(naked) TextRenderer::UI_GetFontHandleStub4()
|
||||||
|
{
|
||||||
|
const static uint32_t retn_addr = 0x56DFAF;
|
||||||
|
__asm
|
||||||
|
{
|
||||||
|
push ecx; //scrPlace
|
||||||
|
push eax; //fontEnum
|
||||||
|
call Game::UI_GetFontHandle;
|
||||||
|
add esp, 8;
|
||||||
|
jmp retn_addr;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void __declspec(naked) TextRenderer::UI_GetFontHandleStub5()
|
||||||
|
{
|
||||||
|
const static uint32_t retn_addr = 0x56E813;
|
||||||
|
__asm
|
||||||
|
{
|
||||||
|
push ecx; //scrPlace
|
||||||
|
push eax; //fontEnum
|
||||||
|
call Game::UI_GetFontHandle;
|
||||||
|
add esp, 8;
|
||||||
|
jmp retn_addr;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void __declspec(naked) TextRenderer::UI_GetFontHandleStub6()
|
||||||
|
{
|
||||||
|
const static uint32_t retn_addr = 0x56ED1B;
|
||||||
|
__asm
|
||||||
|
{
|
||||||
|
push ecx; //scrPlace
|
||||||
|
push eax; //fontEnum
|
||||||
|
call Game::UI_GetFontHandle;
|
||||||
|
add esp, 8;
|
||||||
|
jmp retn_addr;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void __declspec(naked) TextRenderer::UI_GetFontHandleStub7()
|
||||||
|
{
|
||||||
|
const static uint32_t retn_addr = 0x56EFCF;
|
||||||
|
__asm
|
||||||
|
{
|
||||||
|
push ecx; //scrPlace
|
||||||
|
push eax; //fontEnum
|
||||||
|
call Game::UI_GetFontHandle;
|
||||||
|
add esp, 8;
|
||||||
|
jmp retn_addr;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void __declspec(naked) TextRenderer::UI_GetFontHandleStub8()
|
||||||
|
{
|
||||||
|
const static uint32_t retn_addr = 0x56F911;
|
||||||
|
__asm
|
||||||
|
{
|
||||||
|
push ecx; //scrPlace
|
||||||
|
push eax; //fontEnum
|
||||||
|
call Game::UI_GetFontHandle;
|
||||||
|
add esp, 8;
|
||||||
|
jmp retn_addr;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void __declspec(naked) TextRenderer::UI_GetFontHandleStub9()
|
||||||
|
{
|
||||||
|
const static uint32_t retn_addr = 0x57056F;
|
||||||
|
__asm
|
||||||
|
{
|
||||||
|
push ecx; //scrPlace
|
||||||
|
push eax; //fontEnum
|
||||||
|
call Game::UI_GetFontHandle;
|
||||||
|
add esp, 8;
|
||||||
|
jmp retn_addr;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void __declspec(naked) TextRenderer::UI_GetFontHandleStub10()
|
||||||
|
{
|
||||||
|
const static uint32_t retn_addr = 0x570805;
|
||||||
|
__asm
|
||||||
|
{
|
||||||
|
push ecx; //scrPlace
|
||||||
|
push eax; //fontEnum
|
||||||
|
call Game::UI_GetFontHandle;
|
||||||
|
add esp, 8;
|
||||||
|
jmp retn_addr;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
TextRenderer::TextRenderer()
|
TextRenderer::TextRenderer()
|
||||||
{
|
{
|
||||||
Utils::Hook(0x56E613, R_TextWidth_Stub01, HOOK_JUMP).install()->quick();
|
Utils::Hook(0x56E613, R_TextWidth_Stub01, HOOK_JUMP).install()->quick();
|
||||||
@ -267,5 +398,18 @@ namespace Components
|
|||||||
|
|
||||||
// Converting a simple 'reload' text to a text with keybind localized
|
// Converting a simple 'reload' text to a text with keybind localized
|
||||||
Utils::Hook(0x40A1EB, CG_DrawPlayerWeaponLowAmmoWarningStub, HOOK_JUMP).install()->quick();
|
Utils::Hook(0x40A1EB, CG_DrawPlayerWeaponLowAmmoWarningStub, HOOK_JUMP).install()->quick();
|
||||||
|
|
||||||
|
// Replacing the original function on custom.
|
||||||
|
// P.S: Very bad hooks
|
||||||
|
Utils::Hook(0x410E35, UI_GetFontHandleStub1, HOOK_JUMP).install()->quick();
|
||||||
|
Utils::Hook(0x41B644, UI_GetFontHandleStub2, HOOK_JUMP).install()->quick();
|
||||||
|
Utils::Hook(0x43A218, UI_GetFontHandleStub3, HOOK_JUMP).install()->quick();
|
||||||
|
Utils::Hook(0x56DFAA, UI_GetFontHandleStub4, HOOK_JUMP).install()->quick();
|
||||||
|
Utils::Hook(0x56E80E, UI_GetFontHandleStub5, HOOK_JUMP).install()->quick();
|
||||||
|
Utils::Hook(0x56ED16, UI_GetFontHandleStub6, HOOK_JUMP).install()->quick();
|
||||||
|
Utils::Hook(0x56EFCA, UI_GetFontHandleStub7, HOOK_JUMP).install()->quick();
|
||||||
|
Utils::Hook(0x56F90C, UI_GetFontHandleStub8, HOOK_JUMP).install()->quick();
|
||||||
|
Utils::Hook(0x57056A, UI_GetFontHandleStub9, HOOK_JUMP).install()->quick();
|
||||||
|
Utils::Hook(0x570800, UI_GetFontHandleStub10, HOOK_JUMP).install()->quick();
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -26,6 +26,17 @@ namespace Components
|
|||||||
static const char* CG_DrawPlayerWeaponLowAmmoKey(const char* pszInputBuffer, const char* pszMessageType, int errType);
|
static const char* CG_DrawPlayerWeaponLowAmmoKey(const char* pszInputBuffer, const char* pszMessageType, int errType);
|
||||||
static void UI_GetKeyBindingLocalizedStringStub();
|
static void UI_GetKeyBindingLocalizedStringStub();
|
||||||
|
|
||||||
|
static void UI_GetFontHandleStub1();
|
||||||
|
static void UI_GetFontHandleStub2();
|
||||||
|
static void UI_GetFontHandleStub3();
|
||||||
|
static void UI_GetFontHandleStub4();
|
||||||
|
static void UI_GetFontHandleStub5();
|
||||||
|
static void UI_GetFontHandleStub6();
|
||||||
|
static void UI_GetFontHandleStub7();
|
||||||
|
static void UI_GetFontHandleStub8();
|
||||||
|
static void UI_GetFontHandleStub9();
|
||||||
|
static void UI_GetFontHandleStub10();
|
||||||
|
|
||||||
static int R_TextWidth_Hk(const char* text, int maxChars, Game::Font_s* font);
|
static int R_TextWidth_Hk(const char* text, int maxChars, Game::Font_s* font);
|
||||||
static float DrawHudIcon(const char* text, const Game::Font_s* font, const float x, const float y, const float sinAngle, const float cosAngle, const float xScale, const float yScale, Game::GfxColor color);
|
static float DrawHudIcon(const char* text, const Game::Font_s* font, const float x, const float y, const float sinAngle, const float cosAngle, const float xScale, const float yScale, Game::GfxColor color);
|
||||||
};
|
};
|
||||||
|
Loading…
x
Reference in New Issue
Block a user