Работа с чатом

NeoBarrera

Новичок
Автор темы
19
0
Версия MoonLoader
.026-beta
Как сделать чтобы когда в чате было написано "Администратор", скрипт искал этот текст и когда найдёт выполнялась функция написания в чат, например /ok
 
Решение
Lua:
addEventHandler("onReceiveRpc", function(id, bitstream)
    if id == 93 then
        local color = raknetBitStreamReadInt32(bitstream)
        local length = raknetBitStreamReadInt32(bitstream)
        local text = raknetBitStreamReadString(bitstream, length)
        if text:find("Администратор") then
            lua_thread.create(function()
                wait(100)
                sampSendChat("/ok")
            end)
        end
    end
end)

ImPasha

Software Developer & System Administrator
Друг
1,788
2,141
Lua:
addEventHandler("onReceiveRpc", function(id, bitstream)
    if id == 93 then
        local color = raknetBitStreamReadInt32(bitstream)
        local length = raknetBitStreamReadInt32(bitstream)
        local text = raknetBitStreamReadString(bitstream, length)
        if text:find("Администратор") then
            lua_thread.create(function()
                wait(100)
                sampSendChat("/ok")
            end)
        end
    end
end)
 
  • Нравится
Реакции: NeoBarrera
U

user390868

Гость

NeoBarrera

Новичок
Автор темы
19
0
Можно сделать если я в реконе, чтобы эта функция (код выше) не выполнялась, onSpectatePlayer

И почему когда ищет 'Администратор', оно пишет /ok только тогда, когда в чате будет Администратор и только 1 раз
if text:find('Администратор') then
Но когда пишу '[Report]', начинается жесткий флуд, даже тогда, когда '[Report]' нету, в коде больше ничего не менял
if text:find('[Report]') then
 

ImPasha

Software Developer & System Administrator
Друг
1,788
2,141
Можно сделать если я в реконе, чтобы эта функция (код выше) не выполнялась, onSpectatePlayer

И почему когда ищет 'Администратор', оно пишет /ok только тогда, когда в чате будет Администратор и только 1 раз
if text:find('Администратор') then
Но когда пишу '[Report]', начинается жесткий флуд, даже тогда, когда '[Report]' нету, в коде больше ничего не менял
if text:find('[Report]') then
Квадратные скобки - это специальный символ, его нужно экранировать в паттернах.
Lua:
if text:find('%[Report]') then