Jump to content

Help me out with this rank system please!


Sande

Recommended Posts

Posted

Hello, i have been created a rank system 2-3days ago. But still cant get it working. The problem is somewhere when the script gets thePlayer or gets thePlayer elementDatas.

  
  
local criminal1 = { "Criminal", "Street Rat", "0" } 
local criminal2 = { "Criminal", "Mugger", "100" } 
local criminal3 = { "Criminal", "Mobster", "200" } 
local criminal4 = { "Criminal", "Mercenary", "300" } 
local criminal5 = { "Criminal", "Kingpin", "500" } 
  
local police1 = { "Police", "Trainee", "0" } 
local police2 = { "Police", "Officer", "100" } 
local police3 = { "Police", "Head officer", "200" } 
local police4 = { "Police", "Marshall", "300" } 
local police5 = { "Police", "FBI Agent", "500" } 
  
--TEAM, OCCUPATION, RANKNAME, REQUIRED ACTIONS 
local civilian1 = { "Civilians", "Trucker", "Trucker Wannabe", "0" } 
local civilian2 = { "Civilians", "Trucker", "Rookietrucker", "50" } 
local civilian3 = { "Civilians", "Trucker", "Transport Tycoon", "75" } 
local civilian4 = { "Civilians", "Trucker", "Hauler", "100" } 
local civilian5 = { "Civilians", "Trucker", "King of the road", "150" } 
  
local emergency1 = { "Emergency", "Medic", "EMT", "0" } 
local emergency2 = { "Emergency", "Medic", "Nurse", "25" } 
local emergency3 = { "Emergency", "Medic", "Paramedic", "50" } 
local emergency4 = { "Emergency", "Medic", "Doctor", "75" } 
local emergency5 = { "Emergency", "Medic", "Surgeon", "100" } 
  
--outputChatBox ( criminal [ 1 ] ) -- bar 
--outputChatBox ( criminal [ 2 ] ) -- baz 
--outputChatBox ( criminal [ 3 ] ) -- anything 
  
function timer() 
    setTimer(checkIfRankUp, 5000, 0) 
end 
  
function checkIfRankUp() 
    local players = getElementsByType ( "player" ) 
    for theKey,thePlayer in ipairs(players) do 
    if ( thePlayer ) then 
            if getElementData ( thePlayer, "Occupation" ) == "Criminal" then 
local crimActions = getElementData(thePlayer, "Criminal-actions" ) 
        local occ = getElementData(thePlayer, "Occupation") 
        if crimActions >= 99 and crimActions <= 199 then 
            setElementData(thePlayer, "Rank", criminal2 [ 2 ] ) 
        elseif crimActions >= 199 and crimActions <= 299 then 
            setElementData(thePlayer, "Rank", criminal3 [ 2 ] ) 
        elseif crimActions >= 299 and crimActions <= 499 then 
            setElementData(thePlayer, "Rank", criminal4 [ 2 ] ) 
        elseif crimActions >= 499 and crimActions <= 900 then 
            setElementData(thePlayer, "Rank", criminal5 [ 2 ] ) 
        elseif crimActions == 0 then 
            setElementData(thePlayer, "Rank", criminal1 [ 2 ] ) 
        end 
--outputDebugString("Crimi")  
            elseif getElementData ( thePlayer, "Occupation" ) == "Police" then 
              local polcActions = getElementData(thePlayer, "Police-actions" ) 
        local occ = getElementData(thePlayer, "Occupation") 
        if polcActions >= 99 and polcActions <= 199 then 
            setElementData(thePlayer, "Rank", police2 [ 2 ] ) 
        elseif polcActions >= 199 and polcActions <= 299 then 
            setElementData(thePlayer, "Rank", police3 [ 2 ] ) 
        elseif polcActions >= 299 and polcActions <= 499 then 
            setElementData(thePlayer, "Rank", police4 [ 2 ] ) 
        elseif polcActions  >= 499 and polcActions <= 900 then 
            setElementData(thePlayer, "Rank", police5 [ 2 ] ) 
        elseif polcActions == 0 then 
            setElementData(thePlayer, "Rank", police1 [ 2 ] ) 
        end 
 --outputDebugString("Poli")  
            elseif getElementData ( thePlayer, "Occupation" ) == "Trucker" then  
        local trucActions = getElementData(thePlayer, "Trucker-actions" ) 
        local occ = getElementData(thePlayer, "Occupation") 
        if trucActions >= 0 and trucActions <= 49 then 
            setElementData(thePlayer, "Rank", civilian2 [ 3 ] ) 
        elseif trucActions>= 49 and trucActions <= 74 then 
            setElementData(thePlayer, "Rank", civilian3 [ 3 ] ) 
        elseif trucActions >= 74 and trucActions <= 99 then 
            setElementData(thePlayer, "Rank", civilian4 [ 3 ] ) 
        elseif trucActions >= 99 and trucActions <= 149 then 
            setElementData(thePlayer, "Rank", civilian5 [ 3 ] ) 
        elseif trucActions == 0 then 
            setElementData(thePlayer, "Rank", civilian1 [ 3 ] ) 
        end 
            elseif getElementData ( thePlayer, "Occupation" ) == "Medic" then 
