не отображаются территории в скрипте

альтушка

Активный
Автор темы
308
29
Версия MoonLoader
.026-beta
Привет всем, Проблема в том, что раньше оно вообще не открывалось. Теперь оно открывается, но без отрисовки территорий.
1758730468437.png
Lua:
local zones = {}
local curZone = 0

-- on frame
elseif menuSwitch == 5 then
            local resX, resY = getScreenResolution()
            local sizeX, sizeY = 700, 520
            imgui.SetNextWindowPos(imgui.ImVec2(resX / 2, resY / 2), imgui.Cond.FirstUseEver, imgui.ImVec2(0.5, 0.5))
            imgui.SetNextWindowSize(imgui.ImVec2(sizeX, sizeY), imgui.Cond.FirstUseEver)
            imgui.Begin(u8'Территории гетто', Window.mainmenu, imgui.WindowFlags.NoCollapse+imgui.WindowFlags.NoResize + imgui.WindowFlags.AlwaysAutoResize)
            local ballas, vagos, grove, aztec, rifa = 0, 0, 0, 0, 0
            imgui.BeginChild('##zone_buttons', imgui.ImVec2(485, 459), true)
            local k = 2.7
            for i=1, 104 do
                if zones[i] and zones[i].zcolor then
                local z = zones[i].zcolor
                local a = bit.rshift(bit.band(z, 0xFF000000), 24) / 255
                local r = bit.rshift(bit.band(z, 0x00FF0000), 16) / 255
                local g = bit.rshift(bit.band(z, 0x0000FF00), 8) / 255
                local b = bit.band(z, 0x000000FF) / 255
                local color = imgui.ImVec4(r, g, b, a)

                local pX, pY = ((zones[i].zstart.x-1659.256104)/k)+4, ((-1054.259277-zones[i].zend.y)/k)+44
                local wX, wY = ((zones[i].zend.x-zones[i].zstart.x)/k), ((zones[i].zend.y-zones[i].zstart.y)/k)
                if zones[i].zfrac == 9 then ballas = ballas+1
                elseif zones[i].zfrac == 10 then vagos = vagos+1
                elseif zones[i].zfrac == 12 then grove = grove+1
                elseif zones[i].zfrac == 14 then aztec = aztec+1
                elseif zones[i].zfrac == 15 then rifa = rifa+1 end
                imgui.SetCursorPos(imgui.ImVec2(pX, pY))
                imgui.PushStyleColor(imgui.Col.Text, imgui.ImVec4(0, 0, 0, 1))
                imgui.PushStyleColor(imgui.Col.ButtonHovered, imgui.ImVec4(color.w, color.z, color.y, color.x))
                imgui.PushStyleColor(imgui.Col.Button, imgui.ImVec4(color.w, color.z, color.y, color.x-0.1))
                imgui.PushStyleColor(imgui.Col.ButtonActive, imgui.ImVec4(color.w, color.z-0.2, color.y-0.2, color.x))
                imgui.PushStyleVar(imgui.StyleVar.FrameRounding, 0)
                if imgui.Button((i == 8 or i == 26 or i == 68 or i == 75 or i == 91) and (faicons(u8'HOUSE')..'##zonebutton'..i) or ('##zonebutton'..i), imgui.ImVec2(wX-1, wY-1)) then
                    curZone = i
                    local wpos = imgui.GetWindowPos()
                    imgui.SetNextWindowPos(imgui.ImVec2(wpos.x+pX+wX, wpos.y+pY))
                    imgui.OpenPopup('##zoneacts')
                end
                imgui.PopStyleVar()
                imgui.PopStyleColor(4)
                end
            end
            if imgui.BeginPopup('##zoneacts') then
                local color = imgui.ColorConvertU32ToFloat4(zones[curZone].zcolor)
                imgui.Text(u8'Территория №'..curZone)
                if curZone == 8 or curZone == 26 or curZone == 68 or curZone == 75 or curZone == 91 then
                    imgui.SameLine()
                    imgui.TextDisabled(u8'(Респавн)')
                end
                imgui.Text(u8'Принадлежит:')
                imgui.SameLine()
                imgui.TextColored(imgui.ImVec4(color.w, color.z, color.y, color.x), fracNames[zones[curZone].zfrac][2])
                imgui.Text(u8' \nИзменить контроль над территорией:')
                imgui.HintOnInputText('##gzcolor_reason', gzcolor_reason, 245, u8'Причина', 2)

                color = imgui.ColorConvertU32ToFloat4(zones[68].zcolor)
                imgui.PushStyleColor(imgui.Col.ButtonHovered, imgui.ImVec4(color.w, color.z, color.y, color.x))
                imgui.PushStyleColor(imgui.Col.Button, imgui.ImVec4(color.w, color.z, color.y, color.x-0.1))
                imgui.PushStyleColor(imgui.Col.ButtonActive, imgui.ImVec4(color.w, color.z-0.2, color.y-0.2, color.x))
                if imgui.Button('Grove Street', imgui.ImVec2(120, 0)) then
                    if #(u8:decode(gzcolor_reason[0]):gsub(' ', '')) > 0 then
                        local pX, pY, pZ = getCharCoordinates(PLAYER_PED)
                        lua_thread.create(function()
                            setCharCoordinates(PLAYER_PED, zones[curZone].zcenter.x, zones[curZone].zcenter.y, 550)
                            wait(0)
                            local h = getCharHeightAboveGround(PLAYER_PED)
                            setCharCoordinates(PLAYER_PED, zones[curZone].zcenter.x, zones[curZone].zcenter.y, (550-h)+3)
                            wait(100)
                            sampSendChat('/gzcolor 15 '..u8:decode(gzcolor_reason[0]), -1)
                            wait(300)
                            setCharCoordinates(PLAYER_PED, pX, pY, pZ)
                        end)
                    else
                        toolsErrorText('Для продолжения укажите причину')
                    end
                end
                imgui.PopStyleColor(3)
                imgui.SameLine()
                color = imgui.ColorConvertU32ToFloat4(zones[26].zcolor)
                imgui.PushStyleColor(imgui.Col.Text, imgui.ImVec4(0, 0, 0, 1))
                imgui.PushStyleColor(imgui.Col.ButtonHovered, imgui.ImVec4(color.w, color.z, color.y, color.x))
                imgui.PushStyleColor(imgui.Col.Button, imgui.ImVec4(color.w, color.z, color.y, color.x-0.1))
                imgui.PushStyleColor(imgui.Col.ButtonActive, imgui.ImVec4(color.w, color.z-0.2, color.y-0.2, color.x))
                if imgui.Button('Los Santos Vagos', imgui.ImVec2(120, 0)) then
                    if #(u8:decode(gzcolor_reason[0]):gsub(' ', '')) > 0 then
                        local pX, pY, pZ = getCharCoordinates(PLAYER_PED)
                        lua_thread.create(function()
                            setCharCoordinates(PLAYER_PED, zones[curZone].zcenter.x, zones[curZone].zcenter.y, 550)
                            wait(0)
                            local h = getCharHeightAboveGround(PLAYER_PED)
                            setCharCoordinates(PLAYER_PED, zones[curZone].zcenter.x, zones[curZone].zcenter.y, (550-h)+3)
                            wait(100)
                            sampSendChat('/gzcolor 13 '..u8:decode(gzcolor_reason[0]), -1)
                            wait(300)
                            setCharCoordinates(PLAYER_PED, pX, pY, pZ)
                        end)
                    else sampAddChatMessage('[Admin helper]: {ffffff}Для продолжения укажите причину', 0xFF6600)
                    end
                end
                imgui.PopStyleColor(4)
                color = imgui.ColorConvertU32ToFloat4(zones[91].zcolor)
                imgui.PushStyleColor(imgui.Col.ButtonHovered, imgui.ImVec4(color.w, color.z, color.y, color.x))
                imgui.PushStyleColor(imgui.Col.Button, imgui.ImVec4(color.w, color.z, color.y, color.x-0.1))
                imgui.PushStyleColor(imgui.Col.ButtonActive, imgui.ImVec4(color.w, color.z-0.2, color.y-0.2, color.x))
                if imgui.Button('The Rifa', imgui.ImVec2(120, 0)) then
                    if #(u8:decode(gzcolor_reason[0]):gsub(' ', '')) > 0 then
                        local pX, pY, pZ = getCharCoordinates(PLAYER_PED)
                        lua_thread.create(function()
                            setCharCoordinates(PLAYER_PED, zones[curZone].zcenter.x, zones[curZone].zcenter.y, 550)
                            wait(0)
                            local h = getCharHeightAboveGround(PLAYER_PED)
                            setCharCoordinates(PLAYER_PED, zones[curZone].zcenter.x, zones[curZone].zcenter.y, (550-h)+3)
                            wait(100)
                            sampSendChat('/gzcolor 18 '..u8:decode(gzcolor_reason[0]), -1)
                            wait(300)
                            setCharCoordinates(PLAYER_PED, pX, pY, pZ)
                        end)
                    else sampAddChatMessage('[Admin helper]: {ffffff}Для продолжения укажите причину', 0xFF6600)
                    end
                end
                imgui.PopStyleColor(3)
                imgui.SameLine()
                color = imgui.ColorConvertU32ToFloat4(zones[8].zcolor)
                imgui.PushStyleColor(imgui.Col.ButtonHovered, imgui.ImVec4(color.w, color.z, color.y, color.x))
                imgui.PushStyleColor(imgui.Col.Button, imgui.ImVec4(color.w, color.z, color.y, color.x-0.1))
                imgui.PushStyleColor(imgui.Col.ButtonActive, imgui.ImVec4(color.w, color.z-0.2, color.y-0.2, color.x))
                if imgui.Button('The Ballas', imgui.ImVec2(120, 0)) then
                    if #(u8:decode(gzcolor_reason[0]):gsub(' ', '')) > 0 then
                        local pX, pY, pZ = getCharCoordinates(PLAYER_PED)
                        lua_thread.create(function()
                            setCharCoordinates(PLAYER_PED, zones[curZone].zcenter.x, zones[curZone].zcenter.y, 550)
                            wait(0)
                            local h = getCharHeightAboveGround(PLAYER_PED)
                            setCharCoordinates(PLAYER_PED, zones[curZone].zcenter.x, zones[curZone].zcenter.y, (550-h)+3)
                            wait(100)
                            sampSendChat('/gzcolor 12 '..u8:decode(gzcolor_reason[0]), -1)
                            wait(300)
                            setCharCoordinates(PLAYER_PED, pX, pY, pZ)
                        end)
                    else sampAddChatMessage('[Admin helper]: {ffffff}Для продолжения укажите причину', 0xFF6600)
                    end
                end
                imgui.PopStyleColor(3)
                color = imgui.ColorConvertU32ToFloat4(zones[75].zcolor)
                imgui.PushStyleColor(imgui.Col.Text, imgui.ImVec4(0, 0, 0, 1))
                imgui.PushStyleColor(imgui.Col.ButtonHovered, imgui.ImVec4(color.w, color.z, color.y, color.x))
                imgui.PushStyleColor(imgui.Col.Button, imgui.ImVec4(color.w, color.z, color.y, color.x-0.1))
                imgui.PushStyleColor(imgui.Col.ButtonActive, imgui.ImVec4(color.w, color.z-0.2, color.y-0.2, color.x))
                if imgui.Button('Varios Los Aztecas', imgui.ImVec2(245, 0)) then
                    if #(u8:decode(gzcolor_reason[0]):gsub(' ', '')) > 0 then
                        local pX, pY, pZ = getCharCoordinates(PLAYER_PED)
                        lua_thread.create(function()
                            setCharCoordinates(PLAYER_PED, zones[curZone].zcenter.x, zones[curZone].zcenter.y, 550)
                            wait(0)
                            local h = getCharHeightAboveGround(PLAYER_PED)
                            setCharCoordinates(PLAYER_PED, zones[curZone].zcenter.x, zones[curZone].zcenter.y, (550-h)+3)
                            wait(100)
                            sampSendChat('/gzcolor 17 '..u8:decode(gzcolor_reason[0]), -1)
                            wait(300)
                            setCharCoordinates(PLAYER_PED, pX, pY, pZ)
                        end)
                    else sampAddChatMessage('[Admin helper]: {ffffff}Для продолжения укажите причину', 0xFF6600)
                    end
                end
                imgui.PopStyleColor(3)
                imgui.PushStyleColor(imgui.Col.ButtonHovered, imgui.ImVec4(1, 1, 1, 1))
                imgui.PushStyleColor(imgui.Col.Button, imgui.ImVec4(1, 1, 1, 0.9))
                imgui.PushStyleColor(imgui.Col.ButtonActive, imgui.ImVec4(1, 0.8, 0.8, 1))
                if imgui.Button(u8'Телепортироваться', imgui.ImVec2(245, 0)) then
                    lua_thread.create(function()
                        setCharCoordinates(PLAYER_PED, zones[curZone].zcenter.x, zones[curZone].zcenter.y, 550)
                        wait(0)
                        local h = getCharHeightAboveGround(PLAYER_PED)
                        setCharCoordinates(PLAYER_PED, zones[curZone].zcenter.x, zones[curZone].zcenter.y, (550-h)+3)
                    end)
                end
                imgui.PopStyleColor(4)
                imgui.EndPopup()
            end
            imgui.EndChild()
            imgui.SameLine()
            imgui.BeginChild('##zone_progress', imgui.ImVec2(202, 459), true)
            imgui.PushFont(big_font)
            imgui.Text(u8'Рейтинг банд:')
            imgui.PopFont()
            imgui.Text('')
          
            if zones[i] and zones[i].zcolor then
                local z = zones[i].zcolor
                local a = bit.rshift(bit.band(z, 0xFF000000), 24) / 255
                local r = bit.rshift(bit.band(z, 0x00FF0000), 16) / 255
                local g = bit.rshift(bit.band(z, 0x0000FF00), 8) / 255
                local b = bit.band(z, 0x000000FF) / 255
                local color = imgui.ImVec4(r, g, b, a)
              
                imgui.TextColored(imgui.ImVec4(color.w, color.z, color.y, color.x), 'The Ballas:') imgui.SameLine() imgui.TextDisabled(tostring(ballas)..u8' территорий')
                imgui.PushStyleColor(imgui.Col.ButtonHovered, imgui.ImVec4(color.w, color.z, color.y, color.x))
                imgui.PushStyleColor(imgui.Col.Button, imgui.ImVec4(color.w, color.z, color.y, color.x-0.7))
                imgui.BufferingBar(ballas/100, imgui.ImVec2(194, 13))
                imgui.PopStyleColor(2)
                color = imgui.ColorConvertU32ToFloat4(zones[26].zcolor)
                imgui.TextColored(imgui.ImVec4(color.w, color.z, color.y, color.x), 'Los Santos Vagos:') imgui.SameLine() imgui.TextDisabled(tostring(vagos)..u8' территорий')
                imgui.PushStyleColor(imgui.Col.ButtonHovered, imgui.ImVec4(color.w, color.z, color.y, color.x))
                imgui.PushStyleColor(imgui.Col.Button, imgui.ImVec4(color.w, color.z, color.y, color.x-0.7))
                imgui.BufferingBar(vagos/100, imgui.ImVec2(194, 13))
                imgui.PopStyleColor(2)
                color = imgui.ColorConvertU32ToFloat4(zones[68].zcolor)
                imgui.TextColored(imgui.ImVec4(color.w, color.z, color.y, color.x), 'Grove Street:') imgui.SameLine() imgui.TextDisabled(tostring(grove)..u8' территорий')
                imgui.PushStyleColor(imgui.Col.ButtonHovered, imgui.ImVec4(color.w, color.z, color.y, color.x))
                imgui.PushStyleColor(imgui.Col.Button, imgui.ImVec4(color.w, color.z, color.y, color.x-0.7))
                imgui.BufferingBar(grove/100, imgui.ImVec2(194, 13))
                imgui.PopStyleColor(2)
                color = imgui.ColorConvertU32ToFloat4(zones[75].zcolor)
                imgui.TextColored(imgui.ImVec4(color.w, color.z, color.y, color.x), 'Varios Los Aztecas:') imgui.SameLine() imgui.TextDisabled(tostring(aztec)..u8' территорий')
                imgui.PushStyleColor(imgui.Col.ButtonHovered, imgui.ImVec4(color.w, color.z, color.y, color.x))
                imgui.PushStyleColor(imgui.Col.Button, imgui.ImVec4(color.w, color.z, color.y, color.x-0.7))
                imgui.BufferingBar(aztec/100, imgui.ImVec2(194, 13))
                imgui.PopStyleColor(2)
                color = imgui.ColorConvertU32ToFloat4(zones[91].zcolor)
                imgui.TextColored(imgui.ImVec4(color.w, color.z, color.y, color.x), 'The Rifa:') imgui.SameLine() imgui.TextDisabled(tostring(rifa)..u8' территорий')
                imgui.PushStyleColor(imgui.Col.ButtonHovered, imgui.ImVec4(color.w, color.z, color.y, color.x))
                imgui.PushStyleColor(imgui.Col.Button, imgui.ImVec4(color.w, color.z, color.y, color.x-0.7))
                imgui.BufferingBar(rifa/100, imgui.ImVec2(194, 13))
                imgui.PopStyleColor(2)
            end
            imgui.EndChild()
        end
-- end frame
function event.onCreateGangZone(zoneId, squareStart, squareEnd, color)

    x = (squareStart.x+squareEnd.x)/2
    y = (squareStart.y+squareEnd.y)/2

    if color == -1426128692 then
        frac = 9
        fcolor = 0xCC00FFFF
    elseif color == -1442787841 then
        frac = 10
        fcolor = 0xffcd00FF
    elseif color == -1442799872 then
        frac = 12
        fcolor = 0x009900FF
    elseif color == -1426102682 then
        frac = 15
        fcolor = 0x6666FFFF
    elseif color == -1426076672 then
        frac = 14
        fcolor = 0x00CCFFFF
    end
    zones[zoneId] =
    {
        zcenter = {x = x, y = y},
        zstart = {x = squareStart.x, y = squareStart.y},
        zend = {x = squareEnd.x, y = squareEnd.y},
        zfrac = frac,
        zcolor = fcolor
    }
end
 

libsamp.so

Активный
250
76
fix:
local zones = {}
local curZone = 0

-- on frame
elseif menuSwitch == 5 then
            local resX, resY = getScreenResolution()
            local sizeX, sizeY = 700, 520
            imgui.SetNextWindowPos(imgui.ImVec2(resX / 2, resY / 2), imgui.Cond.FirstUseEver, imgui.ImVec2(0.5, 0.5))
            imgui.SetNextWindowSize(imgui.ImVec2(sizeX, sizeY), imgui.Cond.FirstUseEver)
            imgui.Begin(u8'Территории гетто', Window.mainmenu, imgui.WindowFlags.NoCollapse+imgui.WindowFlags.NoResize + imgui.WindowFlags.AlwaysAutoResize)
            local ballas, vagos, grove, aztec, rifa = 0, 0, 0, 0, 0
            imgui.BeginChild('##zone_buttons', imgui.ImVec2(485, 459), true)
            local k = 2.7
            for id, zi in pairs(zones) do
                if zi and zi.zcolor then
                local z = zi.zcolor
                local a = bit.rshift(bit.band(z, 0xFF000000), 24) / 255
                local r = bit.rshift(bit.band(z, 0x00FF0000), 16) / 255
                local g = bit.rshift(bit.band(z, 0x0000FF00), 8) / 255
                local b = bit.band(z, 0x000000FF) / 255
                local color = imgui.ImVec4(r, g, b, a)

                local pX, pY = ((zi.zstart.x-1659.256104)/k)+4, ((-1054.259277-zi.zend.y)/k)+44
                local wX, wY = ((zi.zend.x-zi.zstart.x)/k), ((zi.zend.y-zi.zstart.y)/k)
                if zi.zfrac == 9 then ballas = ballas+1
                elseif zi.zfrac == 10 then vagos = vagos+1
                elseif zi.zfrac == 12 then grove = grove+1
                elseif zi.zfrac == 14 then aztec = aztec+1
                elseif zi.zfrac == 15 then rifa = rifa+1 end
                imgui.SetCursorPos(imgui.ImVec2(pX, pY))
                imgui.PushStyleColor(imgui.Col.Text, imgui.ImVec4(0, 0, 0, 1))
                imgui.PushStyleColor(imgui.Col.ButtonHovered, imgui.ImVec4(color.x, color.y, color.z, color.w))
                imgui.PushStyleColor(imgui.Col.Button,        imgui.ImVec4(color.x, color.y, color.z, color.w-0.1))
                imgui.PushStyleColor(imgui.Col.ButtonActive,  imgui.ImVec4(color.x, color.y-0.2, color.z-0.2, color.w))
                imgui.PushStyleVar(imgui.StyleVar.FrameRounding, 0)
                if imgui.Button((id == 8 or id == 26 or id == 68 or id == 75 or id == 91) and (faicons(u8'HOUSE')..'##zonebutton'..id) or ('##zonebutton'..id), imgui.ImVec2(wX-1, wY-1)) then
                    curZone = id
                    local wpos = imgui.GetWindowPos()
                    imgui.SetNextWindowPos(imgui.ImVec2(wpos.x+pX+wX, wpos.y+pY))
                    imgui.OpenPopup('##zoneacts')
                end
                imgui.PopStyleVar()
                imgui.PopStyleColor(4)
                end
            end
            if imgui.BeginPopup('##zoneacts') then
                local color = imgui.ColorConvertU32ToFloat4(zones[curZone].zcolor)
                imgui.Text(u8'Территория №'..curZone)
                if curZone == 8 or curZone == 26 or curZone == 68 or curZone == 75 or curZone == 91 then
                    imgui.SameLine()
                    imgui.TextDisabled(u8'(Респавн)')
                end
                imgui.Text(u8'Принадлежит:')
                imgui.SameLine()
                imgui.TextColored(imgui.ImVec4(color.x, color.y, color.z, color.w), fracNames[zones[curZone].zfrac][2])
                imgui.Text(u8' \nИзменить контроль над территорией:')
                imgui.HintOnInputText('##gzcolor_reason', gzcolor_reason, 245, u8'Причина', 2)

                color = imgui.ColorConvertU32ToFloat4(zones[68].zcolor)
                imgui.PushStyleColor(imgui.Col.ButtonHovered, imgui.ImVec4(color.x, color.y, color.z, color.w))
                imgui.PushStyleColor(imgui.Col.Button,        imgui.ImVec4(color.x, color.y, color.z, color.w-0.1))
                imgui.PushStyleColor(imgui.Col.ButtonActive,  imgui.ImVec4(color.x, color.y-0.2, color.z-0.2, color.w))
                if imgui.Button('Grove Street', imgui.ImVec2(120, 0)) then
                    if #(u8:decode(gzcolor_reason[0]):gsub(' ', '')) > 0 then
                        local pX, pY, pZ = getCharCoordinates(PLAYER_PED)
                        lua_thread.create(function()
                            setCharCoordinates(PLAYER_PED, zones[curZone].zcenter.x, zones[curZone].zcenter.y, 550)
                            wait(0)
                            local h = getCharHeightAboveGround(PLAYER_PED)
                            setCharCoordinates(PLAYER_PED, zones[curZone].zcenter.x, zones[curZone].zcenter.y, (550-h)+3)
                            wait(100)
                            sampSendChat('/gzcolor 15 '..u8:decode(gzcolor_reason[0]), -1)
                            wait(300)
                            setCharCoordinates(PLAYER_PED, pX, pY, pZ)
                        end)
                    else
                        toolsErrorText('Для продолжения укажите причину')
                    end
                end
                imgui.PopStyleColor(3)
                imgui.SameLine()
                color = imgui.ColorConvertU32ToFloat4(zones[26].zcolor)
                imgui.PushStyleColor(imgui.Col.Text, imgui.ImVec4(0, 0, 0, 1))
                imgui.PushStyleColor(imgui.Col.ButtonHovered, imgui.ImVec4(color.x, color.y, color.z, color.w))
                imgui.PushStyleColor(imgui.Col.Button,        imgui.ImVec4(color.x, color.y, color.z, color.w-0.1))
                imgui.PushStyleColor(imgui.Col.ButtonActive,  imgui.ImVec4(color.x, color.y-0.2, color.z-0.2, color.w))
                if imgui.Button('Los Santos Vagos', imgui.ImVec2(120, 0)) then
                    if #(u8:decode(gzcolor_reason[0]):gsub(' ', '')) > 0 then
                        local pX, pY, pZ = getCharCoordinates(PLAYER_PED)
                        lua_thread.create(function()
                            setCharCoordinates(PLAYER_PED, zones[curZone].zcenter.x, zones[curZone].zcenter.y, 550)
                            wait(0)
                            local h = getCharHeightAboveGround(PLAYER_PED)
                            setCharCoordinates(PLAYER_PED, zones[curZone].zcenter.x, zones[curZone].zcenter.y, (550-h)+3)
                            wait(100)
                            sampSendChat('/gzcolor 13 '..u8:decode(gzcolor_reason[0]), -1)
                            wait(300)
                            setCharCoordinates(PLAYER_PED, pX, pY, pZ)
                        end)
                    else sampAddChatMessage('[Admin helper]: {ffffff}Для продолжения укажите причину', 0xFF6600)
                    end
                end
                imgui.PopStyleColor(4)
                color = imgui.ColorConvertU32ToFloat4(zones[91].zcolor)
                imgui.PushStyleColor(imgui.Col.ButtonHovered, imgui.ImVec4(color.x, color.y, color.z, color.w))
                imgui.PushStyleColor(imgui.Col.Button,        imgui.ImVec4(color.x, color.y, color.z, color.w-0.1))
                imgui.PushStyleColor(imgui.Col.ButtonActive,  imgui.ImVec4(color.x, color.y-0.2, color.z-0.2, color.w))
                if imgui.Button('The Rifa', imgui.ImVec2(120, 0)) then
                    if #(u8:decode(gzcolor_reason[0]):gsub(' ', '')) > 0 then
                        local pX, pY, pZ = getCharCoordinates(PLAYER_PED)
                        lua_thread.create(function()
                            setCharCoordinates(PLAYER_PED, zones[curZone].zcenter.x, zones[curZone].zcenter.y, 550)
                            wait(0)
                            local h = getCharHeightAboveGround(PLAYER_PED)
                            setCharCoordinates(PLAYER_PED, zones[curZone].zcenter.x, zones[curZone].zcenter.y, (550-h)+3)
                            wait(100)
                            sampSendChat('/gzcolor 18 '..u8:decode(gzcolor_reason[0]), -1)
                            wait(300)
                            setCharCoordinates(PLAYER_PED, pX, pY, pZ)
                        end)
                    else sampAddChatMessage('[Admin helper]: {ffffff}Для продолжения укажите причину', 0xFF6600)
                    end
                end
                imgui.PopStyleColor(3)
                imgui.SameLine()
                color = imgui.ColorConvertU32ToFloat4(zones[8].zcolor)
                imgui.PushStyleColor(imgui.Col.ButtonHovered, imgui.ImVec4(color.x, color.y, color.z, color.w))
                imgui.PushStyleColor(imgui.Col.Button,        imgui.ImVec4(color.x, color.y, color.z, color.w-0.1))
                imgui.PushStyleColor(imgui.Col.ButtonActive,  imgui.ImVec4(color.x, color.y-0.2, color.z-0.2, color.w))
                if imgui.Button('The Ballas', imgui.ImVec2(120, 0)) then
                    if #(u8:decode(gzcolor_reason[0]):gsub(' ', '')) > 0 then
                        local pX, pY, pZ = getCharCoordinates(PLAYER_PED)
                        lua_thread.create(function()
                            setCharCoordinates(PLAYER_PED, zones[curZone].zcenter.x, zones[curZone].zcenter.y, 550)
                            wait(0)
                            local h = getCharHeightAboveGround(PLAYER_PED)
                            setCharCoordinates(PLAYER_PED, zones[curZone].zcenter.x, zones[curZone].zcenter.y, (550-h)+3)
                            wait(100)
                            sampSendChat('/gzcolor 12 '..u8:decode(gzcolor_reason[0]), -1)
                            wait(300)
                            setCharCoordinates(PLAYER_PED, pX, pY, pZ)
                        end)
                    else sampAddChatMessage('[Admin helper]: {ffffff}Для продолжения укажите причину', 0xFF6600)
                    end
                end
                imgui.PopStyleColor(3)
                color = imgui.ColorConvertU32ToFloat4(zones[75].zcolor)
                imgui.PushStyleColor(imgui.Col.Text, imgui.ImVec4(0, 0, 0, 1))
                imgui.PushStyleColor(imgui.Col.ButtonHovered, imgui.ImVec4(color.x, color.y, color.z, color.w))
                imgui.PushStyleColor(imgui.Col.Button,        imgui.ImVec4(color.x, color.y, color.z, color.w-0.1))
                imgui.PushStyleColor(imgui.Col.ButtonActive,  imgui.ImVec4(color.x, color.y-0.2, color.z-0.2, color.w))
                if imgui.Button('Varios Los Aztecas', imgui.ImVec2(245, 0)) then
                    if #(u8:decode(gzcolor_reason[0]):gsub(' ', '')) > 0 then
                        local pX, pY, pZ = getCharCoordinates(PLAYER_PED)
                        lua_thread.create(function()
                            setCharCoordinates(PLAYER_PED, zones[curZone].zcenter.x, zones[curZone].zcenter.y, 550)
                            wait(0)
                            local h = getCharHeightAboveGround(PLAYER_PED)
                            setCharCoordinates(PLAYER_PED, zones[curZone].zcenter.x, zones[curZone].zcenter.y, (550-h)+3)
                            wait(100)
                            sampSendChat('/gzcolor 17 '..u8:decode(gzcolor_reason[0]), -1)
                            wait(300)
                            setCharCoordinates(PLAYER_PED, pX, pY, pZ)
                        end)
                    else sampAddChatMessage('[Admin helper]: {ffffff}Для продолжения укажите причину', 0xFF6600)
                    end
                end
                imgui.PopStyleColor(3)
                imgui.PushStyleColor(imgui.Col.ButtonHovered, imgui.ImVec4(1, 1, 1, 1))
                imgui.PushStyleColor(imgui.Col.Button,        imgui.ImVec4(1, 1, 1, 0.9))
                imgui.PushStyleColor(imgui.Col.ButtonActive,  imgui.ImVec4(1, 0.8, 0.8, 1))
                if imgui.Button(u8'Телепортироваться', imgui.ImVec2(245, 0)) then
                    lua_thread.create(function()
                        setCharCoordinates(PLAYER_PED, zones[curZone].zcenter.x, zones[curZone].zcenter.y, 550)
                        wait(0)
                        local h = getCharHeightAboveGround(PLAYER_PED)
                        setCharCoordinates(PLAYER_PED, zones[curZone].zcenter.x, zones[curZone].zcenter.y, (550-h)+3)
                    end)
                end
                imgui.PopStyleColor(4)
                imgui.EndPopup()
            end
            imgui.EndChild()
            imgui.SameLine()
            imgui.BeginChild('##zone_progress', imgui.ImVec2(202, 459), true)
            imgui.PushFont(big_font)
            imgui.Text(u8'Рейтинг банд:')
            imgui.PopFont()
            imgui.Text('')

            imgui.Text('The Ballas:');         imgui.SameLine(); imgui.TextDisabled(tostring(ballas)..u8' территорий')
            imgui.Text('Los Santos Vagos:');   imgui.SameLine(); imgui.TextDisabled(tostring(vagos)..u8' территорий')
            imgui.Text('Grove Street:');       imgui.SameLine(); imgui.TextDisabled(tostring(grove)..u8' территорий')
            imgui.Text('Varios Los Aztecas:'); imgui.SameLine(); imgui.TextDisabled(tostring(aztec)..u8' территорий')
            imgui.Text('The Rifa:');           imgui.SameLine(); imgui.TextDisabled(tostring(rifa)..u8' территорий')

            imgui.EndChild()
        end
