Как добавить сюда кд?

Daddyy

Известный
Автор темы
238
51
Версия SA-MP
  1. 0.3.7 (R1)
  2. 0.3.7-R2
  3. 0.3.7-R3
  4. 0.3.7-R4
Пишу скрипт для ловли билета, по замыслу он каждые 500 мс должен отправлять клик на вариант с надписью "[1]" но после первого клика он крашит, помогите интегрировать сюда кд чтобы работал без крашей, вот код:

def main()::
local sampev = require 'lib.samp.events'
local active = false

function main()
    repeat wait(0) until isSampAvailable()
    sampRegisterChatCommand("work", function()
        active = not active
        sampAddChatMessage("A/D", -1)
    end)
end

function sampev.onShowDialog(id, style, title, button1, button2, text)
    if active then
        if id == 25396 then
            sampSendDialogResponse(id, 1, 0,'[1]')
            wait(500)
            return false
        end
    end
end
 
Решение
Спасибо, теперь он кликает больше одного раза, но тайминг всё равно не соблюдается
Потому что ты сначала нажимаешь на кнопку в диалоге, в следствие чего опять появляется диалог и кнопка снова нажимается и так до бесконечности. Сделай так:
Lua:
lua_thread.create(function()
    wait(500)
    sampSendDialogResponse(id, 1, 0,'[1]')
end)
return false

Rice.

Известный
Модератор
1,703
1,470
Пишу скрипт для ловли билета, по замыслу он каждые 500 мс должен отправлять клик на вариант с надписью "[1]" но после первого клика он крашит, помогите интегрировать сюда кд чтобы работал без крашей, вот код:

def main()::
local sampev = require 'lib.samp.events'
local active = false

function main()
    repeat wait(0) until isSampAvailable()
    sampRegisterChatCommand("work", function()
        active = not active
        sampAddChatMessage("A/D", -1)
    end)
end

function sampev.onShowDialog(id, style, title, button1, button2, text)
    if active then
        if id == 25396 then
            sampSendDialogResponse(id, 1, 0,'[1]')
            wait(500)
            return false
        end
    end
end
Lua:
function sampev.onShowDialog(id, style, title, button1, button2, text)
    if active then
        if id == 25396 then
            lua_thread.create(function()
                sampSendDialogResponse(id, 1, 0,'[1]')
                wait(500)
                return false
            end)
        end
    end
end
 

Daddyy

Известный
Автор темы
238
51
Lua:
function sampev.onShowDialog(id, style, title, button1, button2, text)
    if active then
        if id == 25396 then
            lua_thread.create(function()
                sampSendDialogResponse(id, 1, 0,'[1]')
                wait(500)
                return false
            end)
        end
    end
end
Спасибо, но тайминг всё равно не соблюдается
 

Rice.

Известный
Модератор
1,703
1,470
Спасибо, теперь он кликает больше одного раза, но тайминг всё равно не соблюдается
Потому что ты сначала нажимаешь на кнопку в диалоге, в следствие чего опять появляется диалог и кнопка снова нажимается и так до бесконечности. Сделай так:
Lua:
lua_thread.create(function()
    wait(500)
    sampSendDialogResponse(id, 1, 0,'[1]')
end)
return false
 
  • Нравится
Реакции: Daddyy