fix: Fixes various memory leaks and spells (#1786)

### Summary
- Fixes various memory leaks related to spells
- Fixes Spell Plague
- Added ability to determine if `sdi` should take effect for Spell Damage.
- Fixes animal form timer ticking non-stop while logged out.
This commit is contained in:
Kamron Batman 2024-05-21 19:44:42 -07:00 committed by GitHub
parent 6747168db0
commit a552cf4138
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
51 changed files with 4164 additions and 4188 deletions

View file

@ -9,6 +9,12 @@ using Server.Engines.Virtues;
using Server.Logging;
using Server.Network;
using Server.Regions;
using Server.Spells.Fifth;
using Server.Spells.First;
using Server.Spells.Mysticism;
using Server.Spells.Necromancy;
using Server.Spells.Ninjitsu;
using Server.Spells.Second;
namespace Server.Misc;
@ -235,6 +241,15 @@ public static class AccountHandler
PlayerMurderSystem.OnPlayerDeleted(m);
ChampionTitleSystem.OnPlayerDeleted(m);
// Spells
MagicReflectSpell.EndReflect(m);
ReactiveArmorSpell.EndArmor(m);
ProtectionSpell.EndProtection(m);
StoneFormSpell.RemoveEffects(m);
AnimateDeadSpell.RemoveEffects(m);
SummonFamiliarSpell.RemoveEffects(m);
AnimalForm.RemoveLastAnimalForm(m);
state.SendCharacterListUpdate(acct);
return;
}