Как получить ID игрока по части ника?

lovandog

Известный
Автор темы
224
98
Версия MoonLoader
.026-beta
Как получить ID игрока по части ника? Нужно чтобы работало как на аризоне. Например Vasya_Pupkin[1], я ввожу Vas и мне выдает его ID
 
Решение
Lua:
function getPlayersWithName(string)
    local t = {}
    for i = 0, 999 do
        if sampIsPlayerConnected(i) or i == select(2, sampGetPlayerIdByCharHandle(PLAYER_PED)) then
            if sampGetPlayerNickname(i):find(string) then
                table.insert(t, {id = i, name = sampGetPlayerNickname(i)})
            end
        end
    end
    return t
end

-- пример:
local list = getPlayersWithName('_Gay')
for i = 1, #list do
    print('ID: '..list[i].id, 'Ник: '..list[i].name)
end

Rice.

Известный
Модератор
1,753
1,660
Как получить ID игрока по части ника? Нужно чтобы работало как на аризоне. Например Vasya_Pupkin[1], я ввожу Vas и мне выдает его ID
 

lovandog

Известный
Автор темы
224
98
разве это работает для неполного ника?
 

chapo

tg/inst: @moujeek
Всефорумный модератор
9,089
12,108
Lua:
function getPlayersWithName(string)
    local t = {}
    for i = 0, 999 do
        if sampIsPlayerConnected(i) or i == select(2, sampGetPlayerIdByCharHandle(PLAYER_PED)) then
            if sampGetPlayerNickname(i):find(string) then
                table.insert(t, {id = i, name = sampGetPlayerNickname(i)})
            end
        end
    end
    return t
end

-- пример:
local list = getPlayersWithName('_Gay')
for i = 1, #list do
    print('ID: '..list[i].id, 'Ник: '..list[i].name)
end
 
  • Нравится
Реакции: lovandog

rvengnrg

Активный
287
46
Lua:
function getPlayersWithName(string)
    local t = {}
    for i = 0, 999 do
        if sampIsPlayerConnected(i) or i == select(2, sampGetPlayerIdByCharHandle(PLAYER_PED)) then
            if sampGetPlayerNickname(i):find(string) then
                table.insert(t, {id = i, name = sampGetPlayerNickname(i)})
            end
        end
    end
    return t
end

-- пример:
local list = getPlayersWithName('_Gay')
for i = 1, #list do
    print('ID: '..list[i].id, 'Ник: '..list[i].name)
end
а зачем если это уже есть в сампе?