Jump to content

Recommended Posts

34 minutes ago, Rafaelxvv said:

Estou fazendo um sistema de Porte de Armas + Venda de Armas.

E eu quero deixar assim, só quem pode comprar arma é quem tem o porte de armas.

Quem não tem, não consegue comprar as armas.

 

Alguém que possa me ajudar?

O teu porte é elementData ?

Link to comment
function TriggerBuy(playerSource)
	if getElementData(playerSource, "Porte") then
		takePlayerMoney(playerSource, 5000)
		giveWeapon(playerSource, 31, 300, true)
	else
		outputChatBox("Você não possui porte de arma", playerSource)
	end
end
addEvent("Buy", true)
addEventHandler("Buy", resourceRoot, TriggerBuy)

Imagino que o seu sistema de comprar seja client-side através de painel DX/GUI, então você cria um evento no server-side mais ou menos igual a esse do exemplo acima.

Link to comment
19 minutes ago, ber said:


function TriggerBuy(playerSource)
	if getElementData(playerSource, "Porte") then
		takePlayerMoney(playerSource, 5000)
		giveWeapon(playerSource, 31, 300, true)
	else
		outputChatBox("Você não possui porte de arma", playerSource)
	end
end
addEvent("Buy", true)
addEventHandler("Buy", resourceRoot, TriggerBuy)

Imagino que o seu sistema de comprar seja client-side através de painel DX/GUI, então você cria um evento no server-side mais ou menos igual a esse do exemplo acima.

nessa parte que você colocou: "Porte"

o que eu devo colocar em vez de Porte?

isso? >    setElementData(localPlayer, "TS:PorteDeArmas", "Sim")

11 minutes ago, Rafaelxvv said:

nessa parte que você colocou: "Porte"

o que eu devo colocar em vez de Porte?

isso? >    setElementData(localPlayer, "TS:PorteDeArmas", "Sim")

ou então
isso? >   setElementData ( source, "TS:PorteDeArmas", Emprego )
ou isso? >   setAccountData ( conta, "TS:PorteDeArmas", Porte )

Edited by Rafaelxvv
Link to comment

 

1 hour ago, Rafaelxvv said:

nessa parte que você colocou: "Porte"

o que eu devo colocar em vez de Porte?

isso? >    setElementData(localPlayer, "TS:PorteDeArmas", "Sim")

ou então
isso? >   setElementData ( source, "TS:PorteDeArmas", Emprego )
ou isso? >   setAccountData ( conta, "TS:PorteDeArmas", Porte )

Substitua a segunda linha do script que eu mandei por essa:

if getElementData(playerSource, "TS:PorteDeArmas") == "Sim" then
Link to comment
3 hours ago, ber said:

 

Substitua a segunda linha do script que eu mandei por essa:


if getElementData(playerSource, "TS:PorteDeArmas") == "Sim" then

n ta dando certo

Just now, Rafaelxvv said:

n ta dando certo

function buyweaponsadan(plr,wpn)
if wpn == "deagle" then
    if (getPlayerMoney(plr) >= 85000) then
    elseif getElementData(playerSource, "TS:PorteDeArmas") == "Sim" then
        takePlayerMoney(plr,85000)
        giveWeapon(plr,24,600)
        triggerClientEvent(plr,"ADaddPlayerMSG",plr,"Você comprou uma Desert Eagle / +600 munições!")
        playSoundFrontEnd(plr,11)
    else
        triggerClientEvent(plr,"ADaddPlayerMSG",plr,"Você não tem dinheiro suficiente!")
    end

Just now, Rafaelxvv said:

n ta dando certo

function buyweaponsadan(plr,wpn)
if wpn == "deagle" then
    if (getPlayerMoney(plr) >= 85000) then
        takePlayerMoney(plr,85000)
        giveWeapon(plr,24,600)
        triggerClientEvent(plr,"ADaddPlayerMSG",plr,"Você comprou uma Desert Eagle / +600 munições!")
        playSoundFrontEnd(plr,11)
    else
        triggerClientEvent(plr,"ADaddPlayerMSG",plr,"Você não tem dinheiro suficiente!")
    end

o script é assim, iai tem como me ajudar?

Link to comment
function buyweaponsadan(plr, wpn)
  if getElementData(plr, "TS:PorteDeArmas") == "Sim" then
    if wpn == "deagle" then
      if (getPlayerMoney(plr) >= 85000) then
        takePlayerMoney(plr, 85000)
        giveWeapon(plr, 24, 600)
        triggerClientEvent(plr,"ADaddPlayerMSG",plr,"Você comprou uma Desert Eagle / +600 munições!")
        playSoundFrontEnd(plr,11)
      else
        triggerClientEvent(plr,"ADaddPlayerMSG",plr,"Você não tem dinheiro suficiente!")
      end
    end
  else
    triggerClientEvent(plr,"ADaddPlayerMSG",plr,"Você não possui porte de arma!")
  end
end

 

Link to comment
1 hour ago, ber said:

function buyweaponsadan(plr, wpn)
  if getElementData(plr, "TS:PorteDeArmas") == "Sim" then
    if wpn == "deagle" then
      if (getPlayerMoney(plr) >= 85000) then
        takePlayerMoney(plr, 85000)
        giveWeapon(plr, 24, 600)
        triggerClientEvent(plr,"ADaddPlayerMSG",plr,"Você comprou uma Desert Eagle / +600 munições!")
        playSoundFrontEnd(plr,11)
      else
        triggerClientEvent(plr,"ADaddPlayerMSG",plr,"Você não tem dinheiro suficiente!")
      end
    end
  else
    triggerClientEvent(plr,"ADaddPlayerMSG",plr,"Você não possui porte de arma!")
  end
end

 

Obrigado mesmo, vou te seguir virar membro curtir... Vlw muito obrigado

Link to comment
11 hours ago, ber said:

function buyweaponsadan(plr, wpn)
  if getElementData(plr, "TS:PorteDeArmas") == "Sim" then
    if wpn == "deagle" then
      if (getPlayerMoney(plr) >= 85000) then
        takePlayerMoney(plr, 85000)
        giveWeapon(plr, 24, 600)
        triggerClientEvent(plr,"ADaddPlayerMSG",plr,"Você comprou uma Desert Eagle / +600 munições!")
        playSoundFrontEnd(plr,11)
      else
        triggerClientEvent(plr,"ADaddPlayerMSG",plr,"Você não tem dinheiro suficiente!")
      end
    end
  else
    triggerClientEvent(plr,"ADaddPlayerMSG",plr,"Você não possui porte de arma!")
  end
end

 

ta funcionando de boa, não tem como comprar a arma sem ter o porte, vlw
...
o único problema é que a mensagem da linha 14 não ta aparecendo na tela, já as outras sim

"Você não possui porte de arma!"
Link to comment

function buyweaponsadan(plr, wpn)
if wpn == "deagle" then
      if (getPlayerMoney(plr) >= 85000) then
        takePlayerMoney(plr, 85000)
        giveWeapon(plr, 24, 600)
        triggerClientEvent(plr,"ADaddPlayerMSG",plr,"Você comprou uma Desert Eagle / +600 munições!")
        playSoundFrontEnd(plr,11)
      else
        triggerClientEvent(plr,"ADaddPlayerMSG",plr,"Você não tem dinheiro suficiente!")
      end
elseif wpn == "brass" then
    if (getPlayerMoney(plr) >= 25000) then
        takePlayerMoney(plr,25000)
        giveWeapon(plr,1,0)
        triggerClientEvent(plr,"ADaddPlayerMSG",plr,"Você comprou uma Brassnuckle!")
        playSoundFrontEnd(plr,11)
    else
        triggerClientEvent(plr,"ADaddPlayerMSG",plr,"Você não tem dinheiro suficiente!")
    end
elseif wpn == "faca" then
    if (getPlayerMoney(plr) >= 10000) then
        takePlayerMoney(plr,10000)
        giveWeapon(plr,4,0)
        triggerClientEvent(plr,"ADaddPlayerMSG",plr,"Você comprou uma Faca!")
        playSoundFrontEnd(plr,11)
    else
        triggerClientEvent(plr,"ADaddPlayerMSG",plr,"Você não tem dinheiro suficiente!")
    end
elseif wpn == "colt" then
    if (getPlayerMoney(plr) >= 45000) then
        takePlayerMoney(plr,45000)
        giveWeapon(plr,22,600)
        triggerClientEvent(plr,"ADaddPlayerMSG",plr,"Você comprou uma Colt 45 / +600 munições!")
        playSoundFrontEnd(plr,11)
    else
        triggerClientEvent(plr,"ADaddPlayerMSG",plr,"Você não tem dinheiro suficiente!")
    end
elseif wpn == "taco" then
    if (getPlayerMoney(plr) >= 15000) then
        takePlayerMoney(plr,15000)
        giveWeapon(plr,5,0)
        triggerClientEvent(plr,"ADaddPlayerMSG",plr,"Você comprou um Taco!")
        playSoundFrontEnd(plr,11)
    else
        triggerClientEvent(plr,"ADaddPlayerMSG",plr,"Você não tem dinheiro suficiente!")
    end
end
end
addEvent("ADANbuyweapon",true)
addEventHandler("ADANbuyweapon",resourceRoot,buyweaponsadan)

Just now, Rafaelxvv said:

function buyweaponsadan(plr, wpn)
if wpn == "deagle" then
      if (getPlayerMoney(plr) >= 85000) then
        takePlayerMoney(plr, 85000)
        giveWeapon(plr, 24, 600)
        triggerClientEvent(plr,"ADaddPlayerMSG",plr,"Você comprou uma Desert Eagle / +600 munições!")
        playSoundFrontEnd(plr,11)
      else
        triggerClientEvent(plr,"ADaddPlayerMSG",plr,"Você não tem dinheiro suficiente!")
      end
elseif wpn == "brass" then
    if (getPlayerMoney(plr) >= 25000) then
        takePlayerMoney(plr,25000)
        giveWeapon(plr,1,0)
        triggerClientEvent(plr,"ADaddPlayerMSG",plr,"Você comprou uma Brassnuckle!")
        playSoundFrontEnd(plr,11)
    else
        triggerClientEvent(plr,"ADaddPlayerMSG",plr,"Você não tem dinheiro suficiente!")
    end
elseif wpn == "faca" then
    if (getPlayerMoney(plr) >= 10000) then
        takePlayerMoney(plr,10000)
        giveWeapon(plr,4,0)
        triggerClientEvent(plr,"ADaddPlayerMSG",plr,"Você comprou uma Faca!")
        playSoundFrontEnd(plr,11)
    else
        triggerClientEvent(plr,"ADaddPlayerMSG",plr,"Você não tem dinheiro suficiente!")
    end
elseif wpn == "colt" then
    if (getPlayerMoney(plr) >= 45000) then
        takePlayerMoney(plr,45000)
        giveWeapon(plr,22,600)
        triggerClientEvent(plr,"ADaddPlayerMSG",plr,"Você comprou uma Colt 45 / +600 munições!")
        playSoundFrontEnd(plr,11)
    else
        triggerClientEvent(plr,"ADaddPlayerMSG",plr,"Você não tem dinheiro suficiente!")
    end
elseif wpn == "taco" then
    if (getPlayerMoney(plr) >= 15000) then
        takePlayerMoney(plr,15000)
        giveWeapon(plr,5,0)
        triggerClientEvent(plr,"ADaddPlayerMSG",plr,"Você comprou um Taco!")
        playSoundFrontEnd(plr,11)
    else
        triggerClientEvent(plr,"ADaddPlayerMSG",plr,"Você não tem dinheiro suficiente!")
    end
end
end
addEvent("ADANbuyweapon",true)
addEventHandler("ADANbuyweapon",resourceRoot,buyweaponsadan)

essa é a toda a parte, edita pra quem não tem o porte não conseguir comprar + a mensagem igual as outras

Link to comment
MarkerComprarPorte = createMarker(x,y,z,"cylinder",1.5,255,255,255,50) -- MODIFIQUE O X,Y,Z PARA A POSIÇÃO QUE VOCÊ QUER
MarkerComprarArma = createMarker(x,y,z,"cylinder",1.5,255,255,255,50) -- MODIFIQUE O X,Y,Z PARA A POSIÇÃO QUE VOCÊ QUER
ValorPorte = 1000
ValorArma = 1000


function MostrarInfosPorte(source)
    outputChatBox("Para Comprar o Porte de Armas Digite /comprar Valor : R$"..ValorPorte..",00",source,255,255,255,true)
end
addEventHandler("onMarkerHit",MarkerComprarPorte,MostrarInfosPorte)

function ComprarPorte(source,comando)
    if isElementWithinMarker(source,MarkerComprarPorte) then -- CONFERINDO SE ESTÁ DENTRO DO MARKER
        if getPlayerMoney(source) >= ValorPorte then -- CONFERINDO SE O DINHEIRO É MAIOR OU IGUAL AO VALOR DO PORTE
            if not getElementData(source,"Porte") then -- CONFERINDO SE A PESSOA NÃO TEM O PORTE
                setElementData(source,"Porte",true)
                takePlayerMoney(source,ValorPorte)
            else
                outputChatBox("Você Já Tem Porte",source,255,255,255,true)
            end
        else
            outputChatBox("Você Não Tem Dinheiro Suficiente",source,255,255,255,true)
        end
    end
end
addCommandHandler("comprar",ComprarPorte)

function ComprarArma(source,comando)
    if isElementWithinMarker(source,MarkerComprarArma) then -- CONFERINDO SE ESTÁ DENTRO DO MARKER
        if getPlayerMoney(source) >= ValorArma then -- CONFERINDO SE O DINHEIRO É MAIOR OU IGUAL AO VALOR DA ARMA
            if getElementData(source,"Porte") then -- CONFERINDO SE TEM O PORTE
                giveWeapon(source,31,500)
                takePlayerMoney(source,ValorArma)
            else
                outputChatBox("Você Não Tem Porte",source,255,255,255,true)
            end
        else
            outputChatBox("Você Não Tem Dinheiro Suficiente",source,255,255,255,true)
        end
    end
end
addCommandHandler("comprarm4",ComprarArma)

Exemplo básico para entender a lógica

Edited by LucasST
  • Thanks 1
Link to comment
9 hours ago, LucasST said:

MarkerComprarPorte = createMarker(x,y,z,"cylinder",1.5,255,255,255,50) -- MODIFIQUE O X,Y,Z PARA A POSIÇÃO QUE VOCÊ QUER
MarkerComprarArma = createMarker(x,y,z,"cylinder",1.5,255,255,255,50) -- MODIFIQUE O X,Y,Z PARA A POSIÇÃO QUE VOCÊ QUER
ValorPorte = 1000
ValorArma = 1000


function MostrarInfosPorte(source)
    outputChatBox("Para Comprar o Porte de Armas Digite /comprar Valor : R$"..ValorPorte..",00",source,255,255,255,true)
end
addEventHandler("onMarkerHit",MarkerComprarPorte,MostrarInfosPorte)

function ComprarPorte(source,comando)
    if isElementWithinMarker(source,MarkerComprarPorte) then -- CONFERINDO SE ESTÁ DENTRO DO MARKER
        if getPlayerMoney(source) >= ValorPorte then -- CONFERINDO SE O DINHEIRO É MAIOR OU IGUAL AO VALOR DO PORTE
            if not getElementData(source,"Porte") then -- CONFERINDO SE A PESSOA NÃO TEM O PORTE
                setElementData(source,"Porte",true)
                takePlayerMoney(source,ValorPorte)
            else
                outputChatBox("Você Já Tem Porte",source,255,255,255,true)
            end
        else
            outputChatBox("Você Não Tem Dinheiro Suficiente",source,255,255,255,true)
        end
    end
end
addCommandHandler("comprar",ComprarPorte)

function ComprarArma(source,comando)
    if isElementWithinMarker(source,MarkerComprarArma) then -- CONFERINDO SE ESTÁ DENTRO DO MARKER
        if getPlayerMoney(source) >= ValorArma then -- CONFERINDO SE O DINHEIRO É MAIOR OU IGUAL AO VALOR DA ARMA
            if getElementData(source,"Porte") then -- CONFERINDO SE TEM O PORTE
                giveWeapon(source,31,500)
                takePlayerMoney(source,ValorArma)
            else
                outputChatBox("Você Não Tem Porte",source,255,255,255,true)
            end
        else
            outputChatBox("Você Não Tem Dinheiro Suficiente",source,255,255,255,true)
        end
    end
end
addCommandHandler("comprarm4",ComprarArma)

Exemplo básico para entender a lógica

vlw LucasST

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...