mirror of
https://github.com/mangosfour/server.git
synced 2025-12-13 13:37:05 +00:00
[11797] Do not remove item on unrelated auraholder remove
Signed-off-by: Schmoozerd <schmoozerd@scriptdev2.com>
This commit is contained in:
parent
3cb907051b
commit
a9e435c078
4 changed files with 5 additions and 6 deletions
|
|
@ -7579,7 +7579,7 @@ void Player::ApplyItemOnStoreSpell(Item *item, bool apply)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void Player::DestroyItemWithOnStoreSpell(Item* item)
|
void Player::DestroyItemWithOnStoreSpell(Item* item, uint32 spellId)
|
||||||
{
|
{
|
||||||
if (!item)
|
if (!item)
|
||||||
return;
|
return;
|
||||||
|
|
@ -7592,8 +7592,7 @@ void Player::DestroyItemWithOnStoreSpell(Item* item)
|
||||||
{
|
{
|
||||||
_Spell const& spellData = proto->Spells[i];
|
_Spell const& spellData = proto->Spells[i];
|
||||||
|
|
||||||
// no spell
|
if (spellData.SpellId != spellId)
|
||||||
if (!spellData.SpellId)
|
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
// apply/unapply only at-store spells
|
// apply/unapply only at-store spells
|
||||||
|
|
|
||||||
|
|
@ -1992,7 +1992,7 @@ class MANGOS_DLL_SPEC Player : public Unit
|
||||||
void CastItemUseSpell(Item *item,SpellCastTargets const& targets,uint8 cast_count, uint32 glyphIndex);
|
void CastItemUseSpell(Item *item,SpellCastTargets const& targets,uint8 cast_count, uint32 glyphIndex);
|
||||||
|
|
||||||
void ApplyItemOnStoreSpell(Item *item, bool apply);
|
void ApplyItemOnStoreSpell(Item *item, bool apply);
|
||||||
void DestroyItemWithOnStoreSpell(Item* item);
|
void DestroyItemWithOnStoreSpell(Item* item, uint32 spellId);
|
||||||
|
|
||||||
void SendEquipmentSetList();
|
void SendEquipmentSetList();
|
||||||
void SetEquipmentSet(uint32 index, EquipmentSet eqset);
|
void SetEquipmentSet(uint32 index, EquipmentSet eqset);
|
||||||
|
|
|
||||||
|
|
@ -8642,7 +8642,7 @@ void SpellAuraHolder::_RemoveSpellAuraHolder()
|
||||||
if (m_target->GetTypeId() == TYPEID_PLAYER && m_removeMode != AURA_REMOVE_BY_DEFAULT && m_removeMode != AURA_REMOVE_BY_DELETE)
|
if (m_target->GetTypeId() == TYPEID_PLAYER && m_removeMode != AURA_REMOVE_BY_DEFAULT && m_removeMode != AURA_REMOVE_BY_DELETE)
|
||||||
if (ObjectGuid castItemGuid = GetCastItemGuid())
|
if (ObjectGuid castItemGuid = GetCastItemGuid())
|
||||||
if (Item* castItem = ((Player*)m_target)->GetItemByGuid(castItemGuid))
|
if (Item* castItem = ((Player*)m_target)->GetItemByGuid(castItemGuid))
|
||||||
((Player*)m_target)->DestroyItemWithOnStoreSpell(castItem);
|
((Player*)m_target)->DestroyItemWithOnStoreSpell(castItem, GetId());
|
||||||
|
|
||||||
//passive auras do not get put in slots - said who? ;)
|
//passive auras do not get put in slots - said who? ;)
|
||||||
// Note: but totem can be not accessible for aura target in time remove (to far for find in grid)
|
// Note: but totem can be not accessible for aura target in time remove (to far for find in grid)
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
#ifndef __REVISION_NR_H__
|
#ifndef __REVISION_NR_H__
|
||||||
#define __REVISION_NR_H__
|
#define __REVISION_NR_H__
|
||||||
#define REVISION_NR "11796"
|
#define REVISION_NR "11797"
|
||||||
#endif // __REVISION_NR_H__
|
#endif // __REVISION_NR_H__
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue