Advertisement
Guest User

Untitled

a guest
Jul 11th, 2013
45
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.26 KB | None | 0 0
  1. Talents.talents_def["T_LICHFORM"].becomeLich = function(self, t)
  2. self.has_used_lichform = true
  3. self.descriptor.race = "Undead"
  4. self.descriptor.subrace = "Lich"
  5. if not self.has_custom_tile then
  6. self.moddable_tile = "skeleton"
  7. self.moddable_tile_nude = true
  8. self.moddable_tile_base = "base_lich_01.png"
  9. self.moddable_tile_ornament = nil
  10. end
  11. self.blood_color = colors.GREY
  12. self:attr("poison_immune", 1)
  13. self:attr("disease_immune", 0.5)
  14. self:attr("stun_immune", 0.5)
  15. self:attr("cut_immune", 1)
  16. self:attr("fear_immune", 1)
  17. self:attr("no_breath", 1)
  18. self:attr("undead", 1)
  19. self.resists[DamageType.COLD] = (self.resists[DamageType.COLD] or 0) + 20
  20. self.resists[DamageType.DARKNESS] = (self.resists[DamageType.DARKNESS] or 0) + 20
  21. self.inscription_restrictions = self.inscription_restrictions or {}
  22. self.inscription_restrictions["inscriptions/runes"] = true
  23. self.inscription_restrictions["inscriptions/taints"] = true
  24. self.inc_stats[self.STAT_LCK] = self.inc_stats[self.STAT_LCK] - 1
  25. self.taintmarks = (self.taintmarks or 0) + 1
  26.  
  27. local level = self:getTalentLevel(t)
  28. if level < 2 then
  29. self:incIncStat("mag", -3) self:incIncStat("wil", -3)
  30. self.resists.all = (self.resists.all or 0) - 10
  31. elseif level < 3 then
  32. -- nothing
  33. elseif level < 4 then
  34. self:incIncStat("mag", 3) self:incIncStat("wil", 3)
  35. self.life_rating = self.life_rating + 1
  36. elseif level < 5 then
  37. self:incIncStat("mag", 3) self:incIncStat("wil", 3)
  38. self:attr("combat_spellresist", 10) self:attr("combat_mentalresist", 10)
  39. self.life_rating = self.life_rating + 2
  40. self:learnTalentType("celestial/star-fury", true)
  41. self:setTalentTypeMastery("celestial/star-fury", self:getTalentTypeMastery("celestial/star-fury") - 0.3)
  42. self.negative_regen = self.negative_regen + 0.2 + 0.1
  43. elseif level < 6 then
  44. self:incIncStat("mag", 5) self:incIncStat("wil", 5)
  45. self:attr("combat_spellresist", 10) self:attr("combat_mentalresist", 10)
  46. self.resists_cap.all = (self.resists_cap.all or 0) + 10
  47. self.life_rating = self.life_rating + 2
  48. self:learnTalentType("celestial/star-fury", true)
  49. self:setTalentTypeMastery("celestial/star-fury", self:getTalentTypeMastery("celestial/star-fury") - 0.1)
  50. self.negative_regen = self.negative_regen + 0.2 + 0.5
  51. else
  52. self:incIncStat("mag", 6) self:incIncStat("wil", 6) self:incIncStat("cun", 6)
  53. self:attr("combat_spellresist", 15) self:attr("combat_mentalresist", 15)
  54. self.resists_cap.all = (self.resists_cap.all or 0) + 15
  55. self.life_rating = self.life_rating + 3
  56. self:learnTalentType("celestial/star-fury", true)
  57. self:setTalentTypeMastery("celestial/star-fury", self:getTalentTypeMastery("celestial/star-fury") + 0.1)
  58. self.negative_regen = self.negative_regen + 0.2 + 1
  59. end
  60.  
  61. if self:attr("blood_life") then
  62. self.blood_life = nil
  63. game.log("#GREY#As you turn into a powerful undead you feel your body violently rejecting the Blood of Life.")
  64. end
  65.  
  66. require("engine.ui.Dialog"):simplePopup("Lichform", "#GREY#You feel your life slip away, only to be replaced by pure arcane forces! Your flesh starts to rot on your bones, and your eyes fall apart as you are reborn into a Lich!")
  67.  
  68. game.level.map:particleEmitter(self.x, self.y, 1, "demon_teleport")
  69. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement