Stivicx

job system

May 10th, 2017
108
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 5.03 KB | None | 0 0
  1. /** client.lua (missionSystem)**/
  2.  
  3. blipsUpToDate = false
  4.  
  5. RegisterNetEvent('missionSystem:getJobName')
  6. AddEventHandler('missionSystem:getJobName', function(name)
  7.    
  8.     if(blipHarvest == false) then
  9.         RemoveBlip(blipHarvest)
  10.     end
  11.    
  12.     if(blipTreatment == false) then
  13.         RemoveBlip(blipTreatment)
  14.     end
  15.    
  16.     if(blipSell == false) then
  17.         RemoveBlip(blipSell)
  18.     end
  19.    
  20.     if(qte == "Mineur") then
  21.         blipHarvest = AddBlipForCoord(<X>, <Y>, <Z>)
  22.         SetBlipSprite(blip, <#Sprite>)
  23.         SetBlipAsShortRange(blip, true)
  24.        
  25.         blipTreatment = AddBlipForCoord(<X>, <Y>, <Z>)
  26.         SetBlipSprite(blip, <#Sprite>)
  27.         SetBlipAsShortRange(blip, true)
  28.        
  29.         blipSell = AddBlipForCoord(<X>, <Y>, <Z>)
  30.         SetBlipSprite(blip, <#Sprite>)
  31.         SetBlipAsShortRange(blip, true)
  32.     end
  33. end)
  34.  
  35. RegisterNetEvent('missionSystem:processGetWeed')
  36. AddEventHandler('missionSystem:processGetWeed', function(qte)
  37.     if(qte == nil) then
  38.         qte = 0
  39.     end
  40.  
  41.     if qte < 30 then
  42.         TriggerEvent('player:receiveItem',1, 1)
  43.         ClearPrints()
  44.         SetTextEntry_2("STRING")
  45.         AddTextComponentString("~g~Vous venez de récolter du cannabis.")
  46.         DrawSubtitleTimed(4500, 1)
  47.     else
  48.         ClearPrints()
  49.         SetTextEntry_2("STRING")
  50.         AddTextComponentString("~r~Vous ne pouvez pas récolter plus de cannabis!")
  51.         DrawSubtitleTimed(2000, 1)
  52.     end
  53. end)
  54.  
  55. RegisterNetEvent('missionSystem:processGetShit')
  56. AddEventHandler('missionSystem:processGetShit', function(qteWeed, qteShit)
  57.     if(qteWeed == nil) then
  58.         qteWeed = 0
  59.     end
  60.    
  61.     if(qteShit == nil) then
  62.         qteShit = 0
  63.     end
  64.  
  65.     if qteShit < 30 and qteWeed > 0 then
  66.         TriggerEvent('player:receiveItem',2, 1)
  67.         TriggerEvent('player:looseItem',1, 1)
  68.         ClearPrints()
  69.         SetTextEntry_2("STRING")
  70.         AddTextComponentString("~g~Vous venez de faire du shit.")
  71.         DrawSubtitleTimed(4500, 1)
  72.     else
  73.         ClearPrints()
  74.         SetTextEntry_2("STRING")
  75.         AddTextComponentString("~r~Vous ne pouvez plus transformer de cannabis !")
  76.         DrawSubtitleTimed(2000, 1)
  77.     end
  78. end)
  79.  
  80. RegisterNetEvent('missionSystem:processSellShit')
  81. AddEventHandler('missionSystem:processSellShit', function(qte)
  82.     if(qte == nil) then
  83.         qte = 0
  84.     end
  85.  
  86.     if qte > 0 then
  87.         TriggerEvent('player:looseItem',2, 1)
  88.         TriggerServerEvent('mission:completed', 50)
  89.         ClearPrints()
  90.         SetTextEntry_2("STRING")
  91.         AddTextComponentString("~g~Vous venez de vendre du shit pour 50€.")
  92.         DrawSubtitleTimed(2000, 1)
  93.     else
  94.         ClearPrints()
  95.         SetTextEntry_2("STRING")
  96.         AddTextComponentString("~r~Vous n'avez pas de shit à vendre!")
  97.         DrawSubtitleTimed(2000, 1)
  98.     end
  99. end)
  100.  
  101. Citizen.CreateThread(function()
  102. listOn = false
  103.     while true do
  104.         Wait(0)
  105.        
  106.         if(blipsUpToDate == false) then
  107.        
  108.             TriggerServerEvent('jobssystem:getJobName')
  109.             blipsUpToDate = true
  110.         end
  111.        
  112.         -- RECOLTE DE CANABIS - START
  113.         if GetDistanceBetweenCoords(GetEntityCoords(GetPlayerPed(-1)), 2208.777,5578.235,53.735, true) <= 10 then                      
  114.             TriggerServerEvent('missionSystem:getWeed')
  115.             Citizen.Wait(5000)
  116.         end    
  117.         -- RECOLTE DE CANABIS - END
  118.        
  119.        
  120.         -- RECOLTE DE SHIT - START
  121.         if GetDistanceBetweenCoords(GetEntityCoords(GetPlayerPed(-1)), -1103.57861328125,4889.03271484375,216.067886352539, true) <= 5 then                    
  122.             TriggerServerEvent('missionSystem:getShit')
  123.             Citizen.Wait(5000)
  124.         end
  125.        
  126.         if GetDistanceBetweenCoords(GetEntityCoords(GetPlayerPed(-1)), -1171.8962402344,-1572.1916503906,4.6636219024658, true) <= 5 then
  127.             TriggerServerEvent('missionSystem:sellShit')
  128.             Citizen.Wait(2500)
  129.         end
  130.        
  131.         -- RECOLTE DE SHIT - END
  132.        
  133.     end
  134. end)
  135.  
  136.  
  137. /** server.lua (Jobs System) **/
  138.  
  139. require "resources/essentialmode/lib/MySQL"
  140. MySQL:open("localhost", "gta5_gamemode_essential", "root", "")
  141.  
  142.  
  143. function nameJob(id)
  144.   local executed_query = MySQL:executeQuery("SELECT * FROM jobs WHERE job_id = '@namejob'", {['@namejob'] = id})
  145.   local result = MySQL:getResults(executed_query, {'job_name'}, "job_id")
  146.   return result[1].job_name
  147. end
  148.  
  149. function updatejob(player, id)
  150.   local job = id
  151.   MySQL:executeQuery("UPDATE users SET `job`='@value' WHERE identifier = '@identifier'", {['@value'] = job, ['@identifier'] = player})
  152. end
  153.  
  154. function getPlayerJob(identifier)
  155.   local executed_query = MySQL:executeQuery("SELECT * FROM jobs WHERE identifier = '@identifier'", {['@identifier'] = identifier})
  156.   local result = MySQL:getResults(executed_query, {'job_name'}, "job_id")
  157.   return result[1].job_name
  158. end
  159.  
  160. RegisterServerEvent('jobssystem:jobs')
  161. AddEventHandler('jobssystem:jobs', function(id)
  162.   TriggerEvent('es:getPlayerFromId', source, function(user)
  163.         local player = user.identifier
  164.         local nameJob = nameJob(id)
  165.         updatejob(player, id)
  166.         TriggerClientEvent("es_freeroam:notify", source, "CHAR_MP_STRIPCLUB_PR", 1, "Mairie", false, "Votre métier est maintenant : ".. nameJob)
  167.   end)
  168. end)
  169.  
  170. RegisterServerEvent('jobssystem:getJobName')
  171. AddEventHandler('jobssystem:getJobName', function(id)
  172.   TriggerEvent('es:getPlayerFromId', source, function(user)
  173.         local player = user.identifier
  174.         local name = getPlayerJob(player)
  175.         TriggerClientEvent("missionSystem:getJobName", source, name)
  176.   end)
  177. end)
Add Comment
Please, Sign In to add comment