public void SwitchPoe(CommandContext ctx) { if (_diffPoe == null) { _diffPoe = new PlaneOfExistence(ctx.Callee.Parent.Server, "test_poe"); } ctx.Callee.Parent.GetTransform().SwitchPoE(_diffPoe); }
public GameServer([NotNull] IServiceCollection services) { // register internal dependencies services.AddSingleton <IGameServer>(_ => this); services.AddSingleton(s => new SocketAndPlayerDatabaseDispatch(s.ThrowOrGet <IGameServer>().Services)); // build service provider Services = services.BuildServiceProvider() ?? throw new ArgumentNullException(nameof(services)); Overworld = new PlaneOfExistence(this, "Overworld"); _players = Services.GetLazy <IPlayerCatalogue>(); _config = Services.GetLazy <IConfigurationService>(); _dispatch = Services.GetLazy <SocketAndPlayerDatabaseDispatch>(); _jsonDb = Services.GetLazy <PlayerJsonDatabase>(); _log = Services.GetLazy <ILogger>(); }
public MockServer(IServiceCollection services) { UTCStartTime = DateTime.UtcNow; services.AddSingleton(s => new EntitySystem(s)); services.AddSingleton <IEntitySystem>(s => s.ThrowOrGet <EntitySystem>()); services.AddSingleton(s => new PlayerCatalogue(s)); services.AddSingleton <IPlayerCatalogue>(s => s.ThrowOrGet <PlayerCatalogue>()); services.AddSingleton(s => new NpcFactory(s)); services.AddSingleton <INpcFactory>(s => s.ThrowOrGet <NpcFactory>()); services.AddSingleton <ILogger>(_ => new TestLogger()); services.AddSingleton <IGameServer>(_ => this); services.AddSingleton <IInterfaceIdDatabase>(new MockInterfaceDb()); services.AddSingleton <SkillDb>(); services.AddSingleton <IMainLoop>(s => new MockLoop(this)); Services = services.BuildServiceProvider(); Overworld = new PlaneOfExistence(this, "Mock overworld"); }