v0.3.1d: added a health bar for bosses
This commit is contained in:
@@ -25,6 +25,7 @@ import java.util.HashSet;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Terror;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.items.artifacts.CapeOfThorns;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.items.artifacts.LloydsBeacon;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.ui.BossHealthBar;
|
||||
import com.watabou.noosa.Camera;
|
||||
import com.watabou.noosa.audio.Sample;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.Assets;
|
||||
@@ -47,6 +48,7 @@ import com.shatteredpixel.shatteredpixeldungeon.levels.Terrain;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.scenes.GameScene;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.sprites.DM300Sprite;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.utils.GLog;
|
||||
import com.watabou.utils.Bundle;
|
||||
import com.watabou.utils.Random;
|
||||
|
||||
public class DM300 extends Mob {
|
||||
@@ -150,6 +152,7 @@ public class DM300 extends Mob {
|
||||
@Override
|
||||
public void notice() {
|
||||
super.notice();
|
||||
BossHealthBar.assignBoss(this);
|
||||
yell( "Unauthorised personnel detected." );
|
||||
}
|
||||
|
||||
@@ -182,4 +185,10 @@ public class DM300 extends Mob {
|
||||
public HashSet<Class<?>> immunities() {
|
||||
return IMMUNITIES;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void restoreFromBundle(Bundle bundle) {
|
||||
super.restoreFromBundle(bundle);
|
||||
BossHealthBar.assignBoss(this);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -28,6 +28,7 @@ import com.shatteredpixel.shatteredpixeldungeon.actors.blobs.GooWarn;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.actors.blobs.ToxicGas;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.effects.CellEmitter;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.effects.particles.ElmoParticle;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.ui.BossHealthBar;
|
||||
import com.watabou.noosa.Camera;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.Badges;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.Dungeon;
|
||||
@@ -159,8 +160,9 @@ public class Goo extends Mob {
|
||||
|
||||
for (int i=0; i < Level.NEIGHBOURS9.length; i++) {
|
||||
int j = pos + Level.NEIGHBOURS9[i];
|
||||
GameScene.add( Blob.seed( j , 2, GooWarn.class ));
|
||||
|
||||
if (Level.passable[j]) {
|
||||
GameScene.add(Blob.seed(j, 2, GooWarn.class));
|
||||
}
|
||||
}
|
||||
|
||||
if (Dungeon.visible[pos]) {
|
||||
@@ -211,6 +213,7 @@ public class Goo extends Mob {
|
||||
@Override
|
||||
public void notice() {
|
||||
super.notice();
|
||||
BossHealthBar.assignBoss(this);
|
||||
yell( "GLURP-GLURP!" );
|
||||
}
|
||||
|
||||
@@ -240,6 +243,7 @@ public class Goo extends Mob {
|
||||
super.restoreFromBundle( bundle );
|
||||
|
||||
pumpedUp = bundle.getInt( PUMPEDUP );
|
||||
if (state != SLEEPING) BossHealthBar.assignBoss(this);
|
||||
}
|
||||
|
||||
private static final HashSet<Class<?>> RESISTANCES = new HashSet<Class<?>>();
|
||||
|
||||
@@ -25,6 +25,7 @@ import java.util.HashSet;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Vertigo;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.items.artifacts.LloydsBeacon;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.items.scrolls.ScrollOfTeleportation;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.ui.BossHealthBar;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.utils.GLog;
|
||||
import com.watabou.noosa.audio.Sample;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.Assets;
|
||||
@@ -80,6 +81,7 @@ public class King extends Mob {
|
||||
public void restoreFromBundle( Bundle bundle ) {
|
||||
super.restoreFromBundle( bundle );
|
||||
nextPedestal = bundle.getBoolean( PEDESTAL );
|
||||
BossHealthBar.assignBoss(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -218,6 +220,7 @@ public class King extends Mob {
|
||||
@Override
|
||||
public void notice() {
|
||||
super.notice();
|
||||
BossHealthBar.assignBoss(this);
|
||||
yell( "How dare you!" );
|
||||
}
|
||||
|
||||
|
||||
@@ -24,6 +24,7 @@ import java.util.HashSet;
|
||||
|
||||
import com.shatteredpixel.shatteredpixeldungeon.items.artifacts.LloydsBeacon;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.levels.traps.PoisonTrap;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.ui.BossHealthBar;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.utils.GLog;
|
||||
import com.watabou.noosa.audio.Sample;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.Assets;
|
||||
@@ -46,6 +47,7 @@ import com.shatteredpixel.shatteredpixeldungeon.levels.Terrain;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.mechanics.Ballistica;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.scenes.GameScene;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.sprites.TenguSprite;
|
||||
import com.watabou.utils.Bundle;
|
||||
import com.watabou.utils.Random;
|
||||
|
||||
public class Tengu extends Mob {
|
||||
@@ -180,7 +182,8 @@ public class Tengu extends Mob {
|
||||
@Override
|
||||
public void notice() {
|
||||
super.notice();
|
||||
yell( "Gotcha, " + Dungeon.hero.givenName() + "!" );
|
||||
BossHealthBar.assignBoss(this);
|
||||
yell("Gotcha, " + Dungeon.hero.givenName() + "!");
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -202,4 +205,10 @@ public class Tengu extends Mob {
|
||||
public HashSet<Class<?>> resistances() {
|
||||
return RESISTANCES;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void restoreFromBundle(Bundle bundle) {
|
||||
super.restoreFromBundle(bundle);
|
||||
BossHealthBar.assignBoss(this);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -52,8 +52,10 @@ import com.shatteredpixel.shatteredpixeldungeon.sprites.CharSprite;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.sprites.LarvaSprite;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.sprites.RottingFistSprite;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.sprites.YogSprite;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.ui.BossHealthBar;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.utils.GLog;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.utils.Utils;
|
||||
import com.watabou.utils.Bundle;
|
||||
import com.watabou.utils.Random;
|
||||
|
||||
public class Yog extends Mob {
|
||||
@@ -89,6 +91,8 @@ public class Yog extends Mob {
|
||||
|
||||
GameScene.add( fist1 );
|
||||
GameScene.add( fist2 );
|
||||
|
||||
notice();
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -169,6 +173,7 @@ public class Yog extends Mob {
|
||||
@Override
|
||||
public void notice() {
|
||||
super.notice();
|
||||
BossHealthBar.assignBoss(this);
|
||||
yell( "Hope is an illusion..." );
|
||||
}
|
||||
|
||||
@@ -196,7 +201,13 @@ public class Yog extends Mob {
|
||||
public HashSet<Class<?>> immunities() {
|
||||
return IMMUNITIES;
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public void restoreFromBundle(Bundle bundle) {
|
||||
super.restoreFromBundle(bundle);
|
||||
BossHealthBar.assignBoss(this);
|
||||
}
|
||||
|
||||
public static class RottingFist extends Mob {
|
||||
|
||||
private static final int REGENERATION = 4;
|
||||
|
||||
Reference in New Issue
Block a user