bool Item::IsTargetValidForItemUse(Unit* pUnitTarget) { ConditionList conditions = sConditionMgr->GetConditionsForNotGroupedEntry(CONDITION_SOURCE_TYPE_ITEM_REQUIRED_TARGET, GetTemplate()->ItemId); if (conditions.empty()) return true; if (!pUnitTarget) return false; for (ConditionList::const_iterator itr = conditions.begin(); itr != conditions.end(); ++itr) { ItemRequiredTarget irt(ItemRequiredTargetType((*itr)->mConditionValue1), (*itr)->mConditionValue2); if (irt.IsFitToRequirements(pUnitTarget)) return true; } return false; }
bool Item::IsTargetValidForItemUse(Unit* pUnitTarget) { ConditionList conditions = sConditionMgr.GetConditionsForNotGroupedEntry(CONDITION_SOURCE_TYPE_ITEM_REQUIRED_TARGET, GetProto()->ItemId); if (conditions.empty()) return true; if (!pUnitTarget) return false; for (ConditionList::const_iterator itr = conditions.begin(); itr != conditions.end(); ++itr) { ACE_Auto_Ptr<ItemRequiredTarget> irt(new ItemRequiredTarget((ItemRequiredTargetType)(*itr)->mConditionValue1, (*itr)->mConditionValue2)); if (irt->IsFitToRequirements(pUnitTarget)) return true; } return false; }
//a four digit random number generator on the sx function of the battery void pin_generate() { pin_temp2 = irt((float)(((sBatt.voltage + pin_gen2) & 63) ^ sTime.second)) * 655377.0F; pin_gen2 += *((u16 *)&pin_temp2); fn_util2 = 4; }