Fix 2002931: feature_item_brand not working
No, it's not the important bugs, but at least these are bugs I can reproduce. :P
git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@6433 c06c8d41-db1a-0410-9941-cceddc491573
CFWPAA7X7JQBNHFFEY7FJUZZ56YIQXGXEQ7EEVZMJ65YCPNO2L5AC 76LKB66IWIPTE75HR2T4B75YFRVZ3PVRPX5WTRPNTOOP3SLAQWFAC JQK4F4RTKVQWIF5YKFPH7IHF7UREBOY2NOFQ7J3O44KYPCNHNL5AC RPOZZWKG5GLPHVZZ7ZKMKS64ZMV2LDCQSARBJFJ6FZOTOKCQO7FAC AXQJOPTECRU3ECV3ICDUR6SGBIOIZT5HIOSJ77MRLF5ECGOITMDQC K2CS6TCX2NDVL2ASEHGP4J4K4IJ6FP3ANNKTSIWVG43HPYSBX6ZQC 72CQFK27NR37P2WQ32U4PEXXKMRIO7JEMJN2ZCPNVPZMT7UPFJJAC MJWFTUS66PTCNEYXEJA3CUJFXNWXIKDD6H3V24PW7HK64NSVOFSAC GL7TJGUGV4JPLZCDWH6QVST4RYW7UJV6IP7UAEWEKNBWJO2H2ZHAC LHHRXD4GGPHSU6OGOVJEHDHYJA3Q5X45VKMZYUWZP3VXOLYZRTIAC WT66JDIRTLLP37SHTV4GI3V64JFJ4D25LNRLGCHFG6CLEFKJ3QGQC WYMN37VYSETF56RTTJ45VMB2YS4OUUKRL2JNWJSUKNLBFGGGECNQC 5HBRQ2QZTFBQE2Z2CFADUI2D52LO5Z5CNHXHA7BJP3LGO7FJPUCQC I2B33Z7NZGC33AMDSSK446AZZYWKPHWLAGULVHKKZU4MVB4BNJOAC XIVK73TDPJKGRQ2EHPNUERDI5JIYTYAPSCVKXROD36BIHFE3WNQQC 3HA76QBIYDRXHHKK7FRIGTEZLRFPECJW2AYXOBYNZM4FIDSDLWGAC 3JLXUHLLGWTSJEGNAUUKFR7HWYDPAOR4WTJKYP5TFGMGQ3GDOU6AC 3ZWALZFSTSIVYXY4BAY6ANGINTDACZC6RSSJTEMQSTSUIE66YOBQC ENOQQ6DEA6ECRNTBGYYNK7G3DFEILMKQBNKP4SUQIZW2L6HWVR7QC 3VWSZUGYL36SO5AOZRASGK3VHFCFZUGGCGRT3R7BZB36IZPN7OSQC 74LQ7JXVLAFSHLI7LCBKFX47CNTYSKGUQSXNX5FCIUIGCC2JTR3QC QYUAYEGK7WPBJLZRSWZVDWD5SMNAWWIJSQPWYA7BEYXMEBD2SDKAC LS2FPEQQPF3L6AG6NCI2EMBQYWB7POZQBAUCNCGXG4H3Z3ACZG5AC 7NDXS36TE7QVXTXJWMYSVG5UHCCLPIO4VL6NXFGTDK3ZNKE3A2IAC SDLKLUNFGVKDS55DDJZCBAVIB7NL3RRYPTACAY65SCUQKV6APFSAC AMBBZGB4EP4MA2ILKQSAY4O2XQAIH673JHCDQ6N4MBGL2MAZGXNAC LCCFD6BLLDJO3PVPKKJ7YJ4PQUHLUKQBWRCYRH26UVMOTYZPJQRQC DNDSBJEVLBOUBZY23HUBQX7FVHYYPLOUZK7RRAFRCANLXELO2V6QC IXW2IM5ITYDCXDB3ORDDVAR5XUSPVQ3BWLP3Q6TRXNTIKGMZTHXAC int hitp;hitp = (you.base_hp - 5000) + (you.base_hp2 - 5000);hitp += (you.experience_level * you.skills[SK_FIGHTING]) / 5;// being berserk makes you resistant to damage. I don't know why.if (you.duration[DUR_BERSERKER] && !real_hp){hitp *= 15;hitp /= 10;}if (!real_hp){// some transformations give you extra hpswitch (you.attribute[ATTR_TRANSFORMATION]){case TRAN_STATUE:hitp *= 15;hitp /= 10;break;case TRAN_ICE_BEAST:hitp *= 12;hitp /= 10;break;case TRAN_DRAGON:hitp *= 16;hitp /= 10;break;}}
int hitp = get_real_hp(!real_hp, false);
// frail and robust mutations, and divine robustnesshitp *= (10 + player_mutation_level(MUT_ROBUST)+ you.attribute[ATTR_DIVINE_ROBUSTNESS]- player_mutation_level(MUT_FRAIL));hitp /= 10;
// If trans is true, being berserk and/or transformed is taken into account// here. Else, the base hp is calculated. If rotted is true, calculate the// real max hp you'd have if the rotting was cured.int get_real_hp(bool trans, bool rotted){int hitp;hitp = (you.base_hp - 5000) + (you.base_hp2 - 5000);hitp += (you.experience_level * you.skills[SK_FIGHTING]) / 5;// Being berserk makes you resistant to damage. I don't know why.if (trans && you.duration[DUR_BERSERKER]){hitp *= 15;hitp /= 10;}if (trans){// Some transformations give you extra hp.switch (you.attribute[ATTR_TRANSFORMATION]){case TRAN_STATUE:hitp *= 15;hitp /= 10;break;case TRAN_ICE_BEAST:hitp *= 12;hitp /= 10;break;case TRAN_DRAGON:hitp *= 16;hitp /= 10;break;}}if (rotted)hitp += player_rotted();// Frail and robust mutations, and divine robustness.hitp *= (10 + player_mutation_level(MUT_ROBUST)+ you.attribute[ATTR_DIVINE_ROBUSTNESS]- player_mutation_level(MUT_FRAIL));hitp /= 10;return (hitp);}
return (col & COLFLAG_FRIENDLY_MONSTER)? Options.friend_brand :(col & COLFLAG_NEUTRAL_MONSTER)? Options.neutral_brand :(col & COLFLAG_ITEM_HEAP)? Options.heap_brand :(col & COLFLAG_WILLSTAB)? Options.stab_brand :(col & COLFLAG_MAYSTAB)? Options.may_stab_brand :(col & COLFLAG_STAIR_ITEM)? Options.feature_item_brand :(col & COLFLAG_TRAP_ITEM)? Options.trap_item_brand :(col & COLFLAG_REVERSE)? CHATTR_REVERSE :CHATTR_NORMAL;
return (col & COLFLAG_FRIENDLY_MONSTER) ? Options.friend_brand :(col & COLFLAG_NEUTRAL_MONSTER) ? Options.neutral_brand :(col & COLFLAG_ITEM_HEAP) ? Options.heap_brand :(col & COLFLAG_WILLSTAB) ? Options.stab_brand :(col & COLFLAG_MAYSTAB) ? Options.may_stab_brand :(col & COLFLAG_FEATURE_ITEM) ? Options.feature_item_brand :(col & COLFLAG_TRAP_ITEM) ? Options.trap_item_brand :(col & COLFLAG_REVERSE) ? CHATTR_REVERSE: CHATTR_NORMAL;