Lua Show ID in Kill List

imring

Ride the Lightning
Автор темы
Всефорумный модератор
2,355
2,516
Описание: показывает ID игроков в килл листе.
Требования:
  • Moonloader
  • Sampfuncs
  • Samp.Lua
Активация: автоматическая.
Скриншот:
upload_2018-6-20_17-10-35.png
 

Вложения

  • id_kill.lua
    1.9 KB · Просмотры: 1,881
  • id_kill_2.0.lua
    1.7 KB · Просмотры: 3,867
Последнее редактирование:

imring

Ride the Lightning
Автор темы
Всефорумный модератор
2,355
2,516

imring

Ride the Lightning
Автор темы
Всефорумный модератор
2,355
2,516
Даже можешь в хуке без ffi сделать ибо там, как раз в хуке приходят, кажется, айди, если мне память не изменяет.
ID приходят (если ты про это).
Lua:
INCOMING_RPCS[RPC.DEATHMESSAGE]               = {'onPlayerDeathNotification', {killerId = 'int16'}, {killedId = 'int16'}, {reason = 'int8'}}
 

Dark_Knight

Me, me and me.
Друг
4,062
2,077
ID приходят (если ты про это).
Lua:
INCOMING_RPCS[RPC.DEATHMESSAGE]               = {'onPlayerDeathNotification', {killerId = 'int16'}, {killedId = 'int16'}, {reason = 'int8'}}
Хм.... Пойду сурсы сампа гляну.

ID приходят (если ты про это).
Lua:
INCOMING_RPCS[RPC.DEATHMESSAGE]               = {'onPlayerDeathNotification', {killerId = 'int16'}, {killedId = 'int16'}, {reason = 'int8'}}
Смотри. Идея немного другая. Добавь проверку такую. Если последней елемент не равен елементу проверки, то перезаписывай данные.
 
Последнее редактирование модератором:

imring

Ride the Lightning
Автор темы
Всефорумный модератор
2,355
2,516
Смотри. Идея немного другая. Добавь проверку такую. Если последней елемент не равен елементу проверки, то перезаписывай данные.
нагрузка идет из-за этого (может нагрузка идет ещё из-за другого):
Lua:
function sampGetPlayerIdByNickname(nick)
    if sampGetPlayerNickname(myid) == nick then return myid end
    for id = 0, 1000 do if sampIsPlayerConnected(id) and nick == sampGetPlayerNickname(id) then return id end end
end
 

Dark_Knight

Me, me and me.
Друг
4,062
2,077
нагрузка идет из-за этого (может нагрузка идет ещё из-за другого):
Lua:
function sampGetPlayerIdByNickname(nick)
    if sampGetPlayerNickname(myid) == nick then return myid end
    for id = 0, 1000 do if sampIsPlayerConnected(id) and nick == sampGetPlayerNickname(id) then return id end end
end
Конечно, Ты все делаешь же в цикле. Добавь проверку, когда киллстат будет изменятся, то только тогда ты делаешь перезапись.
 
  • Нравится
Реакции: imring

imring

Ride the Lightning
Автор темы
Всефорумный модератор
2,355
2,516
Конечно, Ты все делаешь же в цикле. Добавь проверку, когда киллстат будет изменятся, то только тогда ты делаешь перезапись.
столкнулся с ещё проблемой. если длина ника игрока + ID будет больше 24, то будет вот это:
upload_2018-6-20_18-43-46.png

есть вариант у меня: убрать последние символы, если длина превышает 24 символов.
_________
обновил скрипт. теперь не будет кушать много fps.
upload_2018-6-20_18-53-1.png
 
Последнее редактирование:
  • Нравится
Реакции: ProzorgCamaro

cover

Известный
Проверенный
245
273
Не обязательно проходить по всем 1000 идам.
for id = 0, sampGetMaxPlayerId() do
end
 
1,417
1,028
или отрисовывать свой килл лист, что будет гораздо удобнее.
 

cheki

Известный
57
8
если ник длинный и 3х значит ИД . видно только 1-2 цифру