Zaloguj się by uzyskać pełen dostęp. Nie masz jeszcze konta? Założ je już teraz w kilka sekund.

Wysłany: 2023-05-01, 16:20


Lajcior1







Wiek: 32
Na forum: 1407 dni
Posty: 4
Nick w MP: Sehen

Piwa: 4

Respekt: 50

nie pokazuje mi si? blip kt?ry jest przeniesiony z interioru do otwartego interioru

Kod:

local data = {

togglePanel = false,
scrollPos = {k=1, m=15, n=15},
markerPos = createMarker(-2290.71, -47.86, 35.32, "cylinder", 1, 255, 175, 0, 55),

}


Komentarz N0TH1NG dodany 2023-05-02, 14:42Dodałem tagi [code][/code]
Ostatnio zmieniony przez N0TH1NG 2023-05-02, 14:41, w całości zmieniany 1 raz  
Postaw piwo autorowi tego posta
 

 
Więcej szczegółów
Wystawiono 1 piw(a):
borsuk
Wysłany: 2023-05-02, 14:44


N0TH1NG

Mod-Team






Wiek: 20
Na forum: 2846 dni
Posty: 297
Nick w MP: N0TH1NG

Piwa: 630

Respekt: 830
Respekt: 830Respekt: 830

Zapewne nie zmieni?e? mu interioru. Podaj ca?y kod, z tego nic nie wywr??ymy oraz ewentualne b??dy z debugscript, je?li wyst?puj?.

Postaw piwo autorowi tego posta
 

 
Więcej szczegółów
Wystawiono 1 piw(a):
borsuk
Wysłany: 2023-05-02, 16:36


Lajcior1







Wiek: 32
Na forum: 1407 dni
Posty: 4
Nick w MP: Sehen

Piwa: 4

Respekt: 50

c.lua

local data = {

    togglePanel = false,
    scrollPos = {k=1, m=15, n=15},
    markerPos = createMarker(-2290.71, -47.86, 35.32, "cylinder", 1, 255, 175, 0, 55),

}

local skins = {

    {0, "Skin domy?lny", 0},
    {2, nil, 69},
    {7, nil, 100},
    {9, nil, 100},
    {10, nil, 100},
    {11, nil, 100},
    {12, nil, 100},
    {15, nil, 100},
    {17, nil, 100},
    {18, nil, 100},
    {19, nil, 100},
    {20, nil, 100},
    {21, nil, 100},
    {22, nil, 100},
    {23, nil, 100},
    {24, nil, 100},
    {25, nil, 100},
    {26, nil, 100},
    {28, nil, 100},
    {29, nil, 100},
    {30, nil, 100},
    {32, nil, 100},
    {33, nil, 100},
    {34, nil, 100},
    {35, nil, 100},
    {36, nil, 100},
    {37, nil, 100},
    {40, nil, 100},
    {41, nil, 100},
    {44, nil, 100},
    {46, nil, 100},
    {49, nil, 100},
    {51, nil, 100},
    {57, nil, 100},
    {59, nil, 100},
    {61, nil, 100},
    {62, nil, 100},
    {67, nil, 100},
    {66, nil, 100},
    {68, nil, 100},
    {73, nil, 100},
    {78, nil, 100},
    {82, nil, 100},
    {83, nil, 100},
    {84, nil, 100},
    {85, nil, 100},
    {91, nil, 100},
    {93, nil, 100},
    {97, nil, 100},
    {98, nil, 100},
    {100, nil, 100},
    {101, nil, 100},
    {102, nil, 100},
    {103, nil, 100},
    {104, nil, 100},
    {105, nil, 100},
    {106, nil, 100},
    {107, nil, 100},
    {108, nil, 100},
    {109, nil, 100},
    {110, nil, 100},
    {111, nil, 100},
    {112, nil, 100},
    {113, nil, 100},
    {114, nil, 100},
    {115, nil, 100},
    {116, nil, 100},
    {121, nil, 100},
    {122, nil, 100},
    {126, nil, 100},
    {127, nil, 100},
    {129, nil, 100},
    {133, nil, 100},
    {134, nil, 100},
    {135, nil, 100},
    {136, nil, 100},
    {137, nil, 100},
    {142, nil, 100},
    {144, nil, 100},
    {146, nil, 100},
    {157, nil, 100},
    {158, nil, 100},
    {159, nil, 100},
    {160, nil, 100},
    {161, nil, 100},
    {162, nil, 100},
    {173, nil, 100},
    {174, nil, 100},
    {175, nil, 100},
    {176, nil, 100},
    {177, nil, 100},
    {178, nil, 100},
    {179, nil, 100},
    {180, nil, 100},
    {181, nil, 100},
    {195, nil, 100},
    {198, nil, 100},
    {199, nil, 100},
    {200, nil, 100},
    {201, nil, 100},
    {202, nil, 100},
    {203, nil, 100},
    {204, nil, 100},
    {206, nil, 100},
    {228, nil, 100},
    {230, nil, 100},
    {241, nil, 100},
    {242, nil, 100},
    {249, nil, 100},
    {250, nil, 100},
    {252, nil, 100},
    {255, nil, 100},
    {258, nil, 100},
    {259, nil, 100},
    {264, nil, 100},
    {292, nil, 100},
    {293, nil, 100},
    {294, nil, 100},
    {299, nil, 100},
    {306, nil, 100},
   
    {1, nil, 500, true},
    {14, nil, 500, true},
    {43, nil, 500, true},
    {47, nil, 500, true},
    {52, nil, 500, true},
    {56, nil, 500, true},
    {63, nil, 500, true},
    {64, nil, 500, true},
    {75, nil, 500, true},
    {99, nil, 500, true},
    {132, nil, 500, true},
    {139, nil, 500, true},
    {140, nil, 500, true},
    {145, nil, 500, true},
    {168, nil, 500, true},
    {209, nil, 500, true},
    {216, nil, 500, true},
    {219, nil, 500, true},
    {222, nil, 500, true},
    {227, nil, 500, true},
    {232, nil, 500, true},
    {235, nil, 500, true},
    {238, nil, 500, true},
    {243, nil, 500, true},
    {244, nil, 500, true},
    {248, nil, 500, true},
    {254, nil, 500, true},
    {256, nil, 500, true},
    {262, nil, 500, true},
    {297, nil, 500, true},

}
local _temp = createPed(0, 0, 0, 3000)
setElementFrozen(_temp, true)

local _dxDrawImage = dxDrawImage
function dxDrawImage(x, ...)
    return _dxDrawImage(x+sx/2-230/zoom,...)
end

local _dxDrawRectangle = dxDrawRectangle
function dxDrawRectangle(x, ...)
    return _dxDrawRectangle(x+sx/2-230/zoom,...)
end

local _dxDrawText = dxDrawText
function dxDrawText(text, x, ...)
    return _dxDrawText(text, x+sx/2-230/zoom,...)
end

function doIOwnSkin(skinid)
    local data = getElementData(localPlayer, "player:skinShop") or {}
    return data[skinid]
end

function renderWindow()
    dxDrawRectangle(sx/2-200/zoom, sy/2-300/zoom, 410/zoom, 655/zoom, tocolor(25, 25, 25, 255))

    x = 0
    for i,v in ipairs(skins) do
        if i >= data.scrollPos.k and i <= data.scrollPos.n then 
            x = x + 1
            offsetY = (40/zoom)*(x-1)

            dxDrawRectangle(sx/2-190/zoom, sy/2-290/zoom+offsetY, 380/zoom, 35/zoom, tocolor(35, 35, 35, 255))

            if v[4] then
                dxDrawImage(sx/2-180/zoom, sy/2-283/zoom+offsetY, 20/zoom, 20/zoom, "data/shirt.png", 0, 0, 0, tocolor(255, 200, 0, 200))
            else
                dxDrawImage(sx/2-180/zoom, sy/2-283/zoom+offsetY, 20/zoom, 20/zoom, "data/shirt.png", 0, 0, 0, tocolor(255, 255, 255, 200))
            end

            if v[2] ~= nil then
                if v[4] then
                    dxDrawText("" .. v[2].." #ffc800&#9733;", sx/2 - 150/zoom, sy/2 - 280/zoom + offsetY, nil, nil, tocolor(200, 200, 200, 255), 1, font5, "left", "center", false, false, false, true, false)
                else
                    dxDrawText("" .. v[2], sx/2 - 150/zoom, sy/2 - 280/zoom + offsetY, nil, nil, tocolor(200, 200, 200, 255), 1, font5, "left", "center", false, false, false, false, false)
                end
            else
                if v[4] then
                    dxDrawText("Skin ID " .. v[1].." #ffc800&#9733;", sx/2 - 150/zoom, sy/2 - 280/zoom + offsetY, nil, nil, tocolor(200, 200, 200, 255), 1, font5, "left", "center", false, false, false, true, false)
                else
                    dxDrawText("Skin ID " .. v[1], sx/2 - 150/zoom, sy/2 - 280/zoom + offsetY, nil, nil, tocolor(200, 200, 200, 255), 1, font5, "left", "center", false, false, false, false, false)
                end
            end
            
            
            if v[5] then
                dxDrawText("W posiadaniu", sx/2 - 150/zoom, sy/2 - 265/zoom + offsetY, nil, nil, tocolor(200, 200, 55, 255), 1, font7, "left", "center", false, false, false, false, false)
            elseif v[3] and v[3] ~= 0 then
                dxDrawText(""..v[3].." PLN", sx/2 - 150/zoom, sy/2 - 265/zoom + offsetY, nil, nil, tocolor(55, 200, 55, 255), 1, font7, "left", "center", false, false, false, false, false)
            else
                dxDrawText("Skin jest darmowy", sx/2 - 150/zoom, sy/2 - 265/zoom + offsetY, nil, nil, tocolor(25, 144, 255, 255), 1, font7, "left", "center", false, false, false, false, false)
            end
            
            if doIOwnSkin(v[1]) or v[3] == 0 then
                if isMouseIn(sx/2+65/zoom, sy/2-290/zoom+offsetY, 125/zoom, 35/zoom) then
                    dxDrawRectangle(sx/2+65/zoom, sy/2-290/zoom+offsetY, 125/zoom, 35/zoom, tocolor(45, 45, 45, 175))
                    dxDrawImage(sx/2+75/zoom, sy/2-283/zoom+offsetY, 20/zoom, 20/zoom, "data/take.png", 0, 0, 0, tocolor(255, 255, 25, 175))
                    dxDrawText("Zmie? skin", sx/2 + 105/zoom, sy/2 - 274/zoom + offsetY, nil, nil, tocolor(200, 200, 200, 175), 1, font6, "left", "center", false, false, false, false, false)

                    if getKeyState("mouse1") then
                        setElementModel(localPlayer, v[1])
                        triggerServerEvent("przebieralniaZmienSkina", localPlayer, v[1])
                    end
                else
                    dxDrawRectangle(sx/2+65/zoom, sy/2-290/zoom+offsetY, 125/zoom, 35/zoom, tocolor(45, 45, 45, 255))
                    dxDrawImage(sx/2+75/zoom, sy/2-283/zoom+offsetY, 20/zoom, 20/zoom, "data/take.png", 0, 0, 0, tocolor(255, 255, 25, 255))
                    dxDrawText("Zmie? skin", sx/2 + 105/zoom, sy/2 - 274/zoom + offsetY, nil, nil, tocolor(200, 200, 200, 255), 1, font6, "left", "center", false, false, false, false, false)
                end
            else
                if isMouseIn(sx/2+65/zoom, sy/2-290/zoom+offsetY, 125/zoom, 35/zoom) then
                    dxDrawRectangle(sx/2+65/zoom, sy/2-290/zoom+offsetY, 125/zoom, 35/zoom, tocolor(45, 45, 45, 175))
                    dxDrawImage(sx/2+75/zoom, sy/2-283/zoom+offsetY, 20/zoom, 20/zoom, "data/buy.png", 0, 0, 0, tocolor(55, 255, 55, 175))
                    dxDrawText("Zakup skin", sx/2 + 105/zoom, sy/2 - 274/zoom + offsetY, nil, nil, tocolor(200, 200, 200, 175), 1, font6, "left", "center", false, false, false, false, false)
                
                    if getKeyState("mouse1") and getPlayerMoney(localPlayer) >= v[3] and not getElementData(localPlayer, "buywait") then
                        if v[4] then
                            if getElementData(localPlayer, "player:premiumplus") then
                                triggerServerEvent("przebieralniaKupSkina", localPlayer, v[3], v[1])
                                setElementData(localPlayer, "buywait", true)
                            end
                        else
                            triggerServerEvent("przebieralniaKupSkina", localPlayer, v[3], v[1])
                            setElementData(localPlayer, "buywait", true)
                        end
                    end
                else
                    dxDrawRectangle(sx/2+65/zoom, sy/2-290/zoom+offsetY, 125/zoom, 35/zoom, tocolor(45, 45, 45, 255))
                    dxDrawImage(sx/2+75/zoom, sy/2-283/zoom+offsetY, 20/zoom, 20/zoom, "data/buy.png", 0, 0, 0, tocolor(55, 255, 55, 255))
                    dxDrawText("Zakup skin", sx/2 + 105/zoom, sy/2 - 274/zoom + offsetY, nil, nil, tocolor(200, 200, 200, 255), 1, font6, "left", "center", false, false, false, false, false)
                end
            end
            
            if isMouseIn(sx/2+35/zoom, sy/2-283/zoom+offsetY, 20/zoom, 20/zoom) then
                dxDrawImage(sx/2+35/zoom, sy/2-283/zoom+offsetY, 20/zoom, 20/zoom, "data/eye.png", 0, 0, 0, tocolor(25, 175, 255, 175))
                cposX, cposY = getCursorPosition()
                cposX, cposY = cposX*sx, cposY*sy

                if getKeyState("mouse1") then
                    setElementModel(localPlayer, v[1])
                end

                dxDrawRectangle(cposX + 20/zoom, cposY + 20/zoom, 95/zoom, 25/zoom, tocolor(75, 75, 75, 255), true)
                dxDrawText("Podgl?d skina", cposX + 25/zoom, cposY + 30/zoom, nil, nil, tocolor(200, 200, 200, 255), 1, font6, "left", "center", false, false, true, false, false)
            else
                dxDrawImage(sx/2+35/zoom, sy/2-283/zoom+offsetY, 20/zoom, 20/zoom, "data/eye.png", 0, 0, 0, tocolor(25, 175, 255, 255))
            end
        end
    end
    drawScrollbar(skins, sx/2+195/zoom, sy/2-290/zoom, 595/zoom, data.scrollPos.m, data.scrollPos.k)

    if isMouseIn(sx/2 - 190/zoom, sy/2+315/zoom, 390/zoom, 30/zoom) then
        dxDrawRectangle(sx/2 - 190/zoom, sy/2+315/zoom, 390/zoom, 30/zoom, tocolor(125, 0, 0, 175))
        dxDrawText("Zamknij okno", sx/2 + 10/zoom, sy/2+328/zoom, nil, nil, tocolor(200, 200, 200, 175), 1, font6, "center", "center", false, false, false, false, false)
    else
        dxDrawRectangle(sx/2 - 190/zoom, sy/2+315/zoom, 390/zoom, 30/zoom, tocolor(125, 0, 0, 255))
        dxDrawText("Zamknij okno", sx/2 + 10/zoom, sy/2+328/zoom, nil, nil, tocolor(200, 200, 200, 200), 1, font6, "center", "center", false, false, false, false, false)
    end
