Помогите lua flooder

Mateo_Crus

Известный
Автор темы
21
4
Ищу луа флудер в диалоговое окно комбинаций чисел от 0000 до 9999 с задкржкой 2000, а лучше просто настраиваемий флудер чтоби я мог поделить на 10 блоков по 1000 тип первий флудит каждие 2 секунди числа от 0000 до 1000 потом включаешь воторой он флудит от 1000 до 2000
Хотелось би чтоби еще обьяснили как добавить переменнию правельного ответа в диалог чтоби она в чат виводилась
11111:
script_name('FlooderDialog')
script_version('1.1')
script_author('Ваше Имя')

local vk = require 'vkeys'

-- Настройки
local messages = {}
local delay = 1000 -- Задержка между сообщениями в миллисекундах
local flood_active = false -- Флаг активности флуда
local current_message_index = 1 -- Индекс текущего сообщения

-- Генерация комбинаций от 0000 до 9999 и их разделение на блоки
local function generateMessages()
    local blocks = {}
    for i = 0, 9999 do
        local block_index = math.floor(i / 1000) + 1
        blocks[block_index] = blocks[block_index] or {}
        table.insert(blocks[block_index], string.format("%04d", i))
    end
    return blocks
end

local blocks = generateMessages()

-- Обработчик нажатий Numpad1-Numpad9 для активации блоков
function onKeyPress(key)
    if key >= vk.NUMPAD1 and key <= vk.NUMPAD9 then
        local block_index = key - vk.NUMPAD1 + 1
        if blocks[block_index] then
            messages = blocks[block_index]
            sampAddChatMessage("Активация блока " .. block_index .. ", сообщения готовы к отправке.", 0x00FF00)
        else
            sampAddChatMessage("Нет данных для данного блока.", 0xFF0000)
        end
    end
end

-- Функция для отправки текста в диалоговое окно
function sendMessageToDialog()
    if flood_active and #messages > 0 then
        local message = messages[current_message_index]
        current_message_index = current_message_index % #messages + 1 -- Переход к следующему сообщению

        -- Ввод текста в диалоговое окно
        lua_thread.create(function()
            for i = 1, #message do
                local char = message:sub(i, i) -- Берём символ
                local vkCode = vk[char:upper()] or char:byte() -- Получаем код клавиши
                sampSendKeyPress(vkCode) -- Эмулируем нажатие клавиши
                wait(50) -- Небольшая задержка между вводом символов
            end

            -- Нажатие Enter
            sampSendKeyPress(vk.RETURN)
            wait(delay) -- Задержка между сообщениями
            sendMessageToDialog() -- Рекурсия для следующего сообщения
        end)
    else
        sampAddChatMessage("Флуд остановлен или нет активных сообщений.", 0xFFFF00)
    end
end

-- Основной обработчик команд
function onServerCommand(commandText)
    if commandText == "/startflood" then
        if not flood_active then
            flood_active = true
            current_message_index = 1
            sampAddChatMessage("Флудер для диалогов активирован.", 0x00FF00)
            sendMessageToDialog()
        else
            sampAddChatMessage("Флудер уже работает.", 0xFFFF00)
        end
        return false
    elseif commandText == "/stopflood" then
        if flood_active then
            flood_active = false
            sampAddChatMessage("Флудер остановлен.", 0xFF0000)
        else
            sampAddChatMessage("Флудер не активен.", 0xFFFF00)
        end
        return false
    end
    return true
end

-- Подключение обработчика клавиш
function main()
    while true do
        wait(0)
        for key = vk.NUMPAD1, vk.NUMPAD9 do
            if isKeyJustPressed(key) then
                onKeyPress(key)
            end
        end
    end
end
 
Последнее редактирование: