v0.9.1: fixed errors when DK or some fists would take negative dmg
This commit is contained in:
parent
0d9bd47ba6
commit
0bfcd5e4a3
core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/actors/mobs
|
@ -362,10 +362,12 @@ public class DwarfKing extends Mob {
|
|||
super.damage(dmg, src);
|
||||
return;
|
||||
} else if (phase == 3 && !(src instanceof Viscosity.DeferedDamage)){
|
||||
Viscosity.DeferedDamage deferred = Buff.affect( this, Viscosity.DeferedDamage.class );
|
||||
deferred.prolong( dmg );
|
||||
if (dmg >= 0) {
|
||||
Viscosity.DeferedDamage deferred = Buff.affect( this, Viscosity.DeferedDamage.class );
|
||||
deferred.prolong( dmg );
|
||||
|
||||
sprite.showStatus( CharSprite.WARNING, Messages.get(Viscosity.class, "deferred", dmg) );
|
||||
sprite.showStatus( CharSprite.WARNING, Messages.get(Viscosity.class, "deferred", dmg) );
|
||||
}
|
||||
return;
|
||||
}
|
||||
int preHP = HP;
|
||||
|
|
|
@ -352,6 +352,9 @@ public abstract class YogFist extends Mob {
|
|||
@Override
|
||||
public void damage(int dmg, Object src) {
|
||||
if (!isInvulnerable(src.getClass()) && !(src instanceof Bleeding)){
|
||||
if (dmg < 0){
|
||||
return;
|
||||
}
|
||||
Bleeding b = buff(Bleeding.class);
|
||||
if (b == null){
|
||||
b = new Bleeding();
|
||||
|
@ -406,8 +409,10 @@ public abstract class YogFist extends Mob {
|
|||
@Override
|
||||
public void damage(int dmg, Object src) {
|
||||
if (!isInvulnerable(src.getClass()) && !(src instanceof Viscosity.DeferedDamage)){
|
||||
Buff.affect(this, Viscosity.DeferedDamage.class).prolong(dmg);
|
||||
sprite.showStatus( CharSprite.WARNING, Messages.get(Viscosity.class, "deferred", dmg) );
|
||||
if (dmg >= 0) {
|
||||
Buff.affect(this, Viscosity.DeferedDamage.class).prolong(dmg);
|
||||
sprite.showStatus(CharSprite.WARNING, Messages.get(Viscosity.class, "deferred", dmg));
|
||||
}
|
||||
} else{
|
||||
super.damage(dmg, src);
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue
Block a user