git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@6773 c06c8d41-db1a-0410-9941-cceddc491573
RTNCVAW3IRKSTVGF2RKT4MFCXNSMA6LHW45QVO4FZNYUNMRLJT2AC DIAGORS5MPTNYDMPDOBXCIGCVDH7THTHYFOQUKMET57QH2J6WF5AC K2CS6TCX2NDVL2ASEHGP4J4K4IJ6FP3ANNKTSIWVG43HPYSBX6ZQC RPOZZWKG5GLPHVZZ7ZKMKS64ZMV2LDCQSARBJFJ6FZOTOKCQO7FAC P2ZCF3BBG523ZEOD6XQA4X5YEHBTWH3IM33YVHXP2SQ5POXZIH4QC ADIVVYTV2MJ3XVRYDNBLPTAEACCNF27XZDCRVZFQEHRHPMZGNITQC 3ZWALZFSTSIVYXY4BAY6ANGINTDACZC6RSSJTEMQSTSUIE66YOBQC SDLKLUNFGVKDS55DDJZCBAVIB7NL3RRYPTACAY65SCUQKV6APFSAC JI33MPZAQQV55WDCZE4IHGMZYRYWIYU5MSYKYZB7RX2AWWY2SMCQC I2B33Z7NZGC33AMDSSK446AZZYWKPHWLAGULVHKKZU4MVB4BNJOAC if (amulet == AMU_CONTROLLED_FLIGHT&& (you.duration[DUR_CONTROLLED_FLIGHT]|| player_genus(GENPC_DRACONIAN)|| you.attribute[ATTR_TRANSFORMATION] == TRAN_DRAGON|| you.attribute[ATTR_TRANSFORMATION] == TRAN_BAT))
switch ( amulet )
return (true);
case AMU_CONTROLLED_FLIGHT:return (you.duration[DUR_CONTROLLED_FLIGHT]|| player_genus(GENPC_DRACONIAN)|| you.attribute[ATTR_TRANSFORMATION] == TRAN_DRAGON|| you.attribute[ATTR_TRANSFORMATION] == TRAN_BAT);case AMU_CLARITY:return (player_mutation_level(MUT_CLARITY) > 0);case AMU_RESIST_CORROSION:case AMU_CONSERVATION:return (player_equip_ego_type(EQ_CLOAK, SPARM_PRESERVATION) > 0);default:return false;
if (amulet == AMU_RESIST_CORROSION || amulet == AMU_CONSERVATION){// XXX: this is hackish {dlb}if (player_equip_ego_type( EQ_CLOAK, SPARM_PRESERVATION ))return (true);}
if (you.inv[you.equip[EQ_AMULET]].sub_type == amulet&& ( calc_unid || item_type_known(you.inv[you.equip[EQ_AMULET]]) )){return (true);}return (false);
const item_def& amu(you.inv[you.equip[EQ_AMULET]]);return (amu.sub_type == amulet && (calc_unid || item_type_known(amu)));
// Amulets can auto-ID.// FIXME: should also happen when putting on/removing amulet// while levitating.if (!you.duration[DUR_LEVITATION]&& wearing_amulet(AMU_CONTROLLED_FLIGHT)&& !extrinsic_amulet_effect(AMU_CONTROLLED_FLIGHT)){item_def& amu(you.inv[you.equip[EQ_AMULET]]);set_ident_type(amu.base_type, amu.sub_type, ID_KNOWN_TYPE);set_ident_flags(amu, ISFLAG_KNOW_PROPERTIES);mprf("You are wearing: %s", amu.name(DESC_INVENTORY_EQUIP).c_str());}