Skip to content
Snippets Groups Projects
Commit 01afb322 authored by dg's avatar dg
Browse files

fix

git-svn-id: http://svn.net-core.org/repos/t-engine4@5558 51575b47-30f0-44d4-a5cc-537603b46e54
parent 61d59b6a
No related branches found
No related tags found
No related merge requests found
......@@ -91,6 +91,8 @@ function _M:init(t, no_default)
self.died_times = self.died_times or {}
self.last_learnt_talents = self.last_learnt_talents or { class={}, generic={} }
self.puuid = self.puuid or util.uuid()
self.damage_log = self.damage_log or {}
end
function _M:onBirth(birther)
......
......@@ -341,6 +341,10 @@ setDefaultProjector(function(src, x, y, type, dam, tmp, no_martyr)
game.logSeen(target, "%s is healed by the %s%s#LAST# damage!", target.name:capitalize(), DamageType:get(type).text_color or "#aaaaaa#", DamageType:get(type).name)
end
if dam > 0 and src.damage_log then
src.damage_log[type] = (src.damage_log[type] or 0) + dam
end
if dam > 0 and source_talent then
local t = source_talent
......
......@@ -20,6 +20,8 @@
local Stats = require "engine.interface.ActorStats"
local Talents = require "engine.interface.ActorTalents"
load("/data/general/objects/staves.lua")
-- This file describes artifacts not bound to a special location or quest, but still special(they do not get randomly generated)
newEntity{ base = "BASE_STAFF", define_as = "TELOS_SPIRE",
......@@ -59,6 +61,5 @@ newEntity{ base = "BASE_STAFF", define_as = "TELOS_SPIRE",
damage_affinity = { [DamageType.ARCANE] = 15, [DamageType.BLIGHT] = 15, [DamageType.COLD] = 15, [DamageType.DARKNESS] = 15, [DamageType.ACID] = 15, [DamageType.LIGHT] = 15, },
confusion_immune = 0.4,
vim_on_crit = 6,
learn_talent = {[Talents.T_COMMAND_STAFF] = 1,},
},
}
game/modules/tome/data/gfx/talents/elemental_surge.png

4.17 KiB

game/modules/tome/data/gfx/talents/secrets_of_telos.png

3.47 KiB

......@@ -81,6 +81,13 @@ uberTalent{
uberTalent{
name = "Endless Woes",
mode = "passive",
require = { special={desc="Dealt over 50000 acid, blight or darkness damage", fct=function(self) return
self.damage_log and (
(self.damage_log[DamageType.ACID] and self.damage_log[DamageType.ACID] >= 50000) or
(self.damage_log[DamageType.BLIGHT] and self.damage_log[DamageType.BLIGHT] >= 50000) or
(self.damage_log[DamageType.DARKNESS] and self.damage_log[DamageType.DARKNESS] >= 50000)
)
end} },
trigger = function(self, t, target, damtype, dam)
if dam < 150 then return end
if damtype == DamageType.ACID and rng.percent(15) then
......@@ -141,6 +148,16 @@ uberTalent{
uberTalent{
name = "Elemental Surge",
mode = "passive",
require = { special={desc="Dealt over 50000 arcane, fire, cold, lightning, light or nature damage", fct=function(self) return
self.damage_log and (
(self.damage_log[DamageType.ARCANE] and self.damage_log[DamageType.ARCANE] >= 50000) or
(self.damage_log[DamageType.FIRE] and self.damage_log[DamageType.FIRE] >= 50000) or
(self.damage_log[DamageType.COLD] and self.damage_log[DamageType.COLD] >= 50000) or
(self.damage_log[DamageType.LIGHTNING] and self.damage_log[DamageType.LIGHTNING] >= 50000) or
(self.damage_log[DamageType.LIGHT] and self.damage_log[DamageType.LIGHT] >= 50000) or
(self.damage_log[DamageType.NATURE] and self.damage_log[DamageType.NATURE] >= 50000)
)
end} },
trigger = function(self, t, target, damtype, dam)
if dam < 150 then return end
if damtype == DamageType.ARCANE and rng.percent(15) then
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment