From 157b2cab44ca37380341b79ed9cca88e942eee10 Mon Sep 17 00:00:00 2001 From: Evan Debenham Date: Wed, 18 Nov 2020 13:05:37 -0500 Subject: [PATCH] v0.9.1: cleaned up shield buff code a bit --- .../actors/buffs/Barrier.java | 14 +++++++++++++- .../actors/buffs/ShieldBuff.java | 19 ++----------------- 2 files changed, 15 insertions(+), 18 deletions(-) diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/actors/buffs/Barrier.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/actors/buffs/Barrier.java index 2ea33d72e..2b72d2f9e 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/actors/buffs/Barrier.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/actors/buffs/Barrier.java @@ -34,7 +34,19 @@ public class Barrier extends ShieldBuff { } float partialLostShield; - + + @Override + public void incShield(int amt) { + super.incShield(amt); + partialLostShield = 0; + } + + @Override + public void setShield(int shield) { + super.setShield(shield); + if (shielding() == shield) partialLostShield = 0; + } + @Override public boolean act() { diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/actors/buffs/ShieldBuff.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/actors/buffs/ShieldBuff.java index d3c07d378..05291c725 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/actors/buffs/ShieldBuff.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/actors/buffs/ShieldBuff.java @@ -49,41 +49,26 @@ public abstract class ShieldBuff extends Buff { } public void setShield( int shield ) { - setShield(shield, 0); - } - - public void setShield( int shield, float delay ) { if (this.shielding <= shield) this.shielding = shield; if (target != null) target.needsShieldUpdate = true; - spend(delay); } public void incShield(){ incShield(1); } - - public void incShield( int amt ){ - incShield(amt, 0); - } - public void incShield( int amt, float delay ){ + public void incShield( int amt ){ shielding += amt; if (target != null) target.needsShieldUpdate = true; - spend(delay); } public void decShield(){ decShield(1); } - - public void decShield( int amt ){ - decShield(amt, 0); - } - public void decShield( int amt, float delay ){ + public void decShield( int amt ){ shielding -= amt; if (target != null) target.needsShieldUpdate = true; - spend(delay); } //returns the amount of damage leftover