v0.6.1: fixed the sad ghost getting stuck behind closing doors on bosses
This commit is contained in:
@@ -225,6 +225,15 @@ public class CavesBossLevel extends Level {
|
|||||||
enteredArena = true;
|
enteredArena = true;
|
||||||
seal();
|
seal();
|
||||||
|
|
||||||
|
for (Mob m : mobs){
|
||||||
|
//bring the first ally with you
|
||||||
|
if (m.ally){
|
||||||
|
m.pos = Dungeon.hero.pos + (Random.Int(2) == 0 ? +1 : -1);
|
||||||
|
m.sprite.place(m.pos);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
DM300 boss = new DM300();
|
DM300 boss = new DM300();
|
||||||
boss.state = boss.WANDERING;
|
boss.state = boss.WANDERING;
|
||||||
do {
|
do {
|
||||||
|
|||||||
@@ -196,6 +196,15 @@ public class CityBossLevel extends Level {
|
|||||||
enteredArena = true;
|
enteredArena = true;
|
||||||
seal();
|
seal();
|
||||||
|
|
||||||
|
for (Mob m : mobs){
|
||||||
|
//bring the first ally with you
|
||||||
|
if (m.ally){
|
||||||
|
m.pos = Dungeon.hero.pos + (Random.Int(2) == 0 ? +1 : -1);
|
||||||
|
m.sprite.place(m.pos);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
King boss = new King();
|
King boss = new King();
|
||||||
boss.state = boss.WANDERING;
|
boss.state = boss.WANDERING;
|
||||||
int count = 0;
|
int count = 0;
|
||||||
|
|||||||
+14
-3
@@ -285,6 +285,15 @@ public class PrisonBossLevel extends Level {
|
|||||||
set(5 + 25 * 32, Terrain.LOCKED_DOOR);
|
set(5 + 25 * 32, Terrain.LOCKED_DOOR);
|
||||||
GameScene.updateMap(5 + 25 * 32);
|
GameScene.updateMap(5 + 25 * 32);
|
||||||
|
|
||||||
|
for (Mob m : mobs){
|
||||||
|
//bring the first ally with you
|
||||||
|
if (m.ally){
|
||||||
|
m.pos = 5 + 25 * 32; //they should immediately walk out of the door
|
||||||
|
m.sprite.place(m.pos);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
tengu.state = tengu.HUNTING;
|
tengu.state = tengu.HUNTING;
|
||||||
tengu.pos = 5 + 28*32; //in the middle of the fight room
|
tengu.pos = 5 + 28*32; //in the middle of the fight room
|
||||||
GameScene.add( tengu );
|
GameScene.add( tengu );
|
||||||
@@ -329,10 +338,12 @@ public class PrisonBossLevel extends Level {
|
|||||||
changeMap(MAP_ARENA);
|
changeMap(MAP_ARENA);
|
||||||
clearEntities( (Room) new Room().set(0, 0, 10, 4)); //clear all but the area right around the teleport spot
|
clearEntities( (Room) new Room().set(0, 0, 10, 4)); //clear all but the area right around the teleport spot
|
||||||
|
|
||||||
//if any characters are left over, move them along the same way as the hero
|
//if any allies are left over, move them along the same way as the hero
|
||||||
for (Mob m : mobs){
|
for (Mob m : mobs){
|
||||||
m.pos += 9+3*32;
|
if (m.ally) {
|
||||||
m.sprite().place(m.pos);
|
m.pos += 9 + 3 * 32;
|
||||||
|
m.sprite().place(m.pos);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
tengu.state = tengu.HUNTING;
|
tengu.state = tengu.HUNTING;
|
||||||
|
|||||||
Reference in New Issue
Block a user