first_band_member was false, if the one it was called with is already occupied by the player or another monster. This should fix the problem behind all those bug reports of monsters sharing a square with the player. Might introduce new ones, I guess, though I hope it won't.
Also fix a minor display bug in the chardump.
git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@4394 c06c8d41-db1a-0410-9941-cceddc491573
JD3FMKAAAUQZSNPGFLVX7F5H5SWGUSYOFZU4X5W4XYNV6HUKDBKAC
RTNOP7F7GOYLE4V7R5JP5PJJDSMMOAPRTPDCSZOJVEPK6PO6SIWQC
IXOB6KSQY3CWTXS3LLNDWLVMNK6CV2MCXJAR5CJLNNX4ZOLAMV6QC
FEAW5HX4TFYOEGUNSESIV5IB2Z65XEJ2EALW6PYNTPRLTPT7APUAC
5B5DP5S6A6LQMKZYVLQAEMHQZWFWYDHPCKQGRNSCNNYIBQYZ6BIQC
W6DKUJ4NYAURDPGBAY7WX36BFUAD5LFE2JKFSFAYTHLSDO33WDNAC
AUXVWXWIFSTWFA6VZXN2FMG7FQEKRZVV6MD32VQQ7J2RKCXHAVGAC
K2CS6TCX2NDVL2ASEHGP4J4K4IJ6FP3ANNKTSIWVG43HPYSBX6ZQC
B62ICMDTN5V7R7RBL4JALFVKEMVOOVLRSJASRNYS6CGFWBEEF5JQC
TPZWAV3USKO7RX4IGHLZKVPRN36K33PJPSZYL6FZMX4XBHTYOQYAC
TXF4NRVICF3RMD3VQARDJKGOGBGIJNO6FKOV5POTF73XQHNB6WVAC
TZ55IZNANEJO2WDTKYWVLY2W2VV6BR7WKIN7XLNISAMMFT6LG2WQC
DH3YTI6VVI727SQXO4CXSDCSBG2UN3UAWLFULBGRLBVH22ACRXIAC
SDLKLUNFGVKDS55DDJZCBAVIB7NL3RRYPTACAY65SCUQKV6APFSAC
RPOZZWKG5GLPHVZZ7ZKMKS64ZMV2LDCQSARBJFJ6FZOTOKCQO7FAC
WDEFQ6YABDQIGJXW5KT3OGR3EO6FZHXZELIRVIXQ4XDYTVOV5V6AC
RBAGQ2PB7V5YAM5KSHSZR2E3MLKDSRVM5XYGI2TIXP5QMVBOQHDQC
AVCMVFA3MKCXHO6H44UK5KJNIHTGQV7UA7GYXM26VI6TXXU5ZN6QC
X5WLJCJVW55SXZVP7IKP7ADCJIGNKN4PKAXFECVR6TNK7XSMZR7QC
NVSFIV2ZKP44XHCSCXG6OZVGL67OIFINC34J2EMKTA4KULCERUEAC
3V52MSSK7QX7FWLLUW63DTWCBAJEK674EFZLKP45FLZ5KZKVARHAC
ODNAIEJW732NG7USKQKCIP4R4DAEYXXJQX6LY7TIN32NKE75454QC
FLKXPXQ7SRFZPJPDM35D5CG6M52WP4SL32QNEZNSHGBNZYTKYGYAC
|| grd[ targ_x ][ targ_y ] == DNGN_SHALLOW_WATER
|| grd[ targ_x ][ targ_y ] == DNGN_FOUNTAIN_BLUE)
&& (restricted_type == 0 || restricted_type == MONS_WATER_ELEMENTAL))
|| grd[ targ_x ][ targ_y ] == DNGN_SHALLOW_WATER
|| grd[ targ_x ][ targ_y ] == DNGN_FOUNTAIN_BLUE)
&& (restricted_type == 0 || restricted_type == MONS_WATER_ELEMENTAL))
&& (type_summoned != MONS_WATER_ELEMENTAL
|| random2((you.species == SP_MERFOLK) ? 5 : 15)
< you.skills[SK_ICE_MAGIC])
&& (type_summoned != MONS_WATER_ELEMENTAL
|| random2((you.species == SP_MERFOLK) ? 5 : 15)
< you.skills[SK_ICE_MAGIC])
if (trap >= 0)
if (!can_place_on_trap(mon_type, env.trap[trap].type))
continue;
if (trap >= 0 && !can_place_on_trap(mon_type, env.trap[trap].type))
continue;
if (place_monster( mid, mon_type, power, behaviour, target, summoned,
px, py, permit_bands, proximity, extra, dur ) == false)
if (!place_monster( mid, mon_type, power, behaviour, target, summoned,
px, py, permit_bands, proximity, extra, dur ))