{
struct rm *lev = &levl[u.ux][u.uy];
boolean blocklev = (IS_ROCK(lev->typ) || closed_door(u.ux, u.uy)
- || (Is_waterlevel(&u.uz) && lev->typ == WATER)),
+ || lev->typ == WATER),
was_levitating = !!Levitation, was_flying = !!Flying;
if (blocklev) {
const char *pool_of_water;
boolean inpool_ok = FALSE, crawl_ok;
int i, x, y;
+ boolean is_solid = (levl[u.ux][u.uy].typ == WATER);
feel_newsym(u.ux, u.uy); /* in case Blind, map the water here */
/* happily wading in the same contiguous pool */
}
if (!u.uinwater) {
- You("%s into the %s%c", Is_waterlevel(&u.uz) ? "plunge" : "fall",
+ You("%s into the %s%s%c", is_solid ? "plunge" : "fall",
+ is_solid ? "wall of " : "",
hliquid("water"),
Amphibious || Swimming ? '.' : '!');
- if (!Swimming && !Is_waterlevel(&u.uz))
+ if (!Swimming && !is_solid)
You("sink like %s.", Hallucination ? "the Titanic" : "a rock");
}