flavoured floor, and weapon brands.
git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@9477 c06c8d41-db1a-0410-9941-cceddc491573
NMRKYZUPI6EOC4KONJKB2RHSCC6ONYJUOXQJ7PYJ7V4OBWPRO7AQC 4WF6HXUDMBJJMBSYMXJ6BHAG77HT4BRXLCJ4SQZ4INL5PPM2HGCQC VAUD7NQFQDOCA226733ATTML6LN4TSWA4UGSPSPBGHUKVOV2YFPQC RXZRRWQZH7H3E66ENDI6WTSDDTC5F7MDGIMZTEDYDE4YCUQN4CSAC Q3B3UVMYEVC4YJUPYVSNTR4DJH4E6J4JJDHZNT5LNOCHCPPMEMXAC GTGF2KDUQSER5GBEDC3E2MWMPFT72BI2Q2UG6JSJLWCOEGMYABXQC WFG3MHLJUHQEHV65SPAIOI74NIZTGM447T4WKWKF7CMUIUNRUQOAC 25CH7HH4LKXFIZ75YNMXS3TSXO6O27DYSOPLOD45K4OCNFWLS4LQC 3SQQ4MM6YO4I37CQ6GIBIX6BXAEVHNVNHPVMR3PPBBNO454D6XWQC PHZTAI6CW7JHKFW77MKDK75UCNWBXFK7VDD3D5ORVXUFWV3C3EVQC SVY2PTCLXR3KNPQAWXVXTTGCC5DR334HOAKHYO3VDDRWM2BWMALAC WNQLH6VJ5DIPNQJUSUQBEKGNOZYCVWU5BYP4W6WQZBRMSR7GLUUQC SDLKLUNFGVKDS55DDJZCBAVIB7NL3RRYPTACAY65SCUQKV6APFSAC OXYBE6MSPVRZVYOUIXR7K7ZBE2D7DIBTVGMRSFCOEGTE74XDCFBAC K2CS6TCX2NDVL2ASEHGP4J4K4IJ6FP3ANNKTSIWVG43HPYSBX6ZQC IP4A3VRYFYIVLRUAU4DF4KDNP6E4UISWJX3LI2F4EGSSMIJYRJXAC FEKRY3DYIDLWVBLAZN7W2WFNEKZPCAHABXOSM6K5RLTH5WY2NODQC TFNFP2YQA4EOVE4VIXBEQSGACZSXHWIQ2T4TIPQ46R2MJW2C4B5AC 4GYZYBY7FFORRNPIEFTV4ZM2C7Z6D2KTQOM537ZCC2YBXT2TNSHAC if (item.base_type == OBJ_WEAPONS){if (!is_fixed_artefact(item)&& get_weapon_brand(item) != SPWPN_NORMAL){return (TILE_BRAND_FLAMING + get_weapon_brand(item) - 1);}}else if (item.base_type == OBJ_MISSILES){switch (get_ammo_brand(item)){case SPMSL_FLAME:return TILE_BRAND_FLAME;case SPMSL_FROST:return TILE_BRAND_FROST;case SPMSL_POISONED:return TILE_BRAND_POISONED;case SPMSL_CURARE:return TILE_BRAND_CURARE;case SPMSL_RETURNING:return TILE_BRAND_RETURNING;case SPMSL_CHAOS:return TILE_BRAND_CHAOS;default:break;}}return 0;}
if (item_type_known(item)){if (item.base_type == OBJ_WEAPONS){if (!is_fixed_artefact(item)&& get_weapon_brand(item) != SPWPN_NORMAL){desc.special = TILE_BRAND_FLAMING + get_weapon_brand(item) - 1;}}else if (item.base_type == OBJ_MISSILES){switch (get_ammo_brand(item)){case SPMSL_FLAME:desc.special = TILE_BRAND_FLAME;break;case SPMSL_FROST:desc.special = TILE_BRAND_FROST;break;case SPMSL_POISONED:desc.special = TILE_BRAND_POISONED;break;case SPMSL_CURARE:desc.special = TILE_BRAND_CURARE;break;case SPMSL_RETURNING:desc.special = TILE_BRAND_RETURNING;break;case SPMSL_CHAOS:desc.special = TILE_BRAND_CHAOS;break;default:break;}}}
desc.special = tile_known_weapon_brand(item);
const dungeon_feature_type feat = grd(c);tileset.push_back(tile_def(tileidx_feature(feat, c.x, c.y), TEX_DUNGEON));
int ch = tileidx_feature(grd(c), c.x, c.y);if (ch == TILE_FLOOR_NORMAL)ch = env.tile_flv(c).floor;else if (ch == TILE_WALL_NORMAL)ch = env.tile_flv(c).wall;tileset.push_back(tile_def(ch, TEX_DUNGEON));
if (!mons_flies(m)){if (ch == TILE_DNGN_LAVA)tileset.push_back(tile_def(TILE_MASK_LAVA, TEX_DEFAULT));else if (ch == TILE_DNGN_SHALLOW_WATER)tileset.push_back(tile_def(TILE_MASK_SHALLOW_WATER, TEX_DEFAULT));else if (ch == TILE_DNGN_DEEP_WATER)tileset.push_back(tile_def(TILE_MASK_DEEP_WATER, TEX_DEFAULT));else if (ch == TILE_DNGN_SHALLOW_WATER_MURKY)tileset.push_back(tile_def(TILE_MASK_SHALLOW_WATER_MURKY, TEX_DEFAULT));else if (ch == TILE_DNGN_DEEP_WATER_MURKY)tileset.push_back(tile_def(TILE_MASK_DEEP_WATER_MURKY, TEX_DEFAULT));}
tileset.push_back(tile_def(TILE_ITEM_SLOT, TEX_DUNGEON));tileset.push_back(tile_def(idx, TEX_DEFAULT));
if (in_inventory(*item)){const bool equipped = item_is_equipped(*item);if (equipped){if (item_cursed(*item))tileset.push_back(tile_def(TILE_ITEM_SLOT_EQUIP_CURSED, TEX_DEFAULT));elsetileset.push_back(tile_def(TILE_ITEM_SLOT_EQUIP, TEX_DEFAULT));}else if (item_cursed(*item))tileset.push_back(tile_def(TILE_ITEM_SLOT_CURSED, TEX_DEFAULT));tileset.push_back(tile_def(TILE_ITEM_SLOT, TEX_DUNGEON));tileset.push_back(tile_def(idx, TEX_DEFAULT));// Is item melded?if (equipped && !you_tran_can_wear(*item))tileset.push_back(tile_def(TILE_MESH, TEX_DEFAULT));}else{// Do we want to display the floor type or is that too distracting?const coord_def c = item->pos;int ch = tileidx_feature(grd(c), c.x, c.y);if (ch == TILE_FLOOR_NORMAL)ch = env.tile_flv(c).floor;else if (ch == TILE_WALL_NORMAL)ch = env.tile_flv(c).wall;