コード例 #1
0
ファイル: PacketHandler.cs プロジェクト: s73obrien/Nitrox
        public PacketHandler(World world)
        {
            this.playerManager     = world.PlayerManager;
            defaultPacketProcessor = new DefaultServerPacketProcessor(playerManager);

            Dictionary <Type, object> ProcessorArguments = new Dictionary <Type, object>
            {
                { typeof(World), world },
                { typeof(PlayerData), world.PlayerData },
                { typeof(BaseData), world.BaseData },
                { typeof(VehicleData), world.VehicleData },
                { typeof(InventoryData), world.InventoryData },
                { typeof(GameData), world.GameData },
                { typeof(PDAStateData), world.GameData.PDAState },
                { typeof(PlayerManager), playerManager },
                { typeof(TimeKeeper), world.TimeKeeper },
                { typeof(SimulationOwnershipData), world.SimulationOwnershipData },
                { typeof(EscapePodManager), world.EscapePodManager },
                { typeof(EntityManager), new EntityManager(world.EntityData, world.BatchEntitySpawner) },
                { typeof(EntitySimulation), new EntitySimulation(world.EntityData, world.SimulationOwnershipData, world.PlayerManager) }
            };

            authenticatedPacketProcessorsByType = PacketProcessor.GetProcessors(ProcessorArguments, p => p.BaseType.IsGenericType && p.BaseType.GetGenericTypeDefinition() == typeof(AuthenticatedPacketProcessor <>));

            unauthenticatedPacketProcessorsByType = PacketProcessor.GetProcessors(ProcessorArguments, p => p.BaseType.IsGenericType && p.BaseType.GetGenericTypeDefinition() == typeof(UnauthenticatedPacketProcessor <>));
        }
コード例 #2
0
        public PacketHandler(TcpServer tcpServer, TimeKeeper timeKeeper)
        {
            this.defaultPacketProcessor = new DefaultServerPacketProcessor(tcpServer);

            var ProcessorArguments = new Dictionary <Type, object>
            {
                { typeof(TcpServer), tcpServer },
                { typeof(TimeKeeper), timeKeeper },
            };

            authenticatedPacketProcessorsByType = PacketProcessor.GetProcessors(ProcessorArguments, p => p.BaseType.IsGenericType && p.BaseType.GetGenericTypeDefinition() == typeof(AuthenticatedPacketProcessor <>));

            unauthenticatedPacketProcessorsByType = PacketProcessor.GetProcessors(ProcessorArguments, p => p.BaseType.IsGenericType && p.BaseType.GetGenericTypeDefinition() == typeof(UnauthenticatedPacketProcessor <>));
        }
コード例 #3
0
ファイル: PacketHandler.cs プロジェクト: m1ksu/Nitrox
        public PacketHandler(PlayerManager playerManager, TimeKeeper timeKeeper, SimulationOwnership simulationOwnership)
        {
            this.playerManager     = playerManager;
            defaultPacketProcessor = new DefaultServerPacketProcessor(playerManager);

            Dictionary <Type, object> ProcessorArguments = new Dictionary <Type, object>
            {
                { typeof(PlayerManager), playerManager },
                { typeof(TimeKeeper), timeKeeper },
                { typeof(SimulationOwnership), simulationOwnership },
                { typeof(EscapePodManager), new EscapePodManager() },
                { typeof(EntityManager), new EntityManager(new EntitySpawner(), simulationOwnership) }
            };

            authenticatedPacketProcessorsByType = PacketProcessor.GetProcessors(ProcessorArguments, p => p.BaseType.IsGenericType && p.BaseType.GetGenericTypeDefinition() == typeof(AuthenticatedPacketProcessor <>));

            unauthenticatedPacketProcessorsByType = PacketProcessor.GetProcessors(ProcessorArguments, p => p.BaseType.IsGenericType && p.BaseType.GetGenericTypeDefinition() == typeof(UnauthenticatedPacketProcessor <>));
        }
コード例 #4
0
ファイル: PacketHandler.cs プロジェクト: joeeyaura/Nitrox
 public PacketHandler(PlayerManager playerManager, DefaultServerPacketProcessor packetProcessor)
 {
     this.playerManager           = playerManager;
     defaultServerPacketProcessor = packetProcessor;
 }