Помощь с скриптом

rvengnrg

Активный
Автор темы
287
46
Учусь писать скрипты на луа, и решил для начала написать типа биндер но он не работает, хочу узнать почему



Lua:
require "lib.moonloader"
local keys = require "vkeys"
function main()
if not isSampLoaded () or not isSampfuncsLoaded ()
then return
end
    SampAddChatMessage ('Cкрипт загружен'), 0x#9370DB
    while true do
    wait(0)
end
    if isKeyDown (VK_1)
    and isKeyJustPressed (VK_81)
    then
        SampSendChat ("/rec")
end
 
  • Bug
Реакции: влад динозавр
Решение
Lua:
require 'lib.moonloader'

function main()
    if not isSampLoaded() or not isSampfuncsLoaded() then return end

    while true do
         wait(0)
         if isKeyDown(VK_MENU) and wasKeyPressed(VK_1) then -- VK_MENU это Альт, а VK_1 это 1
             sampProcessChatInput("/rec") -- Если ты хочешь отправить сообщение в чат сервера - отправляй через sampSendChat. Но, sampSendChat не поддерживает отправку команд скриптов, по типу /rec, /helper и т.д. Чтобы отправить команду скриптовую нужно использовать функцию sampProcessChatInput("Сообщение")
         end
    end
end
Кстати у тебя были ошибки в том что ты закрыл бесконечный цикл и только потом сделал проверку на зажатую клавишу, что не правильно, ибо скрипт повторялся только в...

ARMOR

Мне кажется, я всё проебал
Модератор
5,018
7,060
Lua:
require 'lib.moonloader'

function main()
    if not isSampLoaded() or not isSampfuncsLoaded() then return end

    while true do
         wait(0)
         if isKeyDown(VK_MENU) and wasKeyPressed(VK_1) then -- VK_MENU это Альт, а VK_1 это 1
             sampProcessChatInput("/rec") -- Если ты хочешь отправить сообщение в чат сервера - отправляй через sampSendChat. Но, sampSendChat не поддерживает отправку команд скриптов, по типу /rec, /helper и т.д. Чтобы отправить команду скриптовую нужно использовать функцию sampProcessChatInput("Сообщение")
         end
    end
end
Кстати у тебя были ошибки в том что ты закрыл бесконечный цикл и только потом сделал проверку на зажатую клавишу, что не правильно, ибо скрипт повторялся только в бесконечном цикле, а к твоей проверке не доходил просто. Ещё у тебя была ошибка в том что у тебя скобки шли после функции, вот так: sampAddChatMessage (), А должно быть так: sampAddChatMessage()
Ещё ты должен понимать что если функция называется sampAddChatMessage() то ты не можешь написать её sampaddchatmessage, нужно с точностью указывать большие и маленькие буквы.
 
  • Нравится
Реакции: rvengnrg

rvengnrg

Активный
Автор темы
287
46
Lua:
require 'lib.moonloader'

function main()
    if not isSampLoaded() or not isSampfuncsLoaded() then return end

    while true do
         wait(0)
         if isKeyDown(VK_MENU) and wasKeyPressed(VK_1) then -- VK_MENU это Альт, а VK_1 это 1
             sampProcessChatInput("/rec") -- Если ты хочешь отправить сообщение в чат сервера - отправляй через sampSendChat. Но, sampSendChat не поддерживает отправку команд скриптов, по типу /rec, /helper и т.д. Чтобы отправить команду скриптовую нужно использовать функцию sampProcessChatInput("Сообщение")
         end
    end
end
Кстати у тебя были ошибки в том что ты закрыл бесконечный цикл и только потом сделал проверку на зажатую клавишу, что не правильно, ибо скрипт повторялся только в бесконечном цикле, а к твоей проверке не доходил просто. Ещё у тебя была ошибка в том что у тебя скобки шли после функции, вот так: sampAddChatMessage (), А должно быть так: sampAddChatMessage()
Ещё ты должен понимать что если функция называется sampAddChatMessage() то ты не можешь написать её sampaddchatmessage, нужно с точностью указывать большие и маленькие буквы.
Господи спасибо большое, можешь ещё накидать нормальных гайдов по луа? Буду благодарен
 
  • Bug
