авторепорт

l1neyy

Новичок
Автор темы
10
1
Версия MoonLoader
.027.0-preview
Здравствуйте, обитатели форума. Возможно ли, что при открытии окна репорта, скрипт останавливался?
хуй:
require 'lib.moonloader'
local sampev = require 'lib.samp.events'
local vkeys = require 'vkeys'

local active = false

function main()
    if not isSampLoaded() or not isSampfuncsLoaded() then return end
    while not isSampAvailable() do wait(100) end

    while true do
        wait(0)
        if isKeyJustPressed(0x58) and not isSampfuncsConsoleActive() and not sampIsChatInputActive() and not sampIsDialogActive() and not isPauseMenuActive() then
            active = not active
            printString('AutoReport: '..(active and '~g~activated' or '~r~disabled'), 1500)
        end
    end
end

function sampev.onServerMessage(color, text)
    if text:find('%[(%W+)%] от (%w+_%w+)%[(%d+)%]:') and active then
        sampSendChat('/ot')
    end
end
 

newgen

Новичок
10
0
Здравствуйте, обитатели форума. Возможно ли, что при открытии окна репорта, скрипт останавливался?
хуй:
require 'lib.moonloader'
local sampev = require 'lib.samp.events'
local vkeys = require 'vkeys'

local active = false

function main()
    if not isSampLoaded() or not isSampfuncsLoaded() then return end
    while not isSampAvailable() do wait(100) end

    while true do
        wait(0)
        if isKeyJustPressed(0x58) and not isSampfuncsConsoleActive() and not sampIsChatInputActive() and not sampIsDialogActive() and not isPauseMenuActive() then
            active = not active
            printString('AutoReport: '..(active and '~g~activated' or '~r~disabled'), 1500)
        end
    end
end

function sampev.onServerMessage(color, text)
    if text:find('%[(%W+)%] от (%w+_%w+)%[(%d+)%]:') and active then
        sampSendChat('/ot')
    end
end
дай айди диалога репорта
 

ChаtGPT

Активный
371
93
Lua:
local sampev = require('samp.events')

local state = true

function sampev.onShowDialog(dialogId, style, title, button1, button2, text)
    if dialogId == *id диалога* then
        state = false
    end
end

аа тебе наверное так нужно

Lua:
function sampev.onServerMessage(color, text)
    if text:find('%[(%W+)%] от (%w+_%w+)%[(%d+)%]:') then
        lua_thread.create(function()
            if active then
                sampSendChat('/ot')
            end
        end)
    end
end
 
Последнее редактирование:

XRLM

Против ветра рождённый
Проверенный
1,509
1,076
Lua:
local sampev = require('samp.events')

local state = true

function sampev.onShowDialog(dialogId, style, title, button1, button2, text)
    if dialogId == *id диалога* then
        state = false
    end
end

аа тебе наверное так нужно

Lua:
function sampev.onServerMessage(color, text)
    if text:find('%[(%W+)%] от (%w+_%w+)%[(%d+)%]:') then
        lua_thread.create(function()
            if active then
                sampSendChat('/ot')
            end
        end)
    end
end
хуйня идея хукать диалог по id, лучше по заголовку с текстом
 
  • Нравится
Реакции: qdIbp и MLycoris

XRLM

Против ветра рождённый
Проверенный
1,509
1,076
я обычно по id и по заголовку) так точнее
не точнее, сервер добавит новый диалог, и отсосет хуяку твой хук, потому что нужный диалог может поменять свой id
 
  • Нравится
Реакции: MLycoris

l1neyy

Новичок
Автор темы
10
1
Lua:
local sampev = require('samp.events')

local state = true

function sampev.onShowDialog(dialogId, style, title, button1, button2, text)
    if dialogId == *id диалога* then
        state = false
    end
end

аа тебе наверное так нужно

Lua:
function sampev.onServerMessage(color, text)
    if text:find('%[(%W+)%] от (%w+_%w+)%[(%d+)%]:') then
        lua_thread.create(function()
            if active then
                sampSendChat('/ot')
            end
        end)
    end
end
мля, немного не понял, что куда. мне нужно чтобы он активировался по клавише, а при появлении окна репорта скрипт выключался (именно не выгружался, а отключался)

дай айди диалога репорта
1334
 
Последнее редактирование:

newgen

Новичок
10
0
lua:
require 'lib.moonloader'
local sampev = require 'lib.samp.events'
local vkeys = require 'vkeys'

local active = false

function main()
    if not isSampLoaded() or not isSampfuncsLoaded() then return end
    while not isSampAvailable() do wait(100) end

    while true do
        wait(0)
        if isKeyJustPressed(0x58) and not isSampfuncsConsoleActive() and not sampIsChatInputActive() and not sampIsDialogActive() and not isPauseMenuActive() then
            active = not active
            printString('AutoReport: '..(active and '~g~activated' or '~r~disabled'), 1500)
        end
    end
end

function sampev.onServerMessage(color, text)
    if text:find('%[(%W+)%] от (%w+_%w+)%[(%d+)%]:') and active then
        sampSendChat('/ot')
    end
end

function sampev.onShowDialog(id, style, title, button1, button2, text)
   if active and title:find('') then -- ТУТ ВВЕДИ ЗАГОЛОВОК ОКНА РЕПОРТА
       active = not active
   end
end