end

function openWindow(el)
    if el ~= getLocalPlayer() then return end

    addEventHandler("onClientRender", root, renderWindow)
    addEventHandler("onClientClick", root, onClick)
    showCursor(true)
    data.togglePanel = true
end

function closeWindow(el)
    if el ~= getLocalPlayer() then return end

    removeEventHandler("onClientRender", root, renderWindow)
    removeEventHandler("onClientClick", root, onClick)
    showCursor(false)
    data.togglePanel = false
    setElementModel(localPlayer, getElementData(localPlayer, "player:skin"))
end

addEventHandler("onClientResourceStart", resourceRoot, function()
    addEventHandler("onClientMarkerHit", data.markerPos, openWindow)
    addEventHandler("onClientMarkerLeave", data.markerPos, closeWindow)

    setElementData(data.markerPos, "marker:title", "Przebieralnia")
    setElementData(data.markerPos, "marker:desc", "Ubierz si? cz?owieku!")
    setElementData(data.markerPos, "marker:icon", "tshirt")
    setElementInterior(data.markerPos, 1)
end)

function onClick(btn, state)
    if btn == 'left' and state == 'down' and data.togglePanel == true then
        if isMouseIn(sx/2 - 190/zoom, sy/2+315/zoom, 390/zoom, 30/zoom) then
            removeEventHandler("onClientRender", root, renderWindow)
            removeEventHandler("onClientClick", root, onClick)
            showCursor(false)
            data.togglePanel = false
            setElementModel(localPlayer, getElementData(localPlayer, "player:skin"))
        end
    end
end

bindKey("mouse_wheel_down", "both", function()
    if data.togglePanel == true then
        scrollUp()
    end
end)

bindKey("mouse_wheel_up", "both", function()
    if data.togglePanel == true then
        scrollDown()
    end
end)

function scrollDown()
    if data.scrollPos.n == data.scrollPos.m then return end
    data.scrollPos.k = data.scrollPos.k-1
    data.scrollPos.n = data.scrollPos.n-1
end

function scrollUp()
    if data.scrollPos.n >= #skins then return end
    data.scrollPos.k = data.scrollPos.k+1
    data.scrollPos.n = data.scrollPos.n+1
end

function isMouseIn(psx,psy,pssx,pssy,abx,aby)
    if not isCursorShowing() then return end
    psx = psx + sx/2 - 230/zoom

    cx,cy = getCursorPosition()
    cx,cy = cx*sx, cy*sy
    if cx >= psx and cx <= psx+pssx and cy >= psy and cy <= psy+pssy then
        return true, cx, cy
    else
        return false
    end
end

function drawScrollbar(table, x, y, height, m_, k_)
    dxDrawRectangle(x, y, 4, height, tocolor(255, 175, 0, 55))

    if #table > m_ then
        local scrollbarHeight = height/#table

           if k_ == 1 then 
            scrollbarPos = y
        elseif k_ > 1 then 
            scrollbarPos = ((k_)*scrollbarHeight)+y
        end

        if #table <= m_ then 
            scrollbarHeight = height
        end

        dxDrawRectangle(x, scrollbarPos, 4, scrollbarHeight*(m_-1), tocolor(255, 175, 0, 125))
    else
        dxDrawRectangle(x, y, 4, height, tocolor(255, 175, 0, 125))
    end
end


Ostatnio zmieniony przez N0TH1NG 2023-05-02, 17:06, w całości zmieniany 1 raz  
Postaw piwo autorowi tego posta
 

 
Więcej szczegółów
Wystawiono 1 piw(a):
borsuk
Wysłany: 2023-05-02, 17:07


N0TH1NG

Mod-Team






Wiek: 20
Na forum: 2846 dni
Posty: 297
Nick w MP: N0TH1NG

Piwa: 630

Respekt: 830
Respekt: 830Respekt: 830

"Lajcior1" napisał/a:

c.lua

local data = {

    togglePanel = false,
    scrollPos = {k=1, m=15, n=15},
    markerPos = createMarker(-2290.71, -47.86, 35.32, "cylinder", 1, 255, 175, 0, 55),

}

local skins = {

    {0, "Skin domy?lny", 0},
    {2, nil, 69},
    {7, nil, 100},
    {9, nil, 100},
    {10, nil, 100},
    {11, nil, 100},
    {12, nil, 100},
    {15, nil, 100},
    {17, nil, 100},
    {18, nil, 100},
    {19, nil, 100},
    {20, nil, 100},
    {21, nil, 100},
    {22, nil, 100},
    {23, nil, 100},
    {24, nil, 100},
    {25, nil, 100},
    {26, nil, 100},
    {28, nil, 100},
    {29, nil, 100},
    {30, nil, 100},
    {32, nil, 100},
    {33, nil, 100},
    {34, nil, 100},
    {35, nil, 100},
    {36, nil, 100},
    {37, nil, 100},
    {40, nil, 100},
    {41, nil, 100},
    {44, nil, 100},
    {46, nil, 100},
    {49, nil, 100},
    {51, nil, 100},
    {57, nil, 100},
    {59, nil, 100},
    {61, nil, 100},
    {62, nil, 100},
    {67, nil, 100},
    {66, nil, 100},
    {68, nil, 100},
    {73, nil, 100},
    {78, nil, 100},
    {82, nil, 100},
    {83, nil, 100},
    {84, nil, 100},
    {85, nil, 100},
    {91, nil, 100},
    {93, nil, 100},
    {97, nil, 100},
    {98, nil, 100},
    {100, nil, 100},
    {101, nil, 100},
    {102, nil, 100},
    {103, nil, 100},
    {104, nil, 100},
    {105, nil, 100},
    {106, nil, 100},
    {107, nil, 100},
    {108, nil, 100},
    {109, nil, 100},
    {110, nil, 100},
    {111, nil, 100},
    {112, nil, 100},
    {113, nil, 100},
    {114, nil, 100},
    {115, nil, 100},
    {116, nil, 100},
    {121, nil, 100},
    {122, nil, 100},
    {126, nil, 100},
    {127, nil, 100},
    {129, nil, 100},
    {133, nil, 100},
    {134, nil, 100},
    {135, nil, 100},
    {136, nil, 100},
    {137, nil, 100},
    {142, nil, 100},
    {144, nil, 100},
    {146, nil, 100},
    {157, nil, 100},
    {158, nil, 100},
    {159, nil, 100},
    {160, nil, 100},
    {161, nil, 100},
    {162, nil, 100},
    {173, nil, 100},
    {174, nil, 100},
    {175, nil, 100},
    {176, nil, 100},
    {177, nil, 100},
    {178, nil, 100},
    {179, nil, 100},
    {180, nil, 100},
    {181, nil, 100},
    {195, nil, 100},
    {198, nil, 100},
    {199, nil, 100},
    {200, nil, 100},
    {201, nil, 100},
    {202, nil, 100},
    {203, nil, 100},
    {204, nil, 100},
    {206, nil, 100},
    {228, nil, 100},
    {230, nil, 100},
    {241, nil, 100},
    {242, nil, 100},
    {249, nil, 100},
    {250, nil, 100},
    {252, nil, 100},
    {255, nil, 100},
    {258, nil, 100},
    {259, nil, 100},
    {264, nil, 100},
    {292, nil, 100},
    {293, nil, 100},
    {294, nil, 100},
    {299, nil, 100},
    {306, nil, 100},
   
    {1, nil, 500, true},
    {14, nil, 500, true},
    {43, nil, 500, true},
    {47, nil, 500, true},
    {52, nil, 500, true},
    {56, nil, 500, true},
    {63, nil, 500, true},
    {64, nil, 500, true},
    {75, nil, 500, true},
    {99, nil, 500, true},
    {132, nil, 500, true},
    {139, nil, 500, true},
    {140, nil, 500, true},
    {145, nil, 500, true},
    {168, nil, 500, true},
    {209, nil, 500, true},
    {216, nil, 500, true},
    {219, nil, 500, true},
    {222, nil, 500, true},
    {227, nil, 500, true},
    {232, nil, 500, true},
    {235, nil, 500, true},
    {238, nil, 500, true},
    {243, nil, 500, true},
    {244, nil, 500, true},
    {248, nil, 500, true},
    {254, nil, 500, true},
    {256, nil, 500, true},
    {262, nil, 500, true},
    {297, nil, 500, true},

}
local _temp = createPed(0, 0, 0, 3000)
setElementFrozen(_temp, true)

local _dxDrawImage = dxDrawImage
function dxDrawImage(x, ...)
    return _dxDrawImage(x+sx/2-230/zoom,...)
end

local _dxDrawRectangle = dxDrawRectangle
function dxDrawRectangle(x, ...)
    return _dxDrawRectangle(x+sx/2-230/zoom,...)
end

local _dxDrawText = dxDrawText
function dxDrawText(text, x, ...)
    return _dxDrawText(text, x+sx/2-230/zoom,...)
end

function doIOwnSkin(skinid)
    local data = getElementData(localPlayer, "player:skinShop") or {}
    return data[skinid]
end

function renderWindow()
    dxDrawRectangle(sx/2-200/zoom, sy/2-300/zoom, 410/zoom, 655/zoom, tocolor(25, 25, 25, 255))

    x = 0
    for i,v in ipairs(skins) do
        if i >= data.scrollPos.k and i <= data.scrollPos.n then 
            x = x + 1
            offsetY = (40/zoom)*(x-1)

            dxDrawRectangle(sx/2-190/zoom, sy/2-290/zoom+offsetY, 380/zoom, 35/zoom, tocolor(35, 35, 35, 255))

            if v[4] then
                dxDrawImage(sx/2-180/zoom, sy/2-283/zoom+offsetY, 20/zoom, 20/zoom, "data/shirt.png", 0, 0, 0, tocolor(255, 200, 0, 200))
            else
                dxDrawImage(sx/2-180/zoom, sy/2-283/zoom+offsetY, 20/zoom, 20/zoom, "data/shirt.png", 0, 0, 0, tocolor(255, 255, 255, 200))
            end

            if v[2] ~= nil then
                if v[4] then
                    dxDrawText("" .. v[2].." #ffc800&#9733;", sx/2 - 150/zoom, sy/2 - 280/zoom + offsetY, nil, nil, tocolor(200, 200, 200, 255), 1, font5, "left", "center", false, false, false, true, false)
                else
                    dxDrawText("" .. v[2], sx/2 - 150/zoom, sy/2 - 280/zoom + offsetY, nil, nil, tocolor(200, 200, 200, 255), 1, font5, "left", "center", false, false, false, false, false)
                end
            else
                if v[4] then
                    dxDrawText("Skin ID " .. v[1].." #ffc800&#9733;", sx/2 - 150/zoom, sy/2 - 280/zoom + offsetY, nil, nil, tocolor(200, 200, 200, 255), 1, font5, "left", "center", false, false, false, true, false)
                else
                    dxDrawText("Skin ID " .. v[1], sx/2 - 150/zoom, sy/2 - 280/zoom + offsetY, nil, nil, tocolor(200, 200, 200, 255), 1, font5, "left", "center", false, false, false, false, false)
                end
            end
            
            
            if v[5] then
                dxDrawText("W posiadaniu", sx/2 - 150/zoom, sy/2 - 265/zoom + offsetY, nil, nil, tocolor(200, 200, 55, 255), 1, font7, "left", "center", false, false, false, false, false)
            elseif v[3] and v[3] ~= 0 then
                dxDrawText(""..v[3].." PLN", sx/2 - 150/zoom, sy/2 - 265/zoom + offsetY, nil, nil, tocolor(55, 200, 55, 255), 1, font7, "left", "center", false, false, false, false, false)
            else
                dxDrawText("Skin jest darmowy", sx/2 - 150/zoom, sy/2 - 265/zoom + offsetY, nil, nil, tocolor(25, 144, 255, 255), 1, font7, "left", "center", false, false, false, false, false)
            end
            
            if doIOwnSkin(v[1]) or v[3] == 0 then
                if isMouseIn(sx/2+65/zoom, sy/2-290/zoom+offsetY, 125/zoom, 35/zoom) then
                    dxDrawRectangle(sx/2+65/zoom, sy/2-290/zoom+offsetY, 125/zoom, 35/zoom, tocolor(45, 45, 45, 175))
                    dxDrawImage(sx/2+75/zoom, sy/2-283/zoom+offsetY, 20/zoom, 20/zoom, "data/take.png", 0, 0, 0, tocolor(255, 255, 25, 175))
                    dxDrawText("Zmie? skin", sx/2 + 105/zoom, sy/2 - 274/zoom + offsetY, nil, nil, tocolor(200, 200, 200, 175), 1, font6, "left", "center", false, false, false, false, false)

                    if getKeyState("mouse1") then
                        setElementModel(localPlayer, v[1])
                        triggerServerEvent("przebieralniaZmienSkina", localPlayer, v[1])
                    end
                else
                    dxDrawRectangle(sx/2+65/zoom, sy/2-290/zoom+offsetY, 125/zoom, 35/zoom, tocolor(45, 45, 45, 255))
                    dxDrawImage(sx/2+75/zoom, sy/2-283/zoom+offsetY, 20/zoom, 20/zoom, "data/take.png", 0, 0, 0, tocolor(255, 255, 25, 255))
                    dxDrawText("Zmie? skin", sx/2 + 105/zoom, sy/2 - 274/zoom + offsetY, nil, nil, tocolor(200, 200, 200, 255), 1, font6, "left", "center", false, false, false, false, false)
                end
            else
                if isMouseIn(sx/2+65/zoom, sy/2-290/zoom+offsetY, 125/zoom, 35/zoom) then
                    dxDrawRectangle(sx/2+65/zoom, sy/2-290/zoom+offsetY, 125/zoom, 35/zoom, tocolor(45, 45, 45, 175))
                    dxDrawImage(sx/2+75/zoom, sy/2-283/zoom+offsetY, 20/zoom, 20/zoom, "data/buy.png", 0, 0, 0, tocolor(55, 255, 55, 175))
                    dxDrawText("Zakup skin", sx/2 + 105/zoom, sy/2 - 274/zoom + offsetY, nil, nil, tocolor(200, 200, 200, 175), 1, font6, "left", "center", false, false, false, false, false)
                
                    if getKeyState("mouse1") and getPlayerMoney(localPlayer) >= v[3] and not getElementData(localPlayer, "buywait") then
                        if v[4] then
                            if getElementData(localPlayer, "player:premiumplus") then
                                triggerServerEvent("przebieralniaKupSkina", localPlayer, v[3], v[1])
                                setElementData(localPlayer, "buywait", true)
                            end
                        else
                            triggerServerEvent("przebieralniaKupSkina", localPlayer, v[3], v[1])
                            setElementData(localPlayer, "buywait", true)
                        end
                    end
                else
                    dxDrawRectangle(sx/2+65/zoom, sy/2-290/zoom+offsetY, 125/zoom, 35/zoom, tocolor(45, 45, 45, 255))
                    dxDrawImage(sx/2+75/zoom, sy/2-283/zoom+offsetY, 20/zoom, 20/zoom, "data/buy.png", 0, 0, 0, tocolor(55, 255, 55, 255))
                    dxDrawText("Zakup skin", sx/2 + 105/zoom, sy/2 - 274/zoom + offsetY, nil, nil, tocolor(200, 200, 200, 255), 1, font6, "left", "center", false, false, false, false, false)
                end
            end
            
            if isMouseIn(sx/2+35/zoom, sy/2-283/zoom+offsetY, 20/zoom, 20/zoom) then
                dxDrawImage(sx/2+35/zoom, sy/2-283/zoom+offsetY, 20/zoom, 20/zoom, "data/eye.png", 0, 0, 0, tocolor(25, 175, 255, 175))
                cposX, cposY = getCursorPosition()
                cposX, cposY = cposX*sx, cposY*sy

                if getKeyState("mouse1") then
                    setElementModel(localPlayer, v[1])
                end

                dxDrawRectangle(cposX + 20/zoom, cposY + 20/zoom, 95/zoom, 25/zoom, tocolor(75, 75, 75, 255), true)
                dxDrawText("Podgl?d skina", cposX + 25/zoom, cposY + 30/zoom, nil, nil, tocolor(200, 200, 200, 255), 1, font6, "left", "center", false, false, true, false, false)
            else
                dxDrawImage(sx/2+35/zoom, sy/2-283/zoom+offsetY, 20/zoom, 20/zoom, "data/eye.png", 0, 0, 0, tocolor(25, 175, 255, 255))
            end
        end
    end
    drawScrollbar(skins, sx/2+195/zoom, sy/2-290/zoom, 595/zoom, data.scrollPos.m, data.scrollPos.k)

    if isMouseIn(sx/2 - 190/zoom, sy/2+315/zoom, 390/zoom, 30/zoom) then
        dxDrawRectangle(sx/2 - 190/zoom, sy/2+315/zoom, 390/zoom, 30/zoom, tocolor(125, 0, 0, 175))
        dxDrawText("Zamknij okno", sx/2 + 10/zoom, sy/2+328/zoom, nil, nil, tocolor(200, 200, 200, 175), 1, font6, "center", "center", false, false, false, false, false)
    else
        dxDrawRectangle(sx/2 - 190/zoom, sy/2+315/zoom, 390/zoom, 30/zoom, tocolor(125, 0, 0, 255))
        dxDrawText("Zamknij okno", sx/2 + 10/zoom, sy/2+328/zoom, nil, nil, tocolor(200, 200, 200, 200), 1, font6, "center", "center", false, false, false, false, false)
    end
end

function openWindow(el)
    if el ~= getLocalPlayer() then return end

    addEventHandler("onClientRender", root, renderWindow)
    addEventHandler("onClientClick", root, onClick)
    showCursor(true)
    data.togglePanel = true
end

function closeWindow(el)
    if el ~= getLocalPlayer() then return end

    removeEventHandler("onClientRender", root, renderWindow)
    removeEventHandler("onClientClick", root, onClick)
    showCursor(false)
    data.togglePanel = false
    setElementModel(localPlayer, getElementData(localPlayer, "player:skin"))
end

addEventHandler("onClientResourceStart", resourceRoot, function()
    addEventHandler("onClientMarkerHit", data.markerPos, openWindow)
    addEventHandler("onClientMarkerLeave", data.markerPos, closeWindow)

    setElementData(data.markerPos, "marker:title", "Przebieralnia")
    setElementData(data.markerPos, "marker:desc", "Ubierz si? cz?owieku!")
    setElementData(data.markerPos, "marker:icon", "tshirt")
    setElementInterior(data.markerPos, 1)
end)

function onClick(btn, state)
    if btn == 'left' and state == 'down' and data.togglePanel == true then
        if isMouseIn(sx/2 - 190/zoom, sy/2+315/zoom, 390/zoom, 30/zoom) then
            removeEventHandler("onClientRender", root, renderWindow)
            removeEventHandler("onClientClick", root, onClick)
            showCursor(false)
            data.togglePanel = false
            setElementModel(localPlayer, getElementData(localPlayer, "player:skin"))
        end
    end
