From ba116c62fb72943a704d55617396f19445322299 Mon Sep 17 00:00:00 2001 From: Evan Debenham Date: Wed, 13 Sep 2023 12:56:39 -0400 Subject: [PATCH] v2.2.0: fixed corpse dust wraiths never spawning at low hero viewdist --- .../shatteredpixeldungeon/items/quest/CorpseDust.java | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/quest/CorpseDust.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/quest/CorpseDust.java index 94a44c0c8..9217d0ec9 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/quest/CorpseDust.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/quest/CorpseDust.java @@ -118,11 +118,14 @@ public class CorpseDust extends Item { int powerNeeded = Math.min(49, wraiths*wraiths); if (powerNeeded <= spawnPower){ ArrayList candidates = new ArrayList<>(); + //min distance scales based on hero's view distance + // wraiths must spawn at least 4/3/2/1 tiles away at view distance of 8(default)/7/4/1 + int minDist = Math.round(Dungeon.hero.viewDistance/3f); for (int i = 0; i < Dungeon.level.length(); i++){ if (Dungeon.level.heroFOV[i] && !Dungeon.level.solid[i] && Actor.findChar( i ) == null - && Dungeon.level.distance(i, Dungeon.hero.pos) > 3){ + && Dungeon.level.distance(i, Dungeon.hero.pos) > minDist){ candidates.add(i); } }