LUA Сообщения

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

ht-

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

MLycoris

На вид оружие массового семяизвержения
Проверенный
1,992
2,186
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

R&B-baby-queen
Модератор
5,589
3,893
Хочу разобраться, чтобы при слове 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

Известный
390
130
не работает


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

Известный
390
130
а:
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

Против ветра рождённый
Проверенный
1,508
1,074
а:
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
Статус
В этой теме нельзя размещать новые ответы.