slot0 = require("mimgui")
-- slot1 = require("ffi")
-- slot2 = slot0.new
-- slot3 = slot2.bool(false)
-- slot4 = "Chat_Recolorer_FZ"
-- slot5 = require("inicfg")
-- slot7 = {
-- Colores = {
-- bdp = -1,
-- tbfp = "{FF9900}",
-- bfp = "{FFFFFF}",
-- p = 869046698,
-- N = "{009966}",
-- lcmds = -6750038,
-- tN = "{009999}",
-- mud = -1439485014,
-- g = -421075226,
-- sms = -625262934,
-- b = -421075226,
-- y = 869046698,
-- dp = -421075226
-- },
-- Settings = {
-- bdp = false,
-- bfp = false,
-- cmd = false,
-- sms = false,
-- N = false,
-- b = false,
-- cmdMenu = "cr",
-- mud = false,
-- g = false,
-- rol = false,
-- dp = false
-- }
-- }
-- slot6 = slot5.load(slot7, slot4)
-- slot5.save(slot6, slot4)
-- function main()
-- repeat
-- wait(0)
-- until isSampAvailable()
-- repeat
-- wait(0)
-- until sampIsLocalPlayerSpawned()
-- if not sampGetCurrentServerName():match("FZ Roleplay") then
-- thisScript():unload()
-- else
-- sampRegisterChatCommand(uv0.Settings.cmdMenu, function ()
-- uv0[0] = not uv0[0]
-- end)
-- end
-- wait(-1)
-- end
-- slot7 = require("fAwesome5")
-- slot0.OnInitialize(function ()
-- slot0 = uv0.ImFontConfig()
-- slot0.MergeMode = true
-- slot0.PixelSnapH = true
-- uv0.GetIO().Fonts:AddFontFromFileTTF("moonloader/lib/fa-solid-900.ttf", 11, slot0, uv1.ImWchar[3](uv2.min_range, uv2.max_range, 0))
-- uv0.SwitchContext()
-- slot2 = uv0.GetStyle()
-- slot3 = slot2.Colors
-- slot4 = uv0.Col
-- slot5 = uv0.ImVec4
-- slot2.WindowRounding = 9
-- slot2.WindowTitleAlign = uv0.ImVec2(0.5, 0.5)
-- slot2.ScrollbarSize = 13
-- slot2.FrameRounding = 6
-- slot3[slot4.Text] = slot5(0.95, 0.96, 0.98, 1)
-- slot3[slot4.TextDisabled] = slot5(0.36, 0.42, 0.47, 1)
-- slot3[slot4.PopupBg] = slot5(0.08, 0.08, 0.08, 0.94)
-- slot3[slot4.Border] = slot5(0.43, 0.43, 0.5, 0.5)
-- slot3[slot4.BorderShadow] = slot5(0, 0, 0, 0)
-- slot3[slot4.TitleBg] = slot5(0.09, 0.12, 0.14, 0.65)
-- slot3[slot4.TitleBgCollapsed] = slot5(0, 0, 0, 0.51)
-- slot3[slot4.TitleBgActive] = slot5(0.2, 0.25, 1.29, 1)
-- slot3[slot4.MenuBarBg] = slot5(0.15, 0.18, 0.22, 1)
-- slot3[slot4.ScrollbarBg] = slot5(0.02, 0.02, 0.02, 0.39)
-- slot3[slot4.ScrollbarGrab] = slot5(0.2, 0.25, 1.29, 1)
-- slot3[slot4.ScrollbarGrabHovered] = slot5(0.2, 0.25, 1.29, 1)
-- slot3[slot4.ScrollbarGrabActive] = slot5(0.2, 0.25, 1.29, 1)
-- slot3[slot4.CheckMark] = slot5(0.28, 0.56, 1, 1)
-- slot3[slot4.SliderGrab] = slot5(0.28, 0.56, 1, 1)
-- slot3[slot4.SliderGrabActive] = slot5(0.37, 0.61, 1, 1)
-- slot3[slot4.ButtonHovered] = slot5(0.2, 0.25, 1.29, 1)
-- slot3[slot4.Header] = slot5(0.2, 0.25, 0.29, 0.55)
-- slot3[slot4.HeaderHovered] = slot5(0.26, 0.59, 0.98, 0.8)
-- slot3[slot4.HeaderActive] = slot5(0.26, 0.59, 0.98, 1)
-- slot3[slot4.ResizeGrip] = slot5(0.26, 0.59, 0.98, 0.25)
-- slot3[slot4.ResizeGripHovered] = slot5(0.26, 0.59, 0.98, 0.67)
-- slot3[slot4.ResizeGripActive] = slot5(0.06, 0.05, 0.07, 1)
-- slot3[slot4.PlotLines] = slot5(0.61, 0.61, 0.61, 1)
-- slot3[slot4.PlotLinesHovered] = slot5(1, 0.43, 0.35, 1)
-- slot3[slot4.PlotHistogram] = slot5(0.9, 0.7, 0, 1)
-- slot3[slot4.PlotHistogramHovered] = slot5(1, 0.6, 0, 1)
-- slot3[slot4.TextSelectedBg] = slot5(0.2, 0.25, 1.29, 1)
-- end)
-- function slot8(slot0)
-- return string.format("{%.2x%.2x%.2x}", math.floor(slot0[0] * 255), math.floor(slot0[1] * 255), math.floor(slot0[2] * 255))
-- end
-- function slot9(slot0, slot1, slot2, slot3)
-- return bit.bor(bit.bor(bit.bor(slot4, bit.lshift(slot2, 8)), bit.lshift(slot1, 16)), bit.lshift(slot0, 24))
-- end
-- function slot10(slot0, slot1)
-- sampAddChatMessage(slot0, tonumber("0xFF" .. string.format("%.2x%.2x%.2x", math.floor(slot1[0] * 255), math.floor(slot1[1] * 255), math.floor(slot1[2] * 255))))
-- end
-- function slot11(slot0)
-- return bit.band(bit.rshift(slot0, 24), 255) / 255, bit.band(bit.rshift(slot0, 16), 255) / 255, bit.band(bit.rshift(slot0, 8), 255) / 255, bit.band(slot0, 255) / 255
-- end
-- function slot12(slot0)
-- slot1 = slot0.gsub(slot2, "#", ""):gsub("{", ""):gsub("}", "")
-- return tonumber("0x" .. slot1:sub(1, 2)) / 255, tonumber("0x" .. slot1:sub(3, 4)) / 255, tonumber("0x" .. slot1:sub(5, 6)) / 255
-- end
-- slot13 = {
-- tN = slot2.float[3](0, 0, 0),
-- N = slot2.float[3](0, 0, 0),
-- y = slot2.float[3](0, 0, 0),
-- p = slot2.float[3](0, 0, 0),
-- tb = slot2.float[3](0, 0, 0),
-- bfp = slot2.float[3](0, 0, 0),
-- bdp = slot2.float[3](0, 0, 0),
-- cmds = slot2.float[3](0, 0, 0),
-- mud = slot2.float[3](0, 0, 0),
-- msj = slot2.float[3](0, 0, 0),
-- dp = slot2.float[3](0, 0, 0),
-- g = slot2.float[3](0, 0, 0),
-- b = slot2.float[3](0, 0, 0)
-- }
-- slot14 = {
-- dp = slot2.bool(slot6.Settings.dp),
-- g = slot2.bool(slot6.Settings.g),
-- N = slot2.bool(slot6.Settings.N),
-- rol = slot2.bool(slot6.Settings.rol),
-- bfp = slot2.bool(slot6.Settings.bfp),
-- bdp = slot2.bool(slot6.Settings.bdp),
-- cmd = slot2.bool(slot6.Settings.cmd),
-- mud = slot2.bool(slot6.Settings.mud),
-- sms = slot2.bool(slot6.Settings.sms),
-- b = slot2.bool(slot6.Settings.b)
-- }
-- function ()
-- uv0.tb[0], uv0.tb[1], uv0.tb[2] = uv1(uv2.Colores.tbfp)
-- uv0.bfp[0], uv0.bfp[1], uv0.bfp[2] = uv1(uv2.Colores.bfp)
-- uv0.bdp[0], uv0.bdp[1], uv0.bdp[2] = uv3(uv2.Colores.bdp)
-- uv0.tN[0], uv0.tN[1], uv0.tN[2] = uv1(uv2.Colores.N)
-- uv0.N[0], uv0.N[1], uv0.N[2] = uv1(uv2.Colores.tN)
-- uv0.dp[0], uv0.dp[1], uv0.dp[2] = uv3(uv2.Colores.dp)
-- uv0.g[0], uv0.g[1], uv0.g[2] = uv3(uv2.Colores.g)
-- uv0.y[0], uv0.y[1], uv0.y[2] = uv3(uv2.Colores.y)
-- uv0.p[0], uv0.p[1], uv0.p[2] = uv3(uv2.Colores.p)
-- uv0.cmds[0], uv0.cmds[1], uv0.cmds[2] = uv3(uv2.Colores.lcmds)
-- uv0.mud[0], uv0.mud[1], uv0.mud[2] = uv3(uv2.Colores.mud)
-- uv0.msj[0], uv0.msj[1], uv0.msj[2] = uv3(uv2.Colores.sms)
-- uv0.b[0], uv0.b[1], uv0.b[2] = uv3(uv2.Colores.b)
-- end()
-- slot0.OnFrame(function ()
-- return uv0[0]
-- end, function (slot0)
-- slot1, slot2 = getScreenResolution()
-- uv0.SetNextWindowPos(uv0.ImVec2(slot1 / 2, slot2 / 2), uv0.Cond.FirstUseEver, uv0.ImVec2(0.5, 0.5))
-- uv0.SetNextWindowSize(uv0.ImVec2(220, 200), uv0.Cond.FirstUseEver)
-- uv0.Begin(uv1.ICON_FA_PAINT_BRUSH .. " Chat Recolorer", uv2, uv0.WindowFlags.NoCollapse)
-- uv0.PushItemWidth(250)
-- uv0.Text("Canal normal dp")
-- uv0.SameLine()
-- if uv0.Checkbox("##z1", uv3.dp) then
-- uv4.Settings.dp = uv3.dp[0]
-- uv5.save(uv4, uv6)
-- end
-- if uv0.ColorEdit3("##dp", uv7.dp) then
-- uv4.Colores.dp = uv8(math.floor(uv7.dp[0] * 255), math.floor(uv7.dp[1] * 255), math.floor(uv7.dp[2] * 255), 255)
-- uv5.save(uv4, uv6)
-- end
-- if uv0.Button("Probar") then
-- uv9("Chat_Recolorer dice: hola", uv7.dp)
-- end
-- uv0.SameLine()
-- if uv0.Button("Restablecer") then
-- uv4.Colores.dp = -421075226
-- uv5.save(uv4, uv6)
-- uv10()
-- end
-- uv0.Separator()
-- uv0.Text("Canal de gritar")
-- uv0.SameLine()
-- if uv0.Checkbox("##t4", uv3.g) then
-- uv4.Settings.g = uv3.g[0]
-- uv5.save(uv4, uv6)
-- end
-- if uv0.ColorEdit3("##gr", uv7.g) then
-- uv4.Colores.g = uv8(math.floor(uv7.g[0] * 255), math.floor(uv7.g[1] * 255), math.floor(uv7.g[2] * 255), 255)
-- uv5.save(uv4, uv6)
-- end
-- if uv0.Button("Probar##2") then
-- uv9("Chat_Recolorer grita: ¡hola!", uv7.g)
-- end
-- uv0.SameLine()
-- if uv0.Button("Restablecer##2") then
-- uv4.Colores.g = -421075226
-- uv5.save(uv4, uv6)
-- uv10()
-- end
-- uv0.Separator()
-- uv0.Text("Canal dudas")
-- uv0.SameLine()
-- if uv0.Checkbox("##a1", uv3.N) then
-- uv4.Settings.N = uv3.N[0]
-- uv5.save(uv4, uv6)
-- end
-- if uv0.ColorEdit3("Tag", uv7.tN) then
-- uv4.Colores.N = uv11(uv7.tN)
-- uv5.save(uv4, uv6)
-- end
-- if uv0.ColorEdit3("##ku", uv7.N) then
-- uv4.Colores.tN = uv11(uv7.N)
-- uv5.save(uv4, uv6)
-- end
-- if uv0.Button("Probar##3") then
-- uv9("(" .. uv4.Colores.N .. "Canal /n)" .. uv4.Colores.tN .. " [Nivel 7] Chat_Recolorer (9): hola", uv7.tN)
-- end
-- uv0.SameLine()
-- if uv0.Button("Restablecer##3") then
-- uv4.Colores.N = "{009966}"
-- uv4.Colores.tN = "{009999}"
-- uv5.save(uv4, uv6)
-- uv10()
-- end
-- uv0.Separator()
-- uv0.Text("Canal de Rol")
-- uv0.SameLine()
-- if uv0.Checkbox("##a2", uv3.rol) then
-- uv4.Settings.rol = uv3.rol[0]
-- uv5.save(uv4, uv6)
-- end
-- if uv0.ColorEdit3("/y", uv7.y) then
-- uv4.Colores.y = uv8(math.floor(uv7.y[0] * 255), math.floor(uv7.y[1] * 255), math.floor(uv7.y[2] * 255), 0)
-- uv5.save(uv4, uv6)
-- end
-- if uv0.ColorEdit3("/p", uv7.p) then
-- uv4.Colores.p = uv8(math.floor(uv7.p[0] * 255), math.floor(uv7.p[1] * 255), math.floor(uv7.p[2] * 255), 0)
-- uv5.save(uv4, uv6)
-- end
-- if uv0.Button("Probar##4") then
-- uv9("* Chat_Recolorer prueba", uv7.y)
-- end
-- uv0.SameLine()
-- if uv0.Button("Probar##v") then
-- uv9("* y (( Chat_R ))", uv7.p)
-- end
-- uv0.SameLine()
-- if uv0.Button("Restablecer##4") then
-- uv4.Colores.y = 869046698
-- uv4.Colores.p = 869046698
-- uv5.save(uv4, uv6)
-- uv10()
-- end
-- uv0.Separator()
-- uv0.Text("Canal !!")
-- uv0.SameLine()
-- if uv0.Checkbox("##a3", uv3.bfp) then
-- uv4.Settings.bfp = uv3.bfp[0]
-- uv5.save(uv4, uv6)
-- end
-- if uv0.ColorEdit3("Tag##b", uv7.tb) then
-- uv4.Colores.tbfp = uv11(uv7.tb)
-- uv5.save(uv4, uv6)
-- end
-- if uv0.ColorEdit3("##b", uv7.bfp) then
-- uv4.Colores.bfp = uv11(uv7.bfp)
-- uv5.save(uv4, uv6)
-- end
-- if uv0.Button("Probar##5") then
-- sampAddChatMessage(uv4.Colores.tbfp .. "[Radio]" .. uv4.Colores.bfp .. " Master - Chat_Recolorer: (( ))", -1)
-- end
-- uv0.SameLine()
-- if uv0.Button("Restablecer##5") then
-- uv4.Colores.tbfp = "{FF9900}"
-- uv4.Colores.bfp = "{FFFFFF}"
-- uv5.save(uv4, uv6)
-- uv10()
-- end
-- uv0.Separator()
-- uv0.Text("Canal !")
-- uv0.SameLine()
-- if uv0.Checkbox("##a4", uv3.bdp) then
-- uv4.Settings.bdp = uv3.bdp[0]
-- uv5.save(uv4, uv6)
-- end
-- if uv0.ColorEdit3("##bdp", uv7.bdp) then
-- uv4.Colores.bdp = uv8(math.floor(uv7.bdp[0] * 255), math.floor(uv7.bdp[1] * 255), math.floor(uv7.bdp[2] * 255), 0)
-- uv5.save(uv4, uv6)
-- end
-- if uv0.Button("Probar##6") then
-- uv9("[Radio de banda] Chat_Re dice: Hola", uv7.bdp)
-- end
-- uv0.SameLine()
-- if uv0.Button("Restablecer##6") then
-- uv4.Colores.bdp = -1
-- uv5.save(uv4, uv6)
-- uv10()
-- end
-- uv0.Separator()
-- uv0.Text("Canal /b")
-- uv0.SameLine()
-- if uv0.Checkbox("##7g", uv3.b) then
-- uv4.Settings.b = uv3.b[0]
-- uv5.save(uv4, uv6)
-- end
-- if uv0.ColorEdit3("##BFP", uv7.b) then
-- uv4.Colores.b = uv8(math.floor(uv7.b[0] * 255), math.floor(uv7.b[1] * 255), math.floor(uv7.b[2] * 255), 0)
-- uv5.save(uv4, uv6)
-- end
-- if uv0.Button("Probar##n") then
-- uv9("Chat_R: (( b ))", uv7.b)
-- end
-- uv0.SameLine()
-- if uv0.Button("Restablecer##$") then
-- uv4.Colores.b = -421075226
-- uv5.save(uv4, uv6)
-- uv10()
-- end
-- uv0.Separator()
-- uv0.Text("Limite de comandos")
-- uv0.SameLine()
-- if uv0.Checkbox("##a5", uv3.cmd) then
-- uv4.Settings.cmd = uv3.cmd[0]
-- uv5.save(uv4, uv6)
-- end
-- if uv0.ColorEdit3("##c", uv7.cmds) then
-- uv4.Colores.lcmds = uv8(math.floor(uv7.cmds[0] * 255), math.floor(uv7.cmds[1] * 255), math.floor(uv7.cmds[2] * 255), 0)
-- uv5.save(uv4, uv6)
-- end
-- if uv0.Button("Probar##7") then
-- uv9("Límite de comandos por segundo: 1", uv7.cmds)
-- end
-- uv0.SameLine()
-- if uv0.Button("Restablecer##7") then
-- uv4.Colores.lcmds = -6750038
-- uv5.save(uv4, uv6)
-- uv10()
-- end
-- uv0.Separator()
-- uv0.Text("Muteos/desmuteos/sanciones")
-- uv0.SameLine()
-- if uv0.Checkbox("##a6", uv3.mud) then
-- uv4.Settings.mud = uv3.mud[0]
-- uv5.save(uv4, uv6)
-- end
-- if uv0.ColorEdit3("##d", uv7.mud) then
-- uv4.Colores.mud = uv8(math.floor(uv7.mud[0] * 255), math.floor(uv7.mud[1] * 255), math.floor(uv7.mud[2] * 255), 0)
-- uv5.save(uv4, uv6)
-- end
-- if uv0.Button("Probar##8") then
-- uv9("A Chat_Recolorer no se le permite hablar en el chat de ayuda. Razón: Mal uso", uv7.mud)
-- end
-- uv0.SameLine()
-- if uv0.Button("Restablecer##8") then
-- uv4.Colores.mud = -1439485014
-- uv5.save(uv4, uv6)
-- uv10()
-- end
-- uv0.Separator()
-- uv0.Text("Llamadas y Mensajes")
-- uv0.SameLine()
-- if uv0.Checkbox("##a7", uv3.sms) then
-- uv4.Settings.sms = uv3.sms[0]
-- uv5.save(uv4, uv6)
-- end
-- if uv0.ColorEdit3("##e", uv7.msj) then
-- uv4.Colores.sms = uv8(math.floor(uv7.msj[0] * 255), math.floor(uv7.msj[1] * 255), math.floor(uv7.msj[2] * 255), 0)
-- uv5.save(uv4, uv6)
-- end
-- if uv0.Button("Probar##9") then
-- uv9("Chat_Recolorer (por celular) dice: hola", uv7.msj)
-- end
-- uv0.SameLine()
-- if uv0.Button("Restablecer##9") then
-- uv4.Colores.sms = -625262934
-- uv5.save(uv4, uv6)
-- uv10()
-- end
-- uv0.Text("By Jose Samp / Idea: Cleo Juli4n")
-- uv0.End()
-- end)
-- require("lib.samp.events").onServerMessage = function (slot0, slot1)
-- if slot1.match(slot3, "^%({009966}Canal %/n{009999}") and uv0.N[0] then
-- if "(" .. uv3.Colores.N .. "Canal /n" .. uv3.Colores.tN .. ")" .. slot1:sub(27) then
-- slot4 = {
-- uv1(math.floor(uv2.tN[0] * 255), math.floor(uv2.tN[1] * 255), math.floor(uv2.tN[2] * 255), 0),
-- slot3
-- }
-- return slot4
-- end
-- elseif slot0 == 869046698 and uv0.rol[0] and slot1:match("^%* .+ %(%( .+_.+ %)%)") then
-- slot2 = {
-- uv3.Colores.p,
-- slot1
-- }
-- return slot2
-- elseif slot0 == 869046698 and uv0.rol[0] and slot1:match("^%*%s.+_.+ .+") then
-- slot2 = {
-- uv3.Colores.y,
-- slot1
-- }
-- return slot2
-- elseif slot1:match("^.+_.+ dice:.+") and uv0.dp[0] and not slot1:match("%[Radio de banda%]") and slot0 ~= -625262934 then
-- slot2 = {
-- uv3.Colores.dp,
-- slot1
-- }
-- return slot2
-- elseif slot1:match("^.+_.+ grita: .+") and uv0.g[0] then
-- slot2 = {
-- uv3.Colores.g,
-- slot1
-- }
-- return slot2
-- elseif slot1:match("^{FF9900}%[Radio%]") and uv0.bfp[0] then
-- slot2 = slot1:gsub("{FF9900}", uv3.Colores.tbfp)
-- if slot2:gsub("{FFFFFF}", uv3.Colores.bfp) then
-- slot3 = {
-- slot0,
-- slot2
-- }
-- return slot3
-- end
-- elseif slot1:match("^%[Radio de banda%]") and uv0.bdp[0] then
-- slot2 = {
-- uv3.Colores.bdp,
-- slot1
-- }
-- return slot2
-- elseif slot1:match("^L.mite de comandos") and uv0.cmd[0] then
-- slot2 = {
-- uv3.Colores.lcmds,
-- slot1
-- }
-- return slot2
-- elseif slot0 == -1439485014 and uv0.mud[0] then
-- slot2 = {
-- uv3.Colores.mud,
-- slot1
-- }
-- return slot2
-- elseif slot0 == -625262934 and uv0.sms[0] then
-- slot2 = {
-- uv3.Colores.sms,
-- slot1
-- }
-- return slot2
-- elseif slot1:match("^.+_.+: %(%( .+ %)%)") then
-- slot2 = {
-- uv3.Colores.b,
-- slot1
-- }
-- return slot2
-- end
-- end