Доброго времени суток ребзя, интересует если способ, возможно какой то вспомогательный плагин.
Который позволит отправить фейковую пулю, или повторную пулю после выстрела?
Вид для печати
Доброго времени суток ребзя, интересует если способ, возможно какой то вспомогательный плагин.
Который позволит отправить фейковую пулю, или повторную пулю после выстрела?
С помощью функции SendBulletData из плагина YSF: http://forum.sa-mp.com/showthread.php?t=513499
Смотри какая ситуация, я стреляю поподаю обьект, мне нужно удалить этот обьект и выпустить еще одну пулю, которая полетит по тем же кординатам.
Но в SendBulletData есть поля hitid и hittype в которые я не знаю что указать в моем случае.
Что можно сделать в данном случае, обращаюсь к человеку с более высоким уровнем знаний..
Это всего лишь пример того, что пуля не попадает ни в кого и ни на что.PHP код:
SendBulletData(playerid, INVALID_PLAYER_ID, BULLET_HIT_TYPE_NONE, ...);
Если за твоим объектом стоит какой нибудь игрок, либо еще какой нибудь объект то меняй hittype
Подробную информацию про hittype можешь найти тут
---------------------------------
hitid - отвечает за игрока в которую попадает пуля, в моем примере это INVALID_PLAYER_ID, что означает - пуля не попадает ни в какого игрока.
Ты можешь настроить этот параметр тоже, если за объектом стоит какой нибудь игрок.
hitid - возвращает еще и ид обьекта и ид автомобиля в зависимости от hittype
И еще пару вопросов, это отправка пули или отправка информации о полете пули?
А так же за что отвечают первые три значения, вторые и третьи?
Информация не в теме разработчика не на гитхабе не указана про данные значения.PHP код:
Float:fHitOriginX, Float:fHitOriginY, Float:fHitOriginZ, Float:fHitTargetX, Float:fHitTargetY, Float:fHitTargetZ, Float:fCenterOfHitX, Float:fCenterOfHitY, Float:fCenterOfHitZ
Пакеты способны лишь визуально подменить ин-фу клиента, либо отправить ложные данные серверу, вследствие, если вся сторонняя инфа блокируется, - то ты не сможешь предоставить пакету возможность синхронизации с сервером. Насчёт своего дамага - не знаю, но, думаю, что пакет будет проходить независимо от этого.
А вообще... Зачем тебе отправлять ложные?
Если ты укажешь правильно hittype и hitid, то урон игроку будет нанесён. Урона будет нанесено столько, сколько бы нанёс обычный выстрел.
Тут уже нужно подключать тригонометрию, уверен, что что-то подобное уже есть, поищи.
Float:fHitOriginX, Float:fHitOriginY, Float:fHitOriginZ - позиция, откуда будет произведён выстрел
Float:fHitTargetX, Float:fHitTargetY, Float:fHitTargetZ - позиция, куда будет произведён выстрел
Float:fCenterOfHitX, Float:fCenterOfHitY, Float:fCenterOfHitZ - смещение от центра цели, для игрока можно установить тоже, что и для fHitTarget
Тригонометрия тригонометрией . Все тогда будет зависить от пинга. Я ведь правильно понимаю? Своебразная защита от стрельбы сквозь стены.
SendBulletData не наносит урона же или я что то не знаю?
Я кэк бы работал с R16 на своём Zombie Apokalypse сервере когда то и было лишь видно как с моей стороны вылетал трассер без проигрывания анимации и без нанесения урона летящий в сторону указанной цели.
Последний вопрос, возможно ли получание информации через RPC пакет. Скажем сразу после ее изменения.?
Хотя еще один вопрос, из какого пакета можно извлечь значение данной функции GetPlayerCameraTargetPlayer?
Ибо задача состоит в том что бы узнать ее значение до того как прийдет апдейт на сервер.
Если это так, то из пакета данных об игроке (207): https://github.com/kurta999/YSF/blob...ts.h#L485-L488
Возможно данные были не коректны. Если преград нету между игроками то урон будет нанесен.
Хотя не могу утверждать, поскольку помимо серверного у меня еще своя система урона с мелким уроном, поэтому точно не замерял и подтвердить ту или иную версию не могу.
Ну а вообще если рассудить логически, даже при отправлении информации о том или ином клиент должен обработать данные и вернуть результат.
Но опять же я не уверен, изменения данных происходит на стороне сервера или клиента.
:rofl: я вам ещё раз повторю тут, есть готовый FS от разработчика плагина, и там есть готовая кмд по использованию этой функции, можете удосужится и посмотреть правильно ли она настроена и потом уже говорить что я правильно или не правильно её использовал, не работала стрельба при R16, с сампом завязал проверять не охото снова...