Ir para conteúdo
  • Cadastre-se

(Resolvido)Spell Heal - Narutibia


Ir para solução Resolvido por gabriel28,

Posts Recomendados

 
Olá tibiaking tudo bem com vocês? Hoje eu gostaria que vocês me mandassem um HEAL por level ex :
Um player level 100 - Heala 2k
Um player level 600 - Heala 12k
 
Lembrando isso e só um exemplo !
Mas na verdade , a spell que eu queria se baseia no seguinte :
Quanto mais level , mais heala !
 
Obrigado !
Link para o post
Compartilhar em outros sites

Serveria spell de heal em porcentagem de vida? (Mais vida, mais heal, ai voce escolhe a porcentagem de heal da vida total do player)

Meus Contatos!

 

Minhas Funções:

 

               Skype: TsplayerT

         Facebook: TakaFukushii

          YouTube: ADoseDupla

           Twitter: @_Splayer_

 

 

 

 

 

 

 

                             Mapper:▓▓▓▓▓▓▓▓▓▓ 97%

     Programmer:▓▓▓▓▓▒▒▒▒▒ 45%

             Scripter:▓▓▓▓▓▓▓▓▓▒ 83%

              Spriter:▓▓▓▓▓▓▒▒▒▒ 57%

    Gamemaster:▓▓▓▓▓▓▓▓▓▓ 99%

        Ot Creator:▓▓▓▓▓▓▓▒▒▒71%

Ot Client Maker:▓▓▓▓▓▓▓▒▒▒74%

 

Link para o post
Compartilhar em outros sites
  • Solução
local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_HEALING)
setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_MAGIC_BLUE)
setCombatParam(combat, COMBAT_PARAM_TARGETCASTERORTOPMOST, 1)
setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, 0)
setCombatParam(combat, COMBAT_PARAM_DISPEL, CONDITION_PARALYZE)
--setCombatFormula(combat, COMBAT_FORMULA_LEVELMAGIC, 2.5, -30, 2.5, 0)
 
function onGetFormulaValues(cid, level, maglevel)
min = (level * 2 + maglevel * 3) * 2.1
max = (level * 2 + maglevel * 3) * 2.5
 
if min < 250 then
min = 250
end
 
return min, max
end
 
setCombatCallback(combat, CALLBACK_PARAM_LEVELMAGICVALUE, "onGetFormulaValues")
 
function onCastSpell(cid, var)
return doCombat(cid, combat, var)
end
 
 
Mude os valores daqui > min = (level * 2 + maglevel * 3) * 2.1   e divirta-se  =)
                                    max = (level * 2 + maglevel * 3) * 2.5
Link para o post
Compartilhar em outros sites

 

local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_HEALING)
setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_MAGIC_BLUE)
setCombatParam(combat, COMBAT_PARAM_TARGETCASTERORTOPMOST, 1)
setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, 0)
setCombatParam(combat, COMBAT_PARAM_DISPEL, CONDITION_PARALYZE)
--setCombatFormula(combat, COMBAT_FORMULA_LEVELMAGIC, 2.5, -30, 2.5, 0)
 
function onGetFormulaValues(cid, level, maglevel)
min = (level * 2 + maglevel * 3) * 2.1
max = (level * 2 + maglevel * 3) * 2.5
 
if min < 250 then
min = 250
end
 
return min, max
end
 
setCombatCallback(combat, CALLBACK_PARAM_LEVELMAGICVALUE, "onGetFormulaValues")
 
function onCastSpell(cid, var)
return doCombat(cid, combat, var)
end
 
 
Mude os valores daqui > min = (level * 2 + maglevel * 3) * 2.1   e divirta-se  =)
                                    max = (level * 2 + maglevel * 3) * 2.5

 

Não entendi , isso que você mandou alterar , para que serveria ?

 

Serveria spell de heal em porcentagem de vida? (Mais vida, mais heal, ai voce escolhe a porcentagem de heal da vida total do player)

Podeira sim ^^ Me mande se Possivel

Link para o post
Compartilhar em outros sites

Isso é a formula da spell.

 

O dano mínimo/máximo da spell é o (LEVEL do player vezes 2 + magic lvl dele vezes 3) vezes X. Se você quiser que heale mais, só aumentar o valor dos números, se quiser que heale menos, só diminuir.

Link para o post
Compartilhar em outros sites

Não entendi , isso que você mandou alterar , para que serveria ?

 

Podeira sim ^^ Me mande se Possivel

Não testei:

Spell/scripts/Heal Life.lua

local config = {
Porcentagem = 20 --Altere aqui a porcentagem de heal
MaxVida = getCreatureMaxHealth(cid)
AtualVida = getCreatureHealth(cid)
Porcento = MaxVida * Porcentagem / AtualVida
PorcentoInteiro = math.floor(Porcento) 
ContraPZ = "Você não pode conjurar essa jutsu na zona de proteção."
}


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_TARGETCASTERORTOPMOST, true)
setCombatParam(combat, COMBAT_PARAM_DISPEL, CONDITION_PARALYZE)
setHealingFormula(combat, COMBAT_FORMULA_LEVELMAGIC, config.PorcentoInteiro)


function onCastSpell(cid, var)
if getTileInfo(getThingPos(cid)).protection == false then
return doCombat(cid, combat, var)
else
doPlayerSendCancel(cid, config.ContraPZ)
end
end

Spells/Spells.xml

<instant name="Heal Life" words="spellheal99" lvl="10" mana="100" event="script" value="Heal Life.lua"></instant>
Editado por TsplayerT (veja o histórico de edições)

Meus Contatos!

 

Minhas Funções:

 

               Skype: TsplayerT

         Facebook: TakaFukushii

          YouTube: ADoseDupla

           Twitter: @_Splayer_

 

 

 

 

 

 

 

                             Mapper:▓▓▓▓▓▓▓▓▓▓ 97%

     Programmer:▓▓▓▓▓▒▒▒▒▒ 45%

             Scripter:▓▓▓▓▓▓▓▓▓▒ 83%

              Spriter:▓▓▓▓▓▓▒▒▒▒ 57%

    Gamemaster:▓▓▓▓▓▓▓▓▓▓ 99%

        Ot Creator:▓▓▓▓▓▓▓▒▒▒71%

Ot Client Maker:▓▓▓▓▓▓▓▒▒▒74%

 

Link para o post
Compartilhar em outros sites

 

Não testei:

Spell/scripts/Heal Life.lua

local config = {
Porcentagem = 20 --Altere aqui a porcentagem de heal
MaxVida = getCreatureMaxHealth(cid)
AtualVida = getCreatureHealth(cid)
Porcento = MaxVida * Porcentagem / AtualVida
PorcentoInteiro = math.floor(Porcento) 
ContraPZ = "Você não pode conjurar essa jutsu na zona de proteção."
}


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_TARGETCASTERORTOPMOST, true)
setCombatParam(combat, COMBAT_PARAM_DISPEL, CONDITION_PARALYZE)
setHealingFormula(combat, COMBAT_FORMULA_LEVELMAGIC, config.PorcentoInteiro)


function onCastSpell(cid, var)
if getTileInfo(getThingPos(cid)).protection == false then
return doCombat(cid, combat, var)
else
doPlayerSendCancel(cid, config.ContraPZ)
end
end

Spells/Spells.xml

<instant name="Heal Life" words="spellheal99" lvl="10" mana="100" event="script" value="Heal Life.lua"></instant>

Não sei pra ver direito pois minha TFS 0.3.6 mas está dando um erro na linha 3 , e não funciona :/

Este e o Erro

Este e o erro \/

post-90194-0-48171000-1437432966_thumb.j

Link para o post
Compartilhar em outros sites

Testa com o script que te passei, ele faz o que você pediu. Quanto maior o level do player, mais vai healar, se quiser que heale mais ou menos, é só alterar onde eu disse.

Deu error também !

Link para o post
Compartilhar em outros sites

Deu error também !

Qual é o erro?

 

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

Meus Contatos!

 

