diff --git a/game/modules/tome/data/gfx/particles_images/alchie_acid.png b/game/modules/tome/data/gfx/particles_images/alchie_acid.png new file mode 100644 index 0000000000000000000000000000000000000000..003277acbd53fe8330a5e32476da6f8d41bb329c Binary files /dev/null and b/game/modules/tome/data/gfx/particles_images/alchie_acid.png differ diff --git a/game/modules/tome/data/gfx/particles_images/alchie_lightning.png b/game/modules/tome/data/gfx/particles_images/alchie_lightning.png new file mode 100644 index 0000000000000000000000000000000000000000..0141abffd171572dc8b3612beed195a895a59973 Binary files /dev/null and b/game/modules/tome/data/gfx/particles_images/alchie_lightning.png differ diff --git a/game/modules/tome/data/talents/spells/energy-alchemy.lua b/game/modules/tome/data/talents/spells/energy-alchemy.lua index 5651a8c0ed1ebd5f7782011856e9e6174d9ecdf3..c63206d0a0b798f9f63d5d8c0d504e0fb8419a40 100644 --- a/game/modules/tome/data/talents/spells/energy-alchemy.lua +++ b/game/modules/tome/data/talents/spells/energy-alchemy.lua @@ -187,9 +187,15 @@ newTalent{ local ret = {name = self.name:capitalize().."'s "..t.name} self:talentTemporaryValue(ret, "movement_speed", t.getSpeed(self, t)) ret.last_life = self.life + + if core.shader.active(4) then + ret.particle = self:addParticles(Particles.new("shader_ring_rotating", 1, {z=5, rotation=0, radius=1.1, img="alchie_lightning"}, {type="lightningshield"})) + end + return ret end, deactivate = function(self, t, p) + self:removeParticles(p.particle) return true end, info = function(self, t) diff --git a/game/modules/tome/data/timed_effects/magical.lua b/game/modules/tome/data/timed_effects/magical.lua index f2bba636a0bdf19cf5fae1fe5544f1b2f5e8487b..bc682a16dc6bf37056328cce3a2875474606f294 100644 --- a/game/modules/tome/data/timed_effects/magical.lua +++ b/game/modules/tome/data/timed_effects/magical.lua @@ -2571,6 +2571,14 @@ newEffect{ self:project({type="cone", cone_angle=25, range=0, radius=4}, src.x, src.y, DamageType.ACID, eff.dam) game.level.map:particleEmitter(self.x, self.y, 4, "breath_acid", {radius=4, tx=src.x-self.x, ty=src.y-self.y, spread=20}) end, + activate = function(self, eff) + if core.shader.active(4) then + eff.particle = self:addParticles(Particles.new("shader_ring_rotating", 1, {z=5, rotation=0, radius=1.1, img="alchie_acid"}, {type="lightningshield"})) + end + end, + deactivate = function(self, eff) + self:removeParticles(eff.particle) + end, } newEffect{