Advertisement
Guest User

Prisao.LUA

a guest
Jul 27th, 2017
92
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.07 KB | None | 0 0
  1. grouprequired = 3
  2.  
  3. jailedstoragevalue_time = 1338
  4.  
  5. jailedstoragevalue_bool = 1339
  6.  
  7. local jailpos = {
  8.  
  9. [1] = {x = 1329, y = 1140, z =7},
  10.  
  11. [2] = {x = 1317, y = 1134, z =7},
  12.  
  13. [3] = {x = 1329, y = 1129, z =7},
  14.  
  15.  
  16. }
  17.  
  18. local unjailpos = { x = 1297, y = 1124, z =7 }
  19.  
  20. jail_list = {}
  21.  
  22. jail_list_work = 0
  23.  
  24.  
  25. function checkJailList(param)
  26.  
  27. addEvent(checkJailList, 1000, {})
  28.  
  29. for targetID,player in ipairs(jail_list) do
  30.  
  31. if isPlayer(player) == TRUE then
  32.  
  33. if getPlayerStorageValue(player, jailedstoragevalue_time) < os.time() then
  34.  
  35. doTeleportThing(player, unjailpos, TRUE)
  36.  
  37. setPlayerStorageValue(player, jailedstoragevalue_time, 0)
  38.  
  39. setPlayerStorageValue(player, jailedstoragevalue_bool, 0)
  40.  
  41. table.remove(jail_list,targetID)
  42.  
  43. doPlayerSendTextMessage(player, MESSAGE_STATUS_CONSOLE_ORANGE, 'Você saiu da cadeia, tente não fazer coisas malvadas da próxima vez para não ser preso novamente. Cuide-se amigo.')
  44.  
  45. end
  46.  
  47. else
  48.  
  49. table.remove(jail_list,targetID)
  50.  
  51. end
  52.  
  53. end
  54.  
  55. end
  56.  
  57.  
  58. function onSay(cid, words, param, channel)
  59.  
  60. if(param == '') then
  61.  
  62. doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Command param required.")
  63.  
  64. return true
  65.  
  66. end
  67.  
  68. local t = string.explode(param, ",")
  69.  
  70. if jail_list_work == 0 then
  71.  
  72. jail_list_work = addEvent(checkJailList, 1000, {})
  73.  
  74. end
  75.  
  76. local jail_time = -1
  77.  
  78. for word in string.gmatch(tostring(t[1]), "(%w+)") do
  79.  
  80. if tostring(tonumber(word)) == word then
  81.  
  82. jail_time = tonumber(word)
  83.  
  84. end
  85.  
  86. end
  87.  
  88. local isplayer = getPlayerByName(t[1])
  89.  
  90. if isPlayer(isplayer) ~= TRUE then
  91.  
  92. isplayer = getPlayerByName(string.sub(t[1], string.len("jail_time")+1))
  93.  
  94. if isPlayer(isplayer) ~= TRUE then
  95.  
  96. isplayer = getPlayerByName(string.sub(t[1], string.len("jail_time")+2))
  97.  
  98. if isPlayer(isplayer) ~= TRUE then
  99.  
  100. isplayer = getPlayerByName(string.sub(t[1], string.len("jail_time")+3))
  101.  
  102. end
  103.  
  104. end
  105.  
  106. end
  107.  
  108. local default_jail = 30
  109.  
  110. if(t[2]) then
  111.  
  112. default_jail = t[2]
  113.  
  114. end
  115.  
  116. if jail_time ~= -1 then
  117.  
  118. jail_time = jail_time * 60
  119.  
  120. else
  121.  
  122. jail_time = default_jail
  123.  
  124. end
  125.  
  126.  
  127. if (words == '!prender' or words == '/prender') then
  128.  
  129. if getPlayerGroupId(cid) >= grouprequired then
  130.  
  131. if isPlayer(isplayer) == TRUE then
  132.  
  133. doTeleportThing(isplayer, jailpos[math.random(#jailpos)], TRUE)
  134.  
  135. setPlayerStorageValue(isplayer, jailedstoragevalue_time, os.time()+jail_time)
  136.  
  137. setPlayerStorageValue(isplayer, jailedstoragevalue_bool, 1)
  138.  
  139. table.insert(jail_list,isplayer)
  140.  
  141. doPlayerSendTextMessage (cid, MESSAGE_STATUS_CONSOLE_ORANGE, 'Você prendeu o player: '.. getCreatureName(isplayer) ..' ate ' .. os.date("%H:%M:%S", getPlayerStorageValue(isplayer, jailedstoragevalue_time)) .. ' (agora é: ' .. os.date("%H:%M:%S", os.time()) .. ').')
  142.  
  143. doPlayerSendTextMessage (isplayer, MESSAGE_STATUS_CONSOLE_ORANGE, 'Voce foi preso por '.. getCreatureName(cid) ..' ate ' .. os.date("%H:%M:%S", getPlayerStorageValue(isplayer, jailedstoragevalue_time)) .. ' (agora é: ' .. os.date("%H:%M:%S", os.time()) .. ').')
  144.  
  145. else
  146.  
  147. doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Este jogador não existe ou esta offline.")
  148.  
  149. end
  150.  
  151. else
  152.  
  153. doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Você não tem permissão para prender players.")
  154.  
  155. end
  156.  
  157. elseif (words == '!desprender' or words == '/desprender') then
  158.  
  159. if getPlayerGroupId(cid) >= grouprequired then
  160.  
  161. if isPlayer(isplayer) == TRUE then
  162.  
  163. if getPlayerStorageValue(isplayer, jailedstoragevalue_bool) == 1 then
  164.  
  165. doTeleportThing(isplayer, unjailpos, TRUE)
  166.  
  167. setPlayerStorageValue(isplayer, jailedstoragevalue_time, 0)
  168.  
  169. setPlayerStorageValue(isplayer, jailedstoragevalue_bool, 0)
  170.  
  171. table.remove(jail_list,targetID)
  172.  
  173. doPlayerSendTextMessage(isplayer, MESSAGE_STATUS_CONSOLE_ORANGE, 'O player '.. getCreatureName(cid) ..' te tirou da prisão. Te vejo em breve!!!')
  174.  
  175. doPlayerSendTextMessage (cid, MESSAGE_STATUS_CONSOLE_ORANGE, 'Você tirou da prisão o player: '.. getCreatureName(isplayer) ..'.')
  176.  
  177. else
  178.  
  179. doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Este jogador não está preso.")
  180.  
  181. end
  182.  
  183. else
  184.  
  185. doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Este jogador não existe ou esta offline.")
  186.  
  187. end
  188.  
  189. else
  190.  
  191. doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Você não tem permissão para prender players.")
  192.  
  193. end
  194.  
  195. end
  196.  
  197. return true
  198.  
  199. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement