player polymorphed as a ceiling hider cannot reach the floor, but
automatically unhide on #sit
trappers do not hide on the ceiling
+non-magical whistles do not work underwater
Platform- and/or Interface-Specific Fixes
use_whistle(obj)
struct obj *obj;
{
- You(whistle_str, obj->cursed ? "shrill" : "high");
- wake_nearby();
+ if(Underwater) {
+ You("blow bubbles through %s.", yname(obj));
+ } else {
+ You(whistle_str, obj->cursed ? "shrill" : "high");
+ wake_nearby();
+ }
}
STATIC_OVL void
{
register struct monst *mtmp, *nextmon;
+ /* it's magic! it works underwater too (at a higher pitch) */
if(obj->cursed && !rn2(2)) {
- You("produce a high-pitched humming noise.");
+ You("produce a %shigh-pitched humming noise.",
+ Underwater ? "very " : "");
wake_nearby();
} else {
int pet_cnt = 0;
- You(whistle_str, Hallucination ? "normal" : "strange");
+ You(whistle_str, Hallucination ? "normal" :
+ Underwater ? "strange, high-pitched" : "strange");
for(mtmp = fmon; mtmp; mtmp = nextmon) {
nextmon = mtmp->nmon; /* trap might kill mon */
if (DEADMONSTER(mtmp)) continue;