Advertisement
Guest User

Untitled

a guest
Jul 21st, 2018
65
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 5.24 KB | None | 0 0
  1. --Consulta dinheiro no banco
  2. getPlayerBalance = function(player)
  3.     local result = db.getResult("SELECT `balance` FROM `players` WHERE `id` = " .. getPlayerGUID(player))
  4.     if(result:getID() == -1) then
  5.         return false
  6.     end
  7.  
  8.     local value = tonumber(result:getDataString("balance"))
  9.     result:free()
  10.     return value
  11. end
  12.  
  13. --Modificação da receita do jogador
  14. doPlayerSetBalance = function(player, balance)
  15.     db.executeQuery("UPDATE `players` SET `balance` = " .. balance .. " WHERE `id` = " .. getPlayerGUID(player))
  16.     return true
  17.  end
  18.  
  19. --Consulta guild do forte
  20. getForteGuild = function(idforte)
  21.     local result = db.getResult("SELECT `guild` FROM `fortes` WHERE `id` = " .. idforte)
  22.     result:free()
  23.     return result
  24. end
  25.  
  26. --Consulta guild do player
  27. getPlayerGuild = function(player)
  28.     local result = db.getResult("SELECT `guild_id` FROM `guild_membership` WHERE `player_id` = " .. getPlayerGUID(player))
  29.     local result = db.getResult("SELECT `name` FROM `guilds` WHERE `id` = " .. result)
  30.     result:free()
  31.     return result
  32. end
  33.  
  34.  desenterrar = function(player, balance, item, idforte, cidade)
  35.  
  36.     --Redução da receita
  37.     doPlayerSetBalance(player,getPlayerBalance(player) - balance)
  38.    
  39.     --Transformar o machado
  40.     item.transform = 3873
  41.     targetItem:getPosition():sendMagicEffect(CONST_ME_POFF)
  42.     item:remove()
  43.    
  44.     --Horário da batalha
  45.     batalha.horario = (%X, os.clock())
  46.    
  47.     --Mensagens globais
  48.     for _, targetPlayer in ipairs(Game.getPlayers()) do
  49.         targetPlayer:sendPrivateMessage(player, "Haverá uma batalha no forte " .. db.getResult("SELECT `nome` FROM `fortes` WHERE `id` = " .. idforte) .. " na cidade de " .. grande.cidade .. ".", TALKTYPE_BROADCAST)
  50.         targetPlayer:sendPrivateMessage(player, "A guild " .. getPlayerGuild .. "desenterrou o machado, hoje, às " .. batalha.horario .. "contra a guild ".. getForteGuild(idforte) .. ".", TALKTYPE_BROADCAST)
  51.     end
  52.  
  53.     --Criação de evento
  54.    
  55.  end
  56.  
  57. --Variáveis
  58. local grande.x = 1013
  59. local grande.y = 1042
  60. local grande.z = 7
  61. local grande.cidade = "Wisland"
  62. local grande.balance = 25000000
  63. local grande.id = 1
  64.  
  65. local medio.x = 1013
  66. local medio.y = 1042
  67. local medio.z = 7
  68. local medio.cidade = "Zanknore"
  69. local medio.balance = 15000000
  70. local medio.id = 2
  71.  
  72. local pequeno.x = 1013
  73. local pequeno.y = 1042
  74. local pequeno.z = 7
  75. local pequeno.cidade = "Tanaris"
  76. local pequeno.balance = 10000000
  77. local pequeno.id = 3
  78.  
  79. --Função principal (Uso na pilha de madeira)
  80. function onUse(player, item, fromPosition, target, toPosition, isHotkey)   
  81.  
  82.     --Verificação da posição da pilha (grande)
  83.     if toPosition.x == grande.x and toPosition.y == grande.y and toPosition.z == grande.z then
  84.                
  85.         --Player não tem dinheiro
  86.         if getPlayerBalance(player) < grande.balance then
  87.             player:sendCancelMessage("Quantia insuficiente, voce necessita de " .. grande.balance/1000000 .. "kk.")
  88.             player:getPosition():sendMagicEffect(CONST_ME_POFF)
  89.             return false
  90.            
  91.         --Player não pertence a uma guild
  92.         elseif getPlayerGuild(player) == -1 then
  93.             player:sendCancelMessage("Voce precisa de pertencer a uma guild.")
  94.             player:getPosition():sendMagicEffect(CONST_ME_POFF)
  95.             return false
  96.        
  97.         --Verificação de líder ou vice-líder?
  98.         --elseif
  99.             --player:sendCancelMessage("Voce precisa ser lider ou vice-lider de sua guild.")
  100.             --return false
  101.            
  102.         else
  103.        
  104.             --Entra função
  105.             desenterrar(player, grande.balance, item, grande.id, grande.cidade)
  106.         end
  107.        
  108.     --Verificação da posição da pilha (medio)
  109.     elseif toPosition.x == medio.x and toPosition.y == medio.y and toPosition.z == medio.z then
  110.  
  111.         --Player não tem dinheiro
  112.          if getPlayerBalance(player) < medio.balance then
  113.              player:sendCancelMessage("Quantia insuficiente, voce necessita de " .. medio.balance/1000000 .. "kk.")
  114.              player:getPosition():sendMagicEffect(CONST_ME_POFF)
  115.              return false
  116.              
  117.         --Player não pertence a uma guild
  118.         elseif getPlayerGuild(player) == -1 then
  119.             player:sendCancelMessage("Voce precisa de pertencer a uma guild.")
  120.             player:getPosition():sendMagicEffect(CONST_ME_POFF)
  121.             return false
  122.        
  123.         --Verificação de líder ou vice-líder?
  124.         --elseif
  125.             --player:sendCancelMessage("Voce precisa ser lider ou vice-lider de sua guild.")
  126.             --return false
  127.            
  128.         else
  129.        
  130.             --Entra função
  131.             desenterrar(player, medio.balance, item, medio.id, medio.cidade)
  132.         end
  133.        
  134.     --Verificação da posição da pilha (pequeno)
  135.      elseif toPosition.x == pequeno.x and toPosition.y == pequeno.y and toPosition.z == pequeno.z then
  136.  
  137.         --Player não tem dinheiro
  138.          if getPlayerBalance(player) < pequeno.balance then
  139.              player:sendCancelMessage("Quantia insuficiente, voce necessita de " .. pequeno.balance/1000000 .. "kk.")
  140.              player:getPosition():sendMagicEffect(CONST_ME_POFF)
  141.              return false
  142.              
  143.         --Player não pertence a uma guild
  144.         elseif getPlayerGuild(player) == -1 then
  145.             player:sendCancelMessage("Voce precisa de pertencer a uma guild.")
  146.             player:getPosition():sendMagicEffect(CONST_ME_POFF)
  147.             return false
  148.        
  149.         --Verificação de líder ou vice-líder?
  150.         --elseif
  151.             --player:sendCancelMessage("Voce precisa ser lider ou vice-lider de sua guild.")
  152.             --return false
  153.            
  154.         else
  155.        
  156.             --Entra função
  157.             desenterrar(player, pequeno.balance, item, pequeno.id, pequeno.cidade)
  158.         end
  159.        
  160.     else
  161.         return false
  162.     end
  163.    
  164. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement