Wysłany: 2018-02-09, 17:38
AppleSir
Majster LUA
Wiek: 27 Na forum: 3045 dni Posty: 19
Nick w MP: Przybysz
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
Wysłany: 2018-02-09, 17:39
Nexisten
Moderator
Wiek: 22 Na forum: 4107 dni Posty: 551
Nick w MP: Nexisten
Piwa : 1479
Podaj ca?y kod odpowiadaj?cy za wy?wietlanie scoreboard, najlepiej w znacznikach [lua.]
Wysłany: 2018-02-09, 17:41
AppleSir
Majster LUA
Wiek: 27 Na forum: 3045 dni Posty: 19
Nick w MP: Przybysz
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
Ostatnio zmieniony przez .RiV 2018-02-10, 21:45, w całości zmieniany 1 raz
Wysłany: 2018-02-09, 19:26
Ciastuuś
Truck soon...
Wiek: 26 Na forum: 3071 dni Posty: 799
Nick w MP: Ciastuuś
Piwa : 4297
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
Wysłany: 2018-02-09, 19:33
AppleSir
Majster LUA
Wiek: 27 Na forum: 3045 dni Posty: 19
Nick w MP: Przybysz
Ciastuu? , mi chodzi o to : ze pod S?u?ba pisze ranga z Acl
Wysłany: 2018-02-09, 20:02
Kalizman
Wiek: 23 Na forum: 3651 dni Posty: 1394
Piwa : 4619
No to zamiast zmiennej rangaTabela , u?yj setElementData . Ca?a filozofia...
Wysłany: 2018-02-09, 20:04
Ciastuuś
Truck soon...
Wiek: 26 Na forum: 3071 dni Posty: 799
Nick w MP: Ciastuuś
Piwa : 4297
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?.
Wysłany: 2018-02-09, 20:50
AppleSir
Majster LUA
Wiek: 27 Na forum: 3045 dni Posty: 19
Nick w MP: Przybysz
Ciastuu? , dalej nie rozumiem... Dasz tego gotowca. Jestem Zielony w lua dopiero sie ucze.
Tagi: scoreboardem :: acl
Anonymous
Na forum: 245 dni
Posty: 1
Anonymous Koniecznie zajrzyj na: