LeoTK 173 Postado Agosto 7, 2017 Share Postado Agosto 7, 2017 Fala guys estava aqui pensando existe alguma maneira de colocar resistência de algum elemento em alguma vocação? por exemplo: <vocation id="1" name="Naruto" description="a naruto" needpremium="0" gaincap="10" gainhp="10" gainmana="14" gainhpticks="1" gainhpamount="10" gainmanaticks="1" gainmanaamount="14" manamultiplier="1.1" attackspeed="1500" soulmax="5000" gainsoulticks="10" absorvelement="wind" absorvpercent="10" fromvoc="1"><formula meleeDamage="1.0" distDamage="1.0" wandDamage="1.0" magDamage="1.0" magHealingDamage="1.0" defense="1.0" magDefense="1.0" armor="1.0"/><skill fist="1.0" club="1.0" sword="1.0" axe="1.0" distance="1.0" shielding="1.0" fishing="1.0" experience="1.0"/></vocation> Adicionado essas duas linhas absorvelement="wind" absorvpercent="10" assim a vocação 1 ao tomar dano do elemento wind ira absorver 10% do dano recebido Link para o comentário Compartilhar em outros sites More sharing options...
Leoxtibia 137 Postado Agosto 8, 2017 Share Postado Agosto 8, 2017 (editado) Em 07/08/2017 at 15:52, Brunds disse: Fala guys estava aqui pensando existe alguma maneira de colocar resistência de algum elemento em alguma vocação? por exemplo: Rapaz, acho que assim vai. Em creaturescripts/scripts: elementResistence.lua Spoiler local t = {[1] = {resistence = 10, element = COMBAT_FIREDAMAGE},[2] = {resistence = 20, element = COMBAT_EARTHDAMAGE},[3] = {resistence = 30, element = COMBAT_FIREDAMAGE},[4] = {resistence = 40, element = COMBAT_ICEDAMAGE}}function onStatsChange(cid, attacker, type, combat, value) local m = t[getPlayerVocation(cid)] if m == nil then return true end if (type == STATSCHANGE_HEALTHLOSS or type == STATSCHANGE_MANALOSS) and combat == m.element then if getPlayerStorageValue(cid, 16464) > 0 then local block = math.ceil(value*0.01*m.resistence) doCreatureAddHealth(cid, block) doSendAnimatedText(getPlayerPosition(cid), "+"..block, COLOR_GREEN) end endreturn trueend-- Script by Leoxtibia Lembrando que os elementos são: (pelo menos para alguns servidores) COMBAT_NONE = 0COMBAT_PHYSICALDAMAGE = 1COMBAT_ENERGYDAMAGE = 2COMBAT_EARTHDAMAGE = 4COMBAT_POISONDAMAGE = 4COMBAT_FIREDAMAGE = 8COMBAT_UNDEFINEDDAMAGE = 16COMBAT_LIFEDRAIN = 32COMBAT_MANADRAIN = 64COMBAT_HEALING = 128COMBAT_DROWNDAMAGE = 256COMBAT_ICEDAMAGE = 512COMBAT_HOLYDAMAGE = 1024COMBAT_DEATHDAMAGE = 2048 No login.lua: Spoiler local t = {[1] = {resistence = 10},[2] = {resistence = 20},[3] = {resistence = 30},[4] = {resistence = 40}}registerCreatureEvent(cid, "AbsorbElement")setPlayerStorageValue(cid, 16464, t[getPlayerVocation(cid)].resistence) Em creaturescripts.xml, adicione a tag: <event type="statschange" name="AbsorbElement" event="script" value="elementResistence.lua"/> Editado Agosto 9, 2017 por Leoxtibia Link para o comentário Compartilhar em outros sites More sharing options...
LeoTK 173 Postado Agosto 8, 2017 Autor Share Postado Agosto 8, 2017 @Leoxtibia Testei não funfou é 0.3.6 ... testei de diversas formas possiveis coloquei para bloequear 98% do dano para ver se estava funcionando mesma coisa que nada Link para o comentário Compartilhar em outros sites More sharing options...
Leoxtibia 137 Postado Agosto 8, 2017 Share Postado Agosto 8, 2017 (editado) Testei aqui agora no tfs 0.4 e funcionou 100%. A vocação que você testou é um dos ids que eu tinha colocado? [1], [2], [3] ou [4]? Se não for, adicione lá. A resistência ali funciona da seguinte forma: resistence = 10 -- vai bloquear 10%, ou seja, se o player tiver resistência ao elemento o hit que seria de 10 será de 9 Resumindo, vai mostrar o hit normal e o quanto healou devido a resistência ao elemento: 10 +1 Seus tipos de danos são esses também? Se não for, troque para os seus. COMBAT_NONE = 0COMBAT_PHYSICALDAMAGE = 1COMBAT_ENERGYDAMAGE = 2COMBAT_EARTHDAMAGE = 4COMBAT_POISONDAMAGE = 4COMBAT_FIREDAMAGE = 8COMBAT_UNDEFINEDDAMAGE = 16COMBAT_LIFEDRAIN = 32COMBAT_MANADRAIN = 64COMBAT_HEALING = 128COMBAT_DROWNDAMAGE = 256COMBAT_ICEDAMAGE = 512COMBAT_HOLYDAMAGE = 1024COMBAT_DEATHDAMAGE = 2048 Editado Agosto 8, 2017 por Leoxtibia Link para o comentário Compartilhar em outros sites More sharing options...
LeoTK 173 Postado Agosto 8, 2017 Autor Share Postado Agosto 8, 2017 51 minutos atrás, Leoxtibia disse: Testei aqui agora no tfs 0.4 e funcionou 100%. A vocação que você testou é um dos ids que eu tinha colocado? [1], [2], [3] ou [4]? Se não for, adicione lá. A resistência ali funciona da seguinte forma: resistence = 10 -- vai bloquear 10%, ou seja, se o player tiver resistência ao elemento o hit que seria de 10 será de 9 Resumindo, vai mostrar o hit normal e o quanto healou devido a resistência ao elemento: 10 +9 Seus tipos de danos são esses também? Se não for, troque para os seus. COMBAT_NONE = 0COMBAT_PHYSICALDAMAGE = 1COMBAT_ENERGYDAMAGE = 2COMBAT_EARTHDAMAGE = 4COMBAT_POISONDAMAGE = 4COMBAT_FIREDAMAGE = 8COMBAT_UNDEFINEDDAMAGE = 16COMBAT_LIFEDRAIN = 32COMBAT_MANADRAIN = 64COMBAT_HEALING = 128COMBAT_DROWNDAMAGE = 256COMBAT_ICEDAMAGE = 512COMBAT_HOLYDAMAGE = 1024COMBAT_DEATHDAMAGE = 2048 simplesmente não funcionou o meu é 0.3.6 ele toma o dano todo normalmente não aparece nada só o dano normal que o char toma nada mais Link para o comentário Compartilhar em outros sites More sharing options...
Fjinst 36 Postado Agosto 8, 2017 Share Postado Agosto 8, 2017 Leo, seguindo esse raciocínio ai da pra fazer uma magia que bloqueia porcentagem de dano? estilo uma magia que tem um efeito de SSA por alguns segundos. Link para o comentário Compartilhar em outros sites More sharing options...
Crypter 136 Postado Agosto 8, 2017 Share Postado Agosto 8, 2017 4 minutos atrás, Fjinst disse: Leo, seguindo esse raciocínio ai da pra fazer uma magia que bloqueia porcentagem de dano? estilo uma magia que tem um efeito de SSA por alguns segundos. Cria uma Spell que seta uma storage com segundos , e poem pra executar a creaturescripts com a storage Link para o comentário Compartilhar em outros sites More sharing options...
LeoTK 173 Postado Agosto 9, 2017 Autor Share Postado Agosto 9, 2017 @Leoxtibia Achei isso em outro fórum porém testei e não funfou mas era isso que estava pensando em fazer <vocation id="4" name="Knight" description="a knight" needpremium="0" gaincap="25" gainhp="15" gainmana="5" gainhpticks="6" gainhpamount="1" gainmanaticks="6" gainmanaamount="2" manamultiplier="3.0" attackspeed="2000" soulmax="100" gainsoulticks="120" fromvoc="4"> <formula meleeDamage="1.0" distDamage="1.0" wandDamage="1.0" magDamage="1.0" magHealingDamage="1.0" defense="1.0" magDefense="1.0" armor="1.0"/> <skill fist="1.1" club="1.1" sword="1.1" axe="1.1" distance="1.4" shielding="1.1" fishing="1.1" experience="1.0"/> <absorb percentEnergy="12"/> <absorb percentFire="14"/> <absorb percentPoison="10"/> <absorb percentice="8"/> <absorb percentHoly="-7"/> <absorb percentPhysical="-7"/> <absorb percentDeath="5"/> <absorb percentLifeDrain="0"/> <absorb percentManaDrain="15"/> <absorb percentDrown="0"/> </vocation> Link para o comentário Compartilhar em outros sites More sharing options...
Leoxtibia 137 Postado Agosto 9, 2017 Share Postado Agosto 9, 2017 É a mesma coisa que o script Link para o comentário Compartilhar em outros sites More sharing options...
LeoTK 173 Postado Agosto 9, 2017 Autor Share Postado Agosto 9, 2017 2 horas atrás, Leoxtibia disse: É a mesma coisa que o script não posso descordar ambos não funcionaram Link para o comentário Compartilhar em outros sites More sharing options...
Stigal 584 Postado Novembro 29, 2017 Share Postado Novembro 29, 2017 A questão neste tópico de suporte foi encerrada por falta de resposta. Este tópico está fechado e foi movido para Suporte - Tópicos Sem Resposta. Link para o comentário Compartilhar em outros sites More sharing options...
Posts Recomendados