Помогите с луа скриптом

MrEnderStail

Новичок
Автор темы
19
0
Версия SA-MP
  1. 0.3.7 (R1)
Код:
script_name("Test CMD")
script_version_number(228)
script_version("1.0")
script_authors("no")

function main()
    if not isSampfuncsLoaded() or not isSampLoaded() then return end
    while not isSampAvailable() do wait(100) end
    active = 0
    sampRegisterChatCommand("jinv", activatecmd)
    while true do
        wait(0)
        if not isPauseMenuActive() and isPlayerPlaying(playerHandle) then
          if active == 1 then
            local valid, ped = getCharPlayerIsTargeting(PLAYER_HANDLE)
            if valid and doesCharExist(ped) then
               local result, id = sampGetPlayerIdByCharHandle(ped)
               if result then
                sampSendChat("/invite " ..id)
               end
           end
        end
    end
  end
end




function activatecmd()
   active = not active
end
 
Последнее редактирование:

Hatiko

Известный
Проверенный
1,472
611
ну почему оно в чат вообще ничего не пишет, типо пишу команду активации зажимаю пкм и всё 0
Потому что переменная active является булевской переменной, а ты сделал условие, чтобы она равнялась единице.
 

Hatiko

Известный
Проверенный
1,472
611
так active = not active и на другом скрипте работает
Ещё раз.
Ты переменную active объявил как boolean, и в команде ты её триггеришь как boolean.
В main цикле у тебя условие if active == 1 then, то есть ты пытаешься сравнить boolean с number, то бишь числовым типом.
Тебе надо просто сделать условие if active then и всё.
В lua true не равняется 1
 
  • Нравится
Реакции: Lakrya