Advertisement
Guest User

Untitled

a guest
Oct 31st, 2014
129
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.71 KB | None | 0 0
  1. newTalent{
  2. name = "Fiery Aegis",
  3. type = {"corruption/heart-of-fire", 3},
  4. require = corrs_req3,
  5. points = 5,
  6. cooldown = 15,
  7. getBaseShield = function (self, t) return self:combatTalentSpellDamage(t, 50, 200) end,
  8. getRange = function(self, t) return math.ceil(self:combatTalentScale(t, 2, 4.5)) end,
  9. getDur = function(self, t) return math.ceil(self:combatTalentScale(t, 3, 5)) end,
  10. action = function(self, t)
  11. local tg = {type="ball", nolock=true, range=0, radius = 10, friendlyfire=false}
  12. local burncount = 0
  13. self:project(tg, self.x, self.y, function(px, py)
  14. local target = game.level.map(px, py, engine.Map.ACTOR)
  15. if not target then return end
  16. local burns = {}
  17. for eff_id, p in pairs(target.tmp) do
  18. local e = target.tempeffect_def[eff_id]
  19. if e.subtype.fire and p.power and e.status == "detrimental" then
  20. burns[#burns+1] = {id=eff_id, params=p}
  21. burncount = burncount + 1
  22. end
  23. end
  24. for i, d in ipairs(burns) do
  25. target:removeEffect(d.id)
  26. end
  27. end)
  28. local shieldboost = (1 + burncount * 0.1) * t.getBaseShield(self, t)
  29. self:setEffect(self.EFF_FIRE_SHIELD, t.getDur(self, t), {power=shieldboost, radius = t.getRange(self, t), src=self})
  30. return true
  31. end,
  32. info = function(self, t)
  33. return ([[Draw in the raging fires and envelop yourself in them. Remove all burns from enemies in a radius of 5 around you, and create a shield lasting %d turns with a power of %d, increased by 10%% for each burn removed.
  34. When the shield ends, it releases a burst of fire in a radius of %d around you, burning all enemies for 3 turns, doing damage equal to the initial power of the shield.]]):
  35. format(t.getDur(self, t), t.getBaseShield(self, t), t.getRange(self, t))
  36. end,
  37. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement