Advertisement
leoSHEIK

basic_misssion_server_drugs

Feb 6th, 2018
90
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 2.05 KB | None | 0 0
  1. -- Drug seller
  2.   for k,v in pairs(cfg.drugseller) do -- each repair perm def
  3.     -- add missions to users
  4.     local users = vRP.getUsersByPermission({k})
  5.     for l,w in pairs(users) do
  6.       local user_id = w
  7.       local player = vRP.getUserSource({user_id})
  8.       if not vRP.hasMission({player}) then
  9.         -- build mission
  10.         local mdata = {}
  11.         mdata.name = lang.drugseller.title()
  12.  
  13.         -- generate items
  14.         local todo = 0
  15.         local drugseller_items = {}
  16.         for idname,data in pairs(v.items) do
  17.           local amount = math.random(data[1],data[2]+1)
  18.           if amount > 0 then
  19.             drugseller_items[idname] = amount
  20.             todo = todo+1
  21.           end
  22.         end
  23.  
  24.         local step = {
  25.           text = "",
  26.           onenter = function(player, area)
  27.             for idname,amount in pairs(drugseller_items) do
  28.               if amount > 0 then -- check if not done
  29.                 if vRP.tryGetInventoryItem({user_id,idname,amount,true}) then
  30.                   local reward = v.items[idname][3]*amount
  31.                   local item_dirty = v.items[idname][4]
  32.                   if item_dirty then
  33.                     vRP.giveInventoryItem({user_id,item_dirty,reward,false})
  34.                   else
  35.                     vRP.giveMoney({user_id,reward})
  36.                   end
  37.                   vRPclient.notify(player,{glang.money.received_dirty({reward})})
  38.                   todo = todo-1
  39.                   drugseller_items[idname] = 0
  40.                   if todo == 0 then -- all received, finish mission
  41.                     vRP.nextMissionStep({player})
  42.                   end
  43.                 end
  44.               end
  45.             end
  46.           end,
  47.           position = v.positions[math.random(1,#v.positions)]
  48.         }
  49.  
  50.         -- mission display
  51.         for idname,amount in pairs(drugseller_items) do
  52.           local name = vRP.getItemName({idname})
  53.           step.text = step.text..lang.drugseller.item({name,amount}).."<br />"
  54.         end
  55.  
  56.         mdata.steps = {step}
  57.  
  58.         if todo > 0 then
  59.           vRP.startMission({player,mdata})
  60.         end
  61.       end
  62.     end
  63.   end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement