Jump to content

Ajuda sobre inventario


Recommended Posts

Olá parei com todos os meus projetos e estou desenvolvendo um inventario simples como não sou muito bom ainda com programação

Queria saber se tem como fazer um botão para Armar e Guardar, por exemplo o player compra uma arma e ele abre um dx que tem o botao de guardar, quando ele clica em guardar ela altomaticamente some dos slots da hud e da mao do player mais ele continuaria com ela , depois no botao de baixo ele pode habilitar "armar" com a arma e ela voltaria a aparecer na hud e apareceria na mao do jogador para ele poder usar, alguem poderia me ajudar nessa parte

Link to comment

Certo , isso tudo eu ja fiz e as funções tambem consigo aplicar a cada botao dx , no caso da hud e pra depois porque vou ter que sintoniza junto com o inventario, pra agora oque eu quero é quando clico em certo botao ele some da mao do jogador e quando ele usa o scroll não aparece , so ira aparecer quando ele apertar no outro botao para armar

Link to comment

Oque estou fazendo de errado 

Jogador = getLocalPlayer()
for slot = 0, 12 do
for Armas = 1, 40 do
local Armamentos = (getPedWeapon (Jogador, slot) == Armas) 
end
end

if Armamentos == 30 then
    dxDrawImage(x*640, y*285, x*30, y*30, "imagens/armas/1.png", 0, 0, 0, tocolor(255, 255, 255, 255), false)
	else
	dxDrawImage(x*640, y*285, x*30, y*30, "imagens/armas/1.png", 0, 0, 0, tocolor(255, 255, 255, 100), false)
end

Estou tentando fazer com que se o player tiver a arma ak-47 sendo no slot 0 ao 12 ela aparece com 255 opacidade se não tiver a arma ele tem 100 de opacidade

Link to comment
35 minutes ago, LucasMTA said:

Oque estou fazendo de errado 


Jogador = getLocalPlayer()
for slot = 0, 12 do
for Armas = 1, 40 do
local Armamentos = (getPedWeapon (Jogador, slot) == Armas) 
end
end

if Armamentos == 30 then
    dxDrawImage(x*640, y*285, x*30, y*30, "imagens/armas/1.png", 0, 0, 0, tocolor(255, 255, 255, 255), false)
	else
	dxDrawImage(x*640, y*285, x*30, y*30, "imagens/armas/1.png", 0, 0, 0, tocolor(255, 255, 255, 100), false)
end

Estou tentando fazer com que se o player tiver a arma ak-47 sendo no slot 0 ao 12 ela aparece com 255 opacidade se não tiver a arma ele tem 100 de opacidade

Isso é da Hud, ou do inventário?

Link to comment

inventario

arrumei algumas coisas mais msm assim nada 

local Jogador = getLocalPlayer()
for slot = 0, 12 do
for Armas = 1, 40 do
local Armamentos = (getPedWeapon (Jogador, slot) == Armas) 


if Armamentos == 30 then
    dxDrawImage(x*640, y*285, x*30, y*30, "imagens/armas/1.png", 0, 0, 0, tocolor(255, 255, 255, 255), false)
	else
	dxDrawImage(x*640, y*285, x*30, y*30, "imagens/armas/1.png", 0, 0, 0, tocolor(255, 255, 255, 100), false)
end
end
end

 

Link to comment

Tente assim:

function verificarArmasInv()
   for slot = 1,12 do
      local w = getPedWeapon(localPlayer, slot)
      if w and w ~= 0 then
         weapons[slot] = w
      end
   end
end

addEventHandler("onClientRender", root,
function() --//Recomendo que você nomeie sua função, caso ela seja chamada em breve
   dxDrawImage((weapons[12] and "diretório/img" or "diretorio/img"), coordenadas, e afins) --// Onde está 12 você altera pelo ID de sua arma que quer obter
end
)

 

Link to comment
local Slot = getPedWeaponSlot (localPlayer)
local Arma = getPedWeapon (localPlayer)
	if (Slot == 5 and Arma == 30)	then
	   dxDrawImage(x*640, y*285, x*30, y*30, "imagens/armas/1.png", 0, 0, 0, tocolor(255, 255, 255, 255), false)--img 1
       else
	   dxDrawImage(x*640, y*285, x*30, y*30, "imagens/armas/1.png", 0, 0, 0, tocolor(255, 255, 255, 80), false)--img 2
	end

eu tentei dessa forma , funcionou porem quando eu tiro a arma da mao ela simplesmente fica na img 2 não na img 1

tambem tentei dessa maneira, mais nao obetive sucesso tambem :[

if (getPedWeapon (localPlayer, 30) == 5) then 
    dxDrawImage(x*640, y*285, x*30, y*30, "imagens/armas/1.png", 0, 0, 0, tocolor(255, 255, 255, 255), false) --img 1
else
    dxDrawImage(x*640, y*285, x*30, y*30, "imagens/armas/1.png", 0, 0, 0, tocolor(255, 255, 255, 80), false) --img 2
end

 

Edited by LucasMTA
Link to comment
  • Other Languages Moderators

Não é possível. Você não pode ter 2 armas diferentes no mesmo slot.

Cada slot só suporta 1 arma. Mais detalhes no Weapons

Edit: talvez seja possível através de gambiarras, o que não é recomendável

Link to comment

Voltei denovo sobre o inventario , eu tenho uma função armas que e uma aba do meu painel dx estou tentando clicar em um botao que fiz nela mais nao to conseguindo oque estou errando

 

    if DX_Inventario == true then
        if state == "down" then
            if Posicao_Mouse_Inventario(x*440, y*320, x*180, y*35) then --Armas
			    playSound("sounds/click.mp3", false)
                addEventHandler("onClientRender", root, armas)
				removeEventHandler ( "onClientRender", getRootElement(), informacoes )
				removeEventHandler ( "onClientRender", getRootElement(), comidas )
				removeEventHandler ( "onClientRender", getRootElement(), Inventario )
				if Posicao_Mouse_Inventario(x*445, y*445, x*80, y*20) then --Click IMG1
			        playSound("sounds/click.mp3", false)
				end
            end
        end
    end

 

Link to comment
5 hours ago, LucasMTA said:

Voltei denovo sobre o inventario , eu tenho uma função armas que e uma aba do meu painel dx estou tentando clicar em um botao que fiz nela mais nao to conseguindo oque estou errando

 


    if DX_Inventario == true then
        if state == "down" then
            if Posicao_Mouse_Inventario(x*440, y*320, x*180, y*35) then --Armas
			    playSound("sounds/click.mp3", false)
                addEventHandler("onClientRender", root, armas)
				removeEventHandler ( "onClientRender", getRootElement(), informacoes )
				removeEventHandler ( "onClientRender", getRootElement(), comidas )
				removeEventHandler ( "onClientRender", getRootElement(), Inventario )
				if Posicao_Mouse_Inventario(x*445, y*445, x*80, y*20) then --Click IMG1
			        playSound("sounds/click.mp3", false)
				end
            end
        end
    end

 

Cadê o evento "onClientClick" mnin?

@LucasMTA use o Posição Mouse do playSound como condição alternativa

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