Skip to content
Snippets Groups Projects
Commit 398b4d02 authored by dg's avatar dg
Browse files

* new artifact ring: Elemental Fury

* new ring egos: increase damage


git-svn-id: http://svn.net-core.org/repos/t-engine4@484 51575b47-30f0-44d4-a5cc-537603b46e54
parent fcaa2610
No related branches found
No related tags found
No related merge requests found
......@@ -35,8 +35,6 @@ local QuitDialog = require "mod.dialogs.Quit"
module(..., package.seeall, class.inherit(engine.GameTurnBased, engine.interface.GameMusic))
collectgarbage("stop")
function _M:init()
engine.GameTurnBased.init(self, engine.KeyBind.new(), 1000, 100)
engine.interface.GameMusic.init(self)
......
......@@ -68,6 +68,9 @@ function _M:descAttribute(attr)
elseif attr == "STATBONUS" then
local stat, i = next(self.wielder.inc_stats)
return i > 0 and "+"..i or tostring(i)
elseif attr == "DAMBONUS" then
local stat, i = next(self.wielder.inc_damage)
return (i > 0 and "+"..i or tostring(i)).."%"
elseif attr == "COMBAT" then
local c = self.combat
return c.dam.."-"..(c.dam*(c.damrange or 1.1)).." dam, "..(c.apr or 0).." apr"
......@@ -132,6 +135,8 @@ function _M:getDesc()
desc[#desc+1] = ("#67AD00#%0.2f Encumbrance."):format(self.encumber)
end
desc[#desc+1] = ("Type: %s / %s"):format(self.type, self.subtype)
-- Stop here if unided
if not self:isIdentified() then return table.concat(desc, "\n") end
......@@ -182,6 +187,14 @@ function _M:getDesc()
desc[#desc+1] = ("Increases resistances: %s."):format(table.concat(rs, ','))
end
if w.inc_damage then
local rs = {}
for res, i in pairs(w.inc_damage) do
rs[#rs+1] = ("%d%% %s"):format(i, DamageType.dam_def[res].name)
end
desc[#desc+1] = ("Increases damage type: %s."):format(table.concat(rs, ','))
end
if w.esp then
local rs = {}
for type, i in pairs(w.esp) do
......
......@@ -114,11 +114,6 @@ newDamageType{
end,
}
-- Irresistible fire damage
newDamageType{
name = "netherflame", type = "NETHERFLAME", text_color = "#FIREBRICK#",
}
-- Blinds
newDamageType{
name = "blindness", type = "BLIND",
......
......@@ -167,3 +167,77 @@ newEntity{
inc_stats = { [Stats.STAT_CON] = resolvers.mbonus(8, 2) },
},
}
-------------------------- Damage increase rings
newEntity{
name = " of massacre (#DAMBONUS#)",
level_range = {6, 50},
rarity = 1,
cost = 4, identified=true,
wielder = {
inc_damage = { [DamageType.PHYSICAL] = resolvers.mbonus(15, 5) },
},
}
newEntity{
name = " of arcane power (#DAMBONUS#)",
level_range = {6, 50},
rarity = 1,
cost = 4, identified=true,
wielder = {
inc_damage = { [DamageType.ARCANE] = resolvers.mbonus(15, 5) },
},
}
newEntity{
name = " of burning (#DAMBONUS#)",
level_range = {6, 50},
rarity = 1,
cost = 4, identified=true,
wielder = {
inc_damage = { [DamageType.FIRE] = resolvers.mbonus(15, 5) },
},
}
newEntity{
name = " of freezing (#DAMBONUS#)",
level_range = {6, 50},
rarity = 1,
cost = 4, identified=true,
wielder = {
inc_damage = { [DamageType.COLD] = resolvers.mbonus(15, 5) },
},
}
newEntity{
name = " of nature's blessing (#DAMBONUS#)",
level_range = {6, 50},
rarity = 1,
cost = 4, identified=true,
wielder = {
inc_damage = { [DamageType.NATURE] = resolvers.mbonus(15, 5) },
},
}
newEntity{
name = " of blight (#DAMBONUS#)",
level_range = {6, 50},
rarity = 1,
cost = 4, identified=true,
wielder = {
inc_damage = { [DamageType.BLIGHT] = resolvers.mbonus(15, 5) },
},
}
newEntity{
name = " of shock (#DAMBONUS#)",
level_range = {6, 50},
rarity = 1,
cost = 4, identified=true,
wielder = {
inc_damage = { [DamageType.LIGHTNING] = resolvers.mbonus(15, 5) },
},
}
newEntity{
name = " of corrosion (#DAMBONUS#)",
level_range = {6, 50},
rarity = 1,
cost = 4, identified=true,
wielder = {
inc_damage = { [DamageType.ACID] = resolvers.mbonus(15, 5) },
},
}
......@@ -64,6 +64,27 @@ newEntity{ base = "BASE_RING",
},
}
newEntity{ base = "BASE_RING",
unique = true,
name = "Elemental Fury", color = colors.PURPLE,
unided_name = "multi-hued ring",
desc = [[This ring shines with many colors.]],
level_range = {15, 30},
rarity = 150,
cost = 500,
wielder = {
inc_stats = { [Stats.STAT_CUN] = 3, },
inc_damage = {
[DamageType.ARCANE] = 15,
[DamageType.FIRE] = 15,
[DamageType.COLD] = 15,
[DamageType.ACID] = 15,
[DamageType.LIGHTNING] = 15,
},
},
}
newEntity{ base = "BASE_LITE",
unique = true,
name = "Phial of Galadriel",
......
......@@ -62,12 +62,12 @@ newTalent{
local tg = {type="ball", range=self:getTalentRange(t), radius=1 + self:getTalentLevelRaw(t), friendlyfire=self:spellFriendlyFire(), talent=t}
local x, y = self:getTarget(tg)
if not x or not y then return nil end
self:project(tg, x, y, DamageType.FIRE, self:spellCrit(28 + self:combatSpellpower(0.4) * self:getTalentLevel(t)), {type="flame"})
self:project(tg, x, y, DamageType.FIRE, self:spellCrit(28 + self:combatSpellpower(0.6) * self:getTalentLevel(t)), {type="flame"})
return true
end,
info = function(self, t)
return ([[Conjures up a flash of fire doing %0.2f fire damage in a radius of %d.
The damage will increase with the Magic stat]]):format(28 + self:combatSpellpower(0.4) * self:getTalentLevel(t), 1 + self:getTalentLevelRaw(t))
The damage will increase with the Magic stat]]):format(28 + self:combatSpellpower(0.6) * self:getTalentLevel(t), 1 + self:getTalentLevelRaw(t))
end,
}
......@@ -93,7 +93,7 @@ newTalent{
-- Add a lasting map effect
game.level.map:addEffect(self,
x, y, duration,
DamageType.NETHERFLAME, dam,
DamageType.FIRE, dam,
radius,
5, nil,
engine.Entity.new{alpha=100, display='', color_br=180, color_bg=30, color_bb=60},
......@@ -102,7 +102,7 @@ newTalent{
return true
end,
info = function(self, t)
return ([[Raging flames burn foes and allies alike doing %0.2f netherflame damage in a radius of 5 each turn for %d turns.
return ([[Raging flames burn foes and allies alike doing %0.2f fire damage in a radius of 5 each turn for %d turns.
The damage and duration will increase with the Magic stat]]):format(15 + self:combatSpellpower(0.15) * self:getTalentLevel(t), 5 + self:getTalentLevel(t))
end,
}
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