Показать сообщение отдельно

  #3  
Старый 28.04.2025, 20:56
writeline
Новичок
Регистрация: 16.01.2022
Сообщений: 28
С нами: 2276608

Репутация: 8
По умолчанию

Подскажите адрес координат игрока пожалуйста.

с++:





Код:
HRESULT APIENTRY
hkEndScene
(
LPDIRECT3DDEVICE9 pDevice
)
{
if
(
!
bInit
)
InitializeD3D
(
pDevice
)
;
if
(
bInit
&&
pDevice
)
{
stCoordinates coords
=
GetPlayerCoordinates
(
)
;
char
buffer
[
128
]
;
sprintf_s
(
buffer
,
"X: %.2f, Y: %.2f, Z: %.2f"
,
coords
.
fX
,
coords
.
fY
,
coords
.
fZ
)
;
DrawText
(
buffer
,
10
,
10
,
D3DCOLOR_ARGB
(
255
,
255
,
255
,
255
)
)
;
}
return
oEndScene
?
oEndScene
(
pDevice
)
:
D3D_OK
;
}
DWORD WINAPI
HookThread
(
LPVOID lpParam
)
{
//D3D
while
(
!
pDevice
)
{
pDevice
=
*
(
LPDIRECT3DDEVICE9
*
)
0xC97C28
;
Sleep
(
100
)
;
}
DWORD
*
pVTable
=
*
(
DWORD
*
*
)
pDevice
;
DWORD oldProtect
;
VirtualProtect
(
&
pVTable
[
42
]
,
sizeof
(
DWORD
)
,
PAGE_EXECUTE_READWRITE
,
&
oldProtect
)
;
oEndScene
=
(
HRESULT
(
APIENTRY
*
)
(
LPDIRECT3DDEVICE9
)
)
pVTable
[
42
]
;
pVTable
[
42
]
=
(
DWORD
)
hkEndScene
;
VirtualProtect
(
&
pVTable
[
42
]
,
sizeof
(
DWORD
)
,
oldProtect
,
&
oldProtect
)
;
return
0
;
}
BOOL APIENTRY
DllMain
(
HMODULE hModule
,
DWORD reason
,
LPVOID lpReserved
)
{
if
(
reason
==
DLL_PROCESS_ATTACH
)
{
DisableThreadLibraryCalls
(
hModule
)
;
// pCoordinates = (stCoordinates*) ТУТ АДРЕС;
CreateThread
(
NULL
,
0
,
HookThread
,
NULL
,
0
,
NULL
)
;
}
return
TRUE
;
}
 
Ответить с цитированием