Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- void DoHatefulStrike()
- {
- // The ability is used on highest HP target choosen of the top 2 (3 heroic) targets on threat list being in melee range
- Unit* pTarget = NULL;
- uint32 uiHighestHP = 0;
- uint32 uiTargets = m_bIsRegularMode ? 2 : 3;
- ThreatList const& tList = m_creature->getThreatManager().getThreatList();
- for (ThreatList::const_iterator iter = tList.begin();iter != tList.end(); ++iter)
- {
- if (!uiTargets)
- break;
- if (Unit* pTempTarget = m_creature->GetMap()->GetUnit((*iter)->getUnitGuid()))
- {
- if (pTempTarget->GetHealth() > uiHighestHP && m_creature->IsWithinDistInMap(pTempTarget, ATTACK_DISTANCE))
- {
- uiHighestHP = pTempTarget->GetHealth();
- pTarget = pTempTarget;
- }
- }
- --uiTargets;
- }
- if (pTarget)
- DoCastSpellIfCan(pTarget, m_bIsRegularMode ? SPELL_HATEFULSTRIKE : SPELL_HATEFULSTRIKE_H);
- }
- /*******
- *******
- ******/
- void DoHatefulStrike()
- {
- // The ability is used on highest HP target choosen of the top 2 (3 heroic) targets on threat list being in melee range
- Unit* pTarget = NULL;
- uint32 uiHighestHP = 0;
- uint32 uiTargets = m_bIsRegularMode ? 2 : 3;
- ThreatList const& tList = m_creature->getThreatManager().getThreatList();
- for (ThreatList::const_iterator iter = tList.begin();iter != tList.end(); ++iter)
- {
- if (!uiTargets)
- break;
- if (Unit* pTempTarget = m_creature->GetMap()->GetUnit((*iter)->getUnitGuid()))
- {
- if (m_creature->IsWithinDistInMap(pTempTarget, ATTACK_DISTANCE))
- {
- if (pTempTarget->GetHealth() > uiHighestHP)
- {
- uiHighestHP = pTempTarget->GetHealth();
- pTarget = pTempTarget;
- }
- --uiTargets;
- }
- }
- }
- if (pTarget)
- DoCastSpellIfCan(pTarget, m_bIsRegularMode ? SPELL_HATEFULSTRIKE : SPELL_HATEFULSTRIKE_H);
- }
Add Comment
Please, Sign In to add comment