mirror of
https://github.com/mangosfour/server.git
synced 2025-12-12 19:37:03 +00:00
[10253] Small cleanup in Unit::HasAura() to prevent redundant upper_bound calls.
This commit is contained in:
parent
61990de6dd
commit
6c6ce87867
3 changed files with 8 additions and 2 deletions
|
|
@ -4755,7 +4755,8 @@ Aura* Unit::GetAura(AuraType type, uint32 family, uint64 familyFlag, uint32 fami
|
|||
|
||||
bool Unit::HasAura(uint32 spellId, SpellEffectIndex effIndex) const
|
||||
{
|
||||
for(SpellAuraHolderMap::const_iterator i_holder = m_spellAuraHolders.lower_bound(spellId); i_holder != m_spellAuraHolders.upper_bound(spellId); ++i_holder)
|
||||
SpellAuraHolderConstBounds spair = GetSpellAuraHolderBounds(spellId);
|
||||
for(SpellAuraHolderMap::const_iterator i_holder = spair.first; i_holder != spair.second; ++i_holder)
|
||||
if (i_holder->second->GetAuraByEffectIndex(effIndex))
|
||||
return true;
|
||||
|
||||
|
|
|
|||
|
|
@ -1109,6 +1109,7 @@ class MANGOS_DLL_SPEC Unit : public WorldObject
|
|||
typedef std::set<Unit*> AttackerSet;
|
||||
typedef std::multimap< uint32, SpellAuraHolder*> SpellAuraHolderMap;
|
||||
typedef std::pair<SpellAuraHolderMap::iterator, SpellAuraHolderMap::iterator> SpellAuraHolderBounds;
|
||||
typedef std::pair<SpellAuraHolderMap::const_iterator, SpellAuraHolderMap::const_iterator> SpellAuraHolderConstBounds;
|
||||
typedef std::list<SpellAuraHolder *> SpellAuraHolderList;
|
||||
typedef std::list<Aura *> AuraList;
|
||||
typedef std::list<DiminishingReturn> Diminishing;
|
||||
|
|
@ -1364,6 +1365,10 @@ class MANGOS_DLL_SPEC Unit : public WorldObject
|
|||
{
|
||||
return SpellAuraHolderBounds(m_spellAuraHolders.lower_bound(spell_id), m_spellAuraHolders.upper_bound(spell_id));
|
||||
}
|
||||
SpellAuraHolderConstBounds GetSpellAuraHolderBounds(uint32 spell_id) const
|
||||
{
|
||||
return SpellAuraHolderConstBounds(m_spellAuraHolders.lower_bound(spell_id), m_spellAuraHolders.upper_bound(spell_id));
|
||||
}
|
||||
|
||||
bool HasAuraType(AuraType auraType) const;
|
||||
bool HasAura(uint32 spellId, SpellEffectIndex effIndex) const;
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
#ifndef __REVISION_NR_H__
|
||||
#define __REVISION_NR_H__
|
||||
#define REVISION_NR "10252"
|
||||
#define REVISION_NR "10253"
|
||||
#endif // __REVISION_NR_H__
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue