Доделать/пояснить скрипт

Cypher

Активный
Автор темы
222
55
я - 0 в луа
пытаюсь сделать телепорт а потом из него слаппер
Для начала мне бы сделать так чтобы тп работал а дальше посмотрим)
суть - должен писать /rvan ID и должно тепнуть к челу просто
Пока работает только так
Пишу /rvan ID, ничего не происходит, пишу ещё раз - неизвестная команда
121312:
script_name("tp")
script_author("cypher")
local rvan = false

function main()
  while not isSampAvailable() do wait(200) end
  sampAddChatMessage("{D5A6BD}[rvan.lua]: {FFFFFF}Was Active", -1)
  sampRegisterChatCommand("rvan", zarvan)
  wait(-1)
end

function zarvan(id)
    rvan = not rvan
    local res, handle = sampGetCharHandleBySampPlayerId(id)
    if res then
        local x, y, z = sampGetCharHandleBySampPlayerId(id)
        setCharCoordinates(id, x, y, z)
    end
end

а и желательно пожалуйста с обяснениями --
<3
 
Решение
Спасибо, но честно не совсем то чего я хочу.
Мне большая часть написанного тобой когда не понятна, я только учусь в луа так что для меня сложновато выходит
Lua:
function main()
  while not isSampAvailable() do wait(200) end
  sampAddChatMessage("{D5A6BD}[rvan.lua]: {FFFFFF}Was Active", -1)
  sampRegisterChatCommand("rvan", function(arg) -- Создает команду
     if arg ~= nil or '' then -- если аргумет не пуст или не пустота
        local res, handle = sampGetCharHandleBySampPlayerId(arg) -- получает хендл перса по иду
        if res then -- если получил хендл
              local x, y, z = getCharCoordinates(handle) -- получает корды чела
              setCharCoordinates(handle, x, y, z) -- тепает к челу
        end -- закрывает...

AugustTN

Известный
1,361
472
Lua:
script_name("tp")
script_author("cypher")
function main()
  while not isSampAvailable() do wait(200) end
  sampAddChatMessage("{D5A6BD}[rvan.lua]: {FFFFFF}Was Active", -1)
  sampRegisterChatCommand("rvan", function(arg)
      if arg ~= nil or '' then
          local res, handle = sampGetCharHandleBySampPlayerId(arg)
          if res then
              local x, y, z = sampGetCharHandleBySampPlayerId(arg)
              setCharCoordinates(handle, x, y, z)
          end
        end
     end
  wait(-1)
end
Попробуй(писал с мобилы, табуляцию поправишь сам)

А, так ты получаешь вообще не то че хочешь

Вот это юзай после if res then
 

Cypher

Активный
Автор темы
222
55
Lua:
script_name("tp")
script_author("cypher")
function main()
  while not isSampAvailable() do wait(200) end
  sampAddChatMessage("{D5A6BD}[rvan.lua]: {FFFFFF}Was Active", -1)
  sampRegisterChatCommand("rvan", function(arg)
      if arg ~= nil or '' then
          local res, handle = sampGetCharHandleBySampPlayerId(arg)
          if res then
              local x, y, z = sampGetCharHandleBySampPlayerId(arg)
              setCharCoordinates(handle, x, y, z)
          end
        end
     end
  wait(-1)
end
Попробуй(писал с мобилы, табуляцию поправишь сам)

А, так ты получаешь вообще не то че хочешь

Вот это юзай после if res then
Спасибо, но честно не совсем то чего я хочу.
Мне большая часть написанного тобой когда не понятна, я только учусь в луа так что для меня сложновато выходит
 

VRush

https://t.me/vrushscript
2,417
1,207
Спасибо, но честно не совсем то чего я хочу.
Мне большая часть написанного тобой когда не понятна, я только учусь в луа так что для меня сложновато выходит
Lua:
function main()
  while not isSampAvailable() do wait(200) end
  sampAddChatMessage("{D5A6BD}[rvan.lua]: {FFFFFF}Was Active", -1)
  sampRegisterChatCommand("rvan", function(arg) -- Создает команду
     if arg ~= nil or '' then -- если аргумет не пуст или не пустота
        local res, handle = sampGetCharHandleBySampPlayerId(arg) -- получает хендл перса по иду
        if res then -- если получил хендл
              local x, y, z = getCharCoordinates(handle) -- получает корды чела
              setCharCoordinates(handle, x, y, z) -- тепает к челу
        end -- закрывает проверку "получил ли хендл"
     end-- закрывает "если аргумет не пуст или не пустота"
  end) -- закрывает "Создает команду"
  wait(-1)
end

@Cypher дай свой тг, буду помогать с луа
 

YarikVL

Известный
Проверенный
4,738
1,816
Lua:
function main()
  while not isSampAvailable() do wait(200) end
  sampAddChatMessage("{D5A6BD}[rvan.lua]: {FFFFFF}Was Active", -1)
  sampRegisterChatCommand("rvan", function(arg) -- Создает команду
     if arg ~= nil or '' then -- если аргумет не пуст или не пустота
        local res, handle = sampGetCharHandleBySampPlayerId(arg) -- получает хендл перса по иду
        if res then -- если получил хендл
              local x, y, z = getCharCoordinates(handle) -- получает корды чела
              setCharCoordinates(handle, x, y, z) -- тепает к челу
        end -- закрывает проверку "получил ли хендл"
     end-- закрывает "если аргумет не пуст или не пустота"
  end) -- закрывает "Создает команду"
  wait(-1)
end
if arg ~= nil or '' then это одно и то же, тип nil это и есть пустые кавычки ""
Проверяют обычно на nil
буду помогать с луа
Сча Чапо поставит смех)
 
  • Ха-ха
Реакции: AugustTN

AugustTN

Известный
1,361
472
if arg ~= nil or '' then это одно и то же, тип nil это и есть пустые кавычки ""
Проверяют обычно на nil

Сча Чапо поставит смех)
там вообще лучше сделать проверку на цифры, с мобилы лень было сделать
 
  • Нравится
Реакции: YarikVL

legnd

Известный
1,567
685
я - 0 в луа
пытаюсь сделать телепорт а потом из него слаппер
Для начала мне бы сделать так чтобы тп работал а дальше посмотрим)
суть - должен писать /rvan ID и должно тепнуть к челу просто
Пока работает только так
Пишу /rvan ID, ничего не происходит, пишу ещё раз - неизвестная команда
121312:
script_name("tp")
script_author("cypher")
local rvan = false

function main()
  while not isSampAvailable() do wait(200) end
  sampAddChatMessage("{D5A6BD}[rvan.lua]: {FFFFFF}Was Active", -1)
  sampRegisterChatCommand("rvan", zarvan)
  wait(-1)
end

function zarvan(id)
    rvan = not rvan
    local res, handle = sampGetCharHandleBySampPlayerId(id)
    if res then
        local x, y, z = sampGetCharHandleBySampPlayerId(id)
        setCharCoordinates(id, x, y, z)
    end
end

а и желательно пожалуйста с обяснениями --
<3
для этих просьб раздел специальный в помоще луа где как раз тебе моментально помогут всезнающие
 

chapo

tg/inst: @moujeek
Всефорумный модератор
9,090
12,118
if arg ~= nil or '' then -- если аргумет не пуст или не пустота
1668524187550.png

Lua:
if arg then
    -- code
end
 
  • Нравится
Реакции: Cypher и YarikVL