Проблема со скриптом решатором

albertus

Участник
Автор темы
8
0
Версия MoonLoader
.025-beta
Добрый день товарищи, возникла проблема со скриптом.
Суть скрипта - нахождение примера (сложение одного числа с другим) среди всего месева в чате и переотправление ТОЛЬКО примера в чат.
Допустим в чат некий Albertus_Albertovich пишет: "Пример для товарищей... 351 + 5212 ? Приз: Альбертус". Скрипт должен проанализировать эту строчку и взять оттуда "361 + 5212" (с пробелами) и отправить этот пример в чат, но уже без лишних слов. Так как я за несколько световых лет от профессионального кодера, то я сварил бред который остановился на том, что может только написать запущен ли он по команде или нет. Прикладываю мой недо-код, прошу указать мои ошибки :) Буду благодарен!

Полный код:
require 'lib.moonloader'

local sampev = require 'lib.samp.events'

function main()
while not isSampAvailable() do wait(100) end
sampRegisterChatCommand("pdelatel", pdelatel)
sampAddChatMessage("{FF8C00}[PrimeroDelatel] {E0FFFF}To activate PrimeroDelatel use this command : {FF0000}/pdelatel", 0xFF8C00)
while true do
wait(0)
  end
end

function pdelatel()
state = not state
if state then
   sampAddChatMessage("{FF8C00}[PrimeroDelatel] {E0FFFF}Activated", 0xFF8C00)
   else
   sampAddChatMessage("{FF8C00}[PrimeroDelatel] {E0FFFF}Disactivated", 0xFF8C00)
  end
end

function sampev.onServerMessage(color, text)
    local primer = text:match('(.+) + (.+)')
    if text:find('Пример для товарищей... (.+) + (.+) ? Приз: Альбертус') then
            sampSendChat(primer)
        end
    end
 

Rice.

Известный
Модератор
1,731
1,589
Добрый день товарищи, возникла проблема со скриптом.
Суть скрипта - нахождение примера (сложение одного числа с другим) среди всего месева в чате и переотправление ТОЛЬКО примера в чат.
Допустим в чат некий Albertus_Albertovich пишет: "Пример для товарищей... 351 + 5212 ? Приз: Альбертус". Скрипт должен проанализировать эту строчку и взять оттуда "361 + 5212" (с пробелами) и отправить этот пример в чат, но уже без лишних слов. Так как я за несколько световых лет от профессионального кодера, то я сварил бред который остановился на том, что может только написать запущен ли он по команде или нет. Прикладываю мой недо-код, прошу указать мои ошибки :) Буду благодарен!

Полный код:
require 'lib.moonloader'

local sampev = require 'lib.samp.events'

function main()
while not isSampAvailable() do wait(100) end
sampRegisterChatCommand("pdelatel", pdelatel)
sampAddChatMessage("{FF8C00}[PrimeroDelatel] {E0FFFF}To activate PrimeroDelatel use this command : {FF0000}/pdelatel", 0xFF8C00)
while true do
wait(0)
  end
end

function pdelatel()
state = not state
if state then
   sampAddChatMessage("{FF8C00}[PrimeroDelatel] {E0FFFF}Activated", 0xFF8C00)
   else
   sampAddChatMessage("{FF8C00}[PrimeroDelatel] {E0FFFF}Disactivated", 0xFF8C00)
  end
end

function sampev.onServerMessage(color, text)
    local primer = text:match('(.+) + (.+)')
    if text:find('Пример для товарищей... (.+) + (.+) ? Приз: Альбертус') then
            sampSendChat(primer)
        end
    end
Lua:
function sampev.onServerMessage(color, text)
    if text:find('Пример для товарищей... (.+) + (.+) ? Приз: Альбертус') then
        local primer1 = text:match('Пример для товарищей... (.+) ? Приз: Альбертус')
        sampSendChat(primer1)
    end
end