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

  #2  
Старый 01.01.2016, 14:50
By_Surse
Постоянный
Регистрация: 06.07.2015
Сообщений: 310
С нами: 5712968

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

Функция телепортирует игрока в машине

Использование: InCarDataSync(i,x,y,z); [I - Ид игрока, x,y,z - Координаты для телепортирования]

C++:





Код:
void
InCarDataSync
(
int
i
,
float
x1
,
float
y1
,
float
z1
)
{
int
icar
;
stRemotePlayer
*
pPlayer
=
SF
->
getSAMP
(
)
->
getPlayers
(
)
->
pRemotePlayer
[
i
]
;
if
(
!
pPlayer
)
return
;
icar
=
pPlayer
->
pPlayerData
->
sVehicleID
;
if
(
!
icar
)
return
;
CVehicle
*
veh
=
PEDSELF
->
GetVehicle
(
)
;
if
(
!
veh
)
return
;
stInCarData sync
;
memset
(
&
sync
,
0
,
sizeof
(
stInCarData
)
)
;
sync
=
pPlayer
->
pPlayerData
->
inCarData
;
sync
.
fPosition
[
0
]
=
x1
;
sync
.
fPosition
[
1
]
=
y1
;
sync
.
fPosition
[
2
]
=
z1
;
BitStream CarSync
;
CarSync
.
Write
(
(
BYTE
)
ID_VEHICLE_SYNC
)
;
CarSync
.
Write
(
(
PCHAR
)
&
sync
,
sizeof
(
stInCarData
)
)
;
SF
->
getRakNet
(
)
->
SendPacket
(
&
CarSync
)
;
}


P.S. Функция сама проверяет существует игрок или нет
 
Ответить с цитированием