Minhas Funções:

 

               Skype: TsplayerT

         Facebook: TakaFukushii

          YouTube: ADoseDupla

           Twitter: @_Splayer_

 

 

 

 

 

 

 

                             Mapper:▓▓▓▓▓▓▓▓▓▓ 97%

     Programmer:▓▓▓▓▓▒▒▒▒▒ 45%

             Scripter:▓▓▓▓▓▓▓▓▓▒ 83%

              Spriter:▓▓▓▓▓▓▒▒▒▒ 57%

    Gamemaster:▓▓▓▓▓▓▓▓▓▓ 99%

        Ot Creator:▓▓▓▓▓▓▓▒▒▒71%

Ot Client Maker:▓▓▓▓▓▓▓▒▒▒74%

 

Link para o post
Compartilhar em outros sites

Qual é o erro?

Obrigado por se esforçar em me ajuda , mas já coloquei o Sistema do Gabriel , vo da REP + pra todos

Link para o post
Compartilhar em outros sites

Gostei da spell, rep+

Se ti ajudei. Marque como Melhor Resposta e agradeça com um Rep+, clicando em Gostei!. Obrigado!

Link para o post
Compartilhar em outros sites

 

Não testei:

Spell/scripts/Heal Life.lua

local config = {
Porcentagem = 20 --Altere aqui a porcentagem de heal
MaxVida = getCreatureMaxHealth(cid)
AtualVida = getCreatureHealth(cid)
Porcento = MaxVida * Porcentagem / AtualVida
PorcentoInteiro = math.floor(Porcento) 
ContraPZ = "Você não pode conjurar essa jutsu na zona de proteção."
}


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_TARGETCASTERORTOPMOST, true)
setCombatParam(combat, COMBAT_PARAM_DISPEL, CONDITION_PARALYZE)
setHealingFormula(combat, COMBAT_FORMULA_LEVELMAGIC, config.PorcentoInteiro)


function onCastSpell(cid, var)
if getTileInfo(getThingPos(cid)).protection == false then
return doCombat(cid, combat, var)
else
doPlayerSendCancel(cid, config.ContraPZ)
end
end

Spells/Spells.xml

<instant name="Heal Life" words="spellheal99" lvl="10" mana="100" event="script" value="Heal Life.lua"></instant>

ei eu usei esse script e deu esse erro na distro:

[27/07/2015 15:29:47] [Error - LuaScriptInterface::loadFile] data/spells/scripts/curavida.lua:3: '}' expected (to close '{' at line 1) near ''MaxVida''
[27/07/2015 15:29:47] [Warning - Event::loadScript] Cannot load script (data/spells/scripts/curavida.lua)
[27/07/2015 15:29:47] data/spells/scripts/curavida.lua:3: '}' expected (to close '{' at line 1) near ''MaxVida''
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.

  • Conteúdo Similar

    • Por LeoTK
      Salve galera neste tópico irei postar algumas prints do mapa do servidor para quem queira acompanhar e quem sabe até utilizar de inspiração para mapear o seu NTO.
       
      #Att 11/08/2022

       
       
       
       
      Konoha (Em Desenvolvimento)
       
       
       
       
    • Por OmegaZero
      Olá gostaria que alguém me ajudasse com uma "scripting" não sei se é pela mesma, seria o seguinte uma determinada arma teria a chance de dar double hit e não sei oque fazer alguem poderia ajudar?

      OBS:não sei se é o local correto se não for mova, desculpe
    • Por DiigooMix
      Como o título já diz, será que alguém possui sprite do hitto e se possível as transformações dele?
    • Por Madarasenju
      Olá galera do Tibia King, queria por uns npc's no meu server que não tem função de trade nem nada do tipo, queria que eles só andassem como enfeite, Rep+ Pra quem me ajudar... grato desde já.
    • Por SilenceRoot
      A magia é assim o você usa a a magia e ela ficará ativado por 10 segundos, até que o inimigo lance a primeira magia ou todos de uma vez, quando ele lançar a primeira magia, ele não lhe acertará ou seja esquivando dela, e logo em seguida será teletransportado aleatoriamente ao redor do inimigo que usou.
×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo