Помогите с кодом, массив

NHacker1271

Известный
Автор темы
156
16
Версия MoonLoader
.026-beta
Написал код который переводит флуд с чата в диалог, но что-то пошло не так, помогите с кодом..
Lua:
script_name('nfl')

require "lib.moonloader"
local sampev = require "lib.samp.events"

function main()
    if not isSampLoaded() or not isSampfuncsLoaded() then return end
    while not isSampAvailable() do wait(100) end
    while true do wait(0) end
end
function sampev.onServerMessage(color, text)
    if (text:find('Больница')) then
        sampShowDialog(1, 'Список медиков:', text .. '\n', "йцу", 'Закрыть', 4)
    end
end
sa-mp-002.png
 

|| NN - NoName ||

Известный
1,049
628
Написал код который переводит флуд с чата в диалог, но что-то пошло не так, помогите с кодом..
Lua:
script_name('nfl')

require "lib.moonloader"
local sampev = require "lib.samp.events"

function main()
    if not isSampLoaded() or not isSampfuncsLoaded() then return end
    while not isSampAvailable() do wait(100) end
    while true do wait(0) end
end
function sampev.onServerMessage(color, text)
    if (text:find('Больница')) then
        sampShowDialog(1, 'Список медиков:', text .. '\n', "йцу", 'Закрыть', 4)
    end
end
Посмотреть вложение 53771
Каждую новую строчку тебе надо записывать, а то у тебя всегда значение меняется. К пример делаешь так. msg = msg + text + '/n' перед этим делаешь msg = ''
Я так у себя делал. Работает) + потом тебе ещё в хук вставить надо return false.
А ещё любое в чате сообщение с текстом "Больница" будет попадать в таблицу.
 
  • Нравится
Реакции: NHacker1271

|| NN - NoName ||

Известный
1,049
628
Вот код:
Lua:
    if text:find('Больница') then
        local msg = ''
        local msg = msg + text + '\n'
        sampShowDialog(1, 'Title', msg, '+', '-', 4)
    end
Вот что выводит..
Тебе Local msg = '' надо вставить в начале скрипта. А show dialog в другой функции. Подумай логично. У тебя каждый раз новое сообщение. Ты каждое новое сообщение обнуляешь локальную и открывать диалог, так не надо. Пиши в помощь луа, там помогут.
 
  • Нравится
Реакции: NHacker1271

NHacker1271

Известный
Автор темы
156
16
script_name('ac')
require "lib.moonloader"
local sampev = require "lib.samp.events"
function main()
if not isSampLoaded() or not isSampfuncsLoaded() then return end
while not isSampAvailable() do wait(100) end
test = ''
while true do wait(0) end
end
function sampev.onServerMessage(color, text)
if text:find('Сотрудники больниц онлайн:') or text:find('Инструкторы онлайн:') then
test = ''
return false
end
if text:find('{FFFFFF}Больница (%D+) | ') then
test = test .. '' .. text .. '\n'
sampShowDialog(1, 'Сотрудники больниц онлайн:', test, 'Закрыть', false, 4)
return false
end
if text:find('(%D+) | Номер телефона: {FFAF00}') then
test = test .. '' .. text .. '\n'
sampShowDialog(1, 'Инструкторы онлайн:', test, 'Закрыть', false, 4)
return false
end
end
 
Последнее редактирование:

|| NN - NoName ||

Известный
1,049
628
Так нормально? Или можно улучшить?
Lua:
script_name('ac')

require "lib.moonloader"
local sampev = require "lib.samp.events"

function main()
    if not isSampLoaded() or not isSampfuncsLoaded() then return end
    while not isSampAvailable() do wait(100) end
    test = ''
    while true do wait(0) end
end

function sampev.onServerMessage(color, text)
    if text:find('Сотрудники больниц онлайн:') then
        test = ''
        return false
    end
    if text:find('{FFFFFF}Больница') then
        test = test .. '+' .. text .. '\n'
        sampShowDialog(1, 'Сотрудники больниц онлайн:', test, 'Закрыть', false, 4)
        return false
    end
end
А у тебя пишется сколько сотрудников онлайн, в чате?
А вообще напиши мне в вк, я тебе помогу. vk.com/crawler1990