local mediActions = getElementData(thePlayer, "Medic-actions" ) 
        local occ = getElementData(thePlayer, "Occupation") 
        if mediActions >= 0 and mediActions <= 24 then 
            setElementData(thePlayer, "Rank", emergency2 [ 3 ] ) 
        elseif mediActions>= 24 and mediActions <= 49 then 
            setElementData(thePlayer, "Rank", emergency3 [ 3 ] ) 
        elseif mediActions>= 49 and mediActions <= 74 then 
            setElementData(thePlayer, "Rank", emergency4 [ 3 ] ) 
        elseif mediActions >= 74 and mediActions <= 99 then 
            setElementData(thePlayer, "Rank", emergency5 [ 3 ] ) 
        elseif mediActions == 0 then 
            setElementData(thePlayer, "Rank", emergency1 [ 3 ] ) 
            end 
             
            elseif getElementData ( thePlayer, "Occupation" ) == "Freeroam" then 
            setElementData(thePlayer, "Occupation", "Freeroam") 
        setElementData(thePlayer, "Rank", "Insane") 
            elseif getElementData ( thePlayer, "Occupation" ) == "Unemployed" then 
setElementData(thePlayer, "Occupation", "Unemployed") 
        setElementData(thePlayer, "Rank", "Unemployed") 
            else 
                return 
            end 
        end 
    end 
    end 
     
addEventHandler("onResourceStart", getResourceRootElement(getThisResource()), timer ) 
  

Posted

No, thats one reason why i am tired to fix it. I debugged it too like it output things when it check occupation, but anything goes to debug. Also the file is in meta.xml and no errors in debug. It just doesn´t work. that criminal-actions and other elementData is setted too to my account. So i dont really know what is the problem.

Posted

still this shit doesnt work, no debugs.

  
  
local criminal1 = { "Criminal", "Street Rat", "0" } 
local criminal2 = { "Criminal", "Mugger", "100" } 
local criminal3 = { "Criminal", "Mobster", "200" } 
local criminal4 = { "Criminal", "Mercenary", "300" } 
local criminal5 = { "Criminal", "Kingpin", "500" } 
  
local police1 = { "Police", "Trainee", "0" } 
local police2 = { "Police", "Officer", "100" } 
local police3 = { "Police", "Head officer", "200" } 
local police4 = { "Police", "Marshall", "300" } 
local police5 = { "Police", "FBI Agent", "500" } 
  
--TEAM, OCCUPATION, RANKNAME, REQUIRED ACTIONS 
local civilian1 = { "Civilians", "Trucker", "Trucker Wannabe", "0" } 
local civilian2 = { "Civilians", "Trucker", "Rookietrucker", "50" } 
local civilian3 = { "Civilians", "Trucker", "Transport Tycoon", "75" } 
local civilian4 = { "Civilians", "Trucker", "Hauler", "100" } 
local civilian5 = { "Civilians", "Trucker", "King of the road", "150" } 
  
local emergency1 = { "Emergency", "Medic", "EMT", "0" } 
local emergency2 = { "Emergency", "Medic", "Nurse", "25" } 
local emergency3 = { "Emergency", "Medic", "Paramedic", "50" } 
local emergency4 = { "Emergency", "Medic", "Doctor", "75" } 
local emergency5 = { "Emergency", "Medic", "Surgeon", "100" } 
  
--outputChatBox ( criminal [ 1 ] ) -- bar 
--outputChatBox ( criminal [ 2 ] ) -- baz 
--outputChatBox ( criminal [ 3 ] ) -- anything 
  
function timer() 
    setTimer(checkIfRankUp, 5000, 0) 
