diff --git a/game/modules/tome/data/talents/celestial/glyphs.lua b/game/modules/tome/data/talents/celestial/glyphs.lua index 31a49ba43f2d863f1beb046d0a5b45487e85e659..2d834184905897a461300d793fbcb4df8d94ba1e 100644 --- a/game/modules/tome/data/talents/celestial/glyphs.lua +++ b/game/modules/tome/data/talents/celestial/glyphs.lua @@ -99,7 +99,7 @@ para_glyph = Trap.new{ return false end, triggered = function(self, x, y, who) - if dam > 0 then + if self.dam then self:project({type="hit", x=x,y=y}, x, y, engine.DamageType.LIGHT, self.dam, {type="light"}) end if who:canBe("blind") then @@ -152,10 +152,10 @@ fatigue_glyph = Trap.new{ return false end, triggered = function(self, x, y, who) - if dam > 0 then + if self.dam then self:project({type="hit", x=x,y=y}, x, y, engine.DamageType.DARKNESS, self.dam, {type="light"}) end - who:setEffect(who.EFF_STARLIGHT_FATIGUE, self.fatigueDur, {dam=fatigueDam, src=self}) + who:setEffect(who.EFF_STARLIGHT_FATIGUE, self.fatigueDur, {dam=self.fatigueDam, src=self}) game.level.map:particleEmitter(x, y, 0, "shadow_flash", {radius=0, x=x, y=y}) --divine glyphs buff if self.summoner:knowTalent(self.summoner.T_DIVINE_GLYPHS) then @@ -195,7 +195,6 @@ explosion_glyph = Trap.new{ faction = self.faction, dam = dam, dist=dist, --- agdam = agdam, desc = function(self) return ([[Explodes, knocking back and dealing %d light and %d darkness damage.]]):format(engine.interface.ActorTalents.damDesc(self, engine.DamageType.LIGHT, self.dam/2), engine.interface.ActorTalents.damDesc(self, engine.DamageType.DARKNESS, self.dam/2)) end, @@ -204,15 +203,15 @@ explosion_glyph = Trap.new{ return false end, triggered = function(self, x, y, who) - if dam > 0 then - self:project({type="hit", x=x,y=y}, x, y, engine.DamageType.LIGHT, self.dam/2, {type="light"}) + if self.dam then self:project({type="hit", x=x,y=y}, x, y, engine.DamageType.LIGHT, self.dam/2, {type="light"}) + self:project({type="hit", x=x,y=y}, x, y, engine.DamageType.DARKNESS, self.dam/2, {type="light"}) end if who.canBe("knockback") then local ox, oy = self.x, self.y local dir = util.getDir(who.x, who.y, who.old_x, who.old_y) self.x, self.y = util.coordAddDir(self.x, self.y, dir) - who:knockback(self.x, self.y, dist) + who:knockback(self.x, self.y, self.dist) self.x, self.y = ox, oy end --divine glyphs buff @@ -330,7 +329,7 @@ newTalent{ getTriggerDam = function(self, t) return self:combatTalentSpellDamage(t, 20, 200) end, info = function(self, t) local dam = t.getTriggerDam(self, t) - return ([[Your glyphs are imbued with celestial fury; they last %d turns longer and when they trigger they will unleash this fury, dealing damage. + return ([[Your glyphs are imbued with celestial fury; they last %d turns longer and when triggered they will deal damage. Glyph of Sunlight: Deals %d light damage. Glyph of Starlight: Deals %d darkness damage. Glyph of Twilight: Deals %d light and %d darkness damage.]]):format(t.getPersistentDuration(self, t), damDesc(self, DamageType.LIGHT, dam), damDesc(self, DamageType.DARKNESS, dam), damDesc(self, DamageType.LIGHT, dam/2), damDesc(self, DamageType.DARKNESS, dam/2)) diff --git a/game/modules/tome/data/timed_effects/magical.lua b/game/modules/tome/data/timed_effects/magical.lua index 26aa84af95d0b464f3023b5f682b01cfcc2ab131..707d6825633570bda14c7785d154615bd215799e 100644 --- a/game/modules/tome/data/timed_effects/magical.lua +++ b/game/modules/tome/data/timed_effects/magical.lua @@ -1402,7 +1402,7 @@ newEffect{ self:effectTemporaryValue(eff, "damage_affinity", {[DamageType.LIGHT]=power, [DamageType.DARKNESS]=power}) self:effectTemporaryValue(eff, "resists", {[DamageType.LIGHT]=power, [DamageType.DARKNESS]=power}) end, - on_merge = function(self, eff) + on_merge = function(self, old_eff, new_eff) old_eff.glyphstacks = old_eff.glyphstacks + 1 old_eff.dur = new_eff.dur return old_eff @@ -1413,20 +1413,12 @@ newEffect{ name = "STARLIGHT_FATIGUE", image = "talents/glyph_of_fatigue.png", desc = "Fatiguing Starlight", long_desc = function(self, eff) - return ("Inflicted with a fatiguing starlight, taking %d darkness damage and increasing the cooldown of a cooling-down talent by 1 whenever they act"):format(eff.src:damDesc("DARKNESS", eff.dam)) + return ("Inflicted with a fatiguing starlight, taking %d darkness damage and increasing the cooldown of a cooling-down talent by 1 whenever they act"):format(eff.src.summoner:damDesc(DamageType.DARKNESS, eff.dam)) end, type = "magical", subtype = {darkness = true}, status = "detrimental", paramters = {}, - activate = function(self, t) - if core.shader.active() then - eff.particles = self:addParticles(Particles.new("shader_ring_rotating", 1, {rotation=0.1, a=0.6, radius=0.8, img="darkest_light"})) - end - end, - deactivate = function(self, t) - if eff.particles then self:removeParticles(eff.particles) end - end, callbackOnActEnd = function(self, t) DamageType:get(DamageType.DARKNESS).projector(eff.src, self.x, self.y, DamageType.DARKNESS, eff.dam) local tids = {} @@ -1459,7 +1451,7 @@ newEffect{ name = "DARKLIGHT", image = "talents/darkest_light.png", desc = "Shrouded in Darklight", long_desc = function(self, eff) - return ("%d%% of the targets damage is being split between light and darkness and they are taking %d light and %d darkness damage each turn."):format(eff.conversion * 100, eff.src:damDesc("LIGHT", eff.dotDam), eff.src:damDesc("DARKNESS", eff.dotDam)) + return ("%d%% of the targets damage is being split between light and darkness and they are taking %d light and %d darkness damage each turn."):format(eff.conversion * 100, eff.src:damDesc(DamageType.LIGHT, eff.dotDam), eff.src:damDesc(DamageType.DARKNESS, eff.dotDam)) end, type = "magical", subtype = {light=true, darkness=true},