diff --git a/doc/fixes34.1 b/doc/fixes34.1 index 78dce26d1..66d5faf21 100644 --- a/doc/fixes34.1 +++ b/doc/fixes34.1 @@ -195,6 +195,7 @@ Archeologists suffer same alignment penalty for statue destruction by being unable to see a vault guard doesn't prevent him from arriving in town, secret doors should be called "wall", not "fountain" in town, watch should not allow trees to be cut down +cancel chat direction cancels the chat Platform- and/or Interface-Specific Fixes diff --git a/src/sounds.c b/src/sounds.c index 459019d33..32f83c9ce 100644 --- a/src/sounds.c +++ b/src/sounds.c @@ -860,7 +860,10 @@ dochat() return(1); } - (void) getdir("Talk to whom? (in what direction)"); + if (!getdir("Talk to whom? (in what direction)")) { + /* decided not to chat */ + return(0); + } #ifdef STEED if (u.usteed && u.dz > 0) diff --git a/src/spell.c b/src/spell.c index 4c17da74c..c30cc75bc 100644 --- a/src/spell.c +++ b/src/spell.c @@ -814,7 +814,10 @@ boolean atme; case SPE_STONE_TO_FLESH: if (!(objects[pseudo->otyp].oc_dir == NODIR)) { if (atme) u.dx = u.dy = u.dz = 0; - else (void) getdir((char *)0); + else if (!getdir((char *)0)) { + /* getdir cancelled, re-use previous direction */ + pline_The("magical energy is released!"); + } if(!u.dx && !u.dy && !u.dz) { if ((damage = zapyourself(pseudo, TRUE)) != 0) { char buf[BUFSZ];