diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/actors/mobs/NewDM300.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/actors/mobs/NewDM300.java index 38ec83fde..938f102a7 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/actors/mobs/NewDM300.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/actors/mobs/NewDM300.java @@ -461,6 +461,7 @@ public class NewDM300 extends Mob { spend(3f); yell(Messages.get(this, "charging")); sprite.showStatus(CharSprite.POSITIVE, Messages.get(this, "invulnerable")); + ((DM300Sprite)sprite).updateChargeState(true); ((DM300Sprite)sprite).charge(); chargeAnnounced = false; @@ -472,7 +473,7 @@ public class NewDM300 extends Mob { public void loseSupercharge(){ supercharged = false; - sprite.resetColor(); + ((DM300Sprite)sprite).updateChargeState(false); if (pylonsActivated < 2){ yell(Messages.get(this, "charge_lost")); diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/sprites/DM300Sprite.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/sprites/DM300Sprite.java index 94fb387af..4ab68edee 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/sprites/DM300Sprite.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/sprites/DM300Sprite.java @@ -45,10 +45,12 @@ public class DM300Sprite extends MobSprite { texture( Assets.Sprites.DM300 ); - setAnimations(false); + updateChargeState(false); } - private void setAnimations( boolean enraged ){ + public void updateChargeState( boolean enraged ){ + if (superchargeSparks != null) superchargeSparks.on = enraged; + int c = enraged ? 10 : 0; TextureFilm frames = new TextureFilm( texture, 25, 22 ); @@ -148,8 +150,7 @@ public class DM300Sprite extends MobSprite { superchargeSparks.on = false; if (ch instanceof NewDM300 && ((NewDM300) ch).isSupercharged()){ - setAnimations(true); - superchargeSparks.on = true; + updateChargeState(true); } } @@ -159,11 +160,6 @@ public class DM300Sprite extends MobSprite { if (superchargeSparks != null){ superchargeSparks.visible = visible; - if (ch instanceof NewDM300 - && ((NewDM300) ch).isSupercharged() != superchargeSparks.on){ - superchargeSparks.on = ((NewDM300) ch).isSupercharged(); - setAnimations(((NewDM300) ch).isSupercharged()); - } } }