Реакции: влад динозавр

ARMOR

Мне кажется, я всё проебал
Модератор
5,018
7,060
Господи спасибо большое, можешь ещё накидать нормальных гайдов по луа? Буду благодарен
Посмотри эти гайды, потом просто тренируйся в написании, и изучай что-то новое, к примеру в исходниках других скриптов.
 
  • Влюблен
Реакции: rvengnrg

rvengnrg

Активный
Автор темы
287
46
Lua:
require 'lib.moonloader'

function main()
    if not isSampLoaded() or not isSampfuncsLoaded() then return end

    while true do
         wait(0)
         if isKeyDown(VK_MENU) and wasKeyPressed(VK_1) then -- VK_MENU это Альт, а VK_1 это 1
             sampProcessChatInput("/rec") -- Если ты хочешь отправить сообщение в чат сервера - отправляй через sampSendChat. Но, sampSendChat не поддерживает отправку команд скриптов, по типу /rec, /helper и т.д. Чтобы отправить команду скриптовую нужно использовать функцию sampProcessChatInput("Сообщение")
         end
    end
end
Кстати у тебя были ошибки в том что ты закрыл бесконечный цикл и только потом сделал проверку на зажатую клавишу, что не правильно, ибо скрипт повторялся только в бесконечном цикле, а к твоей проверке не доходил просто. Ещё у тебя была ошибка в том что у тебя скобки шли после функции, вот так: sampAddChatMessage (), А должно быть так: sampAddChatMessage()
Ещё ты должен понимать что если функция называется sampAddChatMessage() то ты не можешь написать её sampaddchatmessage, нужно с точностью указывать большие и маленькие буквы.
Не очень понимаю как добавить ещё пару таких биндов когда пробую скрипт не работает, помоги пожалуйста если можешь
 

ARMOR

Мне кажется, я всё проебал
Модератор
5,018
7,060
Не очень понимаю как добавить ещё пару таких биндов когда пробую скрипт не работает, помоги пожалуйста если можешь
Lua:
require 'lib.moonloader'

function main()
    if not isSampfuncsLoaded() or not isSampLoaded() then return end
    while not isSampAvailable() do wait(100) end

    while true do -- Начало беск. цикла
        wait(0) -- Задержка, она нужна чтобы игра попросту не зависла
        if isKeyDown(VK_MENU) and wasKeyPressed(VK_1) then -- isKeyDown() это функция которая проверяет не ЗАЖАТА ли клавиша, а wasKeyPressed() это функция которая проверяет не была ли НАЖАТА клавиша, можно даже сказать "Отпущена"
            sampAddChatMessage("Это действие произошло когда ты зажал Альт и нажал 1", -1)
        elseif isKeyDown(VK_MENU) and wasKeyPressed(VK_2) then
            sampAddChatMessage("Это действие произошло когда ты зажал Альт и нажал 2", -1)
        end -- Конец проверки на нажатые/зажатые клавиши
    end -- Конец беск. цикла
end
 
  • Нравится
Реакции: rvengnrg

rvengnrg

Активный
Автор темы
287
46
Lua:
require 'lib.moonloader'

function main()
    if not isSampfuncsLoaded() or not isSampLoaded() then return end
    while not isSampAvailable() do wait(100) end

    while true do -- Начало беск. цикла
        wait(0) -- Задержка, она нужна чтобы игра попросту не зависла
        if isKeyDown(VK_MENU) and wasKeyPressed(VK_1) then -- isKeyDown() это функция которая проверяет не ЗАЖАТА ли клавиша, а wasKeyPressed() это функция которая проверяет не была ли НАЖАТА клавиша, можно даже сказать "Отпущена"
            sampAddChatMessage("Это действие произошло когда ты зажал Альт и нажал 1", -1)
        elseif isKeyDown(VK_MENU) and wasKeyPressed(VK_2) then
            sampAddChatMessage("Это действие произошло когда ты зажал Альт и нажал 2", -1)
        end -- Конец проверки на нажатые/зажатые клавиши
    end -- Конец беск. цикла
end
а есть ли какой-то гайд на диалоги? Просто я смотерл так и не очень понял, мне нужно чтобы когда я вводил команду например /help показывалось окно просто с командами которые я напишу туда