Авто нажатие клавиш

Limе

Активный
Автор темы
185
51
Хотел написать скрипт чтоб когда я лавку занимал он нажимал определенные кнопки
Lua:
require "lib.moonloader"
local keys = require "vkeys"

function main()
sampAddChatMessage('Скрипт запущен', 0x6A5ACD)
while true do
    if text:find('^%[Подсказка%] {FFFFFF}Вы успешно арендовали лавку для продажи') or text:find('^%[Подсказка%] {FFFFFF}Вы успешно выставили лавку для продажи.покупки товара.$') then
    wait(2000)
    setGameKeyState(27, 255)
    wait(1000)
    setGameKeyState(27, 0)
    wait(1000)
    setGameKeyState(12, 255)
    wait(1000)
    setGameKeyState(12, 0)
    wait(1000)
    setGameKeyState(13, 255)
    wait(1000)
    setGameKeyState(13, 0)
    end
Но выдаёт ошибку
(
gs1.lua:21: 'end' expected (to close 'function' at line 7) near '<eof>'
[10:37:26.410892] (error) gs1.lua: Script died due to an error. (16E28774)
)
 

purpleee

Активный
180
80
Не знаю зачем тебе библиотека Keys если ты её не используешься

В любом случае код ниже не будет работать ибо что такое text?
Lua:
local keys = require "vkeys"

function main()
    while not isSampAvailable() do wait(0) end
    sampAddChatMessage('Скрипт запущен', 0x6A5ACD)
while true do wait(0)
    if text:find('^%[Подсказка%] {FFFFFF}Вы успешно арендовали лавку для продажи') or text:find('^%[Подсказка%] {FFFFFF}Вы успешно выставили лавку для продажи.покупки товара.$') then
        wait(2000)
        setGameKeyState(27, 255)
        wait(1000)
        setGameKeyState(27, 0)
        wait(1000)
        setGameKeyState(12, 255)
        wait(1000)
        setGameKeyState(12, 0)
        wait(1000)
        setGameKeyState(13, 255)
        wait(1000)
        setGameKeyState(13, 0)
    end
end

Правильный вариант:

Lua:
local event = require('lib.samp.events')
function main()
    while not isSampAvailable() do wait(0) end
    sampAddChatMessage('Скрипт запущен', 0x6A5ACD)
    while true do wait(0) end
end

function event.onServerMessage(color, text)
    if text:find('^%[Подсказка%] {FFFFFF}Вы успешно арендовали лавку для продажи') or text:find('^%[Подсказка%] {FFFFFF}Вы успешно выставили лавку для продажи.покупки товара.$') then
        lua_thread.create(function()
            wait(2000)
            setGameKeyState(27, 255)
            wait(1000)
            setGameKeyState(27, 0)
            wait(1000)
            setGameKeyState(12, 255)
            wait(1000)
            setGameKeyState(12, 0)
            wait(1000)
            setGameKeyState(13, 255)
            wait(1000)
            setGameKeyState(13, 0)
        end)
    end
end
 

чел обычный

Участник
21
1
это попробуй
Lua:
require "lib.moonloader"
local keys = require "vkeys"

function main()
sampAddChatMessage('Скрипт запущен', 0x6A5ACD)
while true do
    local chatstring = sampGetChatString(99)
    if chatstring = ('^%[Подсказка%] {FFFFFF}Вы успешно арендовали лавку для продажи') or ('^%[Подсказка%] {FFFFFF}Вы успешно выставили лавку для продажи.покупки товара.$') then
    wait(2000)
    setGameKeyState(27, 255)
    wait(1000)
    setGameKeyState(27, 0)
    wait(1000)
    setGameKeyState(12, 255)
    wait(1000)
    setGameKeyState(12, 0)
    wait(1000)
    setGameKeyState(13, 255)
    wait(1000)
    setGameKeyState(13, 0)
    end
 

purpleee

Активный
180
80
это попробуй
Lua:
require "lib.moonloader"
local keys = require "vkeys"

function main()
sampAddChatMessage('Скрипт запущен', 0x6A5ACD)
while true do
    local chatstring = sampGetChatString(99)
    if chatstring = ('^%[Подсказка%] {FFFFFF}Вы успешно арендовали лавку для продажи') or ('^%[Подсказка%] {FFFFFF}Вы успешно выставили лавку для продажи.покупки товара.$') then
    wait(2000)
    setGameKeyState(27, 255)
    wait(1000)
    setGameKeyState(27, 0)
    wait(1000)
    setGameKeyState(12, 255)
    wait(1000)
    setGameKeyState(12, 0)
    wait(1000)
    setGameKeyState(13, 255)
    wait(1000)
    setGameKeyState(13, 0)
    end
Скрипт даже не запустится ибо будет ошибка (не хватает end). Если ты пофиксишь ошибку, то при загрузке скрипта - гта будет зависать(нету wait в цикле).
 

Limе

Активный
Автор темы
185
51
Не знаю зачем тебе библиотека Keys если ты её не используешься

В любом случае код ниже не будет работать ибо что такое text?
Lua:
local keys = require "vkeys"

function main()
    while not isSampAvailable() do wait(0) end
    sampAddChatMessage('Скрипт запущен', 0x6A5ACD)
while true do wait(0)
    if text:find('^%[Подсказка%] {FFFFFF}Вы успешно арендовали лавку для продажи') or text:find('^%[Подсказка%] {FFFFFF}Вы успешно выставили лавку для продажи.покупки товара.$') then
        wait(2000)
        setGameKeyState(27, 255)
        wait(1000)
        setGameKeyState(27, 0)
        wait(1000)
        setGameKeyState(12, 255)
        wait(1000)
        setGameKeyState(12, 0)
        wait(1000)
        setGameKeyState(13, 255)
        wait(1000)
        setGameKeyState(13, 0)
    end
end

Правильный вариант:

Lua:
local event = require('lib.samp.events')
function main()
    while not isSampAvailable() do wait(0) end
    sampAddChatMessage('Скрипт запущен', 0x6A5ACD)
    while true do wait(0) end
end

function event.onServerMessage(color, text)
    if text:find('^%[Подсказка%] {FFFFFF}Вы успешно арендовали лавку для продажи') or text:find('^%[Подсказка%] {FFFFFF}Вы успешно выставили лавку для продажи.покупки товара.$') then
        lua_thread.create(function()
            wait(2000)
            setGameKeyState(27, 255)
            wait(1000)
            setGameKeyState(27, 0)
            wait(1000)
            setGameKeyState(12, 255)
            wait(1000)
            setGameKeyState(12, 0)
            wait(1000)
            setGameKeyState(13, 255)
            wait(1000)
            setGameKeyState(13, 0)
        end)
    end
end
Благодарю