[{
	"resource": "/C:/Users/Admin/AppData/Local/Programs/Arizona Games Launcher/bin/arizona/moonloader/Z.lua",
	"owner": "glua",
	"severity": 8,
	"message": "unexpected end of input, expecting 'label', if statement, function definition, numeric for loop, generic for loop, variable definition, function call or return statement",
	"startLineNumber": 201,
	"startColumn": 4,
	"endLineNumber": 201,
	"endColumn": 4
},{
	"resource": "/C:/Users/Admin/AppData/Local/Programs/Arizona Games Launcher/bin/arizona/moonloader/Z.lua",
	"owner": "_generated_diagnostic_collection_name_#0",
	"severity": 8,
	"message": "[Warn type:1], expected end, found 'EOF'",
	"startLineNumber": 201,
	"startColumn": 4,
	"endLineNumber": 201,
	"endColumn": 4
}]
```lua
local mem = require "memory"
local imgui = require "imgui"
local encoding = require "encoding"
local events = require "lib.samp.events"
encoding.default = "CP1251"
u8 = encoding.UTF8

font = renderCreateFont("Century Gothic", 9, 5)

local button4 = imgui.ImBool()
local button5 = imgui.ImBool()
local cjtrue = true
local cjfalse = false
local infinityruntrue = true
local infinityrunfalse = false
local work = imgui.ImBool(false)
local render = imgui.ImBool(false)
local infinityrun = imgui.ImBool(false)
local cj = imgui.ImBool(false)

function main()
	repeat wait(0) until isSampAvailable()
	wait(100)
	sampRegisterChatCommand("shachta", menu_imgui)

	while true do
	wait(0)

    if render.v then
        local playerPosX, playerPosY, playerPosZ = getCharCoordinates(PLAYER_PED) -- Получаем координаты игрока один раз
        local screenX, screenY
        
        for id = 0, 2048 do
            if sampIs3dTextDefined(id) then
                local text, color, x, y, z, distance, ignoreWalls, player, vehicle = sampGet3dTextInfoById(id)
    
                if text:find("добычи") then
                    if isPointOnScreen(x, y, z, 3.0) then
                        screenX, screenY = convert3DCoordsToScreen(x, y, z) -- Конвертируем 3D координаты в экранные
                        local playerDistance = string.format("%.0f", getDistanceBetweenCoords3d(x, y, z, playerPosX, playerPosY, playerPosZ)) -- Получаем расстояние до персонажа
    
                        local lineStartX, lineStartY = convert3DCoordsToScreen(playerPosX, playerPosY, playerPosZ) -- Конвертируем координаты игрока в экранные
                        renderDrawLine(screenX, screenY, lineStartX, lineStartY, 2, 0xFF404241) -- Рисуем линию от текста к игроку
                        renderFontDrawText(font, playerDistance, screenX - 15, screenY + 6, -1) -- Рендерим текст с расстоянием
                        renderDrawPolygon(screenX, screenY, 10, 10, 10, 0, 0xFF404241) -- Рисуем квадрат вокруг текста
                    end
                end
            end
        end
    end
end


function menu_imgui()
	work.v = not work.v
	imgui.Process = work.v
end

function imgui.OnDrawFrame()
	if not work.v then
		imgui.Process = false
	end
	if work.v then
	imgui_colors()
    imgui.ShowCursor = imgui.IsWindowFocused()
    local size, res = imgui.ImVec2(217,177), imgui.ImVec2(getScreenResolution());
    imgui.SetNextWindowSize(size, imgui.Cond.FirstUseEver)

	imgui.Begin("Ore's helper", work, imgui.WindowFlags.NoResize + imgui.WindowFlags.NoCollapse)
	if imgui.BeginChild('Name2', imgui.ImVec2(200, 80), true) then
			imgui.Checkbox("Render Ores", render)
	imgui.Checkbox("Infinity run", infinityrun)
		if infinityrun.v then
			if infinityruntrue then
			mem.setint8(0xB7CEE4, 1)
			infinityrunfalse = true
			infinityruntrue = false
		end
		else
			if infinityrunfalse then
			mem.setint8(0xB7CEE4, 0)
			infinityrunfalse = false
			infinityruntrue = true
		end
		end
	imgui.Checkbox("Skin CJ", cj)
		if cj.v then
			if cjtrue then
				local _, id = sampGetPlayerIdByCharHandle(PLAYER_PED)
				idskin = getCharModel(PLAYER_PED)
				bss = raknetNewBitStream()
				raknetBitStreamWriteInt32(bss, id)
				raknetBitStreamWriteInt32(bss, 74)
				raknetEmulRpcReceiveBitStream(153, bss)
				raknetDeleteBitStream(bss)
					cjfalse = true
				cjtrue = false
			end
			else
				if cjfalse then
					local _, id = sampGetPlayerIdByCharHandle(PLAYER_PED)
					bs = raknetNewBitStream()
					raknetBitStreamWriteInt32(bs, id)
					raknetBitStreamWriteInt32(bs, idskin)
					raknetEmulRpcReceiveBitStream(153, bs)
					raknetDeleteBitStream(bs)
				cjfalse = false
				cjtrue = true
			end
		end

    	imgui.EndChild() -- обязательно следите за тем, чтобы каждый чайлд был закрыт
	end

	if imgui.BeginChild('Name', imgui.ImVec2(200, 60), true) then
		imgui.Text("Me :")
	    imgui.SameLine()
		if imgui.Button("click me!", button4) then
	        os.execute('explorer "https://www.blast.hk/members/542838/"')
	    end

		imgui.Text("This is Dazai : ")
		imgui.SameLine()
		if imgui.Button("Script base!", button5) then
	        os.execute('explorer "https://www.blast.hk/threads/159670/"')
	    end
		
    	imgui.EndChild() -- обязательно следите за тем, чтобы каждый чайлд был закрыт
	end
	

	imgui.End()
	end 
end

function imgui_colors()
	imgui.SwitchContext()
    local style = imgui.GetStyle()
    local colors = style.Colors
    local clr = imgui.Col
    local ImVec4 = imgui.ImVec4
    style.WindowPadding = imgui.ImVec2(9, 5)
    style.WindowRounding = 10
    style.ChildWindowRounding = 10
    style.FramePadding = imgui.ImVec2(5, 3)
    style.FrameRounding = 6.0
    style.ItemSpacing = imgui.ImVec2(9.0, 3.0)
    style.ItemInnerSpacing = imgui.ImVec2(9.0, 3.0)
    style.IndentSpacing = 21
    style.ScrollbarSize = 6.0
    style.ScrollbarRounding = 13
    style.GrabMinSize = 17.0
    style.GrabRounding = 16.0
    style.WindowTitleAlign = imgui.ImVec2(0.5, 0.5)
    style.ButtonTextAlign = imgui.ImVec2(0.5, 0.5)


    colors[clr.Text]                   = ImVec4(0.90, 0.90, 0.90, 1.00)
    colors[clr.TextDisabled]           = ImVec4(1.00, 1.00, 1.00, 1.00)
    colors[clr.WindowBg]               = ImVec4(0.00, 0.00, 0.00, 1.00)
    colors[clr.ChildWindowBg]          = ImVec4(0.00, 0.00, 0.00, 1.00)
    colors[clr.PopupBg]                = ImVec4(0.00, 0.00, 0.00, 1.00)
    colors[clr.Border]                 = ImVec4(0.82, 0.77, 0.78, 1.00)
    colors[clr.BorderShadow]           = ImVec4(0.35, 0.35, 0.35, 0.66)
    colors[clr.FrameBg]                = ImVec4(1.00, 1.00, 1.00, 0.28)
    colors[clr.FrameBgHovered]         = ImVec4(0.68, 0.68, 0.68, 0.67)
    colors[clr.FrameBgActive]          = ImVec4(0.79, 0.73, 0.73, 0.62)
    colors[clr.TitleBg]                = ImVec4(0.00, 0.00, 0.00, 1.00)
    colors[clr.TitleBgActive]          = ImVec4(0.46, 0.46, 0.46, 1.00)
    colors[clr.TitleBgCollapsed]       = ImVec4(0.00, 0.00, 0.00, 1.00)
    colors[clr.MenuBarBg]              = ImVec4(0.00, 0.00, 0.00, 0.80)
    colors[clr.ScrollbarBg]            = ImVec4(0.00, 0.00, 0.00, 0.60)
    colors[clr.ScrollbarGrab]          = ImVec4(1.00, 1.00, 1.00, 0.87)
    colors[clr.ScrollbarGrabHovered]   = ImVec4(1.00, 1.00, 1.00, 0.79)
    colors[clr.ScrollbarGrabActive]    = ImVec4(0.80, 0.50, 0.50, 0.40)
    colors[clr.ComboBg]                = ImVec4(0.24, 0.24, 0.24, 0.99)
    colors[clr.CheckMark]              = ImVec4(0.99, 0.99, 0.99, 0.52)
    colors[clr.SliderGrab]             = ImVec4(1.00, 1.00, 1.00, 0.42)
    colors[clr.SliderGrabActive]       = ImVec4(0.76, 0.76, 0.76, 1.00)
    colors[clr.Button]                 = ImVec4(0.51, 0.51, 0.51, 0.60)
    colors[clr.ButtonHovered]          = ImVec4(0.68, 0.68, 0.68, 1.00)
    colors[clr.ButtonActive]           = ImVec4(0.67, 0.67, 0.67, 1.00)
    colors[clr.Header]                 = ImVec4(0.72, 0.72, 0.72, 0.54)
    colors[clr.HeaderHovered]          = ImVec4(0.92, 0.92, 0.95, 0.77)
    colors[clr.HeaderActive]           = ImVec4(0.82, 0.82, 0.82, 0.80)
    colors[clr.Separator]              = ImVec4(0.73, 0.73, 0.73, 1.00)
    colors[clr.SeparatorHovered]       = ImVec4(0.81, 0.81, 0.81, 1.00)
    colors[clr.SeparatorActive]        = ImVec4(0.74, 0.74, 0.74, 1.00)
    colors[clr.ResizeGrip]             = ImVec4(0.80, 0.80, 0.80, 0.30)
    colors[clr.ResizeGripHovered]      = ImVec4(0.95, 0.95, 0.95, 0.60)
    colors[clr.ResizeGripActive]       = ImVec4(1.00, 1.00, 1.00, 0.90)
    colors[clr.CloseButton]            = ImVec4(0.45, 0.45, 0.45, 0.50)
    colors[clr.CloseButtonHovered]     = ImVec4(0.70, 0.70, 0.90, 0.60)
    colors[clr.CloseButtonActive]      = ImVec4(0.70, 0.70, 0.70, 1.00)
    colors[clr.PlotLines]              = ImVec4(1.00, 1.00, 1.00, 1.00)
    colors[clr.PlotLinesHovered]       = ImVec4(1.00, 1.00, 1.00, 1.00)
    colors[clr.PlotHistogram]          = ImVec4(1.00, 1.00, 1.00, 1.00)
    colors[clr.PlotHistogramHovered]   = ImVec4(1.00, 1.00, 1.00, 1.00)
    colors[clr.TextSelectedBg]         = ImVec4(1.00, 1.00, 1.00, 0.35)
    colors[clr.ModalWindowDarkening]   = ImVec4(0.88, 0.88, 0.88, 0.35)
end
```