]> granicus.if.org Git - nethack/commit
location viability on Plane of Water
authorPatR <rankin@nethack.org>
Wed, 5 Jun 2019 11:16:34 +0000 (04:16 -0700)
committerPatR <rankin@nethack.org>
Wed, 5 Jun 2019 11:16:34 +0000 (04:16 -0700)
commitb982e6c52658eae8183c062c0cd6907412178f71
tree487f2f53b32259ac729a0e431704d418fbf0c790
parent43ae30443ded912bbe6fef301c071a86f7b4b5f2
location viability on Plane of Water

While testing, I noticed that I could completely fill the Water level
with air elementals.

Hero can't fly or levitate or water walk into/onto water locations
on Water level without drowning/crawling out the water, and monsters
shouldn't have been able to but could, then they were hit by drowning
since minliquid used different criteria than movement.  But goodpos(),
used for teleport destination and new monster creation among other
things, consided water locations acceptable on that level for
non-aquadic creatures with Fly/Lev/Wwalk ability.

It explains why so many dragons and other 'nasty' monsters have been
ending up on the vanquished monsters list when hero uses level
teleport to go directly there from level 1.  They've either been
getting created in water and then they drown when it's their turn to
move or moving into it to approach the hero and drowning (not sure
whether that case is immediate or on next move).  There's no message
since hero doesn't see it, and air elementals didn't drown since thy
don't breathe.
doc/fixes36.3
src/makemon.c
src/mon.c
src/teleport.c