Ir para conteúdo
  • Cadastre-se

Posts Recomendados

  Em 17/01/2015 em 19:17, elwyn disse:
Só aplica os 20s de cd se o tile que você usar a runa tiver uma mw existente.
Mostrar mais  

  Em 17/01/2015 em 19:34, Natanael Beckman disse:
É exatamente isso
Mostrar mais  

Se você já verificou a positionToVariant como contendo uma magic wall, qual a necessidade de aplicar 20 segundos de exhaustion?
Só seria necessário um intervalo pra usar a runa novamente, em outra posição.

Tente:
local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_ENERGY)
setCombatParam(combat, COMBAT_PARAM_CREATEITEM, 1497)
setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, false)

function onCastSpell(cid, var)
    local time = 3 -- seconds
    local stor = 98765
    local v = getTileItemByType(variantToPosition(var), ITEM_TYPE_MAGICFIELD)
    
    if v.uid > 0 then
        return false
    elseif exhaustion.get(cid, stor) then
        return doPlayerSendCancel(cid, 'Cooldown['..exhaustion.get(cid, stor)..']') and false
    end
    
    return doCombat(cid, combat, var) and exhaustion.set(cid, stor, time)
end

The corrupt fear us.

The honest support us.

The heroic join us.

Link para o post
Compartilhar em outros sites
  • Respostas 9
  • Created
  • Última resposta

Top Posters In This Topic

Top Posters In This Topic

Popular Posts

Galera eu fiz uma alteração no server pra uma certa melhora, o problema é que essa melhora bugou o MW e tipo ele fica sem exhausted pra renovar, bom procurei e encontrei uma solução, mais contém outro problema, a MW se renova no tempo certo o problema é que se usar uma MW não posso usar outra em outro SQM só pode usar após os 20 segundos quando termina a que lancei, alguém tem algum palpite pra da?   local combat = createCombatObject()  setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, CON

Então vamos fazer assim: colocar o cooldown no arquivo spells.xml. Vá no seu spells.xml e procure pela tag da magic wall e deixa ela assim: <conjure name="Magic Wall" words="adevo grav tera" lvl="32" mana="750" soul="5" reagentId="2260" conjureId="2293" conjureCount="3" exhaustion="1000" groups="3,2000" icon="23" needlearn="0" event="function" value="conjureRune"> <vocation id="1"/> <vocation id="5"/> </conjure> O cooldown vc coloca o que vc quiser nessa parte:

Se você já verificou a positionToVariant como contendo uma magic wall, qual a necessidade de aplicar 20 segundos de exhaustion? Só seria necessário um intervalo pra usar a runa novamente, em outra posição. Tente: local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_ENERGY) setCombatParam(combat, COMBAT_PARAM_CREATEITEM, 1497) setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, false) function onCastSpell(cid, var)     local time = 3 -- seconds     lo

  Em 17/01/2015 em 20:15, Suicide disse:

Se você já verificou a positionToVariant como contendo uma magic wall, qual a necessidade de aplicar 20 segundos de exhaustion?

Só seria necessário um intervalo pra usar a runa novamente, em outra posição.

Tente:

local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_ENERGY)
setCombatParam(combat, COMBAT_PARAM_CREATEITEM, 1497)
setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, false)

function onCastSpell(cid, var)
    local time = 3 -- seconds
    local stor = 98765
    local v = getTileItemByType(variantToPosition(var), ITEM_TYPE_MAGICFIELD)
    
    if v.uid > 0 then
        return false
    elseif exhaustion.get(cid, stor) then
        return doPlayerSendCancel(cid, 'Cooldown['..exhaustion.get(cid, stor)..']') and false
    end
    
    return doCombat(cid, combat, var) and exhaustion.set(cid, stor, time)
end
Mostrar mais  

Obrigado pela ajuda mano, mais vai ser o que eu imaginava, source!

Link para o post
Compartilhar em outros sites

Se quiser uma ultima tentativa...

local combat = createCombatObject() 
setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_ENERGY) 
setCombatParam(combat, COMBAT_PARAM_CREATEITEM, 1497) 
setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, false) 

local tempo = 2

function onCastSpell(cid, var)
if exhaustion.check(cid, 1000) == false then
exhaustion.set(cid,1000, tempo)
return doCombat(cid, combat, var)
else
doPlayerSendCancel(cid, "Cooldown[" ..exhaustion.get(cid,1000).."]")
end
end

Apenas mudei o tempo do exaust que o script confere para 2 segundos (que seria um tempo de cooldown da mw).

Te ajudei?? REP + e ficamos quites... <ahttp://www.tibiaking.com/forum/uploads/emoticons/default_happyy.png' alt=';D'>

Atenciosamente,

Daniel.

Abraços!

Link para o post
Compartilhar em outros sites
  Em 17/01/2015 em 21:27, danihcv disse:

Se quiser uma ultima tentativa...

local combat = createCombatObject() 
setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_ENERGY) 
setCombatParam(combat, COMBAT_PARAM_CREATEITEM, 1497) 
setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, false) 

local tempo = 2

function onCastSpell(cid, var)
if exhaustion.check(cid, 1000) == false then
exhaustion.set(cid,1000, tempo)
return doCombat(cid, combat, var)
else
doPlayerSendCancel(cid, "Cooldown[" ..exhaustion.get(cid,1000).."]")
end
end

Apenas mudei o tempo do exaust que o script confere para 2 segundos (que seria um tempo de cooldown da mw).

Expand   Mostrar mais  

Obrigado pela tentativa mano, podem fechar o tópico vou corrigir na source, TENTAR!

Link para o post
Compartilhar em outros sites
  • 6 months later...

desculpe por reabrir o topico, e que eu acho que sei como...
=P
talvez assim?

  Mostrar conteúdo oculto

local combat = createCombatObject() 
setCombatParam
(combat, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_ENERGY) 
setCombatParam
(combat, COMBAT_PARAM_CREATEITEM, 1497) 
setCombatParam
(combat, COMBAT_PARAM_AGGRESSIVE, false) 


function onCastSpell(cid, var)
if exhaustion.check(cid, 1000) == false then
local tem_magic_wall = getTileItemById(variantToPosition(var), ID_DA_MW)

if tem_magic_wall and tem_magic_wall > 0 then
exhaustion.set(cid,1000, 20)
end

return doCombat(cid, combat, var)
else
doPlayerSendCancel(cid, "Cooldown[" ..exhaustion.get(cid,1000).."]")
end
end


 

se ajudei Natanael, por favor, me ajude no seu topico de compilação
abraço

Editado por foxkbt (veja o histórico de edições)
Link para o post
Compartilhar em outros sites

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

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emojis são permitidos.

×   Seu link foi automaticamente incorporado.   Mostrar como link

×   Seu conteúdo anterior foi restaurado.   Limpar o editor

×   Não é possível colar imagens diretamente. Carregar ou inserir imagens do URL.

  • Quem Está Navegando   0 membros estão online

    Nenhum usuário registrado visualizando esta página.

  • Estatísticas dos Fóruns

    96842
    Tópicos
    519594
    Posts



×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo