Commit 11e5236bc5e8b2d228cb09c1a3b9ed92af0930eb

Authored by dg
1 parent 5f33b506

stuff


git-svn-id: http://svn.net-core.org/repos/t-engine4@2886 51575b47-30f0-44d4-a5cc-537603b46e54
... ... @@ -132,7 +132,7 @@ newEntity{ base = "BASE_LEATHER_BOOT",
132 132 newEntity{ base = "BASE_HELM",
133 133 power_source = {technique=true},
134 134 define_as = "DRAGON_SKULL",
135   - name = "Dragonskull Helm", unique=true, unided_name="skull helm",
  135 + name = "Dragonskull Helm", unique=true, unided_name="skull helm", image = "object/artifact/dragonskull_helmet.png",
136 136 desc = [[Traces of a dragon's power still remain in this bleached and cracked skull.]],
137 137 require = { stat = { mag=24 }, },
138 138 level_range = {45, 50},
... ...
... ... @@ -28,7 +28,7 @@ newTalent{
28 28 return math.ceil(5 + self:getDex(6))
29 29 end,
30 30 radius = function(self, t)
31   - return 1+self:getTalentLevelRaw(self.T_EXPLOSION_EXPERT)
  31 + return util.bound(1+self:getTalentLevelRaw(self.T_EXPLOSION_EXPERT), 1, 6)
32 32 end,
33 33 direct_hit = true,
34 34 requires_target = true,
... ... @@ -84,6 +84,20 @@ newTalent{
84 84 end
85 85 local dam_done = 0
86 86
  87 + -- Compare theorical AOE zone with actual zone and adjust damage accordingly
  88 + if self:knowTalent(self.T_EXPLOSION_EXPERT) then
  89 + local theorical_nb = ({ 9, 25, 45, 77, 109, 145 })[tg.radius]
  90 + local nb = 0
  91 + local grids = self:project(tg, x, y, function(tx, ty) end)
  92 + for px, ys in pairs(grids) do for py, _ in pairs(ys) do nb = nb + 1 end end
  93 + nb = theorical_nb - nb
  94 + if nb > 0 then
  95 + local mult = (math.log10(nb) / (6 - self:getTalentLevelRaw(self.T_EXPLOSION_EXPERT)))
  96 + print("Adjusting explosion damage to account for ", nb, " lost tiles => ", mult * 100)
  97 + dam = dam + dam * mult
  98 + end
  99 + end
  100 +
87 101 local tmp = {}
88 102 local grids = self:project(tg, x, y, function(tx, ty)
89 103 local d = dam
... ... @@ -174,7 +188,8 @@ newTalent{
174 188 mode = "passive",
175 189 points = 5,
176 190 info = function(self, t)
177   - return ([[Your alchemist bombs now affect a radius of %d around them.]]):format(self:getTalentLevelRaw(t))
  191 + return ([[Your alchemist bombs now affect a radius of %d around them.
  192 + Additionally tiles that would have been lost to terrain will now have the damage spread out over the effect.]]):format(self:getTalentLevelRaw(t))
178 193 end,
179 194 }
180 195
... ...
... ... @@ -36,7 +36,7 @@ local function makeGolem()
36 36
37 37 combat = { dam=10, atk=10, apr=0, dammod={str=1} },
38 38
39   - body = { INVEN = 1000, MAINHAND=1, BODY=1, GEM=2 },
  39 + body = { INVEN = 1000, QS_MAINHAND = 1, QS_OFFHAND = 1, MAINHAND = 1, OFFHAND = 1, BODY=1, GEM=2 },
40 40 infravision = 20,
41 41 rank = 3,
42 42 size_category = 4,
... ...