Jump to content

Me ajudem neste Checkbox de JetPack


Recommended Posts

Olá pessoal, boa noite. Pessoal eu estava querendo criar um Checkbox que quando eu marcasse eu ganhava um JetPack e quando eu desmarcar-se ele removia meu JetPack, mas quando eu clico na Checkbox não acontece nada!!

Client:

... 
jetpack = guiCreateCheckBox(25, 70, 73, 23, "Jetpack", false, false, MaligNosWindow) 
... 
  
function JetPack() 
  if guiCheckBoxGetSelected(jetpack) == true then 
    triggerServerEvent("jetpack", resourceRoot, localPlayer) 
  else 
    triggerServerEvent("jetpack1", resourceRoot, localPlayer) 
  end 
end 
  
addEventHandler("onClientGUIClick", velocidade, JetPack, false) 

Server:

function jetpackk(source) 
     if not ( doesPedHaveJetPack (source)) then 
     givePedJetPack (source) 
  end 
end 
addEvent("jetpack", true) 
addEventHandler("jetpack", resourceRoot, jetpackk) 
  
function jetpackk1(source) 
    if ( doesPedHaveJetPack (source)) then 
    removePedJetPack (source)   
  end 
end 
addEvent("jetpack1", true) 
addEventHandler("jetpack1", resourceRoot, jetpackk1) 

Link to comment
  • Moderators

Client:

  
... 
jetpack = guiCreateCheckBox(25, 70, 73, 23, "Jetpack", false, false, MaligNosWindow) 
... 
  
function JetPack() 
    local selected = guiCheckBoxGetSelected(jetpack) 
    if selected then 
        -- Enviará o valor selected para o evento do lado server 
        -- selected retornará um valor booleano, ou seja: true ou false. 
        triggerServerEvent("jetpack", localPlayer, selected) -- Dar o jetpack 
    elseif ( not selected ) then 
        local selected = not selected -- selected será false 
        triggerServerEvent("jetpack", localPlayer, selected) -- Tirar o jetpack 
    end 
end 
addEventHandler("onClientGUIClick", velocidade, JetPack, false) 

Server:

  
function jetpackk(selected) 
    if ( selected and (not doesPedHaveJetPack(source)) ) then 
        givePedJetPack(source) 
    elseif ( (not selected) and doesPedHaveJetPack(source) ) then 
        removePedJetPack(source) 
    end 
end 
addEvent("jetpack", true) 
addEventHandler("jetpack", root, jetpackk) -- root é uma variável pré-definida de getRootElement() 

Leia os comentários no código.

Esquece sobre o resourceRoot substituir pelo getRootElement() não foi isso que eu quis dizer. Use apenas no evento onResourceStart/onClientResourceStart (Menos se você quiser por exemplo, ver qual resource foi iniciado).

Obs: resourceRoot é uma variável pré-definida de getResourceRootElement( getThisResource() )

Para mais informações sobre variáveis pré-definidas veja isso: https://forum.multitheftauto.com/viewtopic.php?f=91&t=39678

Edited by Guest
Link to comment

Aew pegou !!, cara você é foda...

Queria pedir a ajuda de vocês de novo :lol: , mas para eu não ficar floodando tópicos novos, vou pedir por este, É o seguinte eu estou querendo criar uma outra Checkbox tambêm, mais eu queria que quando o jogador marcar-se a Checkbox a velocidade do jogo dele passa-se para 3x, mas quando eu faço isso a velocidade do server inteiro muda, e eu só queria que mudasse a velocidade do player que marcar-se

Client:

velocidade = guiCreateCheckBox(25, 55, 73, 23, "Velocidade 3x", false, false, MaligNosWindow) 
  
function velo() 
  local selected = guiCheckBoxGetSelected(velocidade) 
  if selected then 
    triggerServerEvent("velo", localPlayer, selected) 
    elseif ( not selected ) then 
   local selected = not selected 
    triggerServerEvent("velo", localPlayer, selected) 
    end 
end 
addEventHandler("onClientGUIClick", velocidade, velo, false) 

Server:

function velocidade(selected) 
    if ( selected and (not setGameSpeed(tonumber(3)) )) then 
    setGameSpeed(tonumber(3)) 
    elseif ( (not selected) and setGameSpeed(tonumber(3)) ) then 
    setGameSpeed(tonumber(1)) 
  end 
end 
addEvent("velo", true) 
addEventHandler("velo", root, velocidade) 

Link to comment
  • Moderators

Não é possível que a velocidade do jogo seja definida para todos no lado client (no Freeroam define apenas para o jogador local).

  
velocidade = guiCreateCheckBox(25, 55, 73, 23, "Velocidade 3x", false, false, MaligNosWindow) 
  
function velo() 
local selected = guiCheckBoxGetSelected(velocidade) 
    if selected then 
        setGameSpeed(3) 
    elseif ( not selected ) then 
        setGameSpeed(1) 
    end 
end 
addEventHandler("onClientGUIClick", velocidade, velo, false) 

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