server 
local root = getRootElement() 
createBlip ( 1552.4996337891, -1677.3264160156, 15.1953125, 30 ) 
  
addEventHandler("onPlayerLogin",root, 
    function() 
        local playeraccount = getPlayerAccount (source) 
        local data = tonumber(getAccountData(playeraccount, "arrest")) -- you should finish it 
        local acc = getAccountName(playeraccount) 
        triggerClientEvent(source,"myEvent",data,acc) 
    end 
) 
function createSAPDTeam () 
    SAPDteam = createTeam ("police", 100, 149, 237) 
end 
addEventHandler ("onResourceStart", resourceRoot, createSAPDTeam) 
    
function joinSAPD() 
    if (isGuestAccount(getPlayerAccount(source)) == false) then 
        local playeraccount = getPlayerAccount (source) 
        if not getAccountData(playeraccount,"Occupation") == "police" then 
            setPlayerTeam(source,SAPDteam) 
            setElementModel(source, 280) 
            giveWeapon ( source, 3 ) 
            setAccountData( playeraccount, "Occupation", "police") 
            outputChatBox("You are now policeman.",source,0,255,0) 
        else 
            outputChatBox("Error: You already have this work",source,255,0,0) 
        end 
    else 
        outputChatBox ('Error: Please login or register!',source,255,255,255,true) 
    end 
end 
addEvent("setSAPD", true) 
addEventHandler("setSAPD",root,joinSAPD) 
    
function removeSAPD() 
    if (isGuestAccount(getPlayerAccount(source)) == false) then 
        local playeraccount = getPlayerAccount (source) 
        if not getAccountData(playeraccount,"Occupation") == "unemployed" then 
            setPlayerTeam(source,0) 
            setAccountData( playeraccount, "Occupation", "unemployed") 
            outputChatBox("you left your job.",source,0,255,0) 
        else 
            outputChatBox ('Error: You not have work',source,255,255,255,true) 
        end 
    else 
        outputChatBox ('Error: Please login or register!',source,255,255,255,true) 
    end 
end 
addEvent("removeSAPD", true) 
addEventHandler("removeSAPD",root,removeSAPD) 
      
function policeJob ( attacker, attackerweapon, bodypart, loss ) 
    theTeam = getPlayerTeam ( attacker ) 
    theWL = getPlayerWantedLevel ( source ) 
    theSkin = getElementModel ( attacker ) 
    if (attackerweapon == 3) and (loss > 2 ) and (theWL > 0) then 
        if  getTeamName( theTeam ) == "police" or getTeamName( theTeam ) == "SWAT" or getTeamName( theTeam ) == "FBI" then 
            setElementPosition (source, 4076.3999023438, -1788.5, 3.511967, true) 
            theName = getPlayerName ( source ) 
            theCop = getPlayerName ( attacker )   
            outputChatBox ( "You have been jailed by "..theCop.. " for 10 seconds.", source ) 
            local playeraccount = getPlayerAccount ( attacker ) 
            arrests = tonumber(getAccountData(playeraccount, "arrest")) 
            setAccountData(playeraccount, "arrest", arrests + 1 ) 
            givePlayerMoney (attacker, 100) 
            setTimer ( setElementPosition, 10000, 1, source, 1544.4332275391, -1674.7698974609, 13.688399200439)       
            setPlayerWantedLevel (source, 0) 
        end 
    end 
end 
addEventHandler ("onPlayerDamage", getRootElement(), policeJob) 
 
client 
local root = getRootElement()    
local marker = createMarker( 1552.4996337891, -1677.3264160156, 15.1953125, "Cylinder", 1.5, 0, 0, 255, 150) 
      
GUIEditor_Button = {} 
GUIEditor_Memo = {} 
GUIEditor_Label = {} 
          
function guiMyCwindow(w,h,t) 
    local x,y = guiGetScreenSize() 
    return guiCreateWindow((x-w)/2,(y-h)/2,w,h,t,false) 
end 
  
windowjob = guiMyCwindow(301,250,"police job") 
guiSetVisible(windowjob, false) 
GUIEditor_Button[1] = guiCreateButton(22,140,108,35,"Take job",false,windowjob) 
GUIEditor_Label[2] = guiCreateLabel(19,59,108,35,"Arrests : " ,false,windowjob) 
GUIEditor_Button[2] = guiCreateButton(179,200,110,36,"Close",false,windowjob) 
GUIEditor_Button[3] = guiCreateButton(22,200,110,36,"Quit Job",false,windowjob) 
GUIEditor_Memo[1] = guiCreateLabel(19,19,273,20,"are you sure you want to take this job?",false,windowjob) 
theTeam = getTeamFromName("police") 
GUIEditor_Memo[2] = guiCreateLabel(19,45,273,20,"On-duty officers : "..countPlayersInTeam(theTeam),false,windowjob) 
        
          
addEvent("myEvent",true) 
addEventHandler("myEvent",root, 
    function(data, acc) 
        guiSetText(GUIEditor_Label[2],"Arrests : "..data) 
        guiSetText(GUIEditor_Label[2],"Account : "..acc) -- you need make other label, now you set text on 1 label 2 times 
    end  
) 
          
function SAPDjob(hitElement) 
    if getElementType(hitElement) == "player" and (hitElement == localPlayer) then 
        if not guiGetVisible(windowjob) then 
            guiSetVisible(windowjob, true) 
            showCursor(true) 
        end 
    end 
end 
addEventHandler("onClientMarkerHit", marker, SAPDjob) 
          
function FBIjobleave(leaveElement) 
    if getElementType(leaveElement) == "player" and (leaveElement == localPlayer) then 
        if guiGetVisible(windowjob) then 
            guiSetVisible(windowjob, false) 
            showCursor(false) 
        end 
    end 
end 
addEventHandler("onClientMarkerLeave", marker, SAPDjobleave) 
          
function joinTeam() 
    triggerServerEvent("setSAPD",localPlayer) 
    guiSetVisible(windowjob, false) 
    showCursor(false) 
end 
addEventHandler("onClientGUIClick", GUIEditor_Button[1] , joinTeam, false) 
        
function removeTeam() 
    triggerServerEvent("removeSAPD",localPlayer) 
    guiSetVisible(windowjob, false) 
    showCursor(false) 
end 
addEventHandler("onClientGUIClick", GUIEditor_Button[3] , removeTeam, false) 
          
function removeSAPDWindow() 
    guiSetVisible(windowjob, false) 
    showCursor(false) 
end 
addEventHandler("onClientGUIClick", GUIEditor_Button[2] , removeSAPDWindow, false)