From 00908d030fb43a63b03bcf265d0e41f346f1c670 Mon Sep 17 00:00:00 2001 From: Marcelo Paez Sequeira Date: Tue, 21 May 2024 14:02:30 -0300 Subject: [PATCH] fix: Moves many EventSinks out of core. (#1783) --- Projects/Server/Events/EventSink.cs | 88 ------------------- Projects/Server/Mobiles/Mobile.cs | 11 ++- Projects/UOContent/Accounting/Account.cs | 3 +- .../UOContent/Accounting/AccountHandler.cs | 12 ++- .../UOContent/Assistants/AssistantHandler.cs | 4 +- Projects/UOContent/Commands/VisibilityList.cs | 2 - .../Engines/CannedEvil/ChampionTitleSystem.cs | 4 +- .../UOContent/Engines/ConPVP/DuelContext.cs | 3 +- .../Doom/LeverPuzzle/LeverPuzzleRegions.cs | 5 -- .../Engines/Factions/Core/Faction.cs | 3 +- Projects/UOContent/Engines/Help/HelpGump.cs | 7 +- .../Engines/ML Quests/MLQuestSystem.cs | 4 +- Projects/UOContent/Engines/Party/Party.cs | 3 +- .../UOContent/Engines/Plants/PlantSystem.cs | 4 +- .../PlayerMurderSystem.cs | 6 +- .../Engines/Veteran Rewards/RewardSystem.cs | 9 +- Projects/UOContent/Engines/Virtues/Justice.cs | 3 +- .../Items/Construction/Doors/BaseDoor.cs | 4 +- Projects/UOContent/Items/Food/Beverage.cs | 7 +- .../Items/Skill Items/Magical/Spellbook.cs | 10 +-- .../Items/Skill Items/Misc/Bandage.cs | 7 +- Projects/UOContent/Misc/Animations.cs | 7 +- Projects/UOContent/Misc/BuffIcons.cs | 13 ++- Projects/UOContent/Misc/ClientVerification.cs | 4 +- Projects/UOContent/Misc/Guild.cs | 4 +- Projects/UOContent/Misc/LightCycle.cs | 1 - Projects/UOContent/Misc/LoginStats.cs | 8 +- Projects/UOContent/Misc/Profile.cs | 10 +-- Projects/UOContent/Misc/RenameRequests.cs | 7 +- Projects/UOContent/Misc/ShardPoller.cs | 7 +- Projects/UOContent/Misc/StaminaSystem.cs | 6 +- Projects/UOContent/Mobiles/PlayerMobile.cs | 9 +- .../UOContent/Multis/Boats/Strandedness.cs | 7 +- .../Network/Packets/IncomingAccountPackets.cs | 47 +++++++++- .../Packets/IncomingExtendedCommandPackets.cs | 9 +- .../Network/Packets/IncomingItemPackets.cs | 5 +- .../Network/Packets/IncomingMobilePackets.cs | 7 +- .../Network/Packets/IncomingPlayerPackets.cs | 21 +++-- Projects/UOContent/Regions/HouseRegion.cs | 1 - .../Regions/TwistedWealdDesertRegion.cs | 7 +- Projects/UOContent/Skills/AntiMacroSystem.cs | 3 +- .../Special Systems/Engines/GiftGiving.cs | 7 +- .../Engines/PreventInaccess.cs | 10 +-- .../UOContent/Spells/Ninjitsu/AnimalForm.cs | 5 -- .../Spells/Spellweaving/ReaperForm.cs | 5 -- 45 files changed, 133 insertions(+), 276 deletions(-) diff --git a/Projects/Server/Events/EventSink.cs b/Projects/Server/Events/EventSink.cs index 77274a91b..846779b10 100644 --- a/Projects/Server/Events/EventSink.cs +++ b/Projects/Server/Events/EventSink.cs @@ -21,37 +21,9 @@ namespace Server; public static partial class EventSink { - public static event Action OpenDoorMacroUsed; - public static void InvokeOpenDoorMacroUsed(Mobile m) => OpenDoorMacroUsed?.Invoke(m); - - public static event Action Login; - public static void InvokeLogin(Mobile m) => Login?.Invoke(m); - - public static event Action HungerChanged; - public static void InvokeHungerChanged(Mobile mobile, int oldValue) => HungerChanged?.Invoke(mobile, oldValue); - public static event Action Shutdown; public static void InvokeShutdown() => Shutdown?.Invoke(); - public static event Action HelpRequest; - public static void InvokeHelpRequest(Mobile m) => HelpRequest?.Invoke(m); - - public static event Action OpenSpellbookRequest; - public static void InvokeOpenSpellbookRequest(Mobile m, int type) => OpenSpellbookRequest?.Invoke(m, type); - - public static event Action CastSpellRequest; - - public static void InvokeCastSpellRequest(Mobile m, int spellID, Item book) => - CastSpellRequest?.Invoke(m, spellID, book); - - public static event Action BandageTargetRequest; - - public static void InvokeBandageTargetRequest(Mobile m, Item bandage, Mobile target) => - BandageTargetRequest?.Invoke(m, bandage, target); - - public static event Action AnimateRequest; - public static void InvokeAnimateRequest(Mobile m, string action) => AnimateRequest?.Invoke(m, action); - public static event Action Logout; public static void InvokeLogout(Mobile m) => Logout?.Invoke(m); @@ -64,11 +36,6 @@ public static partial class EventSink public static event Action Disconnected; public static void InvokeDisconnected(Mobile m) => Disconnected?.Invoke(m); - public static event Action RenameRequest; - - public static void InvokeRenameRequest(Mobile from, Mobile target, string name) => - RenameRequest?.Invoke(from, target, name); - public static event Action PlayerDeath; public static void InvokePlayerDeath(Mobile m) => PlayerDeath?.Invoke(m); @@ -82,64 +49,9 @@ public static partial class EventSink public static void InvokePaperdollRequest(Mobile beholder, Mobile beheld) => PaperdollRequest?.Invoke(beholder, beheld); - public static event Action ProfileRequest; - public static void InvokeProfileRequest(Mobile beholder, Mobile beheld) => ProfileRequest?.Invoke(beholder, beheld); - - public static event Action ChangeProfileRequest; - - public static void InvokeChangeProfileRequest(Mobile beholder, Mobile beheld, string text) => - ChangeProfileRequest?.Invoke(beholder, beheld, text); - - public static event Action DeleteRequest; - public static void InvokeDeleteRequest(NetState state, int index) => DeleteRequest?.Invoke(state, index); - - public static event Action PlayerDeleted; - public static void InvokePlayerDeleted(Mobile m) => PlayerDeleted?.Invoke(m); - public static event Action ServerStarted; public static void InvokeServerStarted() => ServerStarted?.Invoke(); - public static event Action GuildGumpRequest; - public static void InvokeGuildGumpRequest(Mobile m) => GuildGumpRequest?.Invoke(m); - - public static event Action QuestGumpRequest; - public static void InvokeQuestGumpRequest(Mobile m) => QuestGumpRequest?.Invoke(m); - - public static event Action ClientVersionReceived; - - public static void InvokeClientVersionReceived(NetState state, ClientVersion cv) => - ClientVersionReceived?.Invoke(state, cv); - - public static event Action> EquipMacro; - - public static void InvokeEquipMacro(Mobile m, List list) - { - if (list?.Count > 0) - { - EquipMacro?.Invoke(m, list); - } - } - - public static event Action> UnequipMacro; - - public static void InvokeUnequipMacro(Mobile m, List layers) - { - if (layers?.Count > 0) - { - UnequipMacro?.Invoke(m, layers); - } - } - - public static event Action TargetedSpell; - - public static void InvokeTargetedSpell(Mobile m, IEntity target, int spellId) => - TargetedSpell?.Invoke(m, target, spellId); - - public static event Action TargetedSkillUse; - - public static void InvokeTargetedSkillUse(Mobile m, IEntity target, int skillId) => - TargetedSkillUse?.Invoke(m, target, skillId); - public static event Action TargetByResourceMacro; public static void InvokeTargetByResourceMacro(Mobile m, Item item, short resourceType) => diff --git a/Projects/Server/Mobiles/Mobile.cs b/Projects/Server/Mobiles/Mobile.cs index 9f86c773b..f9b38d089 100644 --- a/Projects/Server/Mobiles/Mobile.cs +++ b/Projects/Server/Mobiles/Mobile.cs @@ -490,8 +490,7 @@ public partial class Mobile : IHued, IComparable, ISpawnable, IObjectPro if (oldValue != value) { m_Hunger = value; - - EventSink.InvokeHungerChanged(this, oldValue); + OnHungerChanged(oldValue); } } } @@ -3698,6 +3697,14 @@ public partial class Mobile : IHued, IComparable, ISpawnable, IObjectPro { } + /// + /// Overridable. Virtual event invoked after the property has changed. + /// + /// + public virtual void OnHungerChanged(int oldValue) + { + } + public double GetDistanceToSqrt(Point3D p) { var xDelta = m_Location.m_X - p.m_X; diff --git a/Projects/UOContent/Accounting/Account.cs b/Projects/UOContent/Accounting/Account.cs index b82304f9d..26615c303 100644 --- a/Projects/UOContent/Accounting/Account.cs +++ b/Projects/UOContent/Accounting/Account.cs @@ -732,7 +732,6 @@ namespace Server.Accounting { EventSink.Connected += EventSink_Connected; EventSink.Disconnected += EventSink_Disconnected; - EventSink.Login += EventSink_Login; } private static void EventSink_Connected(Mobile m) @@ -770,7 +769,7 @@ namespace Server.Accounting acc.TotalGameTime += Core.Now - pm.SessionStart; } - private static void EventSink_Login(Mobile m) + public static void OnLogin(Mobile m) { if (m is not PlayerMobile pm) { diff --git a/Projects/UOContent/Accounting/AccountHandler.cs b/Projects/UOContent/Accounting/AccountHandler.cs index a35c2741a..3a0a058c3 100644 --- a/Projects/UOContent/Accounting/AccountHandler.cs +++ b/Projects/UOContent/Accounting/AccountHandler.cs @@ -2,7 +2,10 @@ using System; using System.Collections.Generic; using System.Net; using Server.Accounting; +using Server.Engines.CannedEvil; using Server.Engines.Help; +using Server.Engines.PlayerMurderSystem; +using Server.Engines.Virtues; using Server.Logging; using Server.Network; using Server.Regions; @@ -64,7 +67,6 @@ public static class AccountHandler public static void Initialize() { - EventSink.DeleteRequest += EventSink_DeleteRequest; EventSink.AccountLogin += EventSink_AccountLogin; EventSink.GameLogin += EventSink_GameLogin; } @@ -182,7 +184,7 @@ public static class AccountHandler } } - private static void EventSink_DeleteRequest(NetState state, int index) + public static void DeleteRequest(NetState state, int index) { if (state.Account is not Account acct) { @@ -228,7 +230,11 @@ public static class AccountHandler m.Delete(); - EventSink.InvokePlayerDeleted(m); + StaminaSystem.OnPlayerDeleted(m); + JusticeVirtue.OnPlayerDeleted(m); + PlayerMurderSystem.OnPlayerDeleted(m); + ChampionTitleSystem.OnPlayerDeleted(m); + state.SendCharacterListUpdate(acct); return; } diff --git a/Projects/UOContent/Assistants/AssistantHandler.cs b/Projects/UOContent/Assistants/AssistantHandler.cs index a087faa10..55cf0455d 100644 --- a/Projects/UOContent/Assistants/AssistantHandler.cs +++ b/Projects/UOContent/Assistants/AssistantHandler.cs @@ -16,8 +16,6 @@ public static class AssistantHandler { Enabled = ServerConfiguration.GetOrUpdateSetting("assistants.enableNegotiation", false); - EventSink.Login += OnLogin; - IncomingPackets.Register(0xBE, 0, false, &AssistVersion); AssistantProtocol.Register(0xFF, false, &HandshakeResponse); } @@ -47,7 +45,7 @@ public static class AssistantHandler m.NetState.LogInfo("Failed to negotiate assistant features."); } - private static void OnLogin(Mobile m) + public static void OnLogin(Mobile m) { if (m?.NetState?.Running != true || !Enabled) { diff --git a/Projects/UOContent/Commands/VisibilityList.cs b/Projects/UOContent/Commands/VisibilityList.cs index f2acafb48..efc9f010f 100644 --- a/Projects/UOContent/Commands/VisibilityList.cs +++ b/Projects/UOContent/Commands/VisibilityList.cs @@ -10,8 +10,6 @@ namespace Server.Commands { public static void Configure() { - EventSink.Login += OnLogin; - CommandSystem.Register("Vis", AccessLevel.Counselor, Vis_OnCommand); CommandSystem.Register("VisList", AccessLevel.Counselor, VisList_OnCommand); CommandSystem.Register("VisClear", AccessLevel.Counselor, VisClear_OnCommand); diff --git a/Projects/UOContent/Engines/CannedEvil/ChampionTitleSystem.cs b/Projects/UOContent/Engines/CannedEvil/ChampionTitleSystem.cs index 862eda85d..b19af9298 100644 --- a/Projects/UOContent/Engines/CannedEvil/ChampionTitleSystem.cs +++ b/Projects/UOContent/Engines/CannedEvil/ChampionTitleSystem.cs @@ -22,12 +22,10 @@ public class ChampionTitleSystem : GenericPersistence public static void Initialize() { - EventSink.PlayerDeleted += OnPlayerDeleted; - _championTitleTimer.Start(); } - private static void OnPlayerDeleted(Mobile m) + public static void OnPlayerDeleted(Mobile m) { if (m is PlayerMobile pm) { diff --git a/Projects/UOContent/Engines/ConPVP/DuelContext.cs b/Projects/UOContent/Engines/ConPVP/DuelContext.cs index 025178f2c..a900d809c 100644 --- a/Projects/UOContent/Engines/ConPVP/DuelContext.cs +++ b/Projects/UOContent/Engines/ConPVP/DuelContext.cs @@ -1234,7 +1234,6 @@ namespace Server.Engines.ConPVP public static void Configure() { EventSink.Speech += EventSink_Speech; - EventSink.Login += EventSink_Login; CommandSystem.Register("vli", AccessLevel.GameMaster, vli_oc); } @@ -1288,7 +1287,7 @@ namespace Server.Engines.ConPVP return false; } - private static void EventSink_Login(Mobile m) + public static void OnLogin(Mobile m) { if (m is not PlayerMobile pm) { diff --git a/Projects/UOContent/Engines/Doom/LeverPuzzle/LeverPuzzleRegions.cs b/Projects/UOContent/Engines/Doom/LeverPuzzle/LeverPuzzleRegions.cs index 37745ce61..4f16460d1 100644 --- a/Projects/UOContent/Engines/Doom/LeverPuzzle/LeverPuzzleRegions.cs +++ b/Projects/UOContent/Engines/Doom/LeverPuzzle/LeverPuzzleRegions.cs @@ -14,11 +14,6 @@ namespace Server.Engines.Doom Register(); } - public static void Initialize() - { - EventSink.Login += OnLogin; - } - public static void OnLogin(Mobile m) { var rect = LeverPuzzleController.lr_Rect; diff --git a/Projects/UOContent/Engines/Factions/Core/Faction.cs b/Projects/UOContent/Engines/Factions/Core/Faction.cs index f952f5d64..407bba8df 100644 --- a/Projects/UOContent/Engines/Factions/Core/Faction.cs +++ b/Projects/UOContent/Engines/Factions/Core/Faction.cs @@ -641,7 +641,6 @@ namespace Server.Factions public static void Configure() { - EventSink.Login += EventSink_Login; EventSink.Logout += EventSink_Logout; CommandSystem.Register("FactionElection", AccessLevel.GameMaster, FactionElection_OnCommand); @@ -1278,7 +1277,7 @@ namespace Server.Factions } } - private static void EventSink_Login(Mobile m) => CheckLeaveTimer(m); + public static void OnLogin(Mobile m) => CheckLeaveTimer(m); public static void WriteReference(IGenericWriter writer, Faction fact) { diff --git a/Projects/UOContent/Engines/Help/HelpGump.cs b/Projects/UOContent/Engines/Help/HelpGump.cs index 41188a782..a21f1ae51 100644 --- a/Projects/UOContent/Engines/Help/HelpGump.cs +++ b/Projects/UOContent/Engines/Help/HelpGump.cs @@ -286,12 +286,7 @@ namespace Server.Engines.Help AddHtmlLocalized(180, 390, 335, 40, 1001015); // NO - I meant to ask for help with another matter. } - public static void Initialize() - { - EventSink.HelpRequest += EventSink_HelpRequest; - } - - private static void EventSink_HelpRequest(Mobile m) + public static void HelpRequest(Mobile m) { foreach (var gump in m.NetState.Gumps) { diff --git a/Projects/UOContent/Engines/ML Quests/MLQuestSystem.cs b/Projects/UOContent/Engines/ML Quests/MLQuestSystem.cs index 7b56b477d..b028ddc85 100644 --- a/Projects/UOContent/Engines/ML Quests/MLQuestSystem.cs +++ b/Projects/UOContent/Engines/ML Quests/MLQuestSystem.cs @@ -151,8 +151,6 @@ namespace Server.Engines.MLQuests TargetCommands.Register(new ViewQuestsCommand()); TargetCommands.Register(new ViewContextCommand()); - - EventSink.QuestGumpRequest += EventSink_QuestGumpRequest; } public static void Initialize() @@ -649,7 +647,7 @@ namespace Server.Engines.MLQuests } } - public static void EventSink_QuestGumpRequest(Mobile m) + public static void QuestGumpRequest(Mobile m) { if (!Enabled || m is not PlayerMobile pm) { diff --git a/Projects/UOContent/Engines/Party/Party.cs b/Projects/UOContent/Engines/Party/Party.cs index 4b86149c8..23988158a 100644 --- a/Projects/UOContent/Engines/Party/Party.cs +++ b/Projects/UOContent/Engines/Party/Party.cs @@ -99,7 +99,6 @@ namespace Server.Engines.PartySystem public static void Configure() { EventSink.Logout += EventSink_Logout; - EventSink.Login += EventSink_Login; EventSink.PlayerDeath += EventSink_PlayerDeath; CommandSystem.Register("ListenToParty", AccessLevel.GameMaster, ListenToParty_OnCommand); @@ -159,7 +158,7 @@ namespace Server.Engines.PartySystem } } - public static void EventSink_Login(Mobile from) + public static void OnLogin(Mobile from) { var p = Get(from); diff --git a/Projects/UOContent/Engines/Plants/PlantSystem.cs b/Projects/UOContent/Engines/Plants/PlantSystem.cs index 80237d03e..6a5d05826 100644 --- a/Projects/UOContent/Engines/Plants/PlantSystem.cs +++ b/Projects/UOContent/Engines/Plants/PlantSystem.cs @@ -397,11 +397,9 @@ namespace Server.Engines.Plants { EventSink.WorldSave += EventSink_WorldSave; } - - EventSink.Login += EventSink_Login; } - private static void EventSink_Login(Mobile from) + public static void OnLogin(Mobile from) { Container cont = from.Backpack; if (cont != null) diff --git a/Projects/UOContent/Engines/Player Murder System/PlayerMurderSystem.cs b/Projects/UOContent/Engines/Player Murder System/PlayerMurderSystem.cs index a6d0a4ceb..7fda051ff 100644 --- a/Projects/UOContent/Engines/Player Murder System/PlayerMurderSystem.cs +++ b/Projects/UOContent/Engines/Player Murder System/PlayerMurderSystem.cs @@ -39,11 +39,9 @@ public class PlayerMurderSystem : GenericPersistence public static void Initialize() { EventSink.Disconnected += OnDisconnected; - EventSink.Login += OnLogin; - EventSink.PlayerDeleted += OnPlayerDeleted; } - private static void OnPlayerDeleted(Mobile m) + public static void OnPlayerDeleted(Mobile m) { if (m is PlayerMobile pm && _murderContexts.Remove(pm, out var context)) { @@ -80,7 +78,7 @@ public class PlayerMurderSystem : GenericPersistence UpdateMurderContext(context); } - private static void OnLogin(Mobile m) + public static void OnLogin(Mobile m) { if (m is not PlayerMobile pm || !GetMurderContext(pm, out var context)) { diff --git a/Projects/UOContent/Engines/Veteran Rewards/RewardSystem.cs b/Projects/UOContent/Engines/Veteran Rewards/RewardSystem.cs index 3b32c3aab..be9b74909 100644 --- a/Projects/UOContent/Engines/Veteran Rewards/RewardSystem.cs +++ b/Projects/UOContent/Engines/Veteran Rewards/RewardSystem.cs @@ -561,16 +561,13 @@ namespace Server.Engines.VeteranRewards RewardInterval = ServerConfiguration.GetOrUpdateSetting("vetRewards.rewardInterval", TimeSpan.FromDays(30.0)); } - public static void Initialize() + public static void OnLogin(Mobile m) { - if (Enabled) + if (!Enabled) { - EventSink.Login += EventSink_Login; + return; } - } - private static void EventSink_Login(Mobile m) - { if (!m.Alive) { return; diff --git a/Projects/UOContent/Engines/Virtues/Justice.cs b/Projects/UOContent/Engines/Virtues/Justice.cs index c3eb232d3..01afa4de6 100644 --- a/Projects/UOContent/Engines/Virtues/Justice.cs +++ b/Projects/UOContent/Engines/Virtues/Justice.cs @@ -82,10 +82,9 @@ public class JusticeVirtue public static void Initialize() { VirtueGump.Register(109, OnVirtueUsed); - EventSink.PlayerDeleted += OnPlayerDeleted; } - private static void OnPlayerDeleted(Mobile m) + public static void OnPlayerDeleted(Mobile m) { if (m is PlayerMobile pm) { diff --git a/Projects/UOContent/Items/Construction/Doors/BaseDoor.cs b/Projects/UOContent/Items/Construction/Doors/BaseDoor.cs index 50cc03059..b5608bf40 100644 --- a/Projects/UOContent/Items/Construction/Doors/BaseDoor.cs +++ b/Projects/UOContent/Items/Construction/Doors/BaseDoor.cs @@ -125,8 +125,6 @@ public abstract partial class BaseDoor : Item, ILockable, ITelekinesisable public static void Configure() { - EventSink.OpenDoorMacroUsed += EventSink_OpenDoorMacroUsed; - CommandSystem.Register("Link", AccessLevel.GameMaster, Link_OnCommand); CommandSystem.Register("ChainLink", AccessLevel.GameMaster, ChainLink_OnCommand); } @@ -225,7 +223,7 @@ public abstract partial class BaseDoor : Item, ILockable, ITelekinesisable } } - private static void EventSink_OpenDoorMacroUsed(Mobile m) + public static void OpenDoorMacroUsed(Mobile m) { if (m.Map == null || !m.CheckAlive()) { diff --git a/Projects/UOContent/Items/Food/Beverage.cs b/Projects/UOContent/Items/Food/Beverage.cs index a61e718f9..f30c6d21e 100644 --- a/Projects/UOContent/Items/Food/Beverage.cs +++ b/Projects/UOContent/Items/Food/Beverage.cs @@ -711,12 +711,7 @@ public abstract partial class BaseBeverage : Item, IHasQuantity _quantity = reader.ReadInt(); } - public static void Initialize() - { - EventSink.Login += EventSink_Login; - } - - private static void EventSink_Login(Mobile m) + public static void OnLogin(Mobile m) { CheckHeaveTimer(m); } diff --git a/Projects/UOContent/Items/Skill Items/Magical/Spellbook.cs b/Projects/UOContent/Items/Skill Items/Magical/Spellbook.cs index d21ab9cbe..87edfd564 100644 --- a/Projects/UOContent/Items/Skill Items/Magical/Spellbook.cs +++ b/Projects/UOContent/Items/Skill Items/Magical/Spellbook.cs @@ -215,10 +215,6 @@ public partial class Spellbook : Item, ICraftable, ISlayer, IAosItem public static void Configure() { - EventSink.OpenSpellbookRequest += EventSink_OpenSpellbookRequest; - EventSink.CastSpellRequest += EventSink_CastSpellRequest; - EventSink.TargetedSpell += EventSink_TargetedSpell; - CommandSystem.Register("AllSpells", AccessLevel.GameMaster, AllSpells_OnCommand); } @@ -249,7 +245,7 @@ public partial class Spellbook : Item, ICraftable, ISlayer, IAosItem } } - private static void EventSink_OpenSpellbookRequest(Mobile from, int typeID) + public static void OpenSpellbookRequest(Mobile from, int typeID) { if (!DesignContext.Check(from)) { @@ -273,7 +269,7 @@ public partial class Spellbook : Item, ICraftable, ISlayer, IAosItem book?.DisplayTo(from); } - private static void EventSink_TargetedSpell(Mobile from, IEntity target, int spellId) + public static void TargetedSpell(Mobile from, IEntity target, int spellId) { if (!DesignContext.Check(from)) { @@ -300,7 +296,7 @@ public partial class Spellbook : Item, ICraftable, ISlayer, IAosItem } } - private static void EventSink_CastSpellRequest(Mobile from, int spellID, Item item) + public static void CastSpellRequest(Mobile from, int spellID, Item item) { if (!DesignContext.Check(from)) { diff --git a/Projects/UOContent/Items/Skill Items/Misc/Bandage.cs b/Projects/UOContent/Items/Skill Items/Misc/Bandage.cs index d729806f5..d6e94a1f7 100644 --- a/Projects/UOContent/Items/Skill Items/Misc/Bandage.cs +++ b/Projects/UOContent/Items/Skill Items/Misc/Bandage.cs @@ -35,11 +35,6 @@ public partial class Bandage : Item, IDyable return true; } - public static void Initialize() - { - EventSink.BandageTargetRequest += EventSink_BandageTargetRequest; - } - public override void OnDoubleClick(Mobile from) { if (from.InRange(GetWorldLocation(), Range)) @@ -56,7 +51,7 @@ public partial class Bandage : Item, IDyable } } - private static void EventSink_BandageTargetRequest(Mobile from, Item item, Mobile target) + public static void BandageTargetRequest(Mobile from, Item item, Mobile target) { if (item is not Bandage b || b.Deleted) { diff --git a/Projects/UOContent/Misc/Animations.cs b/Projects/UOContent/Misc/Animations.cs index da8eb527e..4121987c7 100644 --- a/Projects/UOContent/Misc/Animations.cs +++ b/Projects/UOContent/Misc/Animations.cs @@ -2,12 +2,7 @@ namespace Server.Misc { public static class Animations { - public static void Initialize() - { - EventSink.AnimateRequest += EventSink_AnimateRequest; - } - - private static void EventSink_AnimateRequest(Mobile from, string actionName) + public static void AnimateRequest(Mobile from, string actionName) { var action = actionName switch { diff --git a/Projects/UOContent/Misc/BuffIcons.cs b/Projects/UOContent/Misc/BuffIcons.cs index 8e9bf0130..4a45ce6ba 100644 --- a/Projects/UOContent/Misc/BuffIcons.cs +++ b/Projects/UOContent/Misc/BuffIcons.cs @@ -109,16 +109,13 @@ namespace Server Enabled = ServerConfiguration.GetOrUpdateSetting("buffIcons.enable", Core.ML); } - public static void Initialize() - { - if (Enabled) - { - EventSink.ClientVersionReceived += ResendBuffsOnClientVersionReceived; - } - } - public static void ResendBuffsOnClientVersionReceived(NetState ns, ClientVersion cv) { + if (!Enabled) + { + return; + } + if (ns.Mobile is PlayerMobile pm) { Timer.StartTimer(pm.ResendBuffs); diff --git a/Projects/UOContent/Misc/ClientVerification.cs b/Projects/UOContent/Misc/ClientVerification.cs index 124425648..27aac5f1f 100644 --- a/Projects/UOContent/Misc/ClientVerification.cs +++ b/Projects/UOContent/Misc/ClientVerification.cs @@ -51,8 +51,6 @@ namespace Server.Misc public static void Initialize() { - EventSink.ClientVersionReceived += EventSink_ClientVersionReceived; - if (MinRequired == null && MaxRequired == null) { MinRequired = UOClient.ServerClientVersion; @@ -117,7 +115,7 @@ namespace Server.Misc return builder.ToString(); } - private static void EventSink_ClientVersionReceived(NetState state, ClientVersion version) + public static void ClientVersionReceived(NetState state, ClientVersion version) { var sb = ValueStringBuilder.Create(); diff --git a/Projects/UOContent/Misc/Guild.cs b/Projects/UOContent/Misc/Guild.cs index b1539870c..ee6eaf04b 100644 --- a/Projects/UOContent/Misc/Guild.cs +++ b/Projects/UOContent/Misc/Guild.cs @@ -772,8 +772,6 @@ namespace Server.Guilds public static void Configure() { - EventSink.GuildGumpRequest += EventSink_GuildGumpRequest; - CommandSystem.Register("GuildProps", AccessLevel.Counselor, GuildProps_OnCommand); } @@ -915,7 +913,7 @@ namespace Server.Guilds } } - public static void EventSink_GuildGumpRequest(Mobile m) + public static void GuildGumpRequest(Mobile m) { if (!NewGuildSystem || m is not PlayerMobile pm) { diff --git a/Projects/UOContent/Misc/LightCycle.cs b/Projects/UOContent/Misc/LightCycle.cs index f585a6732..7277c299b 100644 --- a/Projects/UOContent/Misc/LightCycle.cs +++ b/Projects/UOContent/Misc/LightCycle.cs @@ -32,7 +32,6 @@ namespace Server public static void Configure() { - EventSink.Login += OnLogin; CommandSystem.Register("GlobalLight", AccessLevel.GameMaster, Light_OnCommand); } diff --git a/Projects/UOContent/Misc/LoginStats.cs b/Projects/UOContent/Misc/LoginStats.cs index 0ea213cd0..44c3e006e 100644 --- a/Projects/UOContent/Misc/LoginStats.cs +++ b/Projects/UOContent/Misc/LoginStats.cs @@ -4,13 +4,7 @@ namespace Server.Misc { public static class LoginStats { - public static void Initialize() - { - // Register our event handler - EventSink.Login += EventSink_Login; - } - - private static void EventSink_Login(Mobile m) + public static void OnLogin(Mobile m) { var userCount = NetState.Instances.Count; var itemCount = World.Items.Count; diff --git a/Projects/UOContent/Misc/Profile.cs b/Projects/UOContent/Misc/Profile.cs index 674ae7b81..c12129d78 100644 --- a/Projects/UOContent/Misc/Profile.cs +++ b/Projects/UOContent/Misc/Profile.cs @@ -5,13 +5,7 @@ namespace Server.Misc { public static class Profile { - public static void Initialize() - { - EventSink.ProfileRequest += EventSink_ProfileRequest; - EventSink.ChangeProfileRequest += EventSink_ChangeProfileRequest; - } - - public static void EventSink_ChangeProfileRequest(Mobile beholder, Mobile beheld, string text) + public static void ChangeProfileRequest(Mobile beholder, Mobile beheld, string text) { if (beholder.ProfileLocked) { @@ -23,7 +17,7 @@ namespace Server.Misc } } - public static void EventSink_ProfileRequest(Mobile beholder, Mobile beheld) + public static void ProfileRequest(Mobile beholder, Mobile beheld) { if (!beheld.Player) { diff --git a/Projects/UOContent/Misc/RenameRequests.cs b/Projects/UOContent/Misc/RenameRequests.cs index 6856ede73..ffaece37e 100644 --- a/Projects/UOContent/Misc/RenameRequests.cs +++ b/Projects/UOContent/Misc/RenameRequests.cs @@ -4,12 +4,7 @@ namespace Server.Misc { public static class RenameRequests { - public static void Initialize() - { - EventSink.RenameRequest += EventSink_RenameRequest; - } - - private static void EventSink_RenameRequest(Mobile from, Mobile targ, string name) + public static void RenameRequest(Mobile from, Mobile targ, string name) { if (from.CanSee(targ) && from.InRange(targ, 12) && targ.CanBeRenamedBy(from)) { diff --git a/Projects/UOContent/Misc/ShardPoller.cs b/Projects/UOContent/Misc/ShardPoller.cs index 85696ca0a..2d408f945 100644 --- a/Projects/UOContent/Misc/ShardPoller.cs +++ b/Projects/UOContent/Misc/ShardPoller.cs @@ -125,12 +125,7 @@ public partial class ShardPoller : Item Options[^1] = option; } - public static void Initialize() - { - EventSink.Login += EventSink_Login; - } - - private static void EventSink_Login(Mobile m) + public static void OnLogin(Mobile m) { if (_activePollers.Count == 0) { diff --git a/Projects/UOContent/Misc/StaminaSystem.cs b/Projects/UOContent/Misc/StaminaSystem.cs index 0ef7215c6..06a9f498a 100644 --- a/Projects/UOContent/Misc/StaminaSystem.cs +++ b/Projects/UOContent/Misc/StaminaSystem.cs @@ -54,9 +54,7 @@ public static class StaminaSystem public static void Initialize() { EventSink.Movement += EventSink_Movement; - EventSink.Login += Login; EventSink.Logout += Logout; - EventSink.PlayerDeleted += OnPlayerDeleted; // Credit idle time using var queue = PooledRefQueue.Create(); @@ -77,12 +75,12 @@ public static class StaminaSystem } } - private static void OnPlayerDeleted(Mobile m) + public static void OnPlayerDeleted(Mobile m) { RemoveEntry(m as IHasSteps); } - private static void Login(Mobile m) + public static void OnLogin(Mobile m) { if (EnableMountStamina) { diff --git a/Projects/UOContent/Mobiles/PlayerMobile.cs b/Projects/UOContent/Mobiles/PlayerMobile.cs index ba4ad0e55..66bba93d6 100644 --- a/Projects/UOContent/Mobiles/PlayerMobile.cs +++ b/Projects/UOContent/Mobiles/PlayerMobile.cs @@ -935,15 +935,10 @@ namespace Server.Mobiles public static void Initialize() { - EventSink.Login += OnLogin; EventSink.Logout += OnLogout; EventSink.Connected += EventSink_Connected; EventSink.Disconnected += EventSink_Disconnected; - EventSink.TargetedSkillUse += TargetedSkillUse; - EventSink.EquipMacro += EquipMacro; - EventSink.UnequipMacro += UnequipMacro; - if (Core.SE) { Timer.StartTimer(CheckPets); @@ -962,7 +957,7 @@ namespace Server.Mobiles } } - private static void TargetedSkillUse(Mobile from, IEntity target, int skillId) + public static void TargetedSkillUse(Mobile from, IEntity target, int skillId) { if (from == null || target == null) { @@ -1221,7 +1216,7 @@ namespace Server.Mobiles } } - private static void OnLogin(Mobile from) + public static void OnLogin(Mobile from) { if (AccountHandler.LockdownLevel > AccessLevel.Player) { diff --git a/Projects/UOContent/Multis/Boats/Strandedness.cs b/Projects/UOContent/Multis/Boats/Strandedness.cs index bf787c862..5dd6f742f 100644 --- a/Projects/UOContent/Multis/Boats/Strandedness.cs +++ b/Projects/UOContent/Multis/Boats/Strandedness.cs @@ -83,11 +83,6 @@ namespace Server.Misc new(1240, 1003) }; - public static void Initialize() - { - EventSink.Login += EventSink_Login; - } - private static bool IsStranded(Mobile from) { var map = from.Map; @@ -117,7 +112,7 @@ namespace Server.Misc return false; } - public static void EventSink_Login(Mobile from) + public static void OnLogin(Mobile from) { if (!IsStranded(from)) { diff --git a/Projects/UOContent/Network/Packets/IncomingAccountPackets.cs b/Projects/UOContent/Network/Packets/IncomingAccountPackets.cs index f77e5ba30..630ed9c4b 100644 --- a/Projects/UOContent/Network/Packets/IncomingAccountPackets.cs +++ b/Projects/UOContent/Network/Packets/IncomingAccountPackets.cs @@ -17,6 +17,22 @@ using System; using System.Buffers; using System.Collections.Generic; using System.IO; +using Server.Accounting; +using Server.Assistants; +using Server.Commands; +using Server.Engines.ConPVP; +using Server.Engines.Doom; +using Server.Engines.PartySystem; +using Server.Engines.Plants; +using Server.Engines.PlayerMurderSystem; +using Server.Engines.VeteranRewards; +using Server.Factions; +using Server.Items; +using Server.Misc; +using Server.Mobiles; +using Server.Regions; +using Server.Spells.Ninjitsu; +using Server.Spells.Spellweaving; using CV = Server.ClientVersion; namespace Server.Network; @@ -190,7 +206,7 @@ public static class IncomingAccountPackets reader.Seek(30, SeekOrigin.Current); var index = reader.ReadInt32(); - EventSink.InvokeDeleteRequest(state, index); + AccountHandler.DeleteRequest(state, index); } public static void AccountID(NetState state, SpanReader reader) @@ -201,7 +217,7 @@ public static class IncomingAccountPackets { var version = state.Version = new CV(reader.ReadAscii()); - EventSink.InvokeClientVersionReceived(state, version); + ClientVerification.ClientVersionReceived(state, version); } public static void ClientType(NetState state, SpanReader reader) @@ -211,7 +227,7 @@ public static class IncomingAccountPackets int type = reader.ReadUInt16(); var version = state.Version = new CV(reader.ReadAscii()); - EventSink.InvokeClientVersionReceived(state, version); + ClientVerification.ClientVersionReceived(state, version); } public static void PlayCharacter(NetState state, SpanReader reader) @@ -307,7 +323,30 @@ public static class IncomingAccountPackets state.SendPlayMusic(m.Region.Music); - EventSink.InvokeLogin(m); + StaminaSystem.OnLogin(m); + DuelContext.OnLogin(m); + LightCycle.OnLogin(m); + LoginStats.OnLogin(m); + AnimalForm.OnLogin(m); + BaseBeverage.OnLogin(m); + AntiMacroSystem.OnLogin(m); + Strandedness.OnLogin(m); + ShardPoller.OnLogin(m); + ReaperFormSpell.OnLogin(m); + Party.OnLogin(m); + PlantSystem.OnLogin(m); + LampRoomRegion.OnLogin(m); + HouseRegion.OnLogin(m); + Faction.OnLogin(m); + PlayerMurderSystem.OnLogin(m); + AssistantHandler.OnLogin(m); + VisibilityList.OnLogin(m); + PlayerMobile.OnLogin(m); + Account.OnLogin(m); + GiftGiving.OnLogin(m); + PreventInaccess.OnLogin(m); + TwistedWealdDesertRegion.OnLogin(m); + RewardSystem.OnLogin(m); } private static int GenerateAuthID(this NetState state) diff --git a/Projects/UOContent/Network/Packets/IncomingExtendedCommandPackets.cs b/Projects/UOContent/Network/Packets/IncomingExtendedCommandPackets.cs index 43537e33c..ec7c73f3e 100644 --- a/Projects/UOContent/Network/Packets/IncomingExtendedCommandPackets.cs +++ b/Projects/UOContent/Network/Packets/IncomingExtendedCommandPackets.cs @@ -16,6 +16,7 @@ using System.Buffers; using Server.ContextMenus; using Server.Items; +using Server.Mobiles; namespace Server.Network; @@ -251,7 +252,7 @@ public static class IncomingExtendedCommandPackets Item spellbook = reader.ReadInt16() == 1 ? World.FindItem((Serial)reader.ReadUInt32()) : null; var spellID = reader.ReadInt16() - 1; - EventSink.InvokeCastSpellRequest(from, spellID, spellbook); + Spellbook.CastSpellRequest(from, spellID, spellbook); } public static void ToggleFlying(NetState state, SpanReader reader) @@ -490,7 +491,7 @@ public static class IncomingExtendedCommandPackets return; } - EventSink.InvokeBandageTargetRequest(from, bandage, target); + Bandage.BandageTargetRequest(from, bandage, target); from.NextActionTime = Core.TickCount + Mobile.ActionDelay; } @@ -504,14 +505,14 @@ public static class IncomingExtendedCommandPackets { var spellId = (short)(reader.ReadInt16() - 1); // zero based; - EventSink.InvokeTargetedSpell(state.Mobile, World.FindEntity((Serial)reader.ReadUInt32()), spellId); + Spellbook.TargetedSpell(state.Mobile, World.FindEntity((Serial)reader.ReadUInt32()), spellId); } public static void TargetedSkillUse(NetState state, SpanReader reader) { var skillId = reader.ReadInt16(); - EventSink.InvokeTargetedSkillUse(state.Mobile, World.FindEntity((Serial)reader.ReadUInt32()), skillId); + PlayerMobile.TargetedSkillUse(state.Mobile, World.FindEntity((Serial)reader.ReadUInt32()), skillId); } public static void TargetByResourceMacro(NetState state, SpanReader reader) diff --git a/Projects/UOContent/Network/Packets/IncomingItemPackets.cs b/Projects/UOContent/Network/Packets/IncomingItemPackets.cs index 93f04c548..e770b00c1 100644 --- a/Projects/UOContent/Network/Packets/IncomingItemPackets.cs +++ b/Projects/UOContent/Network/Packets/IncomingItemPackets.cs @@ -17,6 +17,7 @@ using System.Buffers; using System.Collections.Generic; using System.IO; using Server.Items; +using Server.Mobiles; namespace Server.Network; @@ -117,7 +118,7 @@ public static class IncomingItemPackets serialList.Add((Serial)reader.ReadUInt32()); } - EventSink.InvokeEquipMacro(state.Mobile, serialList); + PlayerMobile.EquipMacro(state.Mobile, serialList); } public static void UnequipMacro(NetState state, SpanReader reader) @@ -129,6 +130,6 @@ public static class IncomingItemPackets layers.Add((Layer)reader.ReadUInt16()); } - EventSink.InvokeUnequipMacro(state.Mobile, layers); + PlayerMobile.UnequipMacro(state.Mobile, layers); } } diff --git a/Projects/UOContent/Network/Packets/IncomingMobilePackets.cs b/Projects/UOContent/Network/Packets/IncomingMobilePackets.cs index 1ab9a32f3..994a2590a 100644 --- a/Projects/UOContent/Network/Packets/IncomingMobilePackets.cs +++ b/Projects/UOContent/Network/Packets/IncomingMobilePackets.cs @@ -15,6 +15,7 @@ using System.Buffers; using Server.Items; +using Server.Misc; namespace Server.Network; @@ -35,7 +36,7 @@ public static class IncomingMobilePackets if (targ != null) { - EventSink.InvokeRenameRequest(from, targ, reader.ReadAsciiSafe()); + RenameRequests.RenameRequest(from, targ, reader.ReadAsciiSafe()); } } @@ -66,7 +67,7 @@ public static class IncomingMobilePackets { case 0x00: // display request { - EventSink.InvokeProfileRequest(beholder, beheld); + Profile.ProfileRequest(beholder, beheld); break; } @@ -82,7 +83,7 @@ public static class IncomingMobilePackets var text = reader.ReadBigUni(length); - EventSink.InvokeChangeProfileRequest(beholder, beheld, text); + Profile.ChangeProfileRequest(beholder, beheld, text); break; } diff --git a/Projects/UOContent/Network/Packets/IncomingPlayerPackets.cs b/Projects/UOContent/Network/Packets/IncomingPlayerPackets.cs index 2b4809d30..a72276b71 100644 --- a/Projects/UOContent/Network/Packets/IncomingPlayerPackets.cs +++ b/Projects/UOContent/Network/Packets/IncomingPlayerPackets.cs @@ -21,9 +21,14 @@ using System.IO; using System.Runtime.InteropServices; using CommunityToolkit.HighPerformance; using Server.Diagnostics; +using Server.Engines.Help; +using Server.Engines.MLQuests; using Server.Engines.Virtues; using Server.Exceptions; +using Server.Guilds; using Server.Gumps; +using Server.Items; +using Server.Misc; using Server.Mobiles; namespace Server.Network; @@ -136,7 +141,7 @@ public static class IncomingPlayerPackets { case 0xC7: // Animate { - EventSink.InvokeAnimateRequest(from, command); + Animations.AnimateRequest(from, command); break; } @@ -159,7 +164,7 @@ public static class IncomingPlayerPackets booktype = 1; } - EventSink.InvokeOpenSpellbookRequest(from, booktype); + Spellbook.OpenSpellbookRequest(from, booktype); break; } @@ -169,13 +174,13 @@ public static class IncomingPlayerPackets var spellID = (tokenizer.MoveNext() ? Utility.ToInt32(tokenizer.Current) : 0) - 1; var serial = tokenizer.MoveNext() ? (Serial)Utility.ToUInt32(tokenizer.Current) : Serial.MinusOne; - EventSink.InvokeCastSpellRequest(from, spellID, World.FindItem(serial)); + Spellbook.CastSpellRequest(from, spellID, World.FindItem(serial)); break; } case 0x58: // Open door { - EventSink.InvokeOpenDoorMacroUsed(from); + BaseDoor.OpenDoorMacroUsed(from); break; } @@ -183,7 +188,7 @@ public static class IncomingPlayerPackets { var spellID = Utility.ToInt32(command) - 1; - EventSink.InvokeCastSpellRequest(from, spellID, null); + Spellbook.CastSpellRequest(from, spellID, null); break; } @@ -341,7 +346,7 @@ public static class IncomingPlayerPackets public static void HelpRequest(NetState state, SpanReader reader) { - EventSink.InvokeHelpRequest(state.Mobile); + HelpGump.HelpRequest(state.Mobile); } public static void DisplayGumpResponse(NetState state, SpanReader reader) @@ -617,12 +622,12 @@ public static class IncomingPlayerPackets public static void GuildGumpRequest(NetState state, IEntity e, EncodedReader reader) { - EventSink.InvokeGuildGumpRequest(state.Mobile); + Guild.GuildGumpRequest(state.Mobile); } public static void QuestGumpRequest(NetState state, IEntity e, EncodedReader reader) { - EventSink.InvokeQuestGumpRequest(state.Mobile); + MLQuestSystem.QuestGumpRequest(state.Mobile); } public static unsafe void EncodedCommand(NetState state, SpanReader reader) diff --git a/Projects/UOContent/Regions/HouseRegion.cs b/Projects/UOContent/Regions/HouseRegion.cs index 6d9ff162d..f7a7fe330 100644 --- a/Projects/UOContent/Regions/HouseRegion.cs +++ b/Projects/UOContent/Regions/HouseRegion.cs @@ -27,7 +27,6 @@ public class HouseRegion : BaseRegion public static void Initialize() { - EventSink.Login += OnLogin; } public static void OnLogin(Mobile m) diff --git a/Projects/UOContent/Regions/TwistedWealdDesertRegion.cs b/Projects/UOContent/Regions/TwistedWealdDesertRegion.cs index 0d6cc9032..558148283 100644 --- a/Projects/UOContent/Regions/TwistedWealdDesertRegion.cs +++ b/Projects/UOContent/Regions/TwistedWealdDesertRegion.cs @@ -22,11 +22,6 @@ public class TwistedWealdDesertRegion : MondainRegion { } - public static void Initialize() - { - EventSink.Login += Desert_OnLogin; - } - public override void OnEnter(Mobile m) { var ns = m.NetState; @@ -46,7 +41,7 @@ public class TwistedWealdDesertRegion : MondainRegion } } - private static void Desert_OnLogin(Mobile m) + public static void OnLogin(Mobile m) { if (m.Region.IsPartOf() && m.AccessLevel == AccessLevel.Player) { diff --git a/Projects/UOContent/Skills/AntiMacroSystem.cs b/Projects/UOContent/Skills/AntiMacroSystem.cs index 60a9a2483..1ba547775 100644 --- a/Projects/UOContent/Skills/AntiMacroSystem.cs +++ b/Projects/UOContent/Skills/AntiMacroSystem.cs @@ -108,7 +108,6 @@ public static class AntiMacroSystem { EventSink.WorldSave += OnWorldSave; EventSink.Logout += OnLogout; - EventSink.Login += OnLogin; } private static void OnWorldSave() @@ -139,7 +138,7 @@ public static class AntiMacroSystem } } - private static void OnLogin(Mobile m) + public static void OnLogin(Mobile m) { // Stop the clear out timer if (_logoutCleanup?.Remove(m, out var timer) == true) diff --git a/Projects/UOContent/Special Systems/Engines/GiftGiving.cs b/Projects/UOContent/Special Systems/Engines/GiftGiving.cs index 7bbeef3f2..efe4a9ace 100644 --- a/Projects/UOContent/Special Systems/Engines/GiftGiving.cs +++ b/Projects/UOContent/Special Systems/Engines/GiftGiving.cs @@ -19,12 +19,7 @@ namespace Server.Misc m_Givers.Add(giver); } - public static void Initialize() - { - EventSink.Login += EventSink_Login; - } - - private static void EventSink_Login(Mobile m) + public static void OnLogin(Mobile m) { if (m.Account is not Account acct) { diff --git a/Projects/UOContent/Special Systems/Engines/PreventInaccess.cs b/Projects/UOContent/Special Systems/Engines/PreventInaccess.cs index bb7ad8e38..ccf96144e 100644 --- a/Projects/UOContent/Special Systems/Engines/PreventInaccess.cs +++ b/Projects/UOContent/Special Systems/Engines/PreventInaccess.cs @@ -32,15 +32,15 @@ namespace Server.Misc public static void Initialize() { m_MoveHistory = new Dictionary(); - - if (Enabled) - { - EventSink.Login += OnLogin; - } } public static void OnLogin(Mobile from) { + if (!Enabled) + { + return; + } + if (from == null || from.AccessLevel < AccessLevel.Counselor) { return; diff --git a/Projects/UOContent/Spells/Ninjitsu/AnimalForm.cs b/Projects/UOContent/Spells/Ninjitsu/AnimalForm.cs index ebc9c2eea..40806922a 100644 --- a/Projects/UOContent/Spells/Ninjitsu/AnimalForm.cs +++ b/Projects/UOContent/Spells/Ninjitsu/AnimalForm.cs @@ -62,11 +62,6 @@ namespace Server.Spells.Ninjitsu new(typeof(Reptalon), 1075202, 11669, 0, 1075222, 90.0, 0x114, 0, 0, false, false) }; - public static void Initialize() - { - EventSink.Login += OnLogin; - } - public static void OnLogin(Mobile m) { if (GetContext(m)?.SpeedBoost == true) diff --git a/Projects/UOContent/Spells/Spellweaving/ReaperForm.cs b/Projects/UOContent/Spells/Spellweaving/ReaperForm.cs index 3486393a2..d853c4d70 100644 --- a/Projects/UOContent/Spells/Spellweaving/ReaperForm.cs +++ b/Projects/UOContent/Spells/Spellweaving/ReaperForm.cs @@ -27,11 +27,6 @@ namespace Server.Spells.Spellweaving public virtual int SwingSpeedBonus => 10 + FocusLevel; public virtual int SpellDamageBonus => 10 + FocusLevel; - public static void Initialize() - { - EventSink.Login += OnLogin; - } - public static void OnLogin(Mobile m) { var context = TransformationSpellHelper.GetContext(m);