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

  #34  
Старый 09.07.2023, 14:04
ARMOR
Флудер
Регистрация: 02.02.2019
Сообщений: 5,070
С нами: 3831395

Репутация: 183


По умолчанию

Цитата:
Сообщение от ya_noob  

конкретнее? Ну вот указатель на float: "float*". а если полностью: "float* a = (float*)0x1231231321321". но таким образом крашит.

Как ты сделал? Можешь написать на примере HealthX?

C++:





Код:
struct
Hud
{
Hud
(
)
{
VirtualProtect
(
&
HealthX
,
sizeof
(
float
)
,
PAGE_EXECUTE_READWRITE
,
&
oldProtect
)
;
VirtualProtect
(
&
HealthY
,
sizeof
(
float
)
,
PAGE_EXECUTE_READWRITE
,
&
oldProtect
)
;
HealthX
=
120
;
HealthY
=
70
;
}
DWORD oldProtect
;
float
&
HealthX
=
*
(
float
*
)
0x58EE87
;
//141
float
&
HealthY
=
*
(
float
*
)
0x58EE68
;
//77
}
hud
;


ЧТО НЕ ТАК?

C++:





Код:
struct
Hud
{
Hud
(
)
{
VirtualProtect
(
&
HealthX
,
sizeof
(
float
)
,
PAGE_EXECUTE_READWRITE
,
&
oldProtect
)
;
VirtualProtect
(
&
HealthY
,
sizeof
(
float
)
,
PAGE_EXECUTE_READWRITE
,
&
oldProtect
)
;
VirtualProtect
(
&
pHealthX
,
sizeof
(
float
)
,
PAGE_EXECUTE_READWRITE
,
&
oldProtect
)
;
VirtualProtect
(
&
pHealthY
,
sizeof
(
float
)
,
PAGE_EXECUTE_READWRITE
,
&
oldProtect
)
;
pHealthX
=
120
;
pHealthY
=
60
;
*
(
float
*
)
0x58EE87
=
*
(
float
*
)
0x86535C
;
*
(
float
*
)
0x58EE68
=
*
(
float
*
)
0x866CA8
;
}
DWORD oldProtect
;
float
&
HealthX
=
*
(
float
*
)
0x58EE87
;
float
&
HealthY
=
*
(
float
*
)
0x58EE68
;
float
&
pHealthX
=
*
(
float
*
)
0x86535C
;
//141
float
&
pHealthY
=
*
(
float
*
)
0x866CA8
;
//77
}
hud
;


Так тоже крашит. Так что значит в адрес нужно вписывать указатель на float?
Как вариант юзать такое говно ( Не ебу насколько это правильно ):

C++:





Код:
float
&
pHealth
=
*
*
(
float
*
*
)
(
0x58EE87
)
;
pHealth
=
120.f
;
 
Ответить с цитированием