diff --git a/core/src/main/assets/messages/actors/actors.properties b/core/src/main/assets/messages/actors/actors.properties index c6c5dcabf..11da32d91 100644 --- a/core/src/main/assets/messages/actors/actors.properties +++ b/core/src/main/assets/messages/actors/actors.properties @@ -626,7 +626,7 @@ actors.hero.talent.empowered_strike.desc=_+1:_ The Battlemage's first melee stri actors.hero.talent.mystical_charge.title=mystical charge actors.hero.talent.mystical_charge.desc=_+1:_ Striking with his staff grants the Battlemage _0.5 turns_ worth of artifact recharging.\n\n_+2:_ Striking with his staff grants the Battlemage _1 turn_ worth of artifact recharging.\n\n_+3:_ Striking with his staff grants the Battlemage _1.5 turns_ worth of artifact recharging. actors.hero.talent.excess_charge.title=excess charge -actors.hero.talent.excess_charge.desc=_+1:_ When the Battlemage's staff is fully charged, he has a _20% chance_ to gain 2 shielding per level of the staff when he strikes with it.\n\n_+2:_ When the Battlemage's staff is fully charged, he has a _40% chance_ to gain 2 shielding per level of the staff when he strikes with it.\n\n_+3:_ When the Battlemage's staff is fully charged, he has a _60% chance_ to gain 2 shielding per level of the staff when he strikes with it. +actors.hero.talent.excess_charge.desc=_+1:_ When the Battlemage's staff is fully charged, its next zap will grant him _0.67 shielding_ per level of the staff.\n\n_+2:_ When the Battlemage's staff is fully charged, its next zap will grant him _1.33 shielding_ per level of the staff.\n\n_+3:_ When the Battlemage's staff is fully charged, its next zap will grant him _2 shielding_ per level of the staff. actors.hero.talent.soul_siphon.title=soul siphon actors.hero.talent.soul_siphon.desc=_+1:_ Melee damage dealt by other characters triggers the Warlock's soul mark at _13% effectiveness_.\n\n_+2:_ Melee damage dealt by other characters triggers the Warlock's soul mark at _27% effectiveness_.\n\n_+3:_ Melee damage dealt by other characters triggers the Warlock's soul mark at _40% effectiveness_. diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/wands/Wand.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/wands/Wand.java index 1a37e132f..d31f9b6f5 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/wands/Wand.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/wands/Wand.java @@ -396,6 +396,13 @@ public abstract class Wand extends Item { Badges.validateItemLevelAquired( this ); } } + + //inside staff + if (charger != null && charger.target == Dungeon.hero && !Dungeon.hero.belongings.contains(this)){ + if (Dungeon.hero.hasTalent(Talent.EXCESS_CHARGE) && curCharges >= maxCharges){ + Buff.affect(Dungeon.hero, Barrier.class).setShield(Math.round(buffedLvl()*0.67f*Dungeon.hero.pointsInTalent(Talent.EXCESS_CHARGE))); + } + } curCharges -= cursed ? 1 : chargesPerCast(); diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/weapon/melee/MagesStaff.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/weapon/melee/MagesStaff.java index 5fae1a2a3..f9c330633 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/weapon/melee/MagesStaff.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/weapon/melee/MagesStaff.java @@ -152,10 +152,6 @@ public class MagesStaff extends MeleeWeapon { @Override public int proc(Char attacker, Char defender, int damage) { - if (wand.curCharges >= wand.maxCharges && attacker instanceof Hero && Random.Int(5) < ((Hero) attacker).pointsInTalent(Talent.EXCESS_CHARGE)){ - Buff.affect(attacker, Barrier.class).setShield(buffedLvl()*2); - } - if (attacker instanceof Hero && ((Hero) attacker).hasTalent(Talent.MYSTICAL_CHARGE)){ Hero hero = (Hero) attacker; for (Buff b : hero.buffs()){