montraits() didn't have any handling for long worm tails, makemon() didn't have any provision for creating a long worm without a tail, replmon() uses place_wegs() to put tail segments on the map when replacing a dummy new monster with the mtraits one but place_wsegs() wasn't updating the head segment since it isn't put on the map. That turned out to be key because there is always an extra segment co-located with the monster and when its coordinates were wrong, worm_known() gave bad results for visibility checking. The statue-goes-away message was the one for not being able to see the monster that it just animated into, even though 'w' appeared at the spot. It took quite a while to track down what was going on there. Sanity checking for worms has been updated and could conceivably start triggering complaints about things that it used ignore.
19 KiB
19 KiB