Jump to content

AJUDA


Recommended Posts

Posted

getElementData(thePlayer, "Level") vai retornar "Lider" se o jogador for o líder, certo?

Se for isso, então use getElementData(thePlayer, "Level") == "Lider" em um if statement.

Please do not PM me with scripting related question nor support, use the forums instead.

Posted

Confuso Seu código, Vou tentar ajudar .-.

Veja bem os parâmetros da função getElementData:

var getElementData ( element theElement, string key [, inherit = true] ) 
  
-- Como vc estava usando: 
  
getElementData( thePlayer, "Level", Lider) 
  
-- Solução: 
-- usar == para verificar igualdade;  

elseif mode == "deletar" then 
        playerTeam = getPlayerTeam( thePlayer ) 
        if ( playerTeam ) then 
            local teamMate = getPlayersInTeam(playerTeam) 
                for i, v in ipairs(teamMate) do 
                    local getLider = getElementData( thePlayer, "Level", Lider) 
                    --[[ 
                    /\ aqui vc usa getElementData de uma maneira errada, O correto seria: getElementData ( thePlayer, "Level" ) == "Lider" 
                    --]] 
                    if getLider then 
                        outputChatBox("#009AFF[AVISO]#00FF9BVocê deletou a gang!",thePlayer, 255, 255, 255, true) 
                        setElementData(thePlayer, "Level", "") 
                            if ( v ~= thePlayer ) then 
                                setElementData(v, "Level", "") 
                                outputChatBox("#009AFF[AVISO]#00FF9BO jogador #009AFF"..getPlayerName(thePlayer).."#00FF9B deletou a gang!",v, 255, 255, 255, true) 
                            end 
                    destroyElement(playerTeam) 
                    end 
                end 
        else 
            outputChatBox("#009AFF[AVISO]#00FF9BVocê não possui uma gang!",thePlayer, 255, 255, 255, true) 
        end 

Correto:

    elseif mode == "deletar" then 
        playerTeam = getPlayerTeam( thePlayer ) 
        if ( playerTeam ) then 
            if getElementData ( thePlayer, "Level" )  ~= "Lider" then -- ~= significa diferente 
                outputChatBox ( "vc n e lider da gang", thePlayer ) 
                return -- para o codigo 
            end 
            outputChatBox("#009AFF[AVISO]#00FF9BVocê deletou a gang!",thePlayer, 255, 255, 255, true) 
            local teamMate = getPlayersInTeam(playerTeam) 
            setElementData(thePlayer, "Level", "") 
                for i, v in ipairs(teamMate) do 
                    if ( v ~= thePlayer ) then 
                        setElementData(v, "Level", "") 
                        outputChatBox("#009AFF[AVISO]#00FF9BO jogador #009AFF"..getPlayerName(thePlayer).."#00FF9B deletou a gang!",v, 255, 255, 255, true) 
                    end 
                    destroyElement(playerTeam) 
                end 
        else 
            outputChatBox("#009AFF[AVISO]#00FF9BVocê não possui uma gang!",thePlayer, 255, 255, 255, true) 
        end 

No /gang abandonar só faltou arrumar o getElementData, desfazer o loop (desnecessario) e usar um return:

elseif mode == "abandonar" then 
        playerTeam = getPlayerTeam(thePlayer) 
        if ( playerTeam ) then 
            local liderTeam = getElementData(thePlayer, "Level", Lider ) 
            if getElementData ( thePlayer, "Level" )  == "Lider" then 
                outputChatBox("#009AFF[AVISO]#00FF9BO lider não pode abandonar a gang!",thePlayer, 255, 255, 255, true) 
                return 
            else 
                setPlayerTeam(thePlayer, nil) 
                setElementData(thePlayer, "Level", "") 
                outputChatBox("#009AFF[AVISO]#00FF9BVocê abandonou a gang!",thePlayer, 255, 255, 255, true) 
                outputChatBox("#009AFF[AVISO]#00FF9BO jogador #009AFF"..getPlayerName(thePlayer).." #00FF9BOabandonou a gang!",root, 255, 255, 255, true) 
            end 
        else 
            outputChatBox("#009AFF[AVISO]#00FF9BVocê não possui uma gang!",thePlayer, 255, 255, 255, true) 
        end 
    end 

Fora isso recomendo vc usar tabelas em vez de set/getElementData, veja:

https://forum.multitheftauto.com/viewtopic.php?f=148&t=77161

Posted
usar root para avisar quem abandonou a gang, não vai transmitir o outputChatBox para todos os jogadores do server?

Sim vai.

Please do not PM me with scripting related question nor support, use the forums instead.

Posted
usar root para avisar quem abandonou a gang, não vai transmitir o outputChatBox para todos os jogadores do server?

Sim, entendi errado oque ele queria, Se quiser corrigir:

for _,v in ipairs ( getPlayersInTeam(playerTeam) ) do 
    if v ~= thePlayer then 
        outputChatBox("#009AFF[AVISO]#00FF9BO jogador #009AFF"..getPlayerName(thePlayer).." #00FF9BOabandonou a gang!",v, 255, 255, 255, true) 
    end 
end 

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