SweetyWolf Posted June 16, 2015 Share Posted June 16, 2015 Всем привет. Делаю кастомное оружие на игроков, и возникла такая проблема. 1. В руках у игрока обычная АК-47. 2. Создаю кастомное оружие через createWeapon ( "ak-47" 3. Прицепляю это оружие через crystalmv bone_attach к игроку (12 кость) 4. Обычная пушка и созданная полностью совпадают в руках игрока по координатам (визуально) 5. При стрельбе кастомного оружия, его точка попадания оказывается левее-ниже прицела Пробовал поменять fire_rotation у кастомного оружия. Получалось что на средних дистанциях новое оружие стреляет точно по прицелу, но при повороте камеры в низ, точка попадания смещается влево, а при повороте камеры в верх, точка смещается правее. Еще пробовал поместить в onClientRender getPedTargetEnd и setWeaponTarget: function fireWeapOnClientRender() for i, v in ipairs ( getElementsByType ("weapon", true) ) do if getElementData ( v, "cweap" ) then local owner = getElementData ( v, "cweap.owner" ) local sx, sy, sz = getPedTargetEnd(owner) setWeaponTarget (v,sx, sy, sz) end end end addEventHandler('onClientRender', root, fireWeapOnClientRender ) Но в таком случае оружие просто не стреляет (видимо фича мта). Может у кого есть идеи как еще можно исправить вот это? 5. При стрельбе кастомного оружия, его точка попадания оказывается левее-ниже прицела Link to comment
SweetyWolf Posted June 17, 2015 Author Share Posted June 17, 2015 Все, разобрался. Необходимо было поставить оружию два флага, чтобы оно нормально стреляло: setWeaponFlags (weapon, "shoot_if_out_of_range", true) setWeaponFlags (weapon, "shoot_if_blocked", true) Link to comment
FranklinRoosevelt Posted June 17, 2015 Share Posted June 17, 2015 А что на счет синхронизации? Я думаю сделать как-то так: создаем триггер с сервера на клиент (кому это нужно), там создаем саму пушку, аттачим и т.п., а вот стрельба (bindKey с сервера) триггер на клиенты и там вкл. стрельбу (аналогично с выкл.). Может есть какой-то лучший способ? Link to comment
SweetyWolf Posted June 19, 2015 Author Share Posted June 19, 2015 Я сделал в клиенте bindkey, оттуда триггер на сервер, оттуда триггер уже всем игрокам. Не думаю что есть лучший способ. Link to comment
N1kS Posted September 8, 2015 Share Posted September 8, 2015 Если пинг между игроков и сервером 500мс, то в 2 конца это 1 секунда. Ну такое... Link to comment
FranklinRoosevelt Posted September 8, 2015 Share Posted September 8, 2015 Если пинг между игроков и сервером 500мс, то в 2 конца это 1 секунда. Ну такое... Да, секунда задержки для стрельбы это много. Есть предложения по лучше как это можно сделать? Мне кажется можно сразу с сервера на определенные клиенты. Link to comment
N1kS Posted September 10, 2015 Share Posted September 10, 2015 Если пинг между игроков и сервером 500мс, то в 2 конца это 1 секунда. Ну такое... Да, секунда задержки для стрельбы это много. Есть предложения по лучше как это можно сделать? Мне кажется можно сразу с сервера на определенные клиенты. Будет куда рациональнее. Link to comment
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now