From 2593271faeb8e65e3e6495be36bb5fa96b75e716 Mon Sep 17 00:00:00 2001 From: dg <dg@51575b47-30f0-44d4-a5cc-537603b46e54> Date: Sun, 14 Aug 2011 18:11:56 +0000 Subject: [PATCH] moar git-svn-id: http://svn.net-core.org/repos/t-engine4@4146 51575b47-30f0-44d4-a5cc-537603b46e54 --- game/modules/tome/data/damage_types.lua | 41 +++++++++ .../data/general/traps/natural_forest.lua | 2 +- .../tome/data/talents/spells/grave.lua | 2 +- .../tome/data/talents/spells/nightfall.lua | 84 +++++++----------- game/modules/tome/data/timed_effects.lua | 17 ++++ ideas/spells.ods | Bin 31555 -> 31549 bytes 6 files changed, 90 insertions(+), 56 deletions(-) diff --git a/game/modules/tome/data/damage_types.lua b/game/modules/tome/data/damage_types.lua index 5e2af38e3f..d68a13abf4 100644 --- a/game/modules/tome/data/damage_types.lua +++ b/game/modules/tome/data/damage_types.lua @@ -48,6 +48,12 @@ setDefaultProjector(function(src, x, y, type, dam, tmp, no_martyr) dam = dam + (dam * inc / 100) end + -- Rigor mortis + if src.necrotic_minion and target:attr("inc_necrotic_minions") then + dam = dam + dam * target:attr("inc_necrotic_minions") / 100 + print("[PROJECTOR] after necrotic increase dam", dam) + end + -- Blast the iceblock if src.attr and src:attr("encased_in_ice") then local eff = src:hasEffect(src.EFF_FROZEN) @@ -749,6 +755,26 @@ newDamageType{ end, } +-- Darkness damage + repulsion; checks for spell power against mental resistance +newDamageType{ + name = "darkness knockback", type = "DARKKNOCKBACK", + projector = function(src, x, y, type, dam, tmp) + local target = game.level.map(x, y, Map.ACTOR) + if _G.type(dam) ~= "table" then dam = {dam=dam, dist=3} end + tmp = tmp or {} + if target and not tmp[target] then + tmp[target] = true + DamageType:get(DamageType.DARKNESS).projector(src, x, y, DamageType.DARKNESS, dam.dam) + if target:checkHit(src:combatSpellpower(), target:combatMentalResist(), 0, 95, 15) and target:canBe("knockback") then + target:knockback(src.x, src.y, dam.dist) + game.logSeen(target, "%s is knocked back!", target.name:capitalize()) + else + game.logSeen(target, "%s resists the darkness!", target.name:capitalize()) + end + end + end, +} + -- Physical damage + repulsion; checks for spell power against physical resistance newDamageType{ name = "spell knockback", type = "SPELLKNOCKBACK", @@ -1639,3 +1665,18 @@ newDamageType{ end end, } + +-- Darkness damage + speed reduction + minion damage inc +newDamageType{ + name = "rigor mortis", type = "RIGOR_MORTIS", + projector = function(src, x, y, type, dam, tmp) + local target = game.level.map(x, y, Map.ACTOR) + if target then + DamageType:get(DamageType.DARKNESS).projector(src, x, y, DamageType.DARKNESS, dam.dam) + if target:checkHit(src:combatSpellpower(), target:combatSpellResist(), 0, 95, 15) then + target:setEffect(target.EFF_SLOW, dam.dur, {power=dam.speed}) + end + target:setEffect(target.EFF_RIGOR_MORTIS, dam.dur, {power=dam.minion}) + end + end, +} diff --git a/game/modules/tome/data/general/traps/natural_forest.lua b/game/modules/tome/data/general/traps/natural_forest.lua index ab82bd1bec..b7734669c1 100644 --- a/game/modules/tome/data/general/traps/natural_forest.lua +++ b/game/modules/tome/data/general/traps/natural_forest.lua @@ -21,7 +21,7 @@ newEntity{ define_as = "TRAP_NATURAL_FOREST", type = "natural", subtype="forest", id_by_type=true, unided_name = "trap", display = '^', triggered = function(self, x, y, who) - self:project({type="hit",x=x,y=y}, x, y, self.damtype, self.dam, self.particles and {type=self.particles}) + self:project({type="hit",x=x,y=y}, x, y, self.damtype, self.dam or 10, self.particles and {type=self.particles}) return true end, } diff --git a/game/modules/tome/data/talents/spells/grave.lua b/game/modules/tome/data/talents/spells/grave.lua index 37a824f1b5..bc942387ff 100644 --- a/game/modules/tome/data/talents/spells/grave.lua +++ b/game/modules/tome/data/talents/spells/grave.lua @@ -68,6 +68,7 @@ newTalent{ tactical = { BUFF = 3 }, getParams = function(self, t) return util.bound(30 + self:getTalentLevel(t) * 10, 30, 100), 20 + self:combatTalentSpellDamage(t, 25, 300) end, summon = function(self, t, dam, src, killer) + if not killer or not killer.faction or self:reactionToward(killer) >= 0 then return end local minion = require("mod.class.NPC").new{ name = "will o' the wisp", type = "undead", subtype = "ghost", @@ -106,7 +107,6 @@ newTalent{ minion.on_act = nil minion:setTarget(killer) end - end, activate = function(self, t) local chance, dam = t.getParams(self, t) diff --git a/game/modules/tome/data/talents/spells/nightfall.lua b/game/modules/tome/data/talents/spells/nightfall.lua index 38119e79aa..a260937e08 100644 --- a/game/modules/tome/data/talents/spells/nightfall.lua +++ b/game/modules/tome/data/talents/spells/nightfall.lua @@ -122,45 +122,29 @@ newTalent{ points = 5, random_ego = "attack", mana = 40, - cooldown = 8, - tactical = { ATTACKAREA = 2 }, - range = 7, - radius = function(self, t) - return 1 + self:getTalentLevelRaw(t) - end, - proj_speed = 4, + cooldown = 12, direct_hit = true, + tactical = { ATTACK = 2, DISABLE = 2, ESCAPE = 1 }, + range = 0, + radius = function(self, t) return 3 + self:getTalentLevelRaw(t) end, requires_target = true, - target = function(self, t) - return {type="ball", range=self:getTalentRange(t), radius=self:getTalentRadius(t), selffire=self:spellFriendlyFire(), talent=t, display={particle="bolt_fire", trail="firetrail"}} - end, - getDamage = function(self, t) return self:combatTalentSpellDamage(t, 28, 280) end, + target = function(self, t) return {type="cone", range=self:getTalentRange(t), radius=self:getTalentRadius(t), friendlyfire=isFF(self), talent=t} end, + getDamage = function(self, t) return self:combatTalentSpellDamage(t, 10, 230) end, action = function(self, t) local tg = self:getTalentTarget(t) local x, y = self:getTarget(tg) if not x or not y then return nil end - self:projectile(tg, x, y, DamageType.FIRE, self:spellCrit(t.getDamage(self, t)), function(self, tg, x, y, grids) - game.level.map:particleEmitter(x, y, tg.radius, "fireflash", {radius=tg.radius, tx=x, ty=y}) - if self:attr("burning_wake") then - game.level.map:addEffect(self, - x, y, 4, - engine.DamageType.INFERNO, self:attr("burning_wake"), - tg.radius, - 5, nil, - {type="inferno"}, - nil, tg.selffire - ) - end - end) - game:playSoundNear(self, "talents/fireflash") + self:project(tg, x, y, DamageType.DARKKNOCKBACK, {dist=4, dam=self:spellCrit(t.getDamage(self, t))}) + game.level.map:particleEmitter(self.x, self.y, tg.radius, "breath_dark", {radius=tg.radius, tx=x-self.x, ty=y-self.y}) + game:playSoundNear(self, "talents/fire") return true end, info = function(self, t) local damage = t.getDamage(self, t) local radius = self:getTalentRadius(t) - return ([[Conjures up a bolt of fire moving toward the target that explodes into a flash of fire doing %0.2f fire damage in a radius of %d. + return ([[Invoke a cone dealing %0.2f darkness damage, any creatures caught inside must make a mental save or be knocked back 4 grids away The damage will increase with the Magic stat]]): - format(damDesc(self, DamageType.FIRE, damage), radius) + format(damDesc(self, DamageType.DARKNESS, damage)) end, } @@ -169,43 +153,35 @@ newTalent{ type = {"spell/nightfall",4}, require = spells_req4, points = 5, - random_ego = "attack", - mana = 100, - cooldown = 30, + mana = 60, + cooldown = 20, tactical = { ATTACKAREA = 3 }, - range = 10, - radius = 5, + range = 7, + radius = 1, direct_hit = true, requires_target = true, - target = function(self, t) - return {type="ball", range=self:getTalentRange(t), radius=self:getTalentRadius(t)} - end, - getDamage = function(self, t) return self:combatTalentSpellDamage(t, 15, 80) end, - getDuration = function(self, t) return 5 + self:getTalentLevel(t) end, + target = function(self, t) return {type="ball", range=self:getTalentRange(t), radius=self:getTalentRadius(t), friendlyfire=isFF(self), talent=t, display={particle="bolt_dark", trail="darktrail"}} end, + getDamage = function(self, t) return self:combatTalentSpellDamage(t, 28, 280) end, + getMinion = function(self, t) return 10 + self:combatTalentSpellDamage(t, 10, 30) end, + getDur = function(self, t) return math.floor(3 + self:getTalentLevel(t)) end, + getSpeed = function(self, t) return math.min(self:getTalentLevel(t) * 0.065, 0.5) end, action = function(self, t) local tg = self:getTalentTarget(t) local x, y = self:getTarget(tg) if not x or not y then return nil end - local _ _, _, _, x, y = self:canProject(tg, x, y) - -- Add a lasting map effect - game.level.map:addEffect(self, - x, y, t.getDuration(self, t), - DamageType.INFERNO, t.getDamage(self, t), - self:getTalentRadius(t), - 5, nil, - {type="inferno"}, - nil, self:spellFriendlyFire() - ) - - game:playSoundNear(self, "talents/fire") + self:projectile(tg, x, y, DamageType.RIGOR_MORTIS, {dam=t.getDamage(self, t), minion=t.getMinion(self, t), speed=t.getSpeed(self, t), dur=t.getDur(self, t)}, {type="dark"}) + game:playSoundNear(self, "talents/fireflash") return true end, info = function(self, t) local damage = t.getDamage(self, t) - local duration = t.getDuration(self, t) - local radius = self:getTalentRadius(t) - return ([[Raging flames burn foes and allies alike doing %0.2f fire damage in a radius of %d each turn for %d turns. - The damage will increase with the Magic stat]]): - format(damDesc(self, DamageType.FIRE, damage), radius, duration) + local speed = t.getSpeed(self, t) * 100 + local dur = t.getDur(self, t) + local minion = t.getMinion(self, t) + return ([[Invoke a ball of darkness that deals %0.2f darkness damage. Every creature hit will start to become closer to death and thus reduce global speed by %d%%. + Necrotic minions damage against those creatures is increased by %d%%. + The effects last for %d turns. + The damage done and minions damage increase will increase with the Magic stat]]): + format(damDesc(self, DamageType.DARKNESS, damage), speed, minion, dur) end, } diff --git a/game/modules/tome/data/timed_effects.lua b/game/modules/tome/data/timed_effects.lua index 3b43d011e0..62359fbb86 100644 --- a/game/modules/tome/data/timed_effects.lua +++ b/game/modules/tome/data/timed_effects.lua @@ -4370,3 +4370,20 @@ newEffect{ self:removeTemporaryValue("no_healing", eff.healid) end, } + +newEffect{ + name = "RIGOR_MORTIS", + desc = "Rigor Mortis", + long_desc = function(self, eff) return ("The target takes %d%% more damage from necrotic minions."):format(eff.power) end, + type = "magical", + status = "detrimental", + parameters = {power=20}, + on_gain = function(self, err) return "#Target# feels death coming!", "+Rigor Mortis" end, + on_lose = function(self, err) return "#Target# is freed from the rigor mortis.", "-Rigor Mortis" end, + activate = function(self, eff) + eff.tmpid = self:addTemporaryValue("inc_necrotic_minions", eff.power) + end, + deactivate = function(self, eff) + self:removeTemporaryValue("inc_necrotic_minions", eff.tmpid) + end, +} diff --git a/ideas/spells.ods b/ideas/spells.ods index f2029f33d673dd5f950fdbdcbf5117cfbc26cffd..ffe46c4e4165133b9104f8174f1ff080aacc9bdd 100644 GIT binary patch delta 12382 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 Bb7uem delta 12481 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 b(gXzonT7-bLH{57x<Ev4s_##3f0_RWSV)z~ -- GitLab