Ir para conteúdo

Featured Replies

Postado

HI Este código funciona perfeitamente
  retornado bons valores.
mas ....

 

 

Só tenho esse erro no console:

63rfyv.png

 

Este erro acontece quando o personagem não tem nenhum artigo na respectiva ranhura.
Aqui, o código:

 

local slots = {
        ['head'] = CONST_SLOT_HEAD,
        ['armor'] = CONST_SLOT_ARMOR,
        ['legs'] = CONST_SLOT_LEGS,
        ['feet'] = CONST_SLOT_FEET,
        ['left'] = CONST_SLOT_LEFT,
        ['right'] = CONST_SLOT_RIGHT
    }                
               local itemSlots, total = {}, 0
                for slot, const in pairs(slots) do
                    local hasItemOn = getPlayerSlotItem(cid, const).uid
                    if hasItemOn  then
                        itemSlots[slot] = hasItemOn
                    end
                end

                for slot, slottedItem in pairs(itemSlots) do
                local temp = getItemAttribute(slottedItem, 'IceProtec')
                total = total + (temp ~= nil and temp or 0 )
                end

 

//
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Ice: "..total..".")

 

 

E eu tento criar esta função, mas só me retorna o valor de um slot:

 

function getPlayerProtection(cid, attribute)   
        local slots = {
        ['head'] = CONST_SLOT_HEAD,
        ['armor'] = CONST_SLOT_ARMOR,
        ['legs'] = CONST_SLOT_LEGS,
        ['feet'] = CONST_SLOT_FEET,
        ['left'] = CONST_SLOT_LEFT,
        ['right'] = CONST_SLOT_RIGHT
    }   
    
               local itemSlots, total = {}, 0
                for slot, const in pairs(slots) do
                    local hasItemOn = getPlayerSlotItem(cid, const).uid
                    if hasItemOn  then
                        itemSlots[slot] = hasItemOn
                    end
                end
  
                for slot, slottedItem in pairs(itemSlots) do
                    local temp = getItemAttribute(slottedItem, attribute)
                   return  total + (temp ~= nil and temp or 0 )
                end
                end

para uso:

getPlayerProtection(cid, 'IceProtec')
e mesmo erro no valor de nulo em consola :(

  • Respostas 9
  • Visualizações 332
  • Created
  • Última resposta

Top Posters In This Topic

Most Popular Posts

  • deve tá faltando isso    function onSay(cid, words, param, channel)

  • tenta assim  local slots pra  slots =

  • Tenta colocar chaves, deixando assim: {CONST_SLOT_HEAD}, Faz isso em todos, e tenta dar um print nos valores pra ver o que ta printando, ou tenta fazer isso.  getPlayerSlotItem(cid, const[

Postado
  • Diretor

deve tá faltando isso 

 

function onSay(cid, words, param, channel)

 

20230912_034613.png.cf49b650c34dd7d7b1f79bd49c70f53c.png

Eu sou um entusiasta da programação apaixonado por ajudar a comunidade open source a crescer. Sempre em busca de novos desafios e oportunidades para contribuir com meu código.  #OpenSource #Programação #Contribuição

 

Postado
  • Autor
2 minutos atrás, Alexy Brocanello disse:

deve tá faltando isso 

 

function onSay(cid, words, param, channel)

 

 

nao O erro está em:

 

getItemAttribute(slottedItem, attribute)
Postado
  • Diretor

tenta assim 

local slots

pra 

slots =

 

20230912_034613.png.cf49b650c34dd7d7b1f79bd49c70f53c.png

Eu sou um entusiasta da programação apaixonado por ajudar a comunidade open source a crescer. Sempre em busca de novos desafios e oportunidades para contribuir com meu código.  #OpenSource #Programação #Contribuição

 

Postado
  • Autor
2 minutos atrás, Alexy Brocanello disse:

tenta assim 


local slots

pra 


slots =

 

 

amigo O erro é que, se eu não tenho qualquer artigo nos slots, recebo atributo de erro não vai encontrar. porque ele não tem qualquer, é apenas alguns "return false", mas não onde é

Participe da conversa

Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.

Visitante
Responder

Quem Está Navegando 0

  • Nenhum usuário registrado visualizando esta página.

Estatísticas dos Fóruns

  • Tópicos 96.9k
  • Posts 519.6k

Informação Importante

Confirmação de Termo