shopkeeper/priest movement
From a bug report: shopkeeper wouldn't move to block his doorway if there was a grave at that location. Nothing supernatural; shopkeeper and temple priest movement was too specific about what sort of terrain might be present and didn't know that room floor might be replaced by a grave.
This commit is contained in:
@@ -292,6 +292,7 @@ monster killed in midst of multi-shot volley throwing/shooting might cause
|
||||
freed memory to be accessed, potentially triggering a crash
|
||||
can't arm bear traps or land mines on Planes of Air or Water
|
||||
statues that "come to life" when trap activates shouldn't start out sleeping
|
||||
shopkeepers and priests wouldn't step on graves put in their rooms by bones
|
||||
|
||||
|
||||
Platform- and/or Interface-Specific Fixes
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
/* SCCS Id: @(#)priest.c 3.5 2006/12/27 */
|
||||
/* SCCS Id: @(#)priest.c 3.5 2007/01/06 */
|
||||
/* Copyright (c) Izchak Miller, Steve Linhart, 1989. */
|
||||
/* NetHack may be freely redistributed. See license for details. */
|
||||
|
||||
@@ -87,9 +87,7 @@ pick_move:
|
||||
for(i=0; i<cnt; i++) {
|
||||
nx = poss[i].x;
|
||||
ny = poss[i].y;
|
||||
if(levl[nx][ny].typ == ROOM ||
|
||||
(mtmp->ispriest &&
|
||||
levl[nx][ny].typ == ALTAR) ||
|
||||
if (IS_ROOM(levl[nx][ny].typ) ||
|
||||
(mtmp->isshk &&
|
||||
(!in_his_shop || ESHK(mtmp)->following))) {
|
||||
if(avoid && (info[i] & NOTONL))
|
||||
|
||||
Reference in New Issue
Block a user