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)