Как вывести id по нику?

NHacker1271

Известный
Автор темы
156
16
Версия MoonLoader
.026-beta
Как вывести id по нику?
Киньте пример
 

neverlane

t.me/neverlane00
Друг
997
1,132
Lua:
--где-то в коде
function sampGetPlayerIdByNickname(nick)
    local _, myid = sampGetPlayerIdByCharHandle(playerPed)
    if tostring(nick) == sampGetPlayerNickname(myid) then return myid end
    for i = 0, 1000 do if sampIsPlayerConnected(i) and sampGetPlayerNickname(i) == tostring(nick) then return i end end
end

--в ondrawframe
local getid = sampGetPlayerIdByNickname("nick")
if getid ~= nil then--если найден ид игрыка

else--если не найден

end
 

NHacker1271

Известный
Автор темы
156
16
Lua:
--где-то в коде
function sampGetPlayerIdByNickname(nick)
    local _, myid = sampGetPlayerIdByCharHandle(playerPed)
    if tostring(nick) == sampGetPlayerNickname(myid) then return myid end
    for i = 0, 1000 do if sampIsPlayerConnected(i) and sampGetPlayerNickname(i) == tostring(nick) then return i end end
end

--в ondrawframe
local getid = sampGetPlayerIdByNickname("nick")
if getid ~= nil then--если найден ид игрыка

else--если не найден

end
Не робит
 

Cosmo

Известный
Друг
646
2,597
Всё должно работать, ты скорее всего что-то не то делаешь. Если не получится, кинь фулл код сюда
Lua:
-- в main (пример)
sampRegisterChatCommand('idn', function(text)
    local id = sampGetPlayerIdByNickname(text)
    if id then print(text..'['..id..']') end
end)

-- В любом месте кода
function sampGetPlayerIdByNickname(nick)
    local _, myid = sampGetPlayerIdByCharHandle(playerPed)
    if tostring(nick) == sampGetPlayerNickname(myid) then return myid end
    for i = 0, 1000 do if sampIsPlayerConnected(i) and sampGetPlayerNickname(i) == tostring(nick) then return i end end
end
 

Quasper

Известный
834
354
Всё должно работать, ты скорее всего что-то не то делаешь. Если не получится, кинь фулл код сюда
Lua:
-- в main (пример)
sampRegisterChatCommand('idn', function(text)
    local id = sampGetPlayerIdByNickname(text)
    if id then print(text..'['..id..']') end
end)

-- В любом месте кода
function sampGetPlayerIdByNickname(nick)
    local _, myid = sampGetPlayerIdByCharHandle(playerPed)
    if tostring(nick) == sampGetPlayerNickname(myid) then return myid end
    for i = 0, 1000 do if sampIsPlayerConnected(i) and sampGetPlayerNickname(i) == tostring(nick) then return i end end
end
будет работать с учётом регистра) и перебор от 0 до 1к это лишняя трата времени и ресурсов

Lua:
function getPlayerIdByNickname(name)
    for i = 0, sampGetMaxPlayerId(false) do
        if sampIsPlayerConnected(i) then
            if sampGetPlayerNickname(i):lower() == tostring(name):lower() then
                return i
            end
        end
    end
end
код выше работает без учёта регистра
 
  • Нравится
  • Влюблен
Реакции: sep и Cosmo