Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- void Player::AddGlobalCooldown(SpellEntry const *spellInfo, Spell *spell)
- {
- if (!spellInfo || !spellInfo->StartRecoveryTime)
- return;
- float cdTime = float(spellInfo->StartRecoveryTime);
- if (!(spellInfo->Attributes & (SPELL_ATTR_UNK4|SPELL_ATTR_PASSIVE)))
- cdTime *= GetFloatValue(UNIT_MOD_CAST_SPEED);
- else if (IsRangedWeaponSpell(spellInfo) && !spell->IsAutoRepeat())
- cdTime *= m_modAttackSpeedPct[RANGED_ATTACK];
- if (cdTime > 1500.0f)
- cdTime = 1500.0f;
- if ((m_owner->getClass() == CLASS_WARLOCK)
- || (m_owner->getClass() == CLASS_SHAMAN)
- || (m_owner->getClass() == CLASS_DEATH_KNIGHT)
- || (m_owner->getClass() == CLASS_WARRIOR)
- || (m_owner->getClass() == CLASS_HUNTER)
- || (m_owner->getClass() == CLASS_PRIEST))
- cdTime = 1500.0f;
- ApplySpellMod(spellInfo->Id, SPELLMOD_GLOBAL_COOLDOWN, cdTime, spell);
- if (cdTime > 0)
- m_globalCooldowns[spellInfo->StartRecoveryCategory] = uint32(cdTime);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement