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

Wysłany: 2018-02-09, 17:38


AppleSir

Majster LUA






Wiek: 28
Na forum: 3187 dni
Posty: 19
Nick w MP: Przybysz



Respekt: 45,3

Witam mam problem z scoreboardem. Chcia?bym aby S?u?ba By?a na grupy acl np. ?e jestem w acl SAPD i chc? aby pisa?o w S?u?bie SAPD.

jak co? S?u?ba to Duty



serdeczne dzi?ki :piwo:

Postaw piwo autorowi tego posta
 

 
Wysłany: 2018-02-09, 17:39


Nexisten

Moderator






Wiek: 22
Na forum: 4249 dni
Posty: 552
Nick w MP: Nexisten

Piwa: 1486

Respekt: 287,3
Respekt: 287,3Respekt: 287,3Respekt: 287,3

Podaj ca?y kod odpowiadaj?cy za wy?wietlanie scoreboard, najlepiej w znacznikach [lua.]

Postaw piwo autorowi tego posta
 

 
Wysłany: 2018-02-09, 17:41


AppleSir

Majster LUA






Wiek: 28
Na forum: 3187 dni
Posty: 19
Nick w MP: Przybysz



Respekt: 45,3

local scoreFunc = {}
local screenW, screenH = guiGetScreenSize()
local gracze = "?"
scoreFunc.page = 1

scoreFunc.onPage = 20

scoreFunc.renderData = {screenW * 0.2723, screenH * 0.1497, screenW * 0.4561, screenH * 0.7005}

function scoreFunc.sort(op1, op2)
    if isElement(op1) and isElement(op2) then
        return getElementData(op1, "id") < getElementData(op2, "id")
    end
end

local czcionka = "default-bold"
local czcionka2 = "default-bold"
local id = "id"
local dbid = "dbid"
local repka = "rp"
local organizacja = "Organizacja"
local duty = "faction"

function scoreFunc.render()
    local allPlayers = {}
    for k, v in ipairs(getElementsByType("player")) do
        if v ~= localPlayer then
            table.insert(allPlayers, v)
        end
    end
    table.sort(allPlayers, scoreFunc.sort)
    local _allPlayers = allPlayers
    allPlayers = {}
    table.insert(allPlayers, localPlayer)
    for i = 1, #_allPlayers do
        allPlayers[i + 1] = _allPlayers[i]
    end
    _allPlayers = nil

    local i = 1
    gracze = #allPlayers
    dxDrawRectangle(scoreFunc.renderData[1], scoreFunc.renderData[2], scoreFunc.renderData[3], scoreFunc.renderData[4]-30, tocolor(0, 0, 0, 150), false)
    dxDrawRectangle(screenW * 0.2892, screenH * 0.2279, screenW * 0.4180, screenH * 0.0430, tocolor(25, 75, 125, 155), false)
    for k, v in ipairs(allPlayers) do
        if k >= (scoreFunc.page - 1) * scoreFunc.onPage and k < scoreFunc.page * scoreFunc.onPage then
            local ping = getPlayerPing(v)
            local r, g, b = getPlayerNametagColor(v)
            dxDrawText((getElementData(v, id) or "0"), screenW * 0.3100, screenH * 0.2813 + (i - 1) * 20, screenW * 0.3175, screenH * 0.3177 + (i - 1) * 20, tocolor(255, 255, 255, 255), 1.00, czcionka, "center", "center", false, false, false, false, false)
            dxDrawText((getElementData(v, dbid) or " "), screenW * 0.3655, screenH * 0.2813 + (i - 1) * 20, screenW * 0.3650, screenH * 0.3177 + (i - 1) * 20, tocolor(255, 255, 255, 255), 1.00, czcionka, "center", "center", false, false, false, false, false)
            dxDrawText(getPlayerName(v), screenW * 0.4490, screenH * 0.2813 + (i - 1) * 20, screenW * 0.4495, screenH * 0.3177 + (i - 1) * 20, tocolor(r, g, b, 255), 1.00, czcionka, "center", "center", false, false, false, false, false)
            dxDrawText((getElementData(v, repka) or " "), screenW * 0.5200, screenH * 0.2813 + (i - 1) * 20, screenW * 0.5200, screenH * 0.3177 + (i - 1) * 20, tocolor(255, 255, 255, 255), 1.00, czcionka, "center", "center", false, false, false, false, false)
            dxDrawText((getElementData(v, organizacja) or " "), screenW * 0.5700, screenH * 0.2813 + (i - 1) * 20, screenW * 0.5700, screenH * 0.3177 + (i - 1) * 20, tocolor(255, 255, 255, 255), 1.00, czcionka, "center", "center", false, false, false, false, false)
            dxDrawText((getElementData(v, duty) or " "), screenW * 0.6300, screenH * 0.2813 + (i - 1) * 20, screenW * 0.6300, screenH * 0.3177 + (i - 1) * 20, tocolor(255, 255, 255, 255), 1.00, czcionka, "center", "center", false, false, false, false, false)
            dxDrawText(ping, screenW * 0.6815, screenH * 0.2813 + (i - 1) * 20, screenW * 0.6838, screenH * 0.3177 + (i - 1) * 20, tocolor(255, 255, 255, 255), 1.00, czcionka, "center", "center", false, false, false, false, false)
            i = i + 1
        end
    end
    dxDrawText("Forum serwera: new-mode.pl", (screenW * 0.2892) + 1, (screenH * 0.1628) + 1, (screenW * 0.4400) + 1, (screenH * 0.2148) + 1, tocolor(0, 0, 0, 255), 1.00, czcionka2, "left", "center", false, false, false, false, false)
    dxDrawText("Forum serwera: new-mode.pl", screenW * 0.2892, screenH * 0.1628, screenW * 0.4400, screenH * 0.2148, tocolor(255, 255, 255, 255), 1.00, czcionka2, "left", "center", false, false, false, false, false)
    dxDrawText("Graczy online: "..#allPlayers, (screenW * 0.5461) + 1, (screenH * 0.1615) + 1, (screenW * 0.6991) + 1, (screenH * 0.2148) + 1, tocolor(0, 0, 0, 255), 1.00, czcionka2, "right", "center", false, false, false, false, false)
    dxDrawText("Graczy online: "..#allPlayers, screenW * 0.5461, screenH * 0.1615, screenW * 0.6991, screenH * 0.2148, tocolor(255, 255, 255, 255), 1.00, czcionka2, "right", "center", false, false, false, false, false)
    dxDrawText("ID", (screenW * 0.2899) + 1, (screenH * 0.2292) + 1, (screenW * 0.3411) + 1, (screenH * 0.2721) + 1, tocolor(0, 0, 0, 255), 1.00, czcionka, "center", "center", false, false, false, false, false)
    dxDrawText("ID", screenW * 0.2899, screenH * 0.2292, screenW * 0.3411, screenH * 0.2721, tocolor(255, 255, 255, 255), 1.00, czcionka, "center", "center", false, false, false, false, false)
    dxDrawText("DBID", (screenW * 0.3655) + 1, (screenH * 0.2292) + 1, (screenW * 0.3650) + 1, (screenH * 0.2721) + 1, tocolor(0, 0, 0, 255), 1.00, czcionka, "center", "center", false, false, false, false, false)
    dxDrawText("DBID", screenW * 0.3655, screenH * 0.2292, screenW * 0.3650, screenH * 0.271, tocolor(255, 255, 255, 255), 1.00, czcionka, "center", "center", false, false, false, false, false)
    dxDrawText("Nazwa u?ytkownika", (screenW * 0.4527) + 1, (screenH * 0.2292) + 1, (screenW * 0.4545) + 1, (screenH * 0.2721) + 1, tocolor(0, 0, 0, 255), 1.00, czcionka, "center", "center", false, false, false, false, false)
    dxDrawText("Nazwa u?ytkownika", screenW * 0.4527, screenH * 0.2292, screenW * 0.4545, screenH * 0.2721, tocolor(255, 255, 255, 255), 1.00, czcionka, "center", "center", false, false, false, false, false)
    dxDrawText("mP", (screenW * 0.5200) + 1, (screenH * 0.2292) + 1, (screenW * 0.5200) + 1, (screenH * 0.2721) + 1, tocolor(0, 0, 0, 255), 1.00, czcionka, "center", "center", false, false, false, false, false)
    dxDrawText("mP", screenW * 0.5200, screenH * 0.2292, screenW * 0.5200, screenH * 0.2721, tocolor(255, 255, 255, 255), 1.00, czcionka, "center", "center", false, false, false, false, false)
    dxDrawText("Organizacja", (screenW * 0.5700) + 1, (screenH * 0.2292) + 1, (screenW * 0.5700) + 1, (screenH * 0.2721) + 1, tocolor(0, 0, 0, 255), 1.00, czcionka, "center", "center", false, false, false, false, false)
    dxDrawText("Organizacja", screenW * 0.5700, screenH * 0.2292, screenW * 0.5700, screenH * 0.2721, tocolor(255, 255, 255, 255), 1.00, czcionka, "center", "center", false, false, false, false, false)
    dxDrawText("S?u?ba", (screenW * 0.6300) + 1, (screenH * 0.2292) + 1, (screenW * 0.6300) + 1, (screenH * 0.2721) + 1, tocolor(0, 0, 0, 255), 1.00, czcionka, "center", "center", false, false, false, false, false)
    dxDrawText("S?u?ba", screenW * 0.6300, screenH * 0.2292, screenW * 0.6300, screenH * 0.2721, tocolor(255, 255, 255, 255), 1.00, czcionka, "center", "center", false, false, false, false, false)
    dxDrawText("Ping", screenW * 0.6654 + 1, screenH * 0.2292 + 1, screenW * 0.7064 + 1, screenH * 0.2721 + 1, tocolor(0, 0, 0, 255), 1.00, czcionka, "center", "center", false, false, false, false, false)
    dxDrawText("Ping", screenW * 0.6654, screenH * 0.2292, screenW * 0.7064, screenH * 0.2721, tocolor(255, 255, 255, 255), 1.00, czcionka, "center", "center", false, false, false, false, false)
end

function scoreFunc.bindKey(key, state)
    if state == "down" then
        addEventHandler("onClientRender", root, scoreFunc.render)
    else
        removeEventHandler("onClientRender", root, scoreFunc.render)
    end    
end
bindKey("TAB", "both", scoreFunc.bindKey)

bindKey("mouse_wheel_down", "down", function()
    local max = math.floor(gracze / scoreFunc.onPage)+1
    if max == scoreFunc.page then return end
    scoreFunc.page = scoreFunc.page + 1
end)

bindKey("mouse_wheel_up", "down", function()
    if scoreFunc.page == 1 then return end
    scoreFunc.page = scoreFunc.page - 1
end)


[ Dodano: 2018-02-09, 19:06 ]
vNeXxuS, masz tu

Komentarz .WhiteBlue dodany 2018-02-10, 21:45Stosuj znaczniki [lua] zamiast [code] do kodów LUA.
Ostatnio zmieniony przez .RiV 2018-02-10, 21:45, w całości zmieniany 1 raz  
Postaw piwo autorowi tego posta
 

 
Wysłany: 2018-02-09, 19:26


Ciastuuś

As-salamu alaykum






Wiek: 27
Na forum: 3212 dni
Posty: 800
Nick w MP: Ciastuuś

Piwa: 4304

Respekt: 640
Respekt: 640Respekt: 640

Wytestuj,


function nazwaRangi (player)
if( getElementType(player) == "player" ) then
account = getAccountName ( getPlayerAccount ( player ) )
if (isObjectInACLGroup ("user."..account,aclGetGroup ("NAZWA RANGI")) )then
rangaTabela = "NAZWA RANGI"
elseif (isObjectInACLGroup ("user."..account,aclGetGroup ("NAZWA RANGI")) )then
rangaTabela = "NAZWA RANGI"
elseif (isObjectInACLGroup ("user."..account,aclGetGroup ("NAZWA RANGI")) )then
rangaTabela = "NAZWA RANGI"
elseif (isObjectInACLGroup ("user."..account,aclGetGroup ("NAZWA RANGI")) )then
rangaTabela = "NAZWA RANGI"
end
else
error("B??d: jeden gracz musi by? argumentem")
end
return rangaTabela
end


Podpis
As-salamu alaykum
Postaw piwo autorowi tego posta
 

 
Wysłany: 2018-02-09, 19:33


AppleSir

Majster LUA






Wiek: 28
Na forum: 3187 dni
Posty: 19
Nick w MP: Przybysz



Respekt: 45,3

Ciastuu?, mi chodzi o to : ze pod S?u?ba pisze ranga z Acl

Podpis
Postaw piwo autorowi tego posta
 

 
Wysłany: 2018-02-09, 20:02


Kalizman







Wiek: 24
Na forum: 3792 dni
Posty: 1394

Piwa: 4624

Respekt: 358,8
Respekt: 358,8Respekt: 358,8Respekt: 358,8Respekt: 358,8

No to zamiast zmiennej rangaTabela, u?yj setElementData. Ca?a filozofia...

Postaw piwo autorowi tego posta
 

 
Wysłany: 2018-02-09, 20:04


Ciastuuś

As-salamu alaykum






Wiek: 27
Na forum: 3212 dni
Posty: 800
Nick w MP: Ciastuuś

Piwa: 4304

Respekt: 640
Respekt: 640Respekt: 640

Chcia?bym tylko doda?, ?e gotowc?w nie dajemy, cho? czasami daje, ale to znowu z czystej ?wiadomo?ci tego, ?e komu? pomog?. R?wnie dobrze da?em teraz gotowca nie do ko?ca, ale znowu liczysz na kogo? kto Ci zrobi ca?y kod. To na prawd? nie jest trudne, a Kalizman, dobrze wyt?umaczy? Ci co masz zrobi?, a wi?c do dzie?a. Gdy Ci nie wyjdzie u?ycie setElementData podaj b??dy oraz kod z zawart? funkcj?.

Podpis
As-salamu alaykum
Postaw piwo autorowi tego posta
 

 
Wysłany: 2018-02-09, 20:50


AppleSir

Majster LUA






Wiek: 28
Na forum: 3187 dni
Posty: 19
Nick w MP: Przybysz



Respekt: 45,3

Ciastuu?, dalej nie rozumiem... Dasz tego gotowca. Jestem Zielony w lua dopiero sie ucze.

Podpis
Postaw piwo autorowi tego posta
 

 
Tagi: scoreboardem :: acl
Anonymous





Na forum: 245 dni
Posty: 1



Anonymous Koniecznie zajrzyj na:






Skocz do:  
Wyświetl posty z ostatnich:   
GTAONLINE.PL » JĘZYKI PROGRAMOWANIA » LUA » Scoreboardem na acl 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