From 436f5ea18dd3312455c195a4d73b444ad4ac57cc Mon Sep 17 00:00:00 2001 From: Evan Debenham Date: Sun, 15 Mar 2020 21:30:16 -0400 Subject: [PATCH] v0.8.0: fixed spinners not aiming their web correctly in some cases --- .../actors/mobs/Spinner.java | 20 +++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/actors/mobs/Spinner.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/actors/mobs/Spinner.java index 0ea9ddfde..38f46741a 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/actors/mobs/Spinner.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/actors/mobs/Spinner.java @@ -90,16 +90,20 @@ public class Spinner extends Mob { @Override protected boolean act() { + AiState lastState = state; boolean result = super.act(); - - webCoolDown--; - if (shotWebVisually){ - result = shotWebVisually = false; - } else { - if (enemy != null && enemySeen) { - lastEnemyPos = enemy.pos; + + //if state changed from wandering to hunting, we haven't acted yet, don't update. + if (!(lastState == WANDERING && state == HUNTING)) { + webCoolDown--; + if (shotWebVisually){ + result = shotWebVisually = false; } else { - lastEnemyPos = -1; + if (enemy != null && enemySeen) { + lastEnemyPos = enemy.pos; + } else { + lastEnemyPos = Dungeon.hero.pos; + } } }