off/on скрипта через лист локальный диалог

l-m

Новичок
Автор темы
28
1
Версия MoonLoader
.026-beta
gta_sa_AcKAuFXjoP.png

При нажатии на данный лист, скрипт включается и выключается соответственно. Но к сожалению не получается сделать при выключении надпись Off, а при включении On.

Мой скрипт:
local status = not status

local dialogTabHeaderArr = {"Скрипт\tЗначение\n", "Auto{FF0000}head\t" .. (status and "{00FF00}On" or "{FF0000}Off"), "Auto{FF0000}eat\tstatus"}
local dialogTabHeaderStr = ""

for _, str in ipairs(dialogTabHeaderArr) do
    dialogTabHeaderStr = dialogTabHeaderStr .. str .. "\n"
end


while true do
        wait(0)

        local result, button, list, input = sampHasDialogRespond(15) -- /dialog5 (TabListHeaderBox)

        if result then -- если диалог открыт
            if button == 1 then -- если нажата первая кнопка (Выбрать)
                if list == 0 then
                    status = not status
                    sampAddChatMessage(status and "{00FF00}On" or "{FF0000}Off", -1)
                    --stat = not stat
                    --sampAddChatMessage(dialogTabHeaderArr[2], -1) 
                    --sampAddChatMessage("В диалоге с ID 15 выбран пункт {FFFFFF}" .. list, color_dialog)
                elseif list == 1 then
                    sampAddChatMessage("В диалоге с ID 15 выбран пункт {FFFFFF}" .. list, color_dialog)
                elseif list == 2 then
                    sampAddChatMessage("В диалоге с ID 15 выбран пункт {FFFFFF}" .. list, color_dialog)
                elseif list == 3 then
                    sampAddChatMessage("В диалоге с ID 15 выбран пункт {FFFFFF}" .. list, color_dialog)
                end
            else -- если нажата вторая кнопка (Закрыть)
                sampAddChatMessage("Вы закрыли диалог", color_dialog)
            end
        end

    end

По разному пытался, ничего не получается
 
  • Эм
Реакции: qdIbp

why ega

РП игрок
Модератор
2,539
2,231
Посмотреть вложение 190531
При нажатии на данный лист, скрипт включается и выключается соответственно. Но к сожалению не получается сделать при выключении надпись Off, а при включении On.

Мой скрипт:
local status = not status

local dialogTabHeaderArr = {"Скрипт\tЗначение\n", "Auto{FF0000}head\t" .. (status and "{00FF00}On" or "{FF0000}Off"), "Auto{FF0000}eat\tstatus"}
local dialogTabHeaderStr = ""

for _, str in ipairs(dialogTabHeaderArr) do
    dialogTabHeaderStr = dialogTabHeaderStr .. str .. "\n"
end


while true do
        wait(0)

        local result, button, list, input = sampHasDialogRespond(15) -- /dialog5 (TabListHeaderBox)

        if result then -- если диалог открыт
            if button == 1 then -- если нажата первая кнопка (Выбрать)
                if list == 0 then
                    status = not status
                    sampAddChatMessage(status and "{00FF00}On" or "{FF0000}Off", -1)
                    --stat = not stat
                    --sampAddChatMessage(dialogTabHeaderArr[2], -1)
                    --sampAddChatMessage("В диалоге с ID 15 выбран пункт {FFFFFF}" .. list, color_dialog)
                elseif list == 1 then
                    sampAddChatMessage("В диалоге с ID 15 выбран пункт {FFFFFF}" .. list, color_dialog)
                elseif list == 2 then
                    sampAddChatMessage("В диалоге с ID 15 выбран пункт {FFFFFF}" .. list, color_dialog)
                elseif list == 3 then
                    sampAddChatMessage("В диалоге с ID 15 выбран пункт {FFFFFF}" .. list, color_dialog)
                end
            else -- если нажата вторая кнопка (Закрыть)
                sampAddChatMessage("Вы закрыли диалог", color_dialog)
            end
        end

    end

По разному пытался, ничего не получается
Попробуй в начале у переменной status задать true или false значение (мб я еблан)
 

qdIbp

Автор темы
Проверенный
1,386
1,141
так?

Lua:
local status = true
local color_dialog = 0xFF00FF

function main()

    sampRegisterChatCommand('cmd',function()
        sampShowDialog(15, 'xz', "Скрипт\tЗначение\nAuto{FF0000}head\t"..(status and "{00FF00}On" or "{FF0000}Off").."\nAuto{FF0000}eat\tstatus", 'zzx', 'xz', 5)
    end)

    while true do wait(0)

        local result, button, list, input = sampHasDialogRespond(15) -- /dialog5 (TabListHeaderBox)
        if result then -- если диалог открыт
            if button == 1 then -- если нажата первая кнопка (Выбрать)
                if list == 0 then
                    status = not status
                    sampAddChatMessage(status and "{00FF00}On" or "{FF0000}Off", -1)
                    sampShowDialog(15, 'xz', "Скрипт\tЗначение\nAuto{FF0000}head\t"..(status and "{00FF00}On" or "{FF0000}Off").."\nAuto{FF0000}eat\tstatus", 'zzx', 'xz', 5)
                else
                    sampAddChatMessage("В диалоге с ID 15 выбран пункт {FFFFFF}" .. list, color_dialog)
                end
            else -- если нажата вторая кнопка (Закрыть)
                sampAddChatMessage("Вы закрыли диалог", color_dialog)
            end
        end

    end
end
 

l-m

Новичок
Автор темы
28
1
так?

Lua:
local status = true
local color_dialog = 0xFF00FF

function main()

    sampRegisterChatCommand('cmd',function()
        sampShowDialog(15, 'xz', "Скрипт\tЗначение\nAuto{FF0000}head\t"..(status and "{00FF00}On" or "{FF0000}Off").."\nAuto{FF0000}eat\tstatus", 'zzx', 'xz', 5)
    end)

    while true do wait(0)

        local result, button, list, input = sampHasDialogRespond(15) -- /dialog5 (TabListHeaderBox)
        if result then -- если диалог открыт
            if button == 1 then -- если нажата первая кнопка (Выбрать)
                if list == 0 then
                    status = not status
                    sampAddChatMessage(status and "{00FF00}On" or "{FF0000}Off", -1)
                    sampShowDialog(15, 'xz', "Скрипт\tЗначение\nAuto{FF0000}head\t"..(status and "{00FF00}On" or "{FF0000}Off").."\nAuto{FF0000}eat\tstatus", 'zzx', 'xz', 5)
                else
                    sampAddChatMessage("В диалоге с ID 15 выбран пункт {FFFFFF}" .. list, color_dialog)
                end
            else -- если нажата вторая кнопка (Закрыть)
                sampAddChatMessage("Вы закрыли диалог", color_dialog)
            end
        end

    end
end
Лучший бро, спасибо!