- 89
- 12
- Версия MoonLoader
- .026-beta
Приветствую, желаю сделать себе скрипт который будет мне на экран выводить игроков которые находятся в /wanted 1, для начала хочу разобраться с первым вантедом, а далее сделать пробив с 1-7.
Но столкнулся с проблемой что никогда не делал ничего с парсингом данных из диалоговых окон и тем более с renderFontDrawText, хотя с ним разобрался и вывел себе надпись.
Но с горя пополам получилось сделать что бы отображало инфу с /wanted 1, но никак не разберусь с тем что окно само открывается каждые 15 секунд, а хотелось бы что бы я его не видел. Получалось делать что то такое но потом я не мог самостоятельно проверять /wanted 1, и даже некоторые другие диалоговые окна, даже окно авторизации не открывалось и тд.
Вообщем я запутался
Но столкнулся с проблемой что никогда не делал ничего с парсингом данных из диалоговых окон и тем более с renderFontDrawText, хотя с ним разобрался и вывел себе надпись.
Но с горя пополам получилось сделать что бы отображало инфу с /wanted 1, но никак не разберусь с тем что окно само открывается каждые 15 секунд, а хотелось бы что бы я его не видел. Получалось делать что то такое но потом я не мог самостоятельно проверять /wanted 1, и даже некоторые другие диалоговые окна, даже окно авторизации не открывалось и тд.
Вообщем я запутался
код:
local sampev = require 'lib.samp.events'
local font_flag = require('moonloader').font_flag
local my_font = renderCreateFont("Arial", 10, font_flag.BOLD)
local wanted = false
local wanted_players = {}
local page = 1
function main()
repeat wait(100) until isSampAvailable()
sampRegisterChatCommand("showwanted", function()
wanted = not wanted
sampAddChatMessage("{A598EB}Мониторинг розыска: " .. (wanted and "{28FF2B}включен" or "{FF2B2B}отключен"), -1)
if wanted then
lua_thread.create(function()
while wanted do
sampSendChat("/wanted 1")
wait(15000)
end
end)
end
end)
while true do
wait(0)
if wanted then
renderFontDrawText(my_font, "Игроки в розыске:", 10, 400, 0xFFFFFFFF)
for i, line in ipairs(wanted_players) do
renderFontDrawText(my_font, line, 10, 400 + 15 * i, 0xFFFFFFFF)
end
end
end
end
function sampev.onShowDialog(dialogId, style, title, b1, b2, text)
if wanted and text:find("Уровень розыска") then
wanted_players = {}
text = text:gsub("{.-}", "")
text = text:gsub("Ник%s+Уровень розыска%s+Расстояние\n", "")
for line in text:gmatch("[^\n]+") do
table.insert(wanted_players, line)
end
return true
end
return false
end