public void SwitchPoe(CommandContext ctx)
        {
            if (_diffPoe == null)
            {
                _diffPoe = new PlaneOfExistence(ctx.Callee.Parent.Server, "test_poe");
            }

            ctx.Callee.Parent.GetTransform().SwitchPoE(_diffPoe);
        }
Exemplo n.º 2
0
        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>();
        }
Exemplo n.º 3
0
        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");
        }