- 1,261
- 234
- Версия MoonLoader
- Другое
короче писал писал скрипт и не работает после 500 редактировании и всякой фигни.
суть скрипта в том, что он получает текст от диалога "статистика за неделю" т.е. финка бизнеса и выводит его на экран (обновляться буду делать потом наверно чтобы сам обновлялся каждые Х минут, а пока не рисует даже 1 раз...). код был взят от ТСР хелпера от Космо.
прикреплю ниже "свой" код. но мне лучше будет если скажите свои варианты как делать
суть скрипта в том, что он получает текст от диалога "статистика за неделю" т.е. финка бизнеса и выводит его на экран (обновляться буду делать потом наверно чтобы сам обновлялся каждые Х минут, а пока не рисует даже 1 раз...). код был взят от ТСР хелпера от Космо.
прикреплю ниже "свой" код. но мне лучше будет если скажите свои варианты как делать
Lua:
require "lib.moonloader"
require "lib.samp.events"
local sampev = require "lib.samp.events"
local main_color = 0x8B0000
local keys = require "vkeys"
local dFinka = {}
local showFinkaBox = false
local bizfinka = {}
local posX, posY, wBox, hBox = 1700, 300, 150, 160
local finkafont = renderCreateFont('Arial', 10, 9)
function main()
if not isSampLoaded() or not isSampfuncsLoaded() then return end
while not isSampAvailable() do wait(80) end
sampRegisterChatCommand('finkas', finkashow)
lua_thread.create(finkaBox)
--lua_thread.create(updateFinka)
while true do
wait(0)
end
end
function sampev.onShowDialog(id, style, title, button1, button2, text)
bizfinka = {}
for line in text:gmatch("[^\r\n]+") do
if line:find("(.+)\t(.+)%$") then
day, money = line:match("(.+)\t(.+)%$")
table.insert(bizfinka, {day = day, money = money})
end
end
end
--[[
function updatefinka()
while true do wait(0)
if showFinkaBox then
wait(600000)
while sampIsDialogActive() do wait(100) end
getFinka = true
lua_thread.create(function()
sampSendChat("/bizinfo")
wait(500)
sampSendDialogResponse(9761, 1, 0, false) -- dialog /bizinfo (выбрать биз)
wait(500)
sampSendDialogResponse(156, 1, 1, false) -- dialog меню выбранного бизнеса
wait(500)
sampSendDialogResponse(157, 1, 0, false) -- диалог всякой фигни для бизнеса выбирает "дополниительно" тут
wait(500)
sampSendDialogResponse(1665, 1, 2, false) -- диалог где "дополнительно" и тут выбирает "статистика за неделю"
end)
end
end
end
]]
function finkaBox()
while true do wait(100)
if showFinkaBox then
--renderDrawBoxWithBorder(posX, posY, wBox, hBox, 0x95864A00, 5, 0xFF3F1600)
for i, v in ipairs(bizfinka) do -- Всегда парсить надо
--printStyledString(v.day .. " " .. v.money, 2000, 7) -- это фигня работает, выводит все 7 дней и так бесконечно, каждую секунду, но так не надо...
renderFontDrawText(font, v.day.." "..v.money, posX + (wBox / 4), posY + 30, -1)
posY = posY + 18
end
end
end
end
function finkashow()
showFinkaBox = not showFinkaBox
--[[if showFinkaBox then
getFinka = true
lua_thread.create(function()
sampSendChat("/bizinfo")
wait(500)
sampSendDialogResponse(9761, 1, 0, false)
wait(500)
sampSendDialogResponse(156, 1, 1, false)
wait(500)
sampSendDialogResponse(157, 1, 0, false)
wait(500)
sampSendDialogResponse(1665, 1, 2, false)
end)
else
showFinkaBox = false
end]]
end