public int NumItemOrVariantEquipped(string inId) { int num = 0; for (int i = 0; i < equipmentSlots.Count; i++) { if (!equipmentSlots[i].IsEmpty()) { if (equipmentSlots[i].equipmentId == inId) { num++; } else { //the ids don't exactly match, so now just see if current equipment slot's BASE ID matches if (ItemId.ExtractBaseId(equipmentSlots[i].equipmentId) == inId) { num++; } } } } return(num); }