Тема: ped on screen
Показать сообщение отдельно

  #7  
Старый 25.07.2023, 16:43
Smeruxa
Познавший АНТИЧАТ
Регистрация: 27.11.2020
Сообщений: 1,431
С нами: 2874035

Репутация: 183


По умолчанию

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

работает со всем (игроки, тачки, объекты и подобное)

C++:





Код:
if
(
npcScreenPosition
.
z
>
1.f
)
// на экране
else
// за пределами экрана


UPD а крашит скорее всего из за того что ты пытаешся получить пед не существуещего игрока, вроде как то так надо "SF->getSAMP()->getPlayers()->remotePlayersInfo.remotePlayer(тут должны быть квадратные скобочки с i, но они пропадают)!= nullptr", непомню уже и наверно лучше делать проверку как я написал, вместо SF->getSAMP()->getPlayers()->IsPlayerDefined(i, true), потому что лично у меня крашило из за того что это проверка не работает
screen position с координатой Z???

UPD сделал как ты сказал, проверку на ремот поставил, по итогу у меня ни к одному педу линия не проводится

C++:





[CODE]
RemotePlayer
*
actor
=
SF
->
getSAMP
(
)
->
getPlayers
(
)
->
remotePlayersInfo
.
remotePlayer
[
i
]
;
if
(
actor
!=
nullptr
)
{
actor_info
*
new_actor
=
actor
->
data
->
sampActor
->
gtaPed
;
if
(
new_actor
!=
nullptr
)
{
CPed
*
Ped
=
GAME
->
GetPools
(
)
->
GetPed
(
(
DWORD
*
)
new_actor
)
;
if
(
Ped
!=
nullptr
&&
Ped
->
IsOnScreen
(
)
)
SF
->
getRender
(
)
->
DrawLine
(
my_converted
.
fX
,
my_converted
.
fY
,
player_converted
.
fX
,
player_converted
.
fY
,
1
,
(
player_color
&
0x00FFFFFF
)
|
(
255

 
Ответить с цитированием