Ir para conteúdo
  • Cadastre-se

(Resolvido)[SPELL] HEALAR 2 PLAYER AO MESMO TEMPO


Ir para solução Resolvido por Danves,

Posts Recomendados

Olá eu queria pedir se possível uma script que heala 2 player ao mesmo tempo, um ex é  "HEAL FRIEND", soque q o heal friend so heala 1 por vez o player ou o amigo, queria que healase os 2 ao mesmo tempo, e nao é AREA EFECT. :)

Ajudei Rep+ :D

Link para o post
Compartilhar em outros sites

O tópico foi movido para a área correta, preste mais atenção da próxima vez!
Leia as regras do fórum: http://tibiaking.com/forum/topic/1281-regras-gerais/?p=7680

Este tópico foi movido:
De: "OTServSuporte OTServSuporte de OTServ Geral"
Para: "OTServSuporte OTServSuporte de Scripts"

                              _
                          .-'` `}
                  _./)   /       }
                .'o   \ |       }
                '.___.'`.\    {`
                /`\_/  , `.    }                                      ME DA UMA NOZ!
                \=' .-'   _`\  {
                 `'`;/      `,  }
                    _\   @   ;  }
                   /__`;-...'--'

Cluck!

Link para o post
Compartilhar em outros sites

Não entendi, seria tipo 
heal friend "Fulano
Dai cura ele e a si?
E se usar em si mesmo, só curaria 1x certo?



 tumblr_mwfeg45FIV1qk4cb3o4_500.gif

Link para o post
Compartilhar em outros sites

Faça bom proveito.

local cf = 
{
 rateLevel = 1, -- quantia a ser multiplicada pelo level para a formula, deixando 1 irá ser level + (diferença do ml abaixo)
 rateMagic = 1, -- quantia a ser multiplicada pelo magic level para a formula, deixando 1 aqui e no level significa que a cura minima seria Level+ML
 perc = 100 -- quantia em % da variação entre cura mínima e máxima, deixando 100 significa que irá variar entre mínimo à mínimo*2(ou seja, se a cura minima for 50 varia entre 50~100)
}


local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_HEALING)
setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_MAGIC_BLUE)
setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, false)
setCombatParam(combat, COMBAT_PARAM_DISPEL, CONDITION_PARALYZE)


function onGetFormulaValues(cid, level, maglevel) 
 min = ((level*cf.rateLevel) + (maglevel*cf.rateMagic))
 return min, min*(cf.perc/100+1)
end
setCombatCallback(combat, CALLBACK_PARAM_LEVELMAGICVALUE, "onGetFormulaValues")


function onCastSpell(cid, var)
  local target = variantToNumber(var)
    if target ~= cid then
     doCombat(cid, combat, var)
    end
  doCombat(cid, combat, numberToVariant(cid))
 return true
end


Acrescento no spells.xml:

<instant name="Heal Friend" words="Heal Friend" lvl="8" mana="0" exhaustion="1000" needtarget="1" params="1" aggressive="0" needlearn="0" event="script" value="heal friend.lua">
<vocation id="1"/> <!-- Coloque aqui os ids das vocações que irão ter a magia -->
<vocation id="2"/>
</instant>
Está configurada caso você coloque esse script em um "heal friend.lua" na pasta spells -> scripts.

Não esqueça de ajeitar o level, custo de mana, e se for 8.7 colocar exhaust de grupo/icon de cooldown :D

 

 



 tumblr_mwfeg45FIV1qk4cb3o4_500.gif

Link para o post
Compartilhar em outros sites

funciono certinho só q tem como colar tipo assim:

local position = {x=getPlayerPosition(cid).x, y=getPlayerPosition(cid).y, z=getPlayerPosition(cid).z}

exemplo. pra mudar o efect de lugar. por que tipo meu efect ta tordo ai eu kero indireita tem como pfv ??

Ajudei Rep+ :D

Link para o post
Compartilhar em outros sites
  • Solução

Só ir mudando o posx e posy até ficar no local que deseja.

local cf = 
{
 rateLevel = 1, -- quantia a ser multiplicada pelo level para a formula, deixando 1 irá ser level + (diferença do ml abaixo)
 rateMagic = 1, -- quantia a ser multiplicada pelo magic level para a formula, deixando 1 aqui e no level significa que a cura minima seria Level+ML
 perc = 100, -- quantia em % da variação entre cura mínima e máxima, deixando 100 significa que irá variar entre mínimo à mínimo*2(ou seja, se a cura minima for 50 varia entre 50~100)
 effect = 12, -- efeito visual a subir
 posx = 1, -- pos.x do efeito será pos(+ ou - esse número configurado)
 posy = 1 -- pos.y do efeito será pos(+ ou - esse número configurado)
}


local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_HEALING)
setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, false)
setCombatParam(combat, COMBAT_PARAM_DISPEL, CONDITION_PARALYZE)


function onGetFormulaValues(cid, level, maglevel) 
min = ((level*cf.rateLevel) + (maglevel*cf.rateMagic))
return min, min*(cf.perc/100+1)
end
setCombatCallback(combat, CALLBACK_PARAM_LEVELMAGICVALUE, "onGetFormulaValues")


function onCastSpell(cid, var)
 local target, pos = variantToNumber(var), {}
      if target ~= cid then
       doCombat(cid, combat, var)
       pos = getCreaturePosition(target)
       doSendMagicEffect({x=pos.x+cf.posx, y=pos.y+cf.posy, z=pos.z}, cf.effect)
     end
 doCombat(cid, combat, numberToVariant(cid))
 pos = getCreaturePosition(cid)
 doSendMagicEffect({x=pos.x+cf.posx, y=pos.y+cf.posy, z=pos.z}, cf.effect)
 return true
end



 tumblr_mwfeg45FIV1qk4cb3o4_500.gif

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.

×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo