Commit c060a2716df1b6a10738fbe8814eeaf32f83f6e0

Authored by Chris Davidson
1 parent 6fefc8c5

Block is only removed at start of turn if something was blocked

This has really annoying antisynergy with fast turn speeds otherwise.
... ... @@ -236,7 +236,7 @@ newTalent{
236 236 return p
237 237 end,
238 238 callbackOnAct = function(self, eff)
239   - if not self:knowTalent(self.T_ETERNAL_GUARD) and self:hasEffect(self.EFF_BLOCKING) and self:hasEffect(self.EFF_BLOCKING).from_block then self:removeEffect(self.EFF_BLOCKING) end
  239 + if not self:knowTalent(self.T_ETERNAL_GUARD) and self:hasEffect(self.EFF_BLOCKING) and self:hasEffect(self.EFF_BLOCKING).from_block and self:hasEffect(self.EFF_BLOCKING).did_block then self:removeEffect(self.EFF_BLOCKING) end
240 240 end,
241 241 getBlockValue = function(self, t) return self:combatShieldBlock() or 0 end,
242 242 getBlockedTypes = function(self, t)
... ... @@ -301,9 +301,9 @@ newTalent{
301 301 br_text = " All blocked damage heals the wielder."
302 302 end
303 303 local bt, bt_string = t.getBlockedTypes(self, t)
304   - return ([[Raise your shield into blocking position for 2 turns or until the start of your next turn, reducing all non-Mind damage by %d. If you block all of an attack's damage, the attacker will be vulnerable to a deadly counterstrike (the next weapon attack will instead deal 200%% damage) for one turn.
  304 + return ([[Raise your shield into blocking position for 2 turns reducing all non-Mind damage by %d. If you block all of an attack's damage, the attacker will be vulnerable to a deadly counterstrike (the next weapon attack will instead deal 200%% damage) for one turn.
305 305 Counterstrike can normally only effect one enemy per block.
306   -
  306 + If any damage was successfully blocked this effect will be removed at the start of your turn.
307 307 If the shield has damage resistance to the blocked damage type the block value is increased by 50%%.
308 308
309 309 Current Bonuses: %s%s%s%s]]):
... ...
... ... @@ -2330,7 +2330,7 @@ newEffect{
2330 2330 eff.properties.on_cs(self, eff, dam, type, src)
2331 2331 end
2332 2332 end
2333   -
  2333 + eff.did_block = true
2334 2334 self:fireTalentCheck("callbackOnBlock", eff, dam, type, src)
2335 2335
2336 2336 return amt
... ...