-- end frame

function event.onCreateGangZone(zoneId, squareStart, squareEnd, color)
    local x = (squareStart.x+squareEnd.x)/2
    local y = (squareStart.y+squareEnd.y)/2
    local frac, fcolor = 0, color

    if color == -1426128692 then
        frac = 9
        fcolor = 0xCC00FFFF
    elseif color == -1442787841 then
        frac = 10
        fcolor = 0xffcd00FF
    elseif color == -1442799872 then
        frac = 12
        fcolor = 0x009900FF
    elseif color == -1426102682 then
        frac = 15
        fcolor = 0x6666FFFF
    elseif color == -1426076672 then
        frac = 14
        fcolor = 0x00CCFFFF
    end

    zones[zoneId] = {
        zcenter = {x = x, y = y},
        zstart  = {x = squareStart.x, y = squareStart.y},
        zend    = {x = squareEnd.x, y = squareEnd.y},
        zfrac   = frac,
        zcolor  = fcolor
    }
end

у тебя i была вне цикла, и там еще порядок цветовых каналов неправильный был, потести
 

альтушка

Активный
Автор темы
308
29
Скорее всего сервак создает гангзоны только 1 раз при подключении к серверу, так что попробуй просто перезайти на сервак и не перезагружая скрипт открыть менюшку
Я уже попытался это сделать, но увы, не помогает.