Как задать свое условие при входе если ник занят

Marv22

Участник
Автор темы
38
1
Версия MoonLoader
.027.0-preview
Как задать свое условие, если человек с таким ником уже в сети?
 

Cosmo

Известный
Друг
660
2,796
Это ты имел ввиду?
Lua:
function main()
    if not isSampLoaded() or not isSampfuncsLoaded() then return end
    while not isSampAvailable() do wait(2000) end
        sampRegisterChatCommand('nick', function(arg)
            if #arg > 0 then
                if getPlayerIdByNickname(tostring(arg)) then
                    sampAddChatMessage('Игрок с таким ником есть на сервере!', -1)
                else
                    sampAddChatMessage('Такого челика нет', -1)
                end
            end
        end)
        sampAddChatMessage('КУ', 0xFF0000)
    while true do
    wait(0)
    end
end

-- функция находящая ид по нику. В любое место кода
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
 

Marv22

Участник
Автор темы
38
1
Это ты имел ввиду?
Lua:
function main()
    if not isSampLoaded() or not isSampfuncsLoaded() then return end
    while not isSampAvailable() do wait(2000) end
        sampRegisterChatCommand('nick', function(arg)
            if #arg > 0 then
                if getPlayerIdByNickname(tostring(arg)) then
                    sampAddChatMessage('Игрок с таким ником есть на сервере!', -1)
                else
                    sampAddChatMessage('Такого челика нет', -1)
                end
            end
        end)
        sampAddChatMessage('КУ', 0xFF0000)
    while true do
    wait(0)
    end
end

-- функция находящая ид по нику. В любое место кода
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
При входе на сервер если ник уже занят (когда сообщение от клиента)
 

Cosmo

Известный
Друг
660
2,796
При входе на сервер если ник уже занят (когда сообщение от клиента)
Читай ответ клиента через sampGetChatString и далее уже выполняй действие. Больше я хз как
 
  • Нравится
Реакции: Marv22