vault guard behavior
From the newsgroup: vault guards would ask your name--and you'd be able to respond--even when you were unconscious (for any reason besides fainting from lack of food) or paralyzed. (The code already made the guard be forgiving when you failed to promptly follow him out due to that situation, but it would repeatedly say "move along!" even though you were unable to move.)
This commit is contained in:
17
src/vault.c
17
src/vault.c
@@ -1,4 +1,4 @@
|
||||
/* SCCS Id: @(#)vault.c 3.4 2001/05/24 */
|
||||
/* SCCS Id: @(#)vault.c 3.4 2002/04/18 */
|
||||
/* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */
|
||||
/* NetHack may be freely redistributed. See license for details. */
|
||||
|
||||
@@ -133,7 +133,7 @@ invault()
|
||||
int dummy; /* hack to avoid schain botch */
|
||||
#endif
|
||||
struct monst *guard;
|
||||
int vaultroom = (int)vault_occupied(u.urooms);
|
||||
int trycount, vaultroom = (int)vault_occupied(u.urooms);
|
||||
|
||||
if(!vaultroom) {
|
||||
u.uinvault = 0;
|
||||
@@ -250,15 +250,22 @@ fnd:
|
||||
mongone(guard);
|
||||
return;
|
||||
}
|
||||
if (Strangled || is_silent(youmonst.data)) {
|
||||
if (Strangled || is_silent(youmonst.data) || multi < 0) {
|
||||
/* [we ought to record whether this this message has already
|
||||
been given in order to vary it upon repeat visits, but
|
||||
discarding the monster and its egd data renders that hard] */
|
||||
verbalize("I'll be back when you're ready to speak to me!");
|
||||
mongone(guard);
|
||||
return;
|
||||
}
|
||||
|
||||
stop_occupation(); /* if occupied, stop it *now* */
|
||||
if (multi > 0) { nomul(0); unmul((char *)0); }
|
||||
trycount = 5;
|
||||
do {
|
||||
getlin("\"Hello stranger, who are you?\" -",buf);
|
||||
} while (!letter(buf[0]));
|
||||
getlin("\"Hello stranger, who are you?\" -", buf);
|
||||
(void) mungspaces(buf);
|
||||
} while (!letter(buf[0]) && --trycount > 0);
|
||||
|
||||
if (u.ualign.type == A_LAWFUL &&
|
||||
/* ignore trailing text, in case player includes character's rank */
|
||||
|
||||
Reference in New Issue
Block a user