- Версия MoonLoader
- Другое
Здравствуйте, Гигачады БластХака. Подскажите юному чайнику, почему в "прекрасном" скрипте не читается кириллица с u8 в кнопках (без u8 ворк), а если использовать sampSendChat и другое взаемодействие с текстом на сервере, то вообще никак. Писал если что для monetloader на мобилке. (Если много ошибок не бейте пж). Заранее спасибо.
Шедеврокод в спойлере
Шедеврокод в спойлере
local imgui = require 'mimgui'
local encoding = require 'encoding'
encoding.default = 'CP1251'
local http = require("socket.http")
local ltn12 = require("ltn12")
local imgui = require 'mimgui'
local ffi = require 'ffi'
local inicfg = require("inicfg")
local faicons = require('fAwesome6')
local sampev = require('lib.samp.events')
local u8 = encoding.UTF8
local inicfg = require 'inicfg'
local ffi = require 'ffi'
local new = imgui.new
local MainWindow = new.bool()
local ArmourWindow = imgui.new.bool()
local checkboxon = new.bool(true)
local armour = new.bool()
local radioStatus = false
imgui.OnInitialize(function()
theme()
end)
local resX, resY = getScreenResolution()
imgui.OnFrame(function() return MainWindow[0] end, function(player)
imgui.SetNextWindowPos(imgui.ImVec2(resX, resY), imgui.Cond.FirstUseEver, imgui.ImVec2(0.5, 0.5))
imgui.SetNextWindowSize(imgui.ImVec2(666, 600), imgui.Cond.FirstUseEver)
imgui.Begin("New Window", MainWindow)
if imgui.RadioButtonBool(u8'Включить армор по кнопке', radioStatus) then
radioStatus = not radioStatus
ArmourWindow[0] = not ArmourWindow[0]
end
end)
imgui.OnFrame(function() return ArmourWindow[0] end, function(player)
imgui.SetNextWindowPos(imgui.ImVec2(resX /4, resY /4), imgui.Cond.FirstUseEver, imgui.ImVec2(0.5, 0.5))
imgui.SetNextWindowSize(imgui.ImVec2(260, 135), imgui.WindowFlags.NoResize + imgui.WindowFlags.NoCollapse)
imgui.Begin("heal window", ArmourWindow)
if imgui.Button(u8'Армор', imgui.ImVec2(150, 135)) then
lua_thread.create(function()
sampSendChat("/armour")
end)
end
--imgui.SetCursorPos--(imgui.ImVec2--(110, --135))
if imgui.Button(u8'Нарко', imgui.ImVec2(150, 135)) then
lua_thread.create(function()
sampSendChat("/usedrugs 3", -1)
end)
end
imgui.End()
end)
function main()
sampRegisterChatCommand('pr', function() MainWindow[0] = not MainWindow[0] end)
wait(-1)
end
function theme()
imgui.SwitchContext()
local ImVec4 = imgui.ImVec4
imgui.GetStyle().WindowPadding = imgui.ImVec2(5, 5)
imgui.GetStyle().FramePadding = imgui.ImVec2(5, 5)
imgui.GetStyle().ItemSpacing = imgui.ImVec2(5, 5)
imgui.GetStyle().ItemInnerSpacing = imgui.ImVec2(2, 2)
imgui.GetStyle().TouchExtraPadding = imgui.ImVec2(0, 0)
imgui.GetStyle().IndentSpacing = 0
imgui.GetStyle().ScrollbarSize = 10
imgui.GetStyle().GrabMinSize = 10
imgui.GetStyle().WindowBorderSize = 1
imgui.GetStyle().ChildBorderSize = 1
imgui.GetStyle().PopupBorderSize = 1
imgui.GetStyle().FrameBorderSize = 1
imgui.GetStyle().TabBorderSize = 1
imgui.GetStyle().WindowRounding = 8
imgui.GetStyle().ChildRounding = 8
imgui.GetStyle().FrameRounding = 8
imgui.GetStyle().PopupRounding = 8
imgui.GetStyle().ScrollbarRounding = 8
imgui.GetStyle().GrabRounding = 8
imgui.GetStyle().TabRounding = 8
imgui.GetStyle().Colors[imgui.Col.Text] = ImVec4(1.00, 1.00, 1.00, 1.00);
imgui.GetStyle().Colors[imgui.Col.TextDisabled] = ImVec4(1.00, 1.00, 1.00, 0.43);
imgui.GetStyle().Colors[imgui.Col.WindowBg] = ImVec4(0.00, 0.00, 0.00, 0.90);
imgui.GetStyle().Colors[imgui.Col.ChildBg] = ImVec4(0.05, 0.33, 0.65, 1.00);
imgui.GetStyle().Colors[imgui.Col.PopupBg] = ImVec4(0.00, 0.00, 0.00, 0.94);
imgui.GetStyle().Colors[imgui.Col.Border] = ImVec4(1.00, 1.00, 1.00, 0.00);
imgui.GetStyle().Colors[imgui.Col.BorderShadow] = ImVec4(1.00, 0.00, 0.00, 0.32);
imgui.GetStyle().Colors[imgui.Col.FrameBg] = ImVec4(1.00, 1.00, 1.00, 0.09);
imgui.GetStyle().Colors[imgui.Col.FrameBgHovered] = ImVec4(1.00, 1.00, 1.00, 0.17);
imgui.GetStyle().Colors[imgui.Col.FrameBgActive] = ImVec4(1.00, 1.00, 1.00, 0.26);
imgui.GetStyle().Colors[imgui.Col.TitleBg] = ImVec4(0.19, 0.00, 0.00, 1.00);
imgui.GetStyle().Colors[imgui.Col.TitleBgActive] = ImVec4(0.46, 0.00, 0.00, 1.00);
imgui.GetStyle().Colors[imgui.Col.TitleBgCollapsed] = ImVec4(0.20, 0.00, 0.00, 1.00);
imgui.GetStyle().Colors[imgui.Col.MenuBarBg] = ImVec4(0.14, 0.03, 0.03, 1.00);
imgui.GetStyle().Colors[imgui.Col.ScrollbarBg] = ImVec4(0.19, 0.00, 0.00, 0.53);
imgui.GetStyle().Colors[imgui.Col.ScrollbarGrab] = ImVec4(1.00, 1.00, 1.00, 0.11);
imgui.GetStyle().Colors[imgui.Col.ScrollbarGrabHovered] = ImVec4(1.00, 1.00, 1.00, 0.24);
imgui.GetStyle().Colors[imgui.Col.ScrollbarGrabActive] = ImVec4(1.00, 1.00, 1.00, 0.35);
imgui.GetStyle().Colors[imgui.Col.CheckMark] = ImVec4(1.00, 1.00, 1.00, 1.00);
imgui.GetStyle().Colors[imgui.Col.SliderGrab] = ImVec4(1.00, 0.00, 0.00, 0.34);
imgui.GetStyle().Colors[imgui.Col.SliderGrabActive] = ImVec4(1.00, 0.00, 0.00, 0.51);
imgui.GetStyle().Colors[imgui.Col.Button] = ImVec4(1.00, 0.00, 0.00, 0.19);
imgui.GetStyle().Colors[imgui.Col.ButtonHovered] = ImVec4(1.00, 0.00, 0.00, 0.31);
imgui.GetStyle().Colors[imgui.Col.ButtonActive] = ImVec4(1.00, 0.00, 0.00, 0.46);
imgui.GetStyle().Colors[imgui.Col.Header] = ImVec4(1.00, 0.00, 0.00, 0.19);
imgui.GetStyle().Colors[imgui.Col.HeaderHovered] = ImVec4(1.00, 0.00, 0.00, 0.30);
imgui.GetStyle().Colors[imgui.Col.HeaderActive] = ImVec4(1.00, 0.00, 0.00, 0.50);
imgui.GetStyle().Colors[imgui.Col.Separator] = ImVec4(1.00, 0.00, 0.00, 0.41);
imgui.GetStyle().Colors[imgui.Col.SeparatorHovered] = ImVec4(1.00, 1.00, 1.00, 0.78);
imgui.GetStyle().Colors[imgui.Col.SeparatorActive] = ImVec4(1.00, 1.00, 1.00, 1.00);
imgui.GetStyle().Colors[imgui.Col.ResizeGrip] = ImVec4(0.19, 0.00, 0.00, 0.53);
imgui.GetStyle().Colors[imgui.Col.ResizeGripHovered] = ImVec4(0.43, 0.00, 0.00, 0.75);
imgui.GetStyle().Colors[imgui.Col.ResizeGripActive] = ImVec4(0.53, 0.00, 0.00, 0.95);
imgui.GetStyle().Colors[imgui.Col.Tab] = ImVec4(1.00, 0.00, 0.00, 0.27);
imgui.GetStyle().Colors[imgui.Col.TabHovered] = ImVec4(1.00, 0.00, 0.00, 0.48);
imgui.GetStyle().Colors[imgui.Col.TabActive] = ImVec4(1.00, 0.00, 0.00, 0.60);
imgui.GetStyle().Colors[imgui.Col.TabUnfocused] = ImVec4(1.00, 0.00, 0.00, 0.27);
imgui.GetStyle().Colors[imgui.Col.TabUnfocusedActive] = ImVec4(1.00, 0.00, 0.00, 0.54);
imgui.GetStyle().Colors[imgui.Col.PlotLines] = ImVec4(0.61, 0.61, 0.61, 1.00);
imgui.GetStyle().Colors[imgui.Col.PlotLinesHovered] = ImVec4(1.00, 0.43, 0.35, 1.00);
imgui.GetStyle().Colors[imgui.Col.PlotHistogram] = ImVec4(0.90, 0.70, 0.00, 1.00);
imgui.GetStyle().Colors[imgui.Col.PlotHistogramHovered] = ImVec4(1.00, 0.60, 0.00, 1.00);
imgui.GetStyle().Colors[imgui.Col.TextSelectedBg] = ImVec4(1.00, 1.00, 1.00, 0.35);
imgui.GetStyle().Colors[imgui.Col.DragDropTarget] = ImVec4(1.00, 1.00, 0.00, 0.90);
imgui.GetStyle().Colors[imgui.Col.NavHighlight] = ImVec4(0.26, 0.59, 0.98, 1.00);
imgui.GetStyle().Colors[imgui.Col.NavWindowingHighlight] = ImVec4(1.00, 1.00, 1.00, 0.70);
imgui.GetStyle().Colors[imgui.Col.NavWindowingDimBg] = ImVec4(0.80, 0.80, 0.80, 0.20);
imgui.GetStyle().Colors[imgui.Col.ModalWindowDimBg] = ImVec4(0.80, 0.80, 0.80, 0.35);
end
local encoding = require 'encoding'
encoding.default = 'CP1251'
local http = require("socket.http")
local ltn12 = require("ltn12")
local imgui = require 'mimgui'
local ffi = require 'ffi'
local inicfg = require("inicfg")
local faicons = require('fAwesome6')
local sampev = require('lib.samp.events')
local u8 = encoding.UTF8
local inicfg = require 'inicfg'
local ffi = require 'ffi'
local new = imgui.new
local MainWindow = new.bool()
local ArmourWindow = imgui.new.bool()
local checkboxon = new.bool(true)
local armour = new.bool()
local radioStatus = false
imgui.OnInitialize(function()
theme()
end)
local resX, resY = getScreenResolution()
imgui.OnFrame(function() return MainWindow[0] end, function(player)
imgui.SetNextWindowPos(imgui.ImVec2(resX, resY), imgui.Cond.FirstUseEver, imgui.ImVec2(0.5, 0.5))
imgui.SetNextWindowSize(imgui.ImVec2(666, 600), imgui.Cond.FirstUseEver)
imgui.Begin("New Window", MainWindow)
if imgui.RadioButtonBool(u8'Включить армор по кнопке', radioStatus) then
radioStatus = not radioStatus
ArmourWindow[0] = not ArmourWindow[0]
end
end)
imgui.OnFrame(function() return ArmourWindow[0] end, function(player)
imgui.SetNextWindowPos(imgui.ImVec2(resX /4, resY /4), imgui.Cond.FirstUseEver, imgui.ImVec2(0.5, 0.5))
imgui.SetNextWindowSize(imgui.ImVec2(260, 135), imgui.WindowFlags.NoResize + imgui.WindowFlags.NoCollapse)
imgui.Begin("heal window", ArmourWindow)
if imgui.Button(u8'Армор', imgui.ImVec2(150, 135)) then
lua_thread.create(function()
sampSendChat("/armour")
end)
end
--imgui.SetCursorPos--(imgui.ImVec2--(110, --135))
if imgui.Button(u8'Нарко', imgui.ImVec2(150, 135)) then
lua_thread.create(function()
sampSendChat("/usedrugs 3", -1)
end)
end
imgui.End()
end)
function main()
sampRegisterChatCommand('pr', function() MainWindow[0] = not MainWindow[0] end)
wait(-1)
end
function theme()
imgui.SwitchContext()
local ImVec4 = imgui.ImVec4
imgui.GetStyle().WindowPadding = imgui.ImVec2(5, 5)
imgui.GetStyle().FramePadding = imgui.ImVec2(5, 5)
imgui.GetStyle().ItemSpacing = imgui.ImVec2(5, 5)
imgui.GetStyle().ItemInnerSpacing = imgui.ImVec2(2, 2)
imgui.GetStyle().TouchExtraPadding = imgui.ImVec2(0, 0)
imgui.GetStyle().IndentSpacing = 0
imgui.GetStyle().ScrollbarSize = 10
imgui.GetStyle().GrabMinSize = 10
imgui.GetStyle().WindowBorderSize = 1
imgui.GetStyle().ChildBorderSize = 1
imgui.GetStyle().PopupBorderSize = 1
imgui.GetStyle().FrameBorderSize = 1
imgui.GetStyle().TabBorderSize = 1
imgui.GetStyle().WindowRounding = 8
imgui.GetStyle().ChildRounding = 8
imgui.GetStyle().FrameRounding = 8
imgui.GetStyle().PopupRounding = 8
imgui.GetStyle().ScrollbarRounding = 8
imgui.GetStyle().GrabRounding = 8
imgui.GetStyle().TabRounding = 8
imgui.GetStyle().Colors[imgui.Col.Text] = ImVec4(1.00, 1.00, 1.00, 1.00);
imgui.GetStyle().Colors[imgui.Col.TextDisabled] = ImVec4(1.00, 1.00, 1.00, 0.43);
imgui.GetStyle().Colors[imgui.Col.WindowBg] = ImVec4(0.00, 0.00, 0.00, 0.90);
imgui.GetStyle().Colors[imgui.Col.ChildBg] = ImVec4(0.05, 0.33, 0.65, 1.00);
imgui.GetStyle().Colors[imgui.Col.PopupBg] = ImVec4(0.00, 0.00, 0.00, 0.94);
imgui.GetStyle().Colors[imgui.Col.Border] = ImVec4(1.00, 1.00, 1.00, 0.00);
imgui.GetStyle().Colors[imgui.Col.BorderShadow] = ImVec4(1.00, 0.00, 0.00, 0.32);
imgui.GetStyle().Colors[imgui.Col.FrameBg] = ImVec4(1.00, 1.00, 1.00, 0.09);
imgui.GetStyle().Colors[imgui.Col.FrameBgHovered] = ImVec4(1.00, 1.00, 1.00, 0.17);
imgui.GetStyle().Colors[imgui.Col.FrameBgActive] = ImVec4(1.00, 1.00, 1.00, 0.26);
imgui.GetStyle().Colors[imgui.Col.TitleBg] = ImVec4(0.19, 0.00, 0.00, 1.00);
imgui.GetStyle().Colors[imgui.Col.TitleBgActive] = ImVec4(0.46, 0.00, 0.00, 1.00);
imgui.GetStyle().Colors[imgui.Col.TitleBgCollapsed] = ImVec4(0.20, 0.00, 0.00, 1.00);
imgui.GetStyle().Colors[imgui.Col.MenuBarBg] = ImVec4(0.14, 0.03, 0.03, 1.00);
imgui.GetStyle().Colors[imgui.Col.ScrollbarBg] = ImVec4(0.19, 0.00, 0.00, 0.53);
imgui.GetStyle().Colors[imgui.Col.ScrollbarGrab] = ImVec4(1.00, 1.00, 1.00, 0.11);
imgui.GetStyle().Colors[imgui.Col.ScrollbarGrabHovered] = ImVec4(1.00, 1.00, 1.00, 0.24);
imgui.GetStyle().Colors[imgui.Col.ScrollbarGrabActive] = ImVec4(1.00, 1.00, 1.00, 0.35);
imgui.GetStyle().Colors[imgui.Col.CheckMark] = ImVec4(1.00, 1.00, 1.00, 1.00);
imgui.GetStyle().Colors[imgui.Col.SliderGrab] = ImVec4(1.00, 0.00, 0.00, 0.34);
imgui.GetStyle().Colors[imgui.Col.SliderGrabActive] = ImVec4(1.00, 0.00, 0.00, 0.51);
imgui.GetStyle().Colors[imgui.Col.Button] = ImVec4(1.00, 0.00, 0.00, 0.19);
imgui.GetStyle().Colors[imgui.Col.ButtonHovered] = ImVec4(1.00, 0.00, 0.00, 0.31);
imgui.GetStyle().Colors[imgui.Col.ButtonActive] = ImVec4(1.00, 0.00, 0.00, 0.46);
imgui.GetStyle().Colors[imgui.Col.Header] = ImVec4(1.00, 0.00, 0.00, 0.19);
imgui.GetStyle().Colors[imgui.Col.HeaderHovered] = ImVec4(1.00, 0.00, 0.00, 0.30);
imgui.GetStyle().Colors[imgui.Col.HeaderActive] = ImVec4(1.00, 0.00, 0.00, 0.50);
imgui.GetStyle().Colors[imgui.Col.Separator] = ImVec4(1.00, 0.00, 0.00, 0.41);
imgui.GetStyle().Colors[imgui.Col.SeparatorHovered] = ImVec4(1.00, 1.00, 1.00, 0.78);
imgui.GetStyle().Colors[imgui.Col.SeparatorActive] = ImVec4(1.00, 1.00, 1.00, 1.00);
imgui.GetStyle().Colors[imgui.Col.ResizeGrip] = ImVec4(0.19, 0.00, 0.00, 0.53);
imgui.GetStyle().Colors[imgui.Col.ResizeGripHovered] = ImVec4(0.43, 0.00, 0.00, 0.75);
imgui.GetStyle().Colors[imgui.Col.ResizeGripActive] = ImVec4(0.53, 0.00, 0.00, 0.95);
imgui.GetStyle().Colors[imgui.Col.Tab] = ImVec4(1.00, 0.00, 0.00, 0.27);
imgui.GetStyle().Colors[imgui.Col.TabHovered] = ImVec4(1.00, 0.00, 0.00, 0.48);
imgui.GetStyle().Colors[imgui.Col.TabActive] = ImVec4(1.00, 0.00, 0.00, 0.60);
imgui.GetStyle().Colors[imgui.Col.TabUnfocused] = ImVec4(1.00, 0.00, 0.00, 0.27);
imgui.GetStyle().Colors[imgui.Col.TabUnfocusedActive] = ImVec4(1.00, 0.00, 0.00, 0.54);
imgui.GetStyle().Colors[imgui.Col.PlotLines] = ImVec4(0.61, 0.61, 0.61, 1.00);
imgui.GetStyle().Colors[imgui.Col.PlotLinesHovered] = ImVec4(1.00, 0.43, 0.35, 1.00);
imgui.GetStyle().Colors[imgui.Col.PlotHistogram] = ImVec4(0.90, 0.70, 0.00, 1.00);
imgui.GetStyle().Colors[imgui.Col.PlotHistogramHovered] = ImVec4(1.00, 0.60, 0.00, 1.00);
imgui.GetStyle().Colors[imgui.Col.TextSelectedBg] = ImVec4(1.00, 1.00, 1.00, 0.35);
imgui.GetStyle().Colors[imgui.Col.DragDropTarget] = ImVec4(1.00, 1.00, 0.00, 0.90);
imgui.GetStyle().Colors[imgui.Col.NavHighlight] = ImVec4(0.26, 0.59, 0.98, 1.00);
imgui.GetStyle().Colors[imgui.Col.NavWindowingHighlight] = ImVec4(1.00, 1.00, 1.00, 0.70);
imgui.GetStyle().Colors[imgui.Col.NavWindowingDimBg] = ImVec4(0.80, 0.80, 0.80, 0.20);
imgui.GetStyle().Colors[imgui.Col.ModalWindowDimBg] = ImVec4(0.80, 0.80, 0.80, 0.35);
end