Что я не так делаю???

violenc3

Активный
Автор темы
296
58
Версия MoonLoader
.026-beta
Lua:
local sampev = require 'samp.events'
local enable = false
    function sampev.lockPlayerControll()
     sampRegisterChatCommand('controll', function())
        enable = not enable
        sampAddChatMessage('[Player Controll]: '..(enable and 'Включен' or 'Выключен'), -1)
end
Мне в консоли сампфункса пишет нет скобки на 4 строке, я добавил и теперь пишет уберите, а скрипт должен по команде /controll блокировать движение я хз чо оно
 

sdfy

Известный
346
228
Зачем тебе sampev
Ты пытаешься вызвать его несуществующую функцию
Ты создаешь в sampRegisterChatCommand вторым аргументом функцию, и не закрываешь ее end'ом
Lua:
function main()
    while not isSampAvailable() do wait(0) end
    local state = false
    sampRegisterChatCommand('controll', function()
        state = not state
        sampAddChatMessage('Player control >> ' .. (state and "включен" or "выключен"), -1)
        lockPlayerControl(state)
    end)
    wait(-1)
end
 
  • Нравится
Реакции: biscuitt

violenc3

Активный
Автор темы
296
58
Зачем тебе sampev
Ты пытаешься вызвать его несуществующую функцию
Ты создаешь в sampRegisterChatCommand вторым аргументом функцию, и не закрываешь ее end'ом
Lua:
function main()
    while not isSampAvailable() do wait(0) end
    local state = false
    sampRegisterChatCommand('controll', function()
        state = not state
        sampAddChatMessage('Player control >> ' .. (state and "включен" or "выключен"), -1)
        lockPlayerControl(state)
    end)
    wait(-1)
end
спс, но в 7 строке вместо дужек надо было ставить =, спс ещё раз, оч помог
 

ARMOR

Waitin' on another black summer to end
Модератор
5,045
7,189
Зачем тебе sampev
Ты пытаешься вызвать его несуществующую функцию
Ты создаешь в sampRegisterChatCommand вторым аргументом функцию, и не закрываешь ее end'ом
Lua:
function main()
    while not isSampAvailable() do wait(0) end
    local state = false
    sampRegisterChatCommand('controll', function()
        state = not state
        sampAddChatMessage('Player control >> ' .. (state and "включен" or "выключен"), -1)
        lockPlayerControl(state)
    end)
    wait(-1)
end
Почитай о глобальных и локальных переменных. А то ты создаешь локальную переменную в одной функции, и пытаешься изменить её в другой.
Без імені.png

Правильно будет сделать так:
Lua:
local state = false

function main()
    while not isSampAvailable() do wait(100) end

    sampRegisterChatCommand("controll", function()
        state = not state
        sampAddChatMessage(state and "Enable" or "Disable", -1)
        lockPlayerControl(state)
    end)

    wait(-1)
end
 
Последнее редактирование:
  • Вау
Реакции: AugustTN

moreveal

Известный
Модератор
945
666
Почитай о глобальных и локальных переменных. А то ты создаешь локальную переменную в одной функции, и пытаешься изменить её в другой.
Посмотреть вложение 191467
она же находится в той же области видимости, следовательно видна вложенной функции
 
  • Вау
Реакции: ARMOR

sdfy

Известный
346
228
Почитай о глобальных и локальных переменных. А то ты создаешь локальную переменную в одной функции, и пытаешься изменить её в другой.
Посмотреть вложение 191467
Правильно будет сделать так:
Lua:
local state = false

function main()
    while not isSampAvailable() do wait(100) end

    sampRegisterChatCommand("controll", function()
        state = not state
        sampAddChatMessage(state and "Enable" or "Disable", -1)
        lockPlayerControl(state)
    end)

    wait(-1)
end
И чего ты доебался до нее
Screenshot_2023-02-27-00-28-18-740_com.yandex.browser.lite.jpg
 
  • Нравится
Реакции: biscuitt и ARMOR

ARMOR

Waitin' on another black summer to end
Модератор
5,045
7,189