end

bindKey("mouse_wheel_down", "both", function()
    if data.togglePanel == true then
        scrollUp()
    end
end)

bindKey("mouse_wheel_up", "both", function()
    if data.togglePanel == true then
        scrollDown()
    end
end)

function scrollDown()
    if data.scrollPos.n == data.scrollPos.m then return end
    data.scrollPos.k = data.scrollPos.k-1
    data.scrollPos.n = data.scrollPos.n-1
end

function scrollUp()
    if data.scrollPos.n >= #skins then return end
    data.scrollPos.k = data.scrollPos.k+1
    data.scrollPos.n = data.scrollPos.n+1
end

function isMouseIn(psx,psy,pssx,pssy,abx,aby)
    if not isCursorShowing() then return end
    psx = psx + sx/2 - 230/zoom

    cx,cy = getCursorPosition()
    cx,cy = cx*sx, cy*sy
    if cx >= psx and cx <= psx+pssx and cy >= psy and cy <= psy+pssy then
        return true, cx, cy
    else
        return false
    end
end

function drawScrollbar(table, x, y, height, m_, k_)
    dxDrawRectangle(x, y, 4, height, tocolor(255, 175, 0, 55))

    if #table > m_ then
        local scrollbarHeight = height/#table

           if k_ == 1 then 
            scrollbarPos = y
        elseif k_ > 1 then 
            scrollbarPos = ((k_)*scrollbarHeight)+y
        end

        if #table <= m_ then 
            scrollbarHeight = height
        end

        dxDrawRectangle(x, scrollbarPos, 4, scrollbarHeight*(m_-1), tocolor(255, 175, 0, 125))
    else
        dxDrawRectangle(x, y, 4, height, tocolor(255, 175, 0, 125))
    end
end

Podmie? t? linijk?:
setElementInterior(data.markerPos, 1)

na:
setElementInterior(data.markerPos, 0)


Postaw piwo autorowi tego posta
 

 
Więcej szczegółów
Wystawiono 2 piw(a):
Lajcior1, borsuk
Tagi: blip
Anonymous





Na forum: 245 dni
Posty: 1



Anonymous Koniecznie zajrzyj na:






Skocz do:  
Wyświetl posty z ostatnich:   
GTAONLINE.PL » JĘZYKI PROGRAMOWANIA » LUA » blip Ten temat jest zablokowany bez możliwości zmiany postów lub pisania odpowiedzi

Nie możesz pisać nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz głosować w ankietach
Dodaj temat do Ulubionych
Wersja do druku