Jump to content

Linha anti-caracteristicas


Recommended Posts

Server.Lua

 

function IniciarVendaArmas (source, Arma_Selecionada, getID, getPreco, getMunicao, WeaponID)
local Jogador = getPlayerID(getID)
local Preco = tonumber(getPreco)
local Municao = tonumber(getMunicao)
local MunicaoAtual = getElementData(source, "TS:MuniAtual") or 0
if not Jogador then triggerClientEvent(source, "addNotification", root, "#0037FF✘#ffffffINFO#0037FF✘➺ #ffffffJogador não encontrado!") return end
if source == Jogador then triggerClientEvent(source, "addNotification", root, "#0037FF✘#ffffffINFO#0037FF✘➺ #ffffffVocê não pode vender arma para você mesmo!") return end
--if getElementData(Jogador, "TS:Vendedor") then triggerClientEvent(source, "addNotification", root, "#0037FF✘#ffffffINFO#0037FF✘➺ #ffffffO jogador já esta em uma negociação!") return end
if tonumber(MunicaoAtual) < tonumber(getMunicao) then
triggerClientEvent(source, "addNotification", root, "#0037FF✘#ffffffINFO#0037FF✘➺ #ffffffVocê não tem essa munição!")
else
local Posx, Posy, Poz = getElementPosition ( source )
local Posx1, Posy1, Pos1z = getElementPosition ( Jogador )
local Distancia = getDistanceBetweenPoints3D ( Posx, Posy, Poz, Posx1, Posy1, Pos1z  )
if Distancia > 3 then
triggerClientEvent(source, "addNotification", root, "#0037FF✘#ffffffINFO#0037FF✘➺ #ffffffO jogador está muito longe!")
return end
setElementData(source, "TS:Cliente", Jogador)
setElementData(Jogador, "TS:Vendedor", source)
setElementData(source, "TS:Preco", getPreco)
setElementData(source, "TS:Muni", Municao)
setElementData(source, "TS:NomeArma", Arma_Selecionada)
triggerClientEvent(Jogador, "TS:ConfirmacaoWeapon", Jogador)
end
end
addEvent ("TS:IniciarVendaArmas", true)
addEventHandler ("TS:IniciarVendaArmas", root, IniciarVendaArmas)

function Rejeitado ()
local Vendedor = getElementData(source, "TS:Vendedor")
if Vendedor then
triggerClientEvent(source, "addNotification", root, "#0037FF✘#ffffffINFO#0037FF✘➺ #ffffffO jogador recusou a negociação!")
triggerClientEvent(Vendedor, "addNotification", root, "#0037FF✘#ffffffINFO#0037FF✘➺ #ffffffVocê rejeitou a negociação!")
setElementData(Vendedor, "TS:Cliente", nil)
setElementData(source, "TS:Vendedor", nil)
setElementData(Vendedor, "TS:Preco", nil)
setElementData(Vendedor, "TS:Muni", nil)
setElementData(Vendedor, "TS:IDArma", nil)
setElementData(Vendedor, "TS:NomeArma", nil)
end
end
addEvent ("TS:Rejeitado", true)
addEventHandler ("TS:Rejeitado", root, Rejeitado)

function AceitarWeapon ()
local Vendedor = getElementData(source, "TS:Vendedor")
if Vendedor then
local Preco = tonumber(getElementData(Vendedor, "TS:Preco")) or 0
local Municoes = getElementData(Vendedor, "TS:Muni") or 5
local IDArmaTS = tonumber(getElementData(Vendedor, "TS:IDArma")) or 0
local NomeArma = getElementData(Vendedor, "TS:NomeArma") or "Error"
local MunicaoAtual = getElementData(Vendedor, "TS:MuniAtual") or 0
local MunicaoTotalVendedor = MunicaoAtual - Municoes
if getPlayerMoney(source) < Preco then
triggerClientEvent(source, "addNotification", root, "#0037FF✘#ffffffINFO#0037FF✘➺ #ffffffDinheiro Insuficiente!")
triggerClientEvent(Vendedor, "addNotification", root, "#0037FF✘#ffffffINFO#0037FF✘➺ #ffffffO jogador não tem dinheiro suficiente!")
setElementData(Vendedor, "TS:Cliente", nil) 
setElementData(source, "TS:Vendedor", nil)
setElementData(Vendedor, "TS:Preco", nil)
setElementData(Vendedor, "TS:Muni", nil)
setElementData(Vendedor, "TS:IDArma", nil)
setElementData(Vendedor, "TS:NomeArma", nil)
return end
takePlayerMoney(source, Preco)
givePlayerMoney(Vendedor, Preco)
takeWeapon(Vendedor, IDArmaTS, Municoes)
giveWeapon(source, IDArmaTS, Municoes, true )
setElementData(Vendedor, "TS:Cliente", nil)
setElementData(source, "TS:Vendedor", nil)
setElementData(Vendedor, "TS:Preco", nil)
setElementData(Vendedor, "TS:Muni", nil)
setElementData(Vendedor, "TS:IDArma", nil)
setElementData(Vendedor, "TS:NomeArma", nil)
triggerClientEvent(Vendedor, "addNotification", root, "#0037FF✘#ffffffINFO#0037FF✘➺ #ffffffO jogador aceitou a negociação !")
triggerClientEvent(source, "addNotification", root, "#0037FF✘#ffffffINFO#0037FF✘➺ #ffffffVocê aceitou a negociação!")
end
end
addEvent ("TS:AceitarWeapon", true)
addEventHandler ("TS:AceitarWeapon", root, AceitarWeapon)

