
11.10.2020, 00:03
|
|
Постоянный
Регистрация: 24.07.2017
Сообщений: 867
С нами:
4633764
Репутация:
148
|
|
@DarkP1xel , помоги пж, я хочу получить CVehicle через handle машины, (пока-что только с SFAPI) я пробовал:
Сообщение от Спойлер
ты когда-то сказал что хендл это типо игрового id
CVehicle
Каждый транспорт как объект, равняется 2584 (0xA18) байтам и начинается с 0xC502AA0.
0xB74494 - Содержит указатель. Этот указатель:
- +0 = Содержит указатель на первый элемент в пуле CVehicle
- +4 = Содержит указатель на карту байтов показывающую какие элементы сейчас используются в пуле CVehicle
- +8 = [dword] максимальное кол-во элементов в пуле CVehicle
- +12 = [dword] текущее кол-во элементов в пуле CVehicle
C++:
Код:
DW pools_cars
=
*
(
DW
*
)
0xB74494
;
//
int
carid
=
SF
->
getSAMP
(
)
->
getPlayers
(
)
->
pLocalPlayer
->
inCarData
.
sVehicleID
;
int
veh_handle
=
SF
->
getSAMP
(
)
->
getVehicles
(
)
->
GetCarHandleFromSAMPCarID
(
carid
)
;
DW car
=
*
(
DW
*
)
(
pools_cars
+
(
veh_handle
*
0xA18
)
)
;
////////////////////////////////////////////////////////////////////////////////////
DW pools_cars
=
*
(
DW
*
)
(
*
(
DW
*
)
0xB74494
)
;
int
carid
=
SF
->
getSAMP
(
)
->
getPlayers
(
)
->
pLocalPlayer
->
inCarData
.
sVehicleID
;
int
veh_handle
=
SF
->
getSAMP
(
)
->
getVehicles
(
)
->
GetCarHandleFromSAMPCarID
(
carid
)
;
DW car
=
*
(
DW
*
)
(
pools_cars
+
(
veh_handle
*
0xA18
)
)
;
////////////////////////////////////////////////////////////////////////////////////
DW pools_cars
=
0xC502AA0
;
int
carid
=
SF
->
getSAMP
(
)
->
getPlayers
(
)
->
pLocalPlayer
->
inCarData
.
sVehicleID
;
int
veh_handle
=
SF
->
getSAMP
(
)
->
getVehicles
(
)
->
GetCarHandleFromSAMPCarID
(
carid
)
;
DW car
=
*
(
DW
*
)
(
pools_cars
+
(
veh_handle
*
0xA18
)
)
;
но всё крашило
|
|
|