Fix 1966204: make non-amphibious undead capable of drowning or the equivalent thereof
When you see a weapon with the returning ego return (to you or a monster) set the properties known along with the brand (because artefacts can't be id'd by throwing alone, anyway). This helps alleviate BR 1958616, but doesn't solve the problem with the curse status being unknown.
git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@5499 c06c8d41-db1a-0410-9941-cceddc491573
32PXX2XJVV7YSLLYNAVS7RYKYRAOQ565TZMTITSEPSSXOYPB5M2AC BD5ZPI4AQYR4SHYGKH4FJ6XNNCGSSEXESF2HMD5WN4GJAJXAMGGAC NLFAU3OUXSCZDSKRC7KMQO2PRT24DBGCS55UXBDBMCKYA3CYTA4AC D7SLVLRNCYCBDYYRANHDG3JYEF25CFCSUY5FMF5KXVD5D4UZSDDAC K2CS6TCX2NDVL2ASEHGP4J4K4IJ6FP3ANNKTSIWVG43HPYSBX6ZQC FA2V3G4NYTWJWUT7EWH75L3YOUX6YVOZ5LNRSFLO2XF273JKSUTAC TQLWCGVXVZ75H7MDBJD3DJDUFNW62WOAEDJUVKCHQTAXKBP47CSAC AMAPVOFKH3YS5VCVOG2YNHXNDAZATMXFUL6ODZUIOF5OYYKBVKGAC 6QOJM3P5IONWA3LWLN7YT7KZKNSFNIGNRLL5ZIKFRQ42BDURNAEAC TX3LTXGB7TJ2QHLW2TEW6XTCTOW5A3KTZGBPBRTDTUYOZFFT3NLAC WL5WZXFJ6TONUQRSHUY4GQ5USU47ILWNN5X2JDQZO4CRJJZSRQIAC B7MSPF6X2RLGWN4M6ZZF3WSOPKGYPTTD7LIJVST7DXN27DG6JHNAC NNG27Y5ZQAZX6UD7F7M4F6KEZBEDFXPEEC3LFUSX4ESKT7K6UJQAC Y4NA3JSN63RLATF4NNBPSR5CWF5Z7UEMWCGVX4B6NOAR47CGM4GQC 5DI5IBEYOMNFQOLSI4ZNFJCGG4CFYYEEMIGZNCA42ESVEIBTJLSAC X5WLJCJVW55SXZVP7IKP7ADCJIGNKN4PKAXFECVR6TNK7XSMZR7QC NVSFIV2ZKP44XHCSCXG6OZVGL67OIFINC34J2EMKTA4KULCERUEAC RPOZZWKG5GLPHVZZ7ZKMKS64ZMV2LDCQSARBJFJ6FZOTOKCQO7FAC 3ZWALZFSTSIVYXY4BAY6ANGINTDACZC6RSSJTEMQSTSUIE66YOBQC 6GDKXNFXPKQ6AVNOSMJECN7CLELM2KCMVRM2A7BARLK2NNILN6SAC 3EUPIYJNWOMOQBP2Z5SGSMWK453BXJD6KL2WFTR3NM565MEBYASAC BKU2GWFNG6H74G76JX4RP3WVMU4IKTHPSKRMLWZAGA6BXMMZ227AC 6BCD3B7SZ4T2VPOGO562767LMFCVMKBAUMF4PQ7T5XNKSXVY7F6QC 7YUGK5Q64KG5O7GJGTUBRRLHAHBCJ5YOE23YUPT6UBKUSB67CYAQC NG53L53MSFQZAIVKHG54IEMXNJ33AYVPF2OZM4MMJFDKEJCGPBSAC 2WVP47RBNL5OVYMAZH7TKRYD7F2TGSZ5X74PWVGAYCQP26G3JUHQC L254F6ZIU2HWGLFFGPIORTN4C3TDQ3E5JZ7Z7GQA5AEDIKL6PKDAC KBNY5FWKTEAKABFCLPC3QFKFSVZKAGXINPCIFV6WDSWFO4VCKNTAC R22TTMI6WXWULC7ODKFF3QCB7MOTETQQ6IR4BUCUPOCQKQNCTT5AC DMRXDEKHHBQNY37NPGZFAGUQPALWFANGGK4CUWIOQUPSLM2JBNFQC 3JKKL6VSKQHBBTKEBSADZVCNXZLL4S6KN2W7G2CY5OBOMMUTIWXQC X6W4FXCQ72PYSDPGMQCZ44QQANZFGTXPUHDC5GW4YFSJ2KPBVAMAC KAOE5HB3THUKVGFZRO5EZESHEB3Q34WUO5DFMLWIKOBF47LZTIYAC // NOTE: We never do any traversable() check for the starting square// (target). This means that even if the target cannot be reached// we may still find a path leading adjacent to this position, which// is desirable if e.g. the player is hovering over deep water// surrounded by shallow water or floor, or if a foe is hiding in// a wall.// If the surrounding squares also are not traversable, we return// early that no path could be found.
// Moving from floor to water (or vice versa) is a bit more expensive.// The deep water checks are only done in case of amphibious monsters.if ((grd(pos) == DNGN_SHALLOW_WATER || grd(pos) == DNGN_DEEP_WATER)&& grid_compatible(grd(npos), DNGN_FLOOR)|| (grd(npos) == DNGN_SHALLOW_WATER || grd(npos) == DNGN_DEEP_WATER)&& grid_compatible(grd(pos), DNGN_FLOOR))
const int montype = mons_is_zombified(mons) ? mons_zombie_base(mons): mons->type;const bool airborne = _mons_airborne(montype, -1, false);// Travelling through water, entering or leaving water is more expensive// for non-amphibious monsters, so they'll avoid it where possible.// Only tested for shallow water since they can't enter deep water anywa.if (!airborne && !mons_amphibious(montype)&& (grd(pos) == DNGN_SHALLOW_WATER || grd(npos) == DNGN_SHALLOW_WATER))
// Mechanical traps can be avoided by flying, as can shafts, and// tele traps are never traversable anyway.if (!_mons_airborne(montype, -1, false))return 2;}
// Mechanical traps can be avoided by flying, as can shafts, and// tele traps are never traversable anyway.if (knows_trap && !airborne)return 2;
// Next, let's take care of messaging {dlb}:if (how_carnivorous > 0 && carnivore_modifier < 0)mpr("Blech - you need meat!");else if (how_herbivorous > 0 && herbivore_modifier < 0)mpr("Blech - you need greens!");