function getPlayerID(id)
v = false
for i, player in ipairs (getElementsByType("player")) do
if getElementData(player, "ID") == id then
v = player
break
end
end
return v
end

O problema é que da pra bugar o dinheiro na hora de vender a arma. O cara vende por -999999 e o cara que compra fica com a grana toda. Vocês conhecem alguma function para evitar que eles coloquem caracteristicas EX: -,+, . ,=

Link to comment
function AceitarWeapon ()
   local Vendedor = getElementData(source, "TS:Vendedor")
   if Vendedor then
   local Preco = tonumber(getElementData(Vendedor, "TS:Preco")) or 0
   local Municoes = getElementData(Vendedor, "TS:Muni") or 5
   local IDArmaTS = tonumber(getElementData(Vendedor, "TS:IDArma")) or 0
   local NomeArma = getElementData(Vendedor, "TS:NomeArma") or "Error"
   local MunicaoAtual = getElementData(Vendedor, "TS:MuniAtual") or 0
   local MunicaoTotalVendedor = MunicaoAtual - Municoes

   if getPlayerMoney(source) < Preco then
   triggerClientEvent(source, "addNotification", root, "#0037FF✘#ffffffINFO#0037FF✘➺ #ffffffDinheiro Insuficiente!")
   triggerClientEvent(Vendedor, "addNotification", root, "#0037FF✘#ffffffINFO#0037FF✘➺ #ffffffO jogador não tem dinheiro suficiente!")
   setElementData(Vendedor, "TS:Cliente", nil) 
   setElementData(source, "TS:Vendedor", nil)
   setElementData(Vendedor, "TS:Preco", nil)
   setElementData(Vendedor, "TS:Muni", nil)
   setElementData(Vendedor, "TS:IDArma", nil)
   setElementData(Vendedor, "TS:NomeArma", nil)
   return end
      valor_permitido = 1000000 --/> Altere Caso Queira uma Quantidade Diferente!
      if Preco >= tonumber(1) and Preco <= tonumber(valor_permitido) then --/> AQUI
         takePlayerMoney(source, Preco)
         givePlayerMoney(Vendedor, Preco)
         takeWeapon(Vendedor, IDArmaTS, Municoes)
         giveWeapon(source, IDArmaTS, Municoes, true )
         setElementData(Vendedor, "TS:Cliente", nil)
         setElementData(source, "TS:Vendedor", nil)
         setElementData(Vendedor, "TS:Preco", nil)
         setElementData(Vendedor, "TS:Muni", nil)
         setElementData(Vendedor, "TS:IDArma", nil)
         setElementData(Vendedor, "TS:NomeArma", nil)
         triggerClientEvent(Vendedor, "addNotification", root, "#0037FF✘#ffffffINFO#0037FF✘➺ #ffffffO jogador aceitou a negociação !")
         triggerClientEvent(source, "addNotification", root, "#0037FF✘#ffffffINFO#0037FF✘➺ #ffffffVocê aceitou a negociação!")
      else --/> AQUI
      triggerClientEvent(Vendedor, "addNotification", root, "#0037FF✘#ffffffINFO#0037FF✘➺ #ffffffApenas Permitidos Valores de 1 a 1,000.000!") --/> AQUI
      end --/> AQUI
   end
end
addEvent ("TS:AceitarWeapon", true)
addEventHandler ("TS:AceitarWeapon", root, AceitarWeapon)

Verifique se deste modo iram conseguir bular, e verifique se as alterações está funcional dos (--/>AQUI)

  • Thanks 1
Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...