end 
  
function checkIfRankUp(source) 
            if getElementData ( source, "Occupation" ) == "Criminal" then 
local crimActions = getElementData(source, "Criminal-actions" ) 
        local occ = getElementData(source, "Occupation") 
        if crimActions >= 99 and crimActions <= 199 then 
            setElementData(source, "Rank", criminal2 [ 2 ] ) 
        elseif crimActions >= 199 and crimActions <= 299 then 
            setElementData(source, "Rank", criminal3 [ 2 ] ) 
        elseif crimActions >= 299 and crimActions <= 499 then 
            setElementData(source, "Rank", criminal4 [ 2 ] ) 
        elseif crimActions >= 499 and crimActions <= 900 then 
            setElementData(source, "Rank", criminal5 [ 2 ] ) 
        elseif crimActions == 0 then 
            setElementData(source, "Rank", criminal1 [ 2 ] ) 
        end 
--outputDebugString("Crimi")  
            elseif getElementData ( source, "Occupation" ) == "Police" then 
              local polcActions = getElementData(source, "Police-actions" ) 
        local occ = getElementData(source, "Occupation") 
        if polcActions >= 99 and polcActions <= 199 then 
            setElementData(source, "Rank", police2 [ 2 ] ) 
        elseif polcActions >= 199 and polcActions <= 299 then 
            setElementData(source, "Rank", police3 [ 2 ] ) 
        elseif polcActions >= 299 and polcActions <= 499 then 
            setElementData(source, "Rank", police4 [ 2 ] ) 
        elseif polcActions  >= 499 and polcActions <= 900 then 
            setElementData(source, "Rank", police5 [ 2 ] ) 
        elseif polcActions == 0 then 
            setElementData(source, "Rank", police1 [ 2 ] ) 
        end 
 --outputDebugString("Poli")  
            elseif getElementData ( source, "Occupation" ) == "Trucker" then  
        local trucActions = getElementData(source, "Trucker-actions" ) 
        local occ = getElementData(source, "Occupation") 
        if trucActions >= 0 and trucActions <= 49 then 
            setElementData(source, "Rank", civilian2 [ 3 ] ) 
        elseif trucActions>= 49 and trucActions <= 74 then 
            setElementData(source, "Rank", civilian3 [ 3 ] ) 
        elseif trucActions >= 74 and trucActions <= 99 then 
            setElementData(source, "Rank", civilian4 [ 3 ] ) 
        elseif trucActions >= 99 and trucActions <= 149 then 
            setElementData(source, "Rank", civilian5 [ 3 ] ) 
        elseif trucActions == 0 then 
            setElementData(source, "Rank", civilian1 [ 3 ] ) 
        end 
            elseif getElementData ( source, "Occupation" ) == "Medic" then 
local mediActions = getElementData(source, "Medic-actions" ) 
        local occ = getElementData(source, "Occupation") 
        if mediActions >= 0 and mediActions <= 24 then 
            setElementData(source, "Rank", emergency2 [ 3 ] ) 
        elseif mediActions>= 24 and mediActions <= 49 then 
            setElementData(source, "Rank", emergency3 [ 3 ] ) 
        elseif mediActions>= 49 and mediActions <= 74 then 
            setElementData(source, "Rank", emergency4 [ 3 ] ) 
        elseif mediActions >= 74 and mediActions <= 99 then 
            setElementData(source, "Rank", emergency5 [ 3 ] ) 
        elseif mediActions == 0 then 
            setElementData(source, "Rank", emergency1 [ 3 ] ) 
            end 
             
            elseif getElementData ( source, "Occupation" ) == "Freeroam" then 
            setElementData(source, "Occupation", "Freeroam") 
        setElementData(source, "Rank", "Insane") 
            elseif getElementData ( source, "Occupation" ) == "Unemployed" then 
setElementData(source, "Occupation", "Unemployed") 
        setElementData(source, "Rank", "Unemployed") 
            else 
                return 
            end 
        end 
     
addEventHandler("onElementDataChange",getRootElement(),checkIfRankUp) 
  

Posted

Putted return with debug message, its all time returning. so the message is appear all time. outputDebugString("return shit")

Posted
Putted return with debug message, its all time returning. so the message is appear all time. outputDebugString("return :~")

So, with a bit of logical thinking. You should output the actual value that has been given with the dataName of "Occupation". :)

outputDebugString ( getElementData ( source, "Occupation" ) ); 

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 account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...