From d64200e907ea3b08578037c77bf100b9803f03e2 Mon Sep 17 00:00:00 2001 From: Evan Debenham <Evan@ShatteredPixel.com> Date: Sun, 20 Dec 2020 21:01:33 -0500 Subject: [PATCH] v0.9.1b: fixed rare freezes caused by DM-201 and caustic slime drops --- .../shatteredpixeldungeon/actors/mobs/CausticSlime.java | 2 +- .../shatteredpixel/shatteredpixeldungeon/actors/mobs/DM201.java | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/actors/mobs/CausticSlime.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/actors/mobs/CausticSlime.java index 2aa8aea30..82f41c6ab 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/actors/mobs/CausticSlime.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/actors/mobs/CausticSlime.java @@ -57,7 +57,7 @@ public class CausticSlime extends Slime { int ofs; do { ofs = PathFinder.NEIGHBOURS8[Random.Int(8)]; - } while (Dungeon.level.solid[pos + ofs]); + } while (Dungeon.level.solid[pos + ofs] && !Dungeon.level.passable[pos + ofs]); Dungeon.level.drop( new GooBlob(), pos + ofs ).sprite.drop( pos ); } } diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/actors/mobs/DM201.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/actors/mobs/DM201.java index 8d0921a3f..0fc7df91b 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/actors/mobs/DM201.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/actors/mobs/DM201.java @@ -126,7 +126,7 @@ public class DM201 extends DM200 { int ofs; do { ofs = PathFinder.NEIGHBOURS8[Random.Int(8)]; - } while (Dungeon.level.solid[pos + ofs]); + } while (Dungeon.level.solid[pos + ofs] && !Dungeon.level.passable[pos + ofs]); Dungeon.level.drop( new MetalShard(), pos + ofs ).sprite.drop( pos ); }