помощь с луа (кричалкой)

qv1nty

Участник
Автор темы
20
1
вот у меня в скрипте написано
if text:find('Капча введена верно') then
sampSendChat('сообщение')
При срабатывании функции текст который скрипт искал не появляется в чате
Можно ли как то изменить код, чтобы скрипт находил надпись в чате но не удалял её?
 

Вложения

  • krichalka (1).lua
    351 байт · Просмотры: 6

Hinаta

Известный
784
356
С телефона у меня нет возможности проверить работоспособность, но по сути
Lua:
local sampev = require('samp.events')

function sampev.onServerMessage(_, text)
   if text:find('Капча введена верно') then
    sampSendChat('/s сообщение ')
     return true
   end
end
должно работать

Если нет, то это какая-то особенность работы samp.events с событиями, которые исходят от тебя самого. Вчера столкнулся с таким при работе с onSendCommand, когда условие выполнялось, но команда в чат не отправлялась
 
  • Нравится
Реакции: qv1nty

qv1nty

Участник
Автор темы
20
1
С телефона у меня нет возможности проверить работоспособность, но по сути
Lua:
local sampev = require('samp.events')

function sampev.onServerMessage(_, text)
   if text:find('Капча введена верно') then
    sampSendChat('/s сообщение ')
     return true
   end
end
должно работать

Если нет, то это какая-то особенность работы samp.events с событиями, которые исходят от тебя самого. Вчера столкнулся с таким при работе с onSendCommand, когда условие выполнялось, но команда в чат не отправлялась
было бы неплохо, но к сожалению не работает, скрипт выполняет функцию, но сообщение не появляется в чате

у тебя кодировка не стоит, cp1251 поставь
я чайник, можно по проще пж
 

qv1nty

Участник
Автор темы
20
1
Каким образом решил, если не секрет?
любезно пообщался с чатджипити по душам,
код:
require 'lib.moonloader'

local sampev = require('lib.samp.events')

function main()
    while not isSampAvailable() do wait(0) end
   
    while true do
        wait(0)
    end
end

local originalText = "" -- Переменная для сохранения оригинального текста

function sampev.onServerMessage(color, text)
   if text:find('Капча введена верно') then
      -- Сохраняем оригинальный текст
      originalText = text
      sampSendChat('/s сообщение')
   elseif originalText ~= "" then
      -- Если оригинальный текст сохранен, выводим его в чат
      sampAddChatMessage(originalText, 0xFFFFFF)
      originalText = "" -- Очищаем сохраненный текст
   end
end
 

Hinаta

Известный
784
356
Это тебе не нужно.

function main() while not isSampAvailable() do wait(0) end while true do wait(0) end end
main тоже не обязателен, если в коде есть хуки

А это можно заменить на -1, это тоже белый
 
  • Нравится
Реакции: qv1nty и arpix