Ir para conteúdo

Featured Replies

Postado

                     Olá galera!            

 

 

Galera, estou multiplicando um script em 4, e a storage de cada script é diferenciada e essas storages eu coloquei em um script de quest, que também multipliquei em 4. Aqui está os scripts:

 

Script das auras: Colocarei somente uma como exemplo.

 

data/creaturescripts/scripts/aura.lua

-- CONFIGURAÇÕES    porcentagem = 30 -- chance de curar em cada volta da aura, em porcentagem
    quantheal = 10 -- porcentagem da mana máximo que cada cura irá curar. (No caso, irá curar 10% da mana máxima cada cura)
    tempo = 1180 -- tempo para dar uma volta no player (este tempo foi o que achei mais agradável visualmente, é recomendável não mudar)
    tipoaura = 35 -- número do efeito da aura (efeito de distância, pode ser identificado com /x no jogo)
    efeitocura = 37 -- número do efeito quando a cura chega ao player (efeito de posição fixa, pode ser identificado com /z no jogo)


-- Função que chama a aura
function efeitosAura(i,tm,cid)
    if(isCreature(cid)) then
            local atual = getCreaturePosition(cid)
        local posaura = {
            {x=(atual.x)-1, y=(atual.y)-1, z=atual.z},
            {x=atual.x, y=(atual.y)-1, z=atual.z},
            {x=(atual.x)+1, y=(atual.y)-1, z=atual.z},
            {x=(atual.x)+1, y=atual.y, z=atual.z},
            {x=(atual.x)+1, y=(atual.y)+1, z=atual.z},
            {x=atual.x, y=(atual.y)+1, z=atual.z},
            {x=(atual.x)-1, y=(atual.y)+1, z=atual.z},
            {x=(atual.x)-1, y=atual.y, z=atual.z},
        }
        local chances = math.random(100)
        if(chances<=porcentagem/8 and getCreatureMana(cid)<getCreatureMaxMana(cid)) then
            doCreatureAddMana(cid, getCreatureMaxMana(cid)/quantheal)
            if(i<=8 and i>1) then
                doSendDistanceShoot({x=posaura[i].x, y=posaura[i].y, z=posaura[i].z}, atual, tipoaura)
            else
                doSendDistanceShoot({x=posaura[1].x, y=posaura[1].y, z=posaura[1].z}, atual, tipoaura)
            end
            doSendMagicEffect(atual, efeitocura)
        end
        if(i==8) then
            doSendDistanceShoot({x=posaura[i].x, y=posaura[i].y, z=posaura[i].z}, {x=posaura[1].x, y=posaura[1].y, z=posaura[1].z}, tipoaura)
        elseif(i<8) then
            doSendDistanceShoot({x=posaura[i].x, y=posaura[i].y, z=posaura[i].z}, {x=posaura[i+1].x, y=posaura[i+1].y, z=posaura[i+1].z}, tipoaura)
        end
        if(i<=8) then
            i = i+1
            tm = tempo/8
            return addEvent(efeitosAura,tm,i,tm,cid)
        else
            return efeitosAura(1,0,cid)
        end
    else
        return TRUE
    end
end


--Função principal
function onLogin(cid)
if(getPlayerStorageValue(cid, 00001)==1) then
return efeitosAura(1,tempo/8,cid)
end
return TRUE
end
 
Em vermelho: Storage da aura, cada aura tem uma storage diferente
 
data/creaturescripts/creaturescripts.xml
<event type="login" name="Aura" script="aura.lua"/>
 
Baú:
 
data/actions/scripts/baustor

    function onUse(cid)


local storage = 00001


if getPlayerStorageValue(cid, storage) ~= 1 then
doPlayerSetStorageValue(cid, storage, 1)
doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Parabens, voce derrotou o boss e ganhou sua aura.")


elseif getPlayerStorageValue(cid, storage) == 1 then
doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Voce ja ganhou a sua aura.")


end
return TRUE
end
 
Em vermelho: Storage da aura
 
data/actions/actions.xml
 
<action actionid="11111" script="baustor.lua"/>
 
Em azul: actionid que será colocado no baú
 
Bom galera, como eu disse eu multipliquei esses dois scripts em 4, coloquei os actionsids diferentes em cada baú e em cada script de aura coloquei uma storage diferente, tudo nos conformes, mas quando eu clico no baú somente uma aura é obtida, em cada baú é colocado uma actionid diferente, em cada script da aura é colocada uma storage diferente, em cada script do baú é colocado as storages das auras corretamente. Minha dúvida é: Por que somente uma aura funciona? E como eu poderia resolver isso?
 
Rep++

@up

Editado por NathanAmaro (veja o histórico de edições)

Oi

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

Informação Importante

Confirmação de Termo