LUA Сообщения

Статус
В этой теме нельзя размещать новые ответы.

ht-

Потрачен
Автор темы
52
4
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Хочу разобраться, чтобы при слове test, который игрок напишет в чате, нажималась клавиша alt - это пример скрипта, не могу понять как такое сделать
 
  • Bug
Реакции: Vespan

MLycoris

Режим чтения
Проверенный
1,823
1,865
Lua:
local sampev = require 'lib.samp.events'
function sampev.onServerMessage(color, text)
    if text:find("%w+%_%w+%[%d+%]%: test") then -- то что до тест это регулярки формата Nick_Name[123]
        lua_thread.create(function() --  создаётся поток для wait вне main
            setVirtualKeyDown(18, true) -- альт нажимается
            wait(100) -- 100 мс ждёт
            setVirtualKeyDown(18, false) -- альт отпускается
        end) -- поток закрывается
    end
end
номера клавиш тут
 
  • Bug
Реакции: chapo

ChromiusJ

PARΛDIGM ΛSS
Друг
4,913
3,201
Хочу разобраться, чтобы при слове test, который игрок напишет в чате, нажималась клавиша alt - это пример скрипта, не могу понять как такое сделать
ааа:
if text:find('sample text') then
    local data = samp_create_sync_data('player')
    data.keysData = data.keysData + 1024
    data.send()
end
есть такой крутой вариант есть
 

ht-

Потрачен
Автор темы
52
4
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Lua:
local sampev = require 'lib.samp.events'
function sampev.onServerMessage(color, text)
    if text:find("%w+%_%w+%[%d+%]%: test") then -- то что до тест это регулярки формата Nick_Name[123]
        lua_thread.create(function() --  создаётся поток для wait вне main
            setVirtualKeyDown(18, true) -- альт нажимается
            wait(100) -- 100 мс ждёт
            setVirtualKeyDown(18, false) -- альт отпускается
        end) -- поток закрывается
    end
end
номера клавиш тут
не работает

ааа:
if text:find('sample text') then
    local data = samp_create_sync_data('player')
    data.keysData = data.keysData + 1024
    data.send()
end
есть такой крутой вариант есть
sample text пишу ничего не работает
 

Kirkjubaijaarklaustur

Известный
380
125
не работает


sample text пишу ничего не работает

супер говнокод, но вроде как работает

dd:
function sampev.onServerMessage(color, text, arg)
    if text:find('%w+_%w+%[%d+%] говорит:(.*)') then
        local nick = text:match('%w+_%w+')
        local message = text:match('test')
        local full = text:match('(.*)')
        sampAddChatMessage(full, color)
        if message == 'test' then
            lua_thread.create(function() --  создаётся поток для wait вне main
            setVirtualKeyDown(18, true) -- альт нажимается
            wait(100) -- 100 мс ждёт
            setVirtualKeyDown(18, false) -- альт отпускается
        end) -- поток закрывается
        end
    end
end
 

ht-

Потрачен
Автор темы
52
4
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
супер говнокод, но вроде как работает

dd:
function sampev.onServerMessage(color, text, arg)
    if text:find('%w+_%w+%[%d+%] говорит:(.*)') then
        local nick = text:match('%w+_%w+')
        local message = text:match('test')
        local full = text:match('(.*)')
        sampAddChatMessage(full, color)
        if message == 'test' then
            lua_thread.create(function() --  создаётся поток для wait вне main
            setVirtualKeyDown(18, true) -- альт нажимается
            wait(100) -- 100 мс ждёт
            setVirtualKeyDown(18, false) -- альт отпускается
        end) -- поток закрывается
        end
    end
end
не работает
 

ht-

Потрачен
Автор темы
52
4
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
не обязательно писать про Nick_Name говорит:

Главное найти в чате и нажать на любую клавишу, а для теста на клавишу alt

мейн и либу sampevents ты у себя пишешь?
на каком сервере ты это делаешь?
аризона, самп евент есть

мейн и либу sampevents ты у себя пишешь?
на каком сервере ты это делаешь?
ctrl c + ctrl v делаю, ничего не добавляю на скрипт

првоеряю с помощью инты в котору по alt заходить
 

Kirkjubaijaarklaustur

Известный
380
125
а:
local sampev = require 'lib.samp.events'

function main()
    while not isSampAvailable() do wait(0) end
    while true do
        wait(0)
      
    end
end




function sampev.onServerMessage(color, text)
    if text:find('%w+_%w+%[%d+] говорит:(.*)') then
        local nick = text:match('%w+_%w+')
        local message = text:match('test')
        local full = text:match('(.*)')
        sampAddChatMessage(full, color)
        if message == 'test' then
            lua_thread.create(function() --  создаётся поток для wait вне main
            setVirtualKeyDown(18, true) -- альт нажимается
            wait(100) -- 100 мс ждёт
            setVirtualKeyDown(18, false)
            end)
        end
    end
end
 

ht-

Потрачен
Автор темы
52
4
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
а:
local sampev = require 'lib.samp.events'

function main()
    while not isSampAvailable() do wait(0) end
    while true do
        wait(0)
       
    end
end




function sampev.onServerMessage(color, text)
    if active and text:find('%w+_%w+%[%d+] говорит:(.*)') then
        local nick = text:match('%w+_%w+')
        local message = text:match('скат')
        local full = text:match('(.*)')
        sampAddChatMessage(full, color)
        if message == 'test' then
            lua_thread.create(function() --  создаётся поток для wait вне main
            setVirtualKeyDown(18, true) -- альт нажимается
            wait(100) -- 100 мс ждёт
            setVirtualKeyDown(18, false)
            end)
        end
    end
end
всё равно не работает
 

ht-

Потрачен
Автор темы
52
4
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.

XRLM

Известный
2,541
860
а:
local sampev = require 'lib.samp.events'

function main()
    while not isSampAvailable() do wait(0) end
    while true do
        wait(0)
     
    end
end




function sampev.onServerMessage(color, text)
    if text:find('%w+_%w+%[%d+] говорит:(.*)') then
        local nick = text:match('%w+_%w+')
        local message = text:match('test')
        local full = text:match('(.*)')
        sampAddChatMessage(full, color)
        if message == 'test' then
            lua_thread.create(function() --  создаётся поток для wait вне main
            setVirtualKeyDown(18, true) -- альт нажимается
            wait(100) -- 100 мс ждёт
            setVirtualKeyDown(18, false)
            end)
        end
    end
end
зачем мейн тут?
 
  • Клоун
Реакции: Air_Official
Статус
В этой теме нельзя размещать новые ответы.