Reggae Posted August 14, 2015 Share Posted August 14, 2015 I have a level system system for dayz, the death of each player or zombies the player earns a certain amount of experience ... plus it's not earning level .. for example when it comes to experience in 1000 want it to be set to it level 1, but not arrow .. the only way of setting level that is working is the panel .. more I want it to be automatic, so he gets the 1000 experience he wins the level 1 -- Level System local sW, sH = guiGetScreenSize() local windowRank = guiCreateWindow ( (sW-500)/2, (sH-400)/2, 500, 400, "Manage Players Level System", false ) guiWindowSetSizable ( windowRank, false ) guiSetVisible ( windowRank, false) local windowRankGridList = guiCreateGridList ( 10, 28, 360, 360, false, windowRank ) local windowRankColumn = guiGridListAddColumn( windowRankGridList, "Name", 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,"Level: None", false, windowRank) guiLabelSetHorizontalAlign (windowRankLabelLevel, "center") local windowRankLabelExp = guiCreateLabel(383, 220, 100, 20,"Experience: None", false, windowRank) guiLabelSetHorizontalAlign (windowRankLabelExp, "center") local ranksTable = { {"0","Teste","0"}, {"1","Cabo","1000"}, {"2","Recruta","2000"}, {"3","Privado","3000"}, {"4","Privado Primeira Classe","4000"}, {"5","Corporal","5000"}, {"6","Sargento","5800"}, {"7","Sargento |","8100"}, {"8","Sargento ||","11000"}, {"9","Sergento |||","14600"}, {"10","Sargento Primeira Classe |","18800"}, {"11","Sargento Primeira Classe ||","23800"}, {"12","Sargento Primeira Classe |||","29600"}, {"13","Sargento Mestre |","36300"}, {"14","Sargento Mestre ||","44100"}, {"15","Sargento Mestre |||","53000"}, {"16","Sargento Mestre ||||","63000"}, {"17","Comandante Sargento Major |","74500"}, {"18","Comandante Sargento Major |||","87400"}, {"19","Comandante Sargento Major ||||","102000"}, {"20","Comandante Sargento Major ||||","118400"}, {"21","Comandante Sargento Major |||||","136700"}, {"22","Segundo Tenente |","157200"}, {"23","Segundo Tenente ||","180000"}, {"24","Segundo Tenente |||","205200"}, {"25","Segundo Tenente ||||","233300"}, {"26","Segundo Tenente |||||","264400"}, {"27","Primeiro Tenente |","298700"}, {"28","Primeiro Tenente ||","336500"}, {"29","Primeiro Tenente |||","378000"}, {"30","Primeiro Tenente ||||","423700"}, {"31","Primeiro Tenente |||||","473700"}, {"32","Capitão |","528400"}, {"33","Capitão |||","588100"}, {"34","Capitão ||||","653400"}, {"35","Capitão ||||","724400"}, {"36","Capitão |||||","801600"}, {"37","Major |","885500"}, {"38","Major |||","976400"}, {"39","Major ||||","1074800"}, {"40","Major ||||","1181100"}, {"41","Major |||||","1296000"}, {"42","Tenente Coronel |","1419700"}, {"43","Tenente Coronel ||","1552900"}, {"44","Tenente Coronel |||","1696200"}, {"45","Tenente Coronel ||||","1849900"}, {"46","Tenente Coronel |||||","2014800"}, {"47","Coronel |","2191200"}, {"48","Coronel ||","2380000"}, {"49","Coronel |||","2581500"}, {"50","Coronel |||| ","2796400"}, } function getPlayerRankName() for i=0,50 do if getElementData(localPlayer, "level") == tonumber(ranksTable[i][0]) then return ranksTable[i][2] end end end function getPlayerRankExperience() for i=0,50 do if getElementData(localPlayer, "level") == tonumber(ranksTable[i][0]) 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") < 50 then setElementData(localPlayer, "level", getElementData(localPlayer, "level") + 1) local _ll = getElementData(localPlayer, "level") DarItemsPorLevelUp(localPlayer,_ll) end end dxDrawImage ( sW/65, sH/2.0, sW/20, sH/20, "images/level/rank"..getElementData(localPlayer, "level")..".jpg" ) dxDrawText ( getPlayerRankName().." ("..getElementData(localPlayer, "level")..")",sW/65, sH/1.8, sW/0, sH/0, tocolor ( 250, 0, 0, 255 ), 1.02, "default-bold" ) dxDrawText ( "Sua Experiencia: "..getElementData(localPlayer, "experience"), sW/65, sH/1.7, sW/0, sH/0, tocolor ( 250, 0, 0, 255 ), 1.02, "default-bold" ) if getElementData(localPlayer, "level") < 50 then dxDrawText ( "Proximo Level: "..getPlayerRankExperience(),sW/65, sH/1.6, sW/0, sH/0, tocolor ( 250, 0, 0, 255 ), 1.02, "default-bold" ) else dxDrawText ( "Patente Maxima Atingida",sW/65, sH/1.6, sW/0, sH/0, tocolor ( 0, 250, 0, 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) == 0 then guiSetText(windowRankLabelLevel, "Level: "..getElementData(getPlayerFromName(playerName), "level")) guiSetText(windowRankLabelExp, "Experience: "..getElementData(getPlayerFromName(playerName), "experience")) else guiSetText(windowRankLabelLevel, "Level: None") guiSetText(windowRankLabelExp, "Experience: None") end end if source == windowRankButton then if guiGridListGetSelectedCount(windowRankGridList) == 0 then local playerName = guiGridListGetItemText ( windowRankGridList, guiGridListGetSelectedItem ( windowRankGridList ), 1 ) if guiGetText(windowRankEdit) ~= "" then setElementData(getPlayerFromName(playerName), "level", tonumber(guiGetText(windowRankEdit))) guiSetText(windowRankLabelLevel, "Level: "..getElementData(getPlayerFromName(playerName), "level")) end if guiGetText(windowRankEdit2) ~= "" then setElementData(getPlayerFromName(playerName), "experience", tonumber(guiGetText(windowRankEdit2))) guiSetText(windowRankLabelExp, "Experience: "..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) function DarItemsPorLevelUp(thePlayer,level) triggerServerEvent("onLevelUpRewards",thePlayer,level) end Link to comment
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now