private static ShopFlags ProcessDisplayedItem( int itemID )
{
itemID &= TileData.MaxItemValue;
ShopFlags res = ShopFlags.None;
ItemData id = TileData.ItemTable[itemID];
TileFlag flags = id.Flags;
if ( (flags & TileFlag.Wearable) != 0 )
{
if ( IsClothes( itemID ) )
res |= ShopFlags.Clothes;
else if ( IsArmor( itemID ) )
res |= ShopFlags.Armor;
else if ( IsMetalWeapon( itemID ) )
res |= ShopFlags.MetalWeapon;
else if ( IsArcheryWeapon( itemID ) )
res |= ShopFlags.ArcheryWeapon;
}
if ( itemID == 0x98C || itemID == 0x103B || itemID == 0x103C )
res |= ShopFlags.Bread;
if ( itemID >= 0xF0F && itemID <= 0xF30 )
res |= ShopFlags.Jewel;
if ( itemID >= 0xEFB && itemID <= 0xF0D )
res |= ShopFlags.Potion;
if ( itemID >= 0xF78 && itemID <= 0xF91 )
res |= ShopFlags.Reagent;
if ( (itemID >= 0xE35 && itemID <= 0xE3A) || (itemID >= 0xEF4 && itemID <= 0xEF9) || (itemID >= 0x1F2D && itemID <= 0x1F72) )
res |= ShopFlags.Scroll;
if ( itemID == 0xE38 || itemID == 0xEFA )
res |= ShopFlags.Spellbook;
return res;
}