Beispiel #1
0
        /// <summary>
        /// Creates a new room UDP socket class instance
        /// </summary>
        public RoomUdpSocket(long id, string name, int maxPlayerCount, IClock clock, TPlayerFactory playerFactory, IPlayerDatabase <TPlayer, TPlayerFactory> playerDatabase, PlayerDictionary <TPlayer> players, int maxTaskCount, ILogger logger) : base(maxTaskCount, logger)
        {
            this.id = id;

            Name           = name;
            MaxPlayerCount = maxPlayerCount;

            this.clock          = clock ?? throw new ArgumentNullException();
            this.playerFactory  = playerFactory ?? throw new ArgumentNullException();
            this.playerDatabase = playerDatabase ?? throw new ArgumentNullException();
            this.players        = players ?? throw new ArgumentNullException();
        }
        /// <summary>
        /// Creates a new room UDP socket class instance
        /// </summary>
        public RoomUdpSocket(long id, string name, IClock clock, TPlayerFactory playerFactory, IPlayerDatabase <TPlayer, TPlayerFactory> playerDatabase, ILogger logger, int maxPlayerCount = 256, int maxTaskCount = 256) : base(logger, maxTaskCount)
        {
            this.id = id;

            Name           = name;
            MaxPlayerCount = maxPlayerCount;

            this.clock          = clock ?? throw new ArgumentNullException();
            this.playerFactory  = playerFactory ?? throw new ArgumentNullException();
            this.playerDatabase = playerDatabase ?? throw new ArgumentNullException();

            players      = new PlayerDictionary <TPlayer>();
            updateThread = new Thread(UpdateThreadLogic);
        }
 public PlayerDatabaseAdapter(IPlayerDatabase database)
 {
     this.database = database;
 }