SI

Como Tirar Immunities De Uma Magia De Todos Os Bixos ?

Por SirUndead, 02 de fev. de 2012 em Scripts

10
1.4k
SirUndeadS
02 de fevereiro de 2012 às 00:56

Tipo eu criei uma magia só que é de fogo. Ela foi feita do exevo gran mas flam e tem bixos de fogo que são imuni a essa magia.

Como faz pra eu tirar a uminidade de todos os monstro dessa magia ?

É Ot 8.60.

jhon992J
02 de fevereiro de 2012 às 09:33

único geito eu acho que é indo no monstro desejado e alterar essas linhas:

 

Ali em elements são as porcetagens que o monstro defende e em immunities é a que o monstro é imune.

<elements>
       <element firePercent="100"/>
       <element physicalPercent="25"/>
       <element earthpercent="20"/>
       <element energyPercent="20"/>
       <element deathPercent="20"/>
       <element icePercent="-25"/>
       <element holyPercent="-10"/>
   </elements>
   <immunities>
       <immunity lifedrain="1"/>
       <immunity paralyze="1"/>
       <immunity invisible="1"/>
   </immunities>

SirUndeadS
02 de fevereiro de 2012 às 11:26

Foi oque eu pensei, mas achei que tinha outro geito.

Obrigado de qualquer forma :S

gabrielf10G
02 de fevereiro de 2012 às 12:28

Que eu saiba não tem como nao deixar imune a uma magia, no máximo há um elemento, que é o caso,fogo, mas ai, nenhuma criatura seria imune a ele, o que dependendo do seu servidor, daria uma vantagem muito grande aos sorcerers.

Editado Fevereiro 2 por gabrielf10

bepokemonB
02 de fevereiro de 2012 às 14:03

Você pode refazer a magia com a função:

doCreatureAddHealth(creature.uid, -damage)

Assim todos os monstros e players receberão um dano damage.

É a única solução no momento. ._.

SirUndeadS
03 de fevereiro de 2012 às 18:40

Você pode refazer a magia com a função:

doCreatureAddHealth(creature.uid, -damage)

Assim todos os monstros e players receberão um dano damage.

É a única solução no momento. ._.

 

Onde eu coloco isso ?

Na magia ta assim :

local combat = createCombatObject()

setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_FIREDAMAGE)

setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_FIREAREA)

setAttackFormula(combat, COMBAT_FORMULA_LEVELMAGIC, 10, 28, 10, 29)

 

local area = createCombatArea(AREA_CROSS7X7)

setCombatArea(combat, area)

 

function onCastSpell(cid, var)

return doCombat(cid, combat, var)

end

 

 

E eu apaguei a todas as imunidade do bixo que eu to testando pra acerta a magia.

jhon992J
03 de fevereiro de 2012 às 20:05
local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_FIREDAMAGE)
setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_FIREAREA)
setAttackFormula(combat, COMBAT_FORMULA_LEVELMAGIC, 10, 28, 10, 29)

local area = createCombatArea(AREA_CROSS7X7)
setCombatArea(combat, area)

function onCastSpell(cid, var)
doCreatureAddHealth(getCreatureTarget(cid), math.random(900, 1000)) -- vai acertar no monstro que você ta atacando e tirar de 900 á 1000.
doCombat(cid, combat, var)
return TRUE
end

SirUndeadS
03 de fevereiro de 2012 às 21:02

Cara não adiantou.

 

Olha o Erro que deu :

 

[03/02/2012 21:01:37] [Error - Spell Interface]

[03/02/2012 21:01:37] data/spells/scripts/attack/torra nego hur.lua:onCastSpell

[03/02/2012 21:01:37] Description:

[03/02/2012 21:01:37] (luaDoCreatureAddHealth) Creature not found

 

 

Ta vemdo ali em AddHealth ? Não seria devez Add algo de DIMINUIR em vez de ADD ?

Editado Fevereiro 3 por SirUndead

bepokemonB
03 de fevereiro de 2012 às 21:15

Cara não adiantou.

 

Olha o Erro que deu :

 

[03/02/2012 21:01:37] [Error - Spell Interface]

[03/02/2012 21:01:37] data/spells/scripts/attack/torra nego hur.lua:onCastSpell

[03/02/2012 21:01:37] Description:

[03/02/2012 21:01:37] (luaDoCreatureAddHealth) Creature not found

 

 

Isso se dá porque ele fez uma magia de targeting e a sua é uma magia de área.

 

Aqui um script feito rapidamente para você testar. Vou colocar no pastebin porque é longo e para não perder a identação.

Link do Pastebin.

SirUndeadS
04 de fevereiro de 2012 às 16:59

Erro :

[03/02/2012 21:41:38] [Error - Spell Interface]

[03/02/2012 21:41:38] data/spells/scripts/attack/torra nego hur.lua:onCastSpell

[03/02/2012 21:41:38] Description:

[03/02/2012 21:41:38] data/spells/scripts/attack/torra nego hur.lua:23: attempt to index local 'topleftpos' (a nil value)

[03/02/2012 21:41:38] stack traceback:

[03/02/2012 21:41:38] data/spells/scripts/attack/torra nego hur.lua:23: in function 'getPosByArea'

[03/02/2012 21:41:38] data/spells/scripts/attack/torra nego hur.lua:31: in function <data/spells/scripts/attack/torra nego hur.lua:30>

 

 

Cara não edita o negocio de area que o 7x7 tava certo.

Eu editei fiz um 7x7 fodao que fica la na lista na pasta lib que fica dentro de spells.

 

Quer merda ninguem responde

Editado Fevereiro 3 por SirUndead