 |
|

12.04.2022, 09:58
|
|
Постоянный
Регистрация: 03.05.2020
Сообщений: 385
С нами:
3174020
Репутация:
213
|
|
Сообщение от ELDO
Ок, как я понял,
C++:
Код:
void
CALLBACK
setcarhp
(
std
::
string param
)
{
float
vehiclehp
=
std
::
stof
(
param
)
// etc..
}
А как проверить является ли строчка числом?
обернуть в try-catch можешь:
C++:
Код:
void
CALLBACK
cmd
(
std
::
string param
)
{
auto
veh_hp
=
0.f
;
try
{
veh_hp
=
std
::
stof
(
param
)
;
}
catch
(
.
.
.
)
{
// сообщения об неверных параметрах или whatever
return
;
}
// тут можешь работать с флоатом
}
|
|
|

12.04.2022, 10:15
|
|
Новичок
Регистрация: 15.07.2017
Сообщений: 3
С нами:
4647810
Репутация:
1
|
|
Все, problem solved
Работает, спасибо что помогли разобраться)
Для вызова функций "GTAfunc_.." необходим header-файл "GTAfuncs.h" , если сую его из Mod_Sa API в SF API, не воспринимает и появляется ошибка "undefined".
Есть ли какие-нибудь альтернативы функциям, например "GTAfunc_PutActorInCar" или совместимый с SF API "GTAfunc.h"?
|
|
|

12.04.2022, 13:07
|
|
Познавший АНТИЧАТ
Регистрация: 29.09.2018
Сообщений: 1,292
С нами:
4012500
Репутация:
138
|
|
Сообщение от ELDO
Все, problem solved
Работает, спасибо что помогли разобраться)
Для вызова функций "GTAfunc_.." необходим header-файл "GTAfuncs.h" , если сую его из Mod_Sa API в SF API, не воспринимает и появляется ошибка "undefined".
Есть ли какие-нибудь альтернативы функциям, например "GTAfunc_PutActorInCar" или совместимый с SF API "GTAfunc.h"?
можно по адресу вызывать, самому, найди идб гташки и сам делай
|
|
|

12.04.2022, 13:31
|
|
Познающий
Регистрация: 16.01.2022
Сообщений: 71
С нами:
2276608
Репутация:
8
|
|
ребят подскажите пожалуйста,я вот сделал рванку и хочу сделать чтоб машина рванила туда куда я смотрю,как это сделать?
|
|
|

13.04.2022, 06:02
|
|
Новичок
Регистрация: 15.07.2017
Сообщений: 3
С нами:
4647810
Репутация:
1
|
|
PutPlayerInCar:
Код:
void
CALLBACK
PutPlayerInCar
(
std
::
string param
)
{
if
(
param
.
empty
(
)
)
return
;
int
vehid
=
std
::
stoi
(
param
)
;
// rpc enter vehicle
SF
->
getSAMP
(
)
->
sendEnterVehicle
(
vehid
,
0
)
;
BitStream bsPutRpc
;
bsPutRpc
.
Write
(
(
USHORT
)
vehid
)
;
bsPutRpc
.
Write
(
(
BYTE
)
0
)
;
SF
->
getRakNet
(
)
->
emulateRecvRPC
(
RPC_ScrPutPlayerInVehicle
,
&
bsPutRpc
)
;
// incar data
stInCarData bsVehSynch
=
SF
->
getSAMP
(
)
->
getPlayers
(
)
->
pLocalPlayer
->
inCarData
;
bsVehSynch
.
sVehicleID
=
vehid
;
BitStream bsVehSync
;
bsVehSync
.
Write
(
(
BYTE
)
ID_VEHICLE_SYNC
)
;
bsVehSync
.
Write
(
(
PCHAR
)
&
bsVehSync
,
sizeof
(
stInCarData
)
)
;
SF
->
getRakNet
(
)
->
SendPacket
(
&
bsVehSync
)
;
}
Если за рулем есть игрок, не сажает.
Вопрос #1: Можно ли как-нибудь удалить водителя с машины, чтобы работала функция? (необходим доступ к кару на буквально 0.1сек).
Вопрос #2: Есть ли другие способы посадить персонажа в машину. (телепортнуть)
|
|
|

14.04.2022, 17:05
|
|
Познающий
Регистрация: 16.01.2022
Сообщений: 71
С нами:
2276608
Репутация:
8
|
|
Добрый вечер,подскажите пожалуйста как получить ближайшую ПУСТУЮ машину в зоне стрима?
|
|
|

14.04.2022, 18:52
|
|
Флудер
Регистрация: 18.03.2013
Сообщений: 4,080
С нами:
6921957
Репутация:
183
|
|
Сообщение от Dadazik
Добрый вечер,подскажите пожалуйста как получить ближайшую ПУСТУЮ машину в зоне стрима?
Перебор через фор)))))))
|
|
|

15.04.2022, 15:13
|
|
Новичок
Регистрация: 27.07.2020
Сообщений: 12
С нами:
3051175
Репутация:
8
|
|
Здрасте, мне нужна не совсем большая помощь, вообщем кодил на AHK, посчитал что это уже прошлый век к тому же UDF на R3-1 нет.. Так вот, решил перейти на C++ и искал нормальную библиотеку к SAMP, чу-чуть основ C++ знаю, но не могу говорить что я знаю всю хотябы базу) Но не совсем суть, я буду еще учить сам.
Можете подсказать как мне вообще использовать эту библиотеку, или, если есть вариант лучше то подскажите какой.
Мне нужен пример как подключить ее к исполняемому DLL и, если можно то еще пример использования GetScore(), буду очень благодарен. Насчет первого примера, то просто подскажите что нужно сделать чтобы она работала и какой код написать в самой DLL-ке, или как подключить ее в Visual Studio. Извините за глупые вопросы, и столько текста, но просто реально чайник и нужны примеры, а их нет нигде  чувствую опозорюсь щас, но, че поделать, надеюсь хоть поможете) (ASI)
Если быть точнее. То просто скажите что нужно сделать после скачивания либы с гит хаба, как скомпилировать и как потом использовать (как подвязать к проекту с dll) и просто пример вызова любой функции с API, как я просил - GetScore().
------------------------
Не знаю почему, но мне в гугле не выдавало тему прекрасного человека kin4stat, с его ахуеннейшим гайдом. Вот прям читаю и радуюсь, спасибо, что эта тема существует, всё так просто оказывается. Ещё раз спасибо!!
|
|
|

16.04.2022, 00:39
|
|
Познающий
Регистрация: 09.05.2017
Сообщений: 33
С нами:
4743173
Репутация:
63
|
|
На lua есть такая ф-ция - IsPointOnScreen, которая проверяет по координатам x y z находится ли точка на экране или нет.
isPointOnScreen
Проверяет находится ли точка на экране в заданном радиусе
wiki.blast.hk
Вопрос собственно: Есть ли такое в SF SDK?
-----------------------------------------------------------------------------------
UPD: Решено!
!:
Код:
bool OnScreen(CVector vect)
{
SF->getCLEO()->callOpcode("00C2: %f %f %f 0.0", vect.fX, vect.fY, vect.fZ);
return SF->getCLEO()->GetCondResult();
}
CVector vect;
vect.fX = ;
vect.fY = ;
vect.fZ = ;
OnScreen(vect);
|
|
|

18.04.2022, 21:07
|
|
Новичок
Регистрация: 17.02.2022
Сообщений: 26
С нами:
2230348
Репутация:
3
|
|
Как получить координаты объекта?
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|