Блокирование управления при диалоге.

Adrian G.

Известный
Автор темы
Проверенный
516
452
Версия MoonLoader
.026-beta
Как будет выглядеть код, чтобы при появлении определенного диалога срабатывал lockPlayerControl, а при закрытии диалога все восстанавливалось?
 
Последнее редактирование:

Adrian G.

Известный
Автор темы
Проверенный
516
452
if sampIsDialogActive() then
-- диалог активен, делаешь там фриз или что тебе нужно
else
-- неактивен, анфризишь
end
Веришь нет, так же писал, при диалоге фризит, но при закрытии не анфризит

Lua:
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
    sampAddChatMessage('Brake at {ffffff}Admin Response активирован', 0x2c78bf)
    wait(-1)
end

function sampev.onShowDialog(dialogId, title, button1, button2, text)
    if dialogId == 722 then
         lockPlayerControl(true)
     else
        if not sampIsDialogActive() then
            lockPlayerControl(false)
            
        end
    end
end
 

McLore

Известный
564
284
Веришь нет, так же писал, при диалоге фризит, но при закрытии не анфризит

Lua:
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
    sampAddChatMessage('Brake at {ffffff}Admin Response активирован', 0x2c78bf)
    wait(-1)
end

function sampev.onShowDialog(dialogId, title, button1, button2, text)
    if dialogId == 722 then
         lockPlayerControl(true)
     else
        if not sampIsDialogActive() then
            lockPlayerControl(false)
           
        end
    end
end
Ну так посмотри что у тебя в коде хоть сам, если диалог ид == 722 то фриз, а если другой ид диалога и диалог не открыт то анфризит...
 

winten

Потрачен
408
188
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Lua:
local events = require('lib.samp.events')

function events.onSendDialogResponse(id, btn, listitem, input)
    lockPlayerControl(false)
end

function events.onShowDialog(id, style, title, btn1, btn2, text)
    lockPlayerControl(true)
end