Fix purple worm ending up in solid wall
If you're in a vault, the vault guard enters, and your tame purple worm swallows and kills the guard, the worm ended up inside the vault wall. Instead return the attacker to the old location, if the defender's position isn't good.
This commit is contained in:
@@ -765,6 +765,8 @@ register struct attack *mattk;
|
||||
* magr from level.monsters[mdef->mx][mdef->my]. We need to
|
||||
* put it back and display it. -kd
|
||||
*/
|
||||
if (!goodpos(dx, dy, magr, MM_IGNOREWATER))
|
||||
dx = ax, dy = ay;
|
||||
place_monster(magr, dx, dy);
|
||||
newsym(dx, dy);
|
||||
/* aggressor moves to <dx,dy> and might encounter trouble there */
|
||||
|
||||
Reference in New Issue
Block a user