sleep vs sounds
Handle sleeping consistently; of the nine places fall_asleep is being called, only one of the them actually affected sounds. The two cases where sleep is used to penalize overexertion aren't affected.
This commit is contained in:
@@ -1,4 +1,4 @@
|
|||||||
/* SCCS Id: @(#)timeout.c 3.4 2000/09/28 */
|
/* SCCS Id: @(#)timeout.c 3.4 2002/10/12 */
|
||||||
/* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */
|
/* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */
|
||||||
/* NetHack may be freely redistributed. See license for details. */
|
/* NetHack may be freely redistributed. See license for details. */
|
||||||
|
|
||||||
@@ -367,6 +367,13 @@ boolean wakeup_msg;
|
|||||||
{
|
{
|
||||||
stop_occupation();
|
stop_occupation();
|
||||||
nomul(how_long);
|
nomul(how_long);
|
||||||
|
/* generally don't notice sounds while sleeping */
|
||||||
|
if (wakeup_msg && multi == how_long) {
|
||||||
|
/* caller can follow with a direct call to Hear_again() if
|
||||||
|
there's a need to override this when wakeup_msg is true */
|
||||||
|
flags.soundok = 0;
|
||||||
|
afternmv = Hear_again; /* this won't give any messages */
|
||||||
|
}
|
||||||
/* early wakeup from combat won't be possible until next monster turn */
|
/* early wakeup from combat won't be possible until next monster turn */
|
||||||
u.usleep = monstermoves;
|
u.usleep = monstermoves;
|
||||||
nomovemsg = wakeup_msg ? "You wake up." : You_can_move_again;
|
nomovemsg = wakeup_msg ? "You wake up." : You_can_move_again;
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
/* SCCS Id: @(#)trap.c 3.4 2002/08/29 */
|
/* SCCS Id: @(#)trap.c 3.4 2002/10/12 */
|
||||||
/* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */
|
/* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */
|
||||||
/* NetHack may be freely redistributed. See license for details. */
|
/* NetHack may be freely redistributed. See license for details. */
|
||||||
|
|
||||||
@@ -685,9 +685,7 @@ unsigned trflags;
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
pline("A cloud of gas puts you to sleep!");
|
pline("A cloud of gas puts you to sleep!");
|
||||||
flags.soundok = 0;
|
|
||||||
fall_asleep(-rnd(25), TRUE);
|
fall_asleep(-rnd(25), TRUE);
|
||||||
afternmv = Hear_again;
|
|
||||||
#ifdef STEED
|
#ifdef STEED
|
||||||
(void) steedintrap(trap, (struct obj *)0);
|
(void) steedintrap(trap, (struct obj *)0);
|
||||||
#endif
|
#endif
|
||||||
|
|||||||
Reference in New Issue
Block a user