arizona / не работают диалоги

user1241

Активный
Автор темы
431
48
Версия MoonLoader
.026-beta
не работает функция с диалогом, вообще, хелпайте плес.
Lua:
require 'lib.moonloader'
local sampev = require 'lib.samp.events'
local raknet = require 'lib.samp.raknet'

sampev.INTERFACE.INCOMING_RPCS[raknet.RPC.SHOWDIALOG] = {
    'onShowDialog',
    {dialogId = 'int16'},
    {style = 'int8'},
    {title = 'string8'},
    {button1 = 'string8'},
    {button2 = 'string8'},
    {text = 'encodedString4096'},
    {jsonPayload = 'string16'}
}


function main()
    while not isSampAvailable() do wait(0) end
      
    sampRegisterChatCommand('ctt', ctt)   
    while true do
        wait(0)
        
    end
end

function ctt()
    local did = 34400
    lua_thread.create(function()
        sampShowDialog(did, "{6495ED}Тест", "{ffffff}Один\nДва", "Выбрать", "Закрыть", 2)
        while sampIsDialogActive(did) do wait(100) end
        local _, button, list, _ = sampHasDialogRespond(did)
        if button == 1 then
            if list == 0 then
                sampAddChatMessage('Пункт номер 1', -1)
            elseif list == 1 then
                sampAddChatMessage('Пункт номер 2', -1)
            end
        end
    end)
end
 

opcode

Новичок
3
1
Ну во первых, смотрим сюда {dialogId = 'int16'} тебе похуй что лимиты у этого типа данных 32767?
Во вторых ты ебнулся такую схему делать? sampev.INTERFACE.INCOMING_RPCS[raknet.RPC.SHOWDIALOG]
В третьих добавь sampSetDialogClientside
В четвертых, под какими солями ты передаешь аргумент (did) в функцию которая возвращает булево значение без принятия в себя аргументов? sampIsDialogActive

Пардон за маты, не сдержался.
 
Последнее редактирование:

Tema05

Известный
1,692
595
я её всего лишь спиздил из какой-то темы с фиксом
Забей, он бред какой-то написал. Похоже что надрочил нейронку на свой стиль общения и сгенерил

не работает функция с диалогом, вообще, хелпайте плес.
Lua:
require 'lib.moonloader'
local sampev = require 'lib.samp.events'
local raknet = require 'lib.samp.raknet'

sampev.INTERFACE.INCOMING_RPCS[raknet.RPC.SHOWDIALOG] = {
    'onShowDialog',
    {dialogId = 'int16'},
    {style = 'int8'},
    {title = 'string8'},
    {button1 = 'string8'},
    {button2 = 'string8'},
    {text = 'encodedString4096'},
    {jsonPayload = 'string16'}
}


function main()
    while not isSampAvailable() do wait(0) end
     
    sampRegisterChatCommand('ctt', ctt)  
    while true do
        wait(0)
       
    end
end

function ctt()
    local did = 34400
    lua_thread.create(function()
        sampShowDialog(did, "{6495ED}Тест", "{ffffff}Один\nДва", "Выбрать", "Закрыть", 2)
        while sampIsDialogActive(did) do wait(100) end
        local _, button, list, _ = sampHasDialogRespond(did)
        if button == 1 then
            if list == 0 then
                sampAddChatMessage('Пункт номер 1', -1)
            elseif list == 1 then
                sampAddChatMessage('Пункт номер 2', -1)
            end
        end
    end)
end
Lua:
function main()
    while not isSampAvailable() do wait(0) end

    local dialog_id = 34400
    sampRegisterChatCommand('ctt', function ()
        sampShowDialog(dialog_id, "{6495ED}Тест", "{ffffff}Один\nДва", "Выбрать", "Закрыть", 2)
    end)

    while true do
        wait(0)

        local result, button, list, _ = sampHasDialogRespond(dialog_id)
        if result then
            if button == 1 then
                if list == 0 then
                    sampAddChatMessage('Пункт номер 1', -1)
                elseif list == 1 then
                    sampAddChatMessage('Пункт номер 2', -1)
                end
            end
        end
    end
end
 

opcode

Новичок
3
1
Забей, он бред какой-то написал. Похоже что надрочил нейронку на свой стиль общения и сгенерил


Lua:
function main()
    while not isSampAvailable() do wait(0) end

    local dialog_id = 34400
    sampRegisterChatCommand('ctt', function ()
        sampShowDialog(dialog_id, "{6495ED}Тест", "{ffffff}Один\nДва", "Выбрать", "Закрыть", 2)
    end)

    while true do
        wait(0)

        local result, button, list, _ = sampHasDialogRespond(dialog_id)
        if result then
            if button == 1 then
                if list == 0 then
                    sampAddChatMessage('Пункт номер 1', -1)
                elseif list == 1 then
                    sampAddChatMessage('Пункт номер 2', -1)
                end
            end
        end
    end
end
У тебя в голове бред нанейронили, параноик. Я че увидел то и говорю, он перезаписал перехват диалога через sampev, и пытался перехватить то что не перехватывается физически, так еще и аргумент передает туда куда не надо. Чел даже подумать не умудрился че у него в коде, ты ему объясни свой код, че он поймет из него? Помощничек, учишь людей копипастить
 
  • Ха-ха
Реакции: Tema05