Core/Pet: Fix an issue that was causing lower ranks of pet spells to remain in DB
Port From (https://github.com/TrinityCore/TrinityCore/commit/5e3170d58e82693e7ceb29d4d9c5346906bdd98b)
This commit is contained in:
+14
-16
@@ -1028,24 +1028,22 @@ namespace Game.Entities
|
|||||||
if (petSpell != null)
|
if (petSpell != null)
|
||||||
{
|
{
|
||||||
if (petSpell.state == PetSpellState.Removed)
|
if (petSpell.state == PetSpellState.Removed)
|
||||||
{
|
|
||||||
m_spells.Remove(spellId);
|
|
||||||
state = PetSpellState.Changed;
|
state = PetSpellState.Changed;
|
||||||
}
|
|
||||||
else if (state == PetSpellState.Unchanged && petSpell.state != PetSpellState.Unchanged)
|
|
||||||
{
|
|
||||||
// can be in case spell loading but learned at some previous spell loading
|
|
||||||
petSpell.state = PetSpellState.Unchanged;
|
|
||||||
|
|
||||||
if (active == ActiveStates.Enabled)
|
|
||||||
ToggleAutocast(spellInfo, true);
|
|
||||||
else if (active == ActiveStates.Disabled)
|
|
||||||
ToggleAutocast(spellInfo, false);
|
|
||||||
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
else
|
else
|
||||||
return false;
|
{
|
||||||
|
if (state == PetSpellState.Unchanged && petSpell.state != PetSpellState.Unchanged)
|
||||||
|
{
|
||||||
|
// can be in case spell loading but learned at some previous spell loading
|
||||||
|
petSpell.state = PetSpellState.Unchanged;
|
||||||
|
|
||||||
|
if (active == ActiveStates.Enabled)
|
||||||
|
ToggleAutocast(spellInfo, true);
|
||||||
|
else if (active == ActiveStates.Disabled)
|
||||||
|
ToggleAutocast(spellInfo, false);
|
||||||
|
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
PetSpell newspell = new PetSpell();
|
PetSpell newspell = new PetSpell();
|
||||||
|
|||||||
Reference in New Issue
Block a user