Showing
6 changed files
with
24 additions
and
14 deletions
... | ... | @@ -4098,10 +4098,13 @@ function _M:fireTalentCheck(event, ...) |
4098 | 4098 | if self[store] and next(self[store]) then |
4099 | 4099 | for tid, kind in pairs(self[store]) do |
4100 | 4100 | if kind == "effect" then |
4101 | + self.__project_source = self.tmp[tid] | |
4101 | 4102 | ret = self:callEffect(tid, event, ...) or ret |
4102 | 4103 | else |
4104 | + self.__project_source = self.sustain_talents[tid] | |
4103 | 4105 | ret = self:callTalent(tid, event, ...) or ret |
4104 | 4106 | end |
4107 | + self.__project_source = nil | |
4105 | 4108 | end |
4106 | 4109 | end |
4107 | 4110 | return ret | ... | ... |
... | ... | @@ -1229,7 +1229,7 @@ function _M:getTextualDesc(compare_with, use_actor) |
1229 | 1229 | if self.alchemist_bomb or self.type == "gem" and use_actor:knowTalent(Talents.T_CREATE_ALCHEMIST_GEMS) then |
1230 | 1230 | local a = self.alchemist_bomb |
1231 | 1231 | if not a then |
1232 | - a = game.zone.object_list["ALCHEMIST_GEM_"..self.name:upper()] | |
1232 | + a = game.zone.object_list["ALCHEMIST_GEM_"..self.name:gsub(" ", "_"):upper()] | |
1233 | 1233 | if a then a = a.alchemist_bomb end |
1234 | 1234 | end |
1235 | 1235 | if a then |
... | ... | @@ -1239,7 +1239,13 @@ function _M:getTextualDesc(compare_with, use_actor) |
1239 | 1239 | if a.mana then desc:add(("Mana regain %d"):format(a.mana), true) end |
1240 | 1240 | if a.daze then desc:add(("%d%% chance to daze for %d turns"):format(a.daze.chance, a.daze.dur), true) end |
1241 | 1241 | if a.stun then desc:add(("%d%% chance to stun for %d turns"):format(a.stun.chance, a.stun.dur), true) end |
1242 | - if a.splash then desc:add(("Additional %d %s damage"):format(a.splash.dam, DamageType:get(DamageType[a.splash.type]).name), true) end | |
1242 | + if a.splash then | |
1243 | + if a.splash.desc then | |
1244 | + desc:add(a.splash.desc, true) | |
1245 | + else | |
1246 | + desc:add(("Additional %d %s damage"):format(a.splash.dam, DamageType:get(DamageType[a.splash.type]).name), true) | |
1247 | + end | |
1248 | + end | |
1243 | 1249 | if a.leech then desc:add(("Life regen %d%% of max life"):format(a.leech), true) end |
1244 | 1250 | end |
1245 | 1251 | end | ... | ... |
... | ... | @@ -69,7 +69,7 @@ newGem("Diamond", "object/diamond.png",5, 18, "white", 40, 50, 5, 70, |
69 | 69 | ) |
70 | 70 | newGem("Pearl", "object/pearl.png", 5, 18, "white", 40, 50, 5, 70, |
71 | 71 | { resists = {all=5}, combat_armor = 5 }, |
72 | - { splash={type="LITE", dam=100} } | |
72 | + { splash={type="LITE", dam=100, desc = "Lights terrain (power 100)"} } | |
73 | 73 | ) |
74 | 74 | newGem("Moonstone", "object/moonstone.png",5, 18, "white", 40, 50, 5, 70, |
75 | 75 | { combat_def=10, combat_mentalresist=10, combat_spellresist=10, combat_physresist=10, }, |
... | ... | @@ -97,7 +97,7 @@ newGem("Turquoise", "object/turquoise.png",4, 16, "green", 30, 40, 4, 65, |
97 | 97 | ) |
98 | 98 | newGem("Jade", "object/jade.png", 4, 16, "green", 30, 40, 4, 65, |
99 | 99 | { resists = {all=4}, combat_armor = 4 }, |
100 | - { splash={type="SLOW", dam=-1 + 1 / (1 + 0.20)} } | |
100 | + { splash={type="SLOW", dam= 1 - 1 / (1 + 0.20), desc = "Slows by 17%"} } | |
101 | 101 | ) |
102 | 102 | newGem("Sapphire", "object/sapphire.png",4, 16, "blue", 30, 40, 4, 65, |
103 | 103 | { combat_def=8, combat_mentalresist=8, combat_spellresist=8, combat_physresist=8, }, |
... | ... | @@ -141,7 +141,7 @@ newGem("Aquamarine", "object/aquamarine.png",2, 10, "blue", 10, 20, 2, 35, |
141 | 141 | ) |
142 | 142 | newGem("Ametrine", "object/ametrine.png",1, 8, "yellow", 1, 10, 1, 20, |
143 | 143 | { inc_damage = {all=2}, combat_physcrit=1, combat_mindcrit=1, combat_spellcrit=1, }, |
144 | - { splash={type="LITE", dam=1} } | |
144 | + { splash={type="LITE", dam=10, desc = "Lights terrain (power 10)"} } | |
145 | 145 | ) |
146 | 146 | newGem("Zircon", "object/zircon.png",1, 8, "yellow", 1, 10, 1, 20, |
147 | 147 | { resists = {all=1}, combat_armor = 1 }, | ... | ... |
... | ... | @@ -59,7 +59,7 @@ newTalent{ |
59 | 59 | local duration = t.getDuration(self, t) |
60 | 60 | local chance = t.getChance(self, t) |
61 | 61 | local dam = t.getDamage(self, t) |
62 | - golem:setEffect(golem.EFF_CAUSTIC_GOLEM, duration, {chance=chance, dam=dam}) | |
62 | + golem:setEffect(golem.EFF_CAUSTIC_GOLEM, duration, {src = golem, chance=chance, dam=dam}) | |
63 | 63 | end, |
64 | 64 | info = function(self, t) |
65 | 65 | local duration = t.getDuration(self, t) | ... | ... |
... | ... | @@ -66,7 +66,7 @@ newTalent{ |
66 | 66 | end |
67 | 67 | end |
68 | 68 | if did_something then |
69 | - game.logSeen(golem, "%s is energized by the attack, reducing some talents cooldowns!", golem.name:capitalize()) | |
69 | + game.logSeen(golem, "%s is energized by the attack, reducing some talent cooldowns!", golem.name:capitalize()) | |
70 | 70 | end |
71 | 71 | end, |
72 | 72 | info = function(self, t) |
... | ... | @@ -184,7 +184,7 @@ newTalent{ |
184 | 184 | end, |
185 | 185 | activate = function(self, t) |
186 | 186 | game:playSoundNear(self, "talents/lightning") |
187 | - local ret = {} | |
187 | + local ret = {name = self.name:capitalize().."'s "..t.name} | |
188 | 188 | self:talentTemporaryValue(ret, "movement_speed", t.getSpeed(self, t)) |
189 | 189 | ret.last_life = self.life |
190 | 190 | return ret |
... | ... | @@ -193,14 +193,15 @@ newTalent{ |
193 | 193 | return true |
194 | 194 | end, |
195 | 195 | info = function(self, t) |
196 | - local speed = t.getSpeed(self, t) | |
196 | + local speed = t.getSpeed(self, t) * 100 | |
197 | 197 | local dam = t.getDamage(self, t) |
198 | 198 | local turn = t.getTurn(self, t) |
199 | 199 | local range = self:getTalentRange(t) |
200 | - return ([[Infuse your body with lightning energy, bolstering your legs (+%d%% movement speed). | |
201 | - Each turn a foe within range %d will get hit by lightning, dealing %0.2f lightning damage. | |
202 | - Each time your turn start, if you have lost over 20%% since the last turn you gain %d%% of a turn. | |
200 | + return ([[Infuse your body with lightning energy, bolstering your movement speed by +%d%%. | |
201 | + Each turn, a foe within range %d will be struck by lightning and be dealt %0.1f Lightning damage. | |
202 | + In addition, damage to your health will energize you. | |
203 | + At the start of each turn in which you have lost at least %d life (20%% of your maximum life) since your last turn, you will gain %d%% of a turn. | |
203 | 204 | The effects increase with your Spellpower.]]): |
204 | - format(speed, range, damDesc(self, DamageType.LIGHTNING, t.getDamage(self, t)), turn) | |
205 | + format(speed, range, damDesc(self, DamageType.LIGHTNING, t.getDamage(self, t)), self.max_life * 0.2, turn) | |
205 | 206 | end, |
206 | 207 | } | ... | ... |
... | ... | @@ -2402,7 +2402,7 @@ newEffect{ |
2402 | 2402 | newEffect{ |
2403 | 2403 | name = "ICE_ARMOUR", image = "talents/ice_armour.png", |
2404 | 2404 | desc = "Ice Armour", |
2405 | - long_desc = function(self, eff) return ("The target is covered in a layer of ice. Its armour is increased by %d, it deals %0.1f Cold damage to attackers that hit in melee, and 50%% of it's damage is converted to cold."):format(eff.armor, self:damDesc(DamageType.COLD, eff.dam)) end, | |
2405 | + long_desc = function(self, eff) return ("The target is covered in a layer of ice. Its armour is increased by %d, it deals %0.1f Cold damage to attackers that hit in melee, and 50%% of its damage is converted to cold."):format(eff.armor, self:damDesc(DamageType.COLD, eff.dam)) end, | |
2406 | 2406 | type = "magical", |
2407 | 2407 | subtype = { cold=true, armour=true, }, |
2408 | 2408 | status = "beneficial", | ... | ... |
-
Please register or login to post a comment