Ir para conteúdo
  • 0

Contagem de itens


wenderotpoke

Pergunta

Spoiler

function sendMsgCountToItens(cid) -- FUNÇÃO PARA MANDAR A MSG DE QUANTOS ITENS FALTA
    local item1 = getPlayerStorageValue(cid, 251461):explode("|")
    
    if getPlayerItemCount(cid, item1[1]) >= tonumber(item1[3]) then
        valor1 = 0
    else
        valor1 = tonumber(item1[3]) - getPlayerItemCount(cid, item1[1])
    end
        
    if getPlayerItemCount(cid, item1[2]) >= tonumber(item1[4]) then
        valor2 = 0
    else
        valor2 = tonumber(item1[4]) - getPlayerItemCount(cid, item1[2])
    end
                
    if getPlayerItemCount(cid, item1[5]) >= tonumber(item1[7]) then
        valor3 = 0
    else
        valor3 = tonumber(item1[7]) - getPlayerItemCount(cid, item1[5])
    end
                
    if getPlayerItemCount(cid, item1[6]) >= tonumber(item1[8]) then
        valor4 = 0
    else
        valor4 = tonumber(item1[8]) - getPlayerItemCount(cid, item1[6])
    end
        
    selfSay("Ainda falta você me trazer os seguintes itens ["..valor1.."] "..getItemNameById(item1[1])..", ["..valor2.."] "..getItemNameById(item1[2])..", ["..valor3.."] "..getItemNameById(item1[5])..",  ["..valor4.."] "..getItemNameById(item1[6])..".", cid)        
    return true
end

 Salve galerinha beleza? Bom esse codigo faz a contagem dos itens que está na sua bag, mas ela não para após zerar ela começa a contagem negativa, (-1, -2, -3, -4, -5,...) gostaria que ela parace no 0 e não aparecesse mais e após o player entregar os itens não ter mais a contagem pois os itens continuam contando depois que o player entrega como se estivesse fazendo de novo!

 

VLWWW REP++

Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

  • 0
function sendMsgCountToItens(cid)
    local item1 = getPlayerStorageValue(cid, 251461):explode("|")
    
    -- Verificar se todos os itens foram entregues
    local allItemsDelivered = getPlayerItemCount(cid, item1[1]) >= tonumber(item1[3]) and
                              getPlayerItemCount(cid, item1[2]) >= tonumber(item1[4]) and
                              getPlayerItemCount(cid, item1[5]) >= tonumber(item1[7]) and
                              getPlayerItemCount(cid, item1[6]) >= tonumber(item1[8])
    
    -- Se todos os itens foram entregues, definir a mensagem como vazia e remover o valor de armazenamento
    if allItemsDelivered then
        setPlayerStorageValue(cid, 251461, -1)
        return false
    end
    
    -- Caso contrário, calcular os valores de contagem dos itens
    local valor1 = math.max(0, tonumber(item1[3]) - getPlayerItemCount(cid, item1[1]))
    local valor2 = math.max(0, tonumber(item1[4]) - getPlayerItemCount(cid, item1[2]))
    local valor3 = math.max(0, tonumber(item1[7]) - getPlayerItemCount(cid, item1[5]))
    local valor4 = math.max(0, tonumber(item1[8]) - getPlayerItemCount(cid, item1[6]))
    
    -- Enviar mensagem com a contagem dos itens que faltam
    selfSay("Ainda falta você me trazer os seguintes itens ["..valor1.."] "..getItemNameById(item1[1])..", ["..valor2.."] "..getItemNameById(item1[2])..", ["..valor3.."] "..getItemNameById(item1[5])..",  ["..valor4.."] "..getItemNameById(item1[6])..".", cid)        
    
    return true
end

 

Link para o comentário
Compartilhar em outros sites

  • Quem Está Navegando   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.
×
×
  • Criar Novo...