Строка из чата

NoN4m3

Участник
Автор темы
78
5
Версия MoonLoader
.026-beta
Вот смотрите, у меня стоит к примеру проверка

Код:
if msg:find("Администратор выдал заглушку игроку") then

    действие

end

как мне сделать вывод полной строки в sampAddChatMessage а потом парсинг отдельных объектов?
 
Решение
Lua:
--допустим сообщение от сервера:
local msg = 'Администратор Krytoi_Tawer[228] выдал заглушку игроку RNB_Club[777] на 60 минут. Причина: флуд'
if msg:find("выдал заглушку игроку") then
    sampAddChatMessage(msg, -1) -- вывод этой строчки, хз зач, если она и так будет в чате
    --получаем ник админа, ник игрока, время мута, причину
    local aName, pName, mTime, reason = msg:match('Администратор (.+)%[%d+] выдал заглушку игроку (.+)%[%d+] на (%d+) минут%. Причина: (.+)')
    if aName and pName and mTime and reason then
        print(aName, pName, mTime, reason)
        -- на выходе получаем: Krytoi_Tawer    RNB_Club    60    флуд
    end
end

sᴀxᴏɴ

#Mary
Всефорумный модератор
789
845
Lua:
--допустим сообщение от сервера:
local msg = 'Администратор Krytoi_Tawer[228] выдал заглушку игроку RNB_Club[777] на 60 минут. Причина: флуд'
if msg:find("выдал заглушку игроку") then
    sampAddChatMessage(msg, -1) -- вывод этой строчки, хз зач, если она и так будет в чате
    --получаем ник админа, ник игрока, время мута, причину
    local aName, pName, mTime, reason = msg:match('Администратор (.+)%[%d+] выдал заглушку игроку (.+)%[%d+] на (%d+) минут%. Причина: (.+)')
    if aName and pName and mTime and reason then
        print(aName, pName, mTime, reason)
        -- на выходе получаем: Krytoi_Tawer    RNB_Club    60    флуд
    end
end
 
  • Нравится
Реакции: NoN4m3 и koncumone

NoN4m3

Участник
Автор темы
78
5
Lua:
--допустим сообщение от сервера:
local msg = 'Администратор Krytoi_Tawer[228] выдал заглушку игроку RNB_Club[777] на 60 минут. Причина: флуд'
if msg:find("выдал заглушку игроку") then
    sampAddChatMessage(msg, -1) -- вывод этой строчки, хз зач, если она и так будет в чате
    --получаем ник админа, ник игрока, время мута, причину
    local aName, pName, mTime, reason = msg:match('Администратор (.+)%[%d+] выдал заглушку игроку (.+)%[%d+] на (%d+) минут%. Причина: (.+)')
    if aName and pName and mTime and reason then
        print(aName, pName, mTime, reason)
        -- на выходе получаем: Krytoi_Tawer    RNB_Club    60    флуд
    end
end
Спасибки)