diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/features/Chasm.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/features/Chasm.java index 700b697b6..fc302b48a 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/features/Chasm.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/features/Chasm.java @@ -76,7 +76,6 @@ public class Chasm { if (Dungeon.hero.isAlive()) { Dungeon.hero.interrupt(); - Buff.affect(Dungeon.hero, Falling.class); InterlevelScene.mode = InterlevelScene.Mode.FALL; if (Dungeon.level instanceof RegularLevel) { Room room = ((RegularLevel)Dungeon.level).room( pos ); @@ -94,8 +93,7 @@ public class Chasm { Hero hero = Dungeon.hero; - hero.sprite.burst( hero.sprite.blood(), 10 ); - Camera.main.shake( 4, 0.2f ); + Camera.main.shake( 4, 1f ); Dungeon.level.press( hero.pos, hero, true ); Buff.prolong( hero, Cripple.class, Cripple.DURATION ); @@ -120,7 +118,7 @@ public class Chasm { ((MobSprite)mob.sprite).fall(); } - public static class Falling extends Buff{ + public static class Falling extends Buff { { actPriority = VFX_PRIO; @@ -134,7 +132,7 @@ public class Chasm { } } - public static class FallBleed extends Bleeding implements Hero.Doom{ + public static class FallBleed extends Bleeding implements Hero.Doom { @Override public void onDeath() { diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/scenes/InterlevelScene.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/scenes/InterlevelScene.java index bce0257f9..06a58bb8a 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/scenes/InterlevelScene.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/scenes/InterlevelScene.java @@ -27,8 +27,10 @@ import com.shatteredpixel.shatteredpixeldungeon.GamesInProgress; import com.shatteredpixel.shatteredpixeldungeon.ShatteredPixelDungeon; import com.shatteredpixel.shatteredpixeldungeon.Statistics; import com.shatteredpixel.shatteredpixeldungeon.actors.Actor; +import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Buff; import com.shatteredpixel.shatteredpixeldungeon.items.artifacts.DriedRose; import com.shatteredpixel.shatteredpixeldungeon.levels.Level; +import com.shatteredpixel.shatteredpixeldungeon.levels.features.Chasm; import com.shatteredpixel.shatteredpixeldungeon.levels.rooms.special.SpecialRoom; import com.shatteredpixel.shatteredpixeldungeon.messages.Messages; import com.shatteredpixel.shatteredpixeldungeon.ui.GameLog; @@ -335,6 +337,7 @@ public class InterlevelScene extends PixelScene { Actor.fixTime(); DriedRose.holdGhostHero( Dungeon.level ); + Buff.affect( Dungeon.hero, Chasm.Falling.class ); Dungeon.saveAll(); Level level; diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/sprites/HeroSprite.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/sprites/HeroSprite.java index 443636740..011ac3a01 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/sprites/HeroSprite.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/sprites/HeroSprite.java @@ -87,7 +87,10 @@ public class HeroSprite extends CharSprite { read = new Animation( 20, false ); read.frames( film, 19, 20, 20, 20, 20, 20, 20, 20, 20, 19 ); - idle(); + if (ch.isAlive()) + idle(); + else + die(); } @Override