using System; using Microsoft.Extensions.DependencyInjection; using WingsAPI.Plugins; using WingsEmu.Game; using WingsEmu.Game._i18n; using WingsEmu.Game.Battle; using WingsEmu.Game.Buffs; using WingsEmu.Game.Families; using WingsEmu.Game.Managers; using WingsEmu.Game.Managers.ServerData; using WingsEmu.Game.Managers.StaticData; using WingsEmu.Game.Maps; using WingsEmu.Game.Mates; using WingsEmu.Game.Miniland; namespace WingsEmu.Plugins.BasicImplementations; public class GameManagerPlugin : IGamePlugin { private readonly IServiceProvider _container; public GameManagerPlugin(IServiceProvider container) => _container = container; public string Name => nameof(GameManagerPlugin); public void OnLoad() { StaticMapManager.Initialize(_container.GetService()); StaticSessionManager.Initialize(_container.GetService()); StaticCardsManager.Initialize(_container.GetService()); StaticItemsManager.Initialize(_container.GetService()); StaticNpcMonsterManager.Initialize(_container.GetService()); StaticDropManager.Initialize(_container.GetService()); StaticSkillsManager.Initialize(_container.GetService()); StaticMinilandManager.Initialize(_container.GetService()); StaticScriptedInstanceManager.Initialize(_container.GetService()); StaticRandomGenerator.Initialize(_container.GetService()); StaticMateTransportFactory.Initialize(_container.GetService()); StaticGameLanguageService.Initialize(_container.GetService()); StaticBuffFactory.Initialize(_container.GetRequiredService()); StaticSkillExecutor.Initialize(_container.GetService()); StaticMeditationManager.Initialize(_container.GetService()); StaticFamilyManager.Initialize(_container.GetService()); } }