Помогите, скрипт не работает

LumpamPam

Новичок
Автор темы
9
1
Версия MoonLoader
.026-beta
Lua:
function sampev.onServerMessage(color, text)
    if text:find('[A] .+[(%d+)%] написал игроку Sled_Man') then
        local nick, id = text:match('[A] (.+)[(%d+)%] написал игроку Sled_Man')
        if nick:find('Sled_Min') then
            lua_thread.create(function() wait(3000)
                while true do
                    math.randomseed(os.time())
                    local ans = math.random(1, 5)
                    if ans == 1 then
                        sampSendChat('/pm '..id..' 0 тут')
                    elseif ans == 2 then
                        sampSendChat('/pm '..id..' 0 да')
                    elseif ans == 3 then
                        sampSendChat('/pm '..id..' 0 угу')
                    elseif ans == 4 then
                        sampSendChat('/pm '..id..' 0 +')
                    elseif ans == 5 then
                        sampSendChat('/pm '..id..' 0 ага')
                    end
                end
            end)
        end
    end
end

Идея так, чтобы когда мне пишет администратор определенный, что либо, я должен ему ответить в /pm "да, +, угу, ага, тут"
 

chromiusj

Известный
Модератор
5,654
3,958
а зачем это в цикл?
Lua:
local sampev = require('lib.samp.events')
function sampev.onServerMessage(color, text)
    local nick, id = text:match('%[A%] (.+)%[(%d+)%] написал игроку Sled_Man')
    if nick and nick:find('Sled_Min') then
        local ans = math.random(1, 5)
        sampSendChat('/pm '..id..' 0 '..({
            [1] = 'тут',
            [2] = 'да',
            [3] = 'угу',
            [4] = '+',
            [5] = 'ага'
        })[ans])
    end
end
1707250925208.png
 

vlaDICK2288

Активный
143
43
А как сделать задержку в сообщениях, чтобы ответ был не сразу, а через 2 секунды?

И как сделать для разных людей, не только для Sled_Min
lua:
local sampev = require('lib.samp.events')
function sampev.onServerMessage(color, text)
    local nickadm, id, nick1 = text:match('%[A%] (.+)%[(%d+)%] написал игроку (.+)')
    local nick2 = sampGetPlayerNickname(select(2, sampGetPlayerIdByCharHandle(playerPed)))
    if nick1 == nick2 then
        local ans = math.random(1, 5)
        local time = math.random(1000, 5000)
        wait(time)
        sampSendChat('/pm '..id..' 0 '..({
            [1] = 'тут',
            [2] = 'да',
            [3] = 'угу',
            [4] = '+',
            [5] = 'ага'
        })[ans])
    end
end
Поидее так