1
1
#include < Windows.h>
2
2
#include < iostream>
3
3
#include < format>
4
- #include " cheat/UnrealEngine/Engine.h"
5
- #include " cheat/Hook.h"
6
- #include " menu/Menu.h"
7
-
8
- Hook* hook = new Hook();
9
- Menu* menu = new Menu();
10
-
11
- void PostRender (UGameViewportClient* UGameViewportClient, Canvas* canvas)
12
- {
13
- do {
14
- if (Settings.MISC .Unload ) {
15
- Settings.MISC .Unload = false ;
16
- return hook->UnHook ();
17
- }
18
-
19
- ZeroGUI::SetupCanvas (canvas);
20
- menu->Tick ();
21
-
22
- UWorld* World = *(UWorld**)(WRLD);
23
- if (!World) break ;
24
-
25
- UGameInstance* OwningGameInstance = World->OwningGameInstance ;
26
- if (!OwningGameInstance) break ;
27
-
28
- TArray<UPlayer*> LocalPlayers = OwningGameInstance->LocalPlayers ;
29
-
30
- UPlayer* LocalPlayer = LocalPlayers[0 ];
31
- if (!LocalPlayer) break ;
32
-
33
- APlayerController* PlayerController = LocalPlayer->PlayerController ;
34
- if (!PlayerController) break ;
35
-
36
- hook->features ->handle (PlayerController);
37
- } while (false );
38
-
39
- return hook->OriginalPostRender (UGameViewportClient, canvas);
40
- }
41
-
42
- void ProcessEvent (UObject* Class, UObject* Function, void * params) {
43
- return hook->OriginalProcessEvent (Class, Function, params);
44
- };
4
+ #include " ue/Engine.h"
5
+ #include " hook/Hook.h"
6
+ #include " gui/ZeroGUI.h"
7
+ #include " hook/functions/PostRender.h"
45
8
46
9
__declspec (dllexport) LRESULT CALLBACK SplitgateCallBack(int code, WPARAM wparam, LPARAM lparam) {
47
10
MSG* msg = (MSG*)lparam;
48
11
if (msg->message != HCBT_CREATEWND) return CallNextHookEx (0 , code, wparam, lparam);
49
12
50
- if (!hook-> Init ()) return CallNextHookEx (hook-> g_hook , code, wparam, HCBT_CREATEWND);
13
+ if (!Hook:: Init ()) return CallNextHookEx (Hook:: g_hook, code, wparam, HCBT_CREATEWND);
51
14
52
- hook->OriginalPostRender = reinterpret_cast <decltype (hook->OriginalPostRender )>(hook->SetHook (hook->PostRenderVTable , hook->PostRenderIndex , &PostRender));
53
- // hook->OriginalProcessEvent = reinterpret_cast<decltype(hook->OriginalProcessEvent)>(hook->SetHook(hook->ProcessEventVTable, hook->ProcessEventIndex, &ProcessEvent));
15
+ Hook::OriginalPostRender = reinterpret_cast <decltype (Hook::OriginalPostRender)>(Hook::SetHook (Hook::PostRenderVTable, Hook::PostRenderIndex, &PostRender));
54
16
55
17
Logger::Log (" SUCCESS" , " Injected" );
56
18
Logger::Log (" INFO" , std::format (" Base Address: [0x{:x}]" , (uintptr_t )GetModuleHandleW (0 )).c_str ());
57
19
Logger::Log (" SUCCESS" , std::format (" Press {} to hide/show the menu" , ZeroGUI::VirtualKeyCodeToString (Settings.MENU .ShowHotkey )));
58
20
59
- hook-> features ->rpc ->Init (Settings.MISC .DiscordAppID );
60
- hook-> features ->rpc ->UpdatePresence ();
21
+ Hook:: features->rpc ->Init (Settings.MISC .DiscordAppID );
22
+ Hook:: features->rpc ->UpdatePresence ();
61
23
62
- return CallNextHookEx (hook-> g_hook , code, wparam, lparam);
24
+ return CallNextHookEx (Hook:: g_hook, code, wparam, lparam);
63
25
}
0 commit comments