Hello, i have a script, and i want to add a one more option - the time played on server. I from Poland and my english can dont be good, sorry.
This is client.lua
-- Level System
local sW, sH = guiGetScreenSize()
local windowRank = guiCreateWindow ( (sW-500)/2, (sH-400)/2, 500, 400, "Lista graczy // Poziom graczy", false )
guiWindowSetSizable ( windowRank, false )
guiSetVisible ( windowRank, false)
local windowRankGridList = guiCreateGridList ( 10, 28, 360, 360, false, windowRank )
local windowRankColumn = guiGridListAddColumn( windowRankGridList, "Gracz:", 0.90 )
--local windowRankEdit = guiCreateEdit( 383, 150, 100, 30, "", false, windowRank)
--local windowRankEdit2 = guiCreateEdit( 383, 250, 100, 30, "", false, windowRank)
--local windowRankButton = guiCreateButton( 383, 358, 100, 30, "Change", false, windowRank)
local windowRankLabelLevel = guiCreateLabel(383, 120, 100, 20,"Poziom: ", false, windowRank)
guiLabelSetHorizontalAlign (windowRankLabelLevel, "center")
local windowRankLabelExp = guiCreateLabel(383, 220, 100, 20,"PD: ", false, windowRank)
guiLabelSetHorizontalAlign (windowRankLabelExp, "center")
local ranksTable =
{
{"1","Nowy","1000"},
{"2","Szeregowy","2000"},
{"3","Starszy Szeregowy |","3000"},
{"4","Starszy Szeregowy ||","4000"},
{"5","Kapral","5000"},
{"6","Starszy kapral","5800"},
{"7","Plutonowy |","8100"},
{"8","Plutonowy ||","11000"},
{"9","Plutonowy |||","14600"},
{"10","Sierżant |","18800"},
{"11","Sierżant ||","23800"},
{"12","Sierżant |||","29600"},
{"13","Starszy Sierżant |","36300"},
{"14","Starszy Sierżant ||","44100"},
{"15","Starszy Sierżant |||","53000"},
{"16","Starszy Sierżant Sztabowy","63000"},
{"17","Młodszy Chorąży","74500"},
{"18","Chorąży","87400"},
{"19","Starszy chorąży |","102000"},
{"20","Starszy chorąży ||","118400"},
{"21","Starszy chorąży |||","136700"},
{"22","Podporucznik |","157200"},
{"23","Podporucznik ||","180000"},
{"24","Podporucznik |||","205200"},
{"25","Podporucznik ||||","233300"},
{"26","Podporucznik |||||","264400"},
{"27","Porucznik |","298700"},
{"28","Porucznik ||","336500"},
{"29","Porucznik |||","378000"},
{"30","Porucznik ||||","423700"},
{"31","Porucznik |||||","473700"},
{"32","Kapitan |","528400"},
{"33","Kapitan ||","588100"},
{"34","Kapitan |||","653400"},
{"35","Kapitan ||||","724400"},
{"36","Kapitan |||||","801600"},
{"37","Major |","885500"},
{"38","Major ||","976400"},
{"39","Major |||","1074800"},
{"40","Major ||||","1181100"},
{"41","Major |||||","1296000"},
{"42","Podpułkownik |","1419700"},
{"43","Podpułkownik ||","1552900"},
{"44","Podpułkownik |||","1696200"},
{"45","Podpułkownik ||||","1849900"},
{"46","Podpułkownik |||||","2014800"},
{"47","Pułkownik |","2191200"},
{"48","Pułkownik ||","2380000"},
{"49","Pułkownik |||","2581500"},
{"50","Pułkownik |||| ","2796400"},
{"51","Pułkownik |||||","3025300"},
{"52","Generał Brygady |","3268800"},
{"53","Generał Brygady ||","3527500"},
{"54","Generał Brygady |||","3801900"},
{"55","Generał Brygady ||||","4092800"},
{"56","Generał Brygady |||||","4400600"},
{"57","Generał Dywizji |","4726000"},
{"58","Generał Dywizji ||","5069500"},
{"59","Generał Dywizji |||","5431800"},
{"60","Generał Dywizji ||||","6000000"},
{"61","Generał Dywizji |||||","6568200"},
{"62","Generał broni |","7136400"},
{"63","Generał broni ||","7704600"},
{"64","Generał broni |||","8272800"},
{"65","Generał broni ||||","8841000"},
{"66","Generał broni |||||","9409200"},
{"67","Generał |","9977400"},
{"68","Generał ||","10545600"},
{"69","Generał |||","11113800"},
{"70","Marszałek","11692000"}
}
function getPlayerRankName()
for i=1,70 do
if getElementData(localPlayer, "level") == tonumber(ranksTable[i][1]) then
return ranksTable[i][2]
end
end
end
function getPlayerRankExperience()
for i=1,70 do
if getElementData(localPlayer, "level") == tonumber(ranksTable[i][1]) then
return tonumber(ranksTable[i][3])
end
end
end
function mainRanks()
if getElementData(localPlayer, "logedin") == true then
if getElementData(localPlayer, "experience") > getPlayerRankExperience() then
if getElementData(localPlayer, "level") < 70 then
setElementData(localPlayer, "level", getElementData(localPlayer, "level") + 1)
end
end
dxDrawImage ( sW/22, sH/2.8, sW/60, sH/60, "images/level/rank"..getElementData(localPlayer, "level")..".jpg" )
dxDrawText ( getPlayerRankName().." ("..getElementData(localPlayer, "level")..")",sW/65, sH/3.6, sW/0, sH/0, tocolor ( 240, 230, 140, 255 ), 1.02, "default-bold" )
dxDrawText ( "Punkty doświadczenia: "..getElementData(localPlayer, "experience"), sW/65, sH/3.27, sW/0, sH/0, tocolor ( 70, 130, 180, 255 ), 1.02, "default-bold" )
if getElementData(localPlayer, "level") < 70 then
dxDrawText ( "Potrzebne PD: "..getPlayerRankExperience(),sW/65, sH/3, sW/0, sH/0, tocolor ( 70, 130, 180, 255 ), 1.02, "default-bold" )
else
dxDrawText ( "Gratulacje, masz najwyższy poziom!",sW/65, sH/3, sW/0, sH/0, tocolor ( 70, 130, 180, 255 ), 1.02, "default-bold" )
end
end
end
addEventHandler ( "onClientRender", root, mainRanks )
function toggleWindowRanks()
if getElementData(localPlayer, "adminRanks") == true then
if guiGetVisible(windowRank) == false then
guiSetVisible(windowRank, true)
showCursor(true)
for k, v in ipairs (getElementsByType("player")) do
if getElementData (v, "logedin") == true then
local row = guiGridListAddRow ( windowRankGridList )
guiGridListSetItemText ( windowRankGridList, row, windowRankColumn, getPlayerName ( v ), false, false )
end
end
else
guiSetVisible(windowRank, false)
showCursor(false)
guiGridListClear(windowRankGridList)
end
end
end
bindKey("F7", "down", toggleWindowRanks)
function windowRankClick()
local playerName = guiGridListGetItemText ( windowRankGridList, guiGridListGetSelectedItem ( windowRankGridList ), 1 )
if source == windowRankGridList then
if guiGridListGetSelectedCount(windowRankGridList) == 1 then
guiSetText(windowRankLabelLevel, "Poziom: "..getElementData(getPlayerFromName(playerName), "level"))
guiSetText(windowRankLabelExp, "PD: "..getElementData(getPlayerFromName(playerName), "experience"))
else
guiSetText(windowRankLabelLevel, "Poziom: ")
guiSetText(windowRankLabelExp, "PD: ")
end
end
if source == windowRankButton then
if guiGridListGetSelectedCount(windowRankGridList) == 1 then
local playerName = guiGridListGetItemText ( windowRankGridList, guiGridListGetSelectedItem ( windowRankGridList ), 1 )
if guiGetText(windowRankEdit) ~= "" then
setElementData(getPlayerFromName(playerName), "level", tonumber(guiGetText(windowRankEdit)))
guiSetText(windowRankLabelLevel, "Poziom: "..getElementData(getPlayerFromName(playerName), "level"))
end
if guiGetText(windowRankEdit2) ~= "" then
setElementData(getPlayerFromName(playerName), "experience", tonumber(guiGetText(windowRankEdit2)))
guiSetText(windowRankLabelExp, "PD: "..getElementData(getPlayerFromName(playerName), "experience"))
end
else
outputChatBox("#FF0000[LEVEL SYSTEM]: #FFFFFFSelect the player!", thePlayer, 171, 205, 239, true)
end
end
end
addEventHandler ("onClientGUIClick", windowRank, windowRankClick)
And this is server.lua
-- Level System
function onRanksStart ()
for k, v in ipairs (getElementsByType ("player")) do
-- for id, object in ipairs (aclGroupListObjects (aclGetGroup ("Admin"))) do
-- local user = "user."..getAccountName (getPlayerAccount (v))
-- if object == user then
setElementData(v, "adminRanks", true)
end
end
-- end
--end
addEventHandler ( "onResourceStart", root, onRanksStart)
function onRanksPlayerJoin ()
-- for id, object in ipairs (aclGroupListObjects (aclGetGroup ("Admin"))) do
-- local user = "user."..getAccountName (getPlayerAccount (source))
-- if object == user then
setElementData(source, "adminRanks", true)
end
-- end
--end
addEventHandler ( "onPlayerLogin", root, onRanksPlayerJoin)
I want to show the "play time on server of Player" above "Poziom:" in this GUI in F7 key.
Like this -
Play time(Czas gry - in Poland): [time] min(utes) or h(ours)
Poziom:
PD:
example:
Czas gry: 300 min
Poziom: 30
PD: 15000
I want to see this in gui like that. Please help me somebody becouse im too weak to do this.