помогите

SamperJostkiy

Участник
Автор темы
172
19
Всем привет, не знаю пишу в нужную тему или нет, но есть небольшая проблема, у меня есть код
Lua:
require "lib.moonloader"

local script_state = false
local keybinds = {
    { VK_1, "/mask" },
    { VK_2, "/heal" },
    { VK_3, "/tp" },
    { VK_4, "/capture" },
    { VK_5, "/veh 411 69 69" },
    { VK_6, "/veh 510 69 69" }
    { VK_Z, "/anim 8" }
}

function main()
    if not isSampfuncsLoaded() or not isSampLoaded() then return end
    while not isSampAvailable() do wait(100) end
    sampRegisterChatCommand('blind',
        function()
            script_state = not script_state
            sampAddChatMessage('hello ,залупа, я ' .. (script_state and 'Включен' or 'Выключен'), -1)
        end)

    while true do wait(0)
        if not sampIsChatInputActive() and not isSampfuncsConsoleActive() and not sampIsDialogActive() then
            for i = 1, #keybinds do
                if isKeyJustPressed(keybinds[i][1]) then sampSendChat(keybinds[i][2]) end
            end
        end
    end
end
проблема в том что он не работает, точнее активация и деактивация скрипта работает, но на нажатия клавиш, что бы те исполняли команды, он никак не реагирует
 
Решение
Не понимаю, как у тебя работает активация и деактивация, если у тебя из-за отсутствия запятой на 10 строке скрипт должен выгружаться
Lua:
require "lib.moonloader"

local script_state = false
local keybinds = {
    { VK_1, "/mask" },
    { VK_2, "/heal" },
    { VK_3, "/tp" },
    { VK_4, "/capture" },
    { VK_5, "/veh 411 69 69" },
    { VK_6, "/veh 510 69 69" },
    { VK_Z, "/anim 8" }
}

function main()
    if not isSampfuncsLoaded() or not isSampLoaded() then return end
    while not isSampAvailable() do wait(100) end
    sampRegisterChatCommand('blind',
        function()
            script_state = not script_state
            sampAddChatMessage('hello ,залупа, я ' .. (script_state and 'Включен' or 'Выключен'), -1)
        end)...

mooh

Известный
168
48
Не понимаю, как у тебя работает активация и деактивация, если у тебя из-за отсутствия запятой на 10 строке скрипт должен выгружаться
Lua:
require "lib.moonloader"

local script_state = false
local keybinds = {
    { VK_1, "/mask" },
    { VK_2, "/heal" },
    { VK_3, "/tp" },
    { VK_4, "/capture" },
    { VK_5, "/veh 411 69 69" },
    { VK_6, "/veh 510 69 69" },
    { VK_Z, "/anim 8" }
}

function main()
    if not isSampfuncsLoaded() or not isSampLoaded() then return end
    while not isSampAvailable() do wait(100) end
    sampRegisterChatCommand('blind',
        function()
            script_state = not script_state
            sampAddChatMessage('hello ,залупа, я ' .. (script_state and 'Включен' or 'Выключен'), -1)
        end)

    while true do wait(0)
        if not sampIsChatInputActive() and not isSampfuncsConsoleActive() and not sampIsDialogActive() then
            for i = 1, #keybinds do
                if isKeyJustPressed(keybinds[i][1]) then sampSendChat(keybinds[i][2]) end
            end
        end
    end
end

1717094332388.png
 
  • Нравится
Реакции: MLycoris

SamperJostkiy

Участник
Автор темы
172
19
Не понимаю, как у тебя работает активация и деактивация, если у тебя из-за отсутствия запятой на 10 строке скрипт должен выгружаться
Lua:
require "lib.moonloader"

local script_state = false
local keybinds = {
    { VK_1, "/mask" },
    { VK_2, "/heal" },
    { VK_3, "/tp" },
    { VK_4, "/capture" },
    { VK_5, "/veh 411 69 69" },
    { VK_6, "/veh 510 69 69" },
    { VK_Z, "/anim 8" }
}

function main()
    if not isSampfuncsLoaded() or not isSampLoaded() then return end
    while not isSampAvailable() do wait(100) end
    sampRegisterChatCommand('blind',
        function()
            script_state = not script_state
            sampAddChatMessage('hello ,залупа, я ' .. (script_state and 'Включен' or 'Выключен'), -1)
        end)

    while true do wait(0)
        if not sampIsChatInputActive() and not isSampfuncsConsoleActive() and not sampIsDialogActive() then
            for i = 1, #keybinds do
                if isKeyJustPressed(keybinds[i][1]) then sampSendChat(keybinds[i][2]) end
            end
        end
    end
end

Посмотреть вложение 241945
где у меня там запятой нету?
 

SamperJostkiy

Участник
Автор темы
172
19
Я исправленный код прикрепил, в твоем коде там нет запятой
Из-за этой запятой у меня ничего не работало ничего кроме активации/деактивации

Не крашилось оно наверное из-за того, что запятой не было в локальной переменной, а локальная переменная используется только в некоторых случаях, т.е когда скрипт должен ее использовать, а все остальное время, когда скрипт бездействует, он эту переменную не трогает, и по этому не крашится.
Наверное оно так работает, я попытался обьяснить как смог, и как думаю