int Class::getItemHealth(const Ptr &ptr) const { if (ptr.getCellRef().getCharge() == -1) return getItemMaxHealth(ptr); else return ptr.getCellRef().getCharge(); }
int Weapon::getValue (const MWWorld::Ptr& ptr) const { MWWorld::LiveCellRef<ESM::Weapon> *ref = ptr.get<ESM::Weapon>(); return ref->mBase->mData.mValue * (static_cast<float>(getItemHealth(ptr)) / getItemMaxHealth(ptr)); }
int Weapon::getValue (const MWWorld::Ptr& ptr) const { MWWorld::LiveCellRef<ESM::Weapon> *ref = ptr.get<ESM::Weapon>(); if (ptr.getCellRef().mCharge == -1) return ref->mBase->mData.mValue; else return ref->mBase->mData.mValue * (static_cast<float>(ptr.getCellRef().mCharge) / getItemMaxHealth(ptr)); }