コード例 #1
0
        /// <summary>
        /// Initializes a new instance of the <see cref="LilaTournament"/> class.
        /// </summary>
        /// <param name="c">The client.</param>
        /// <param name="socket">The socket.</param>
        /// <param name="tournamentData">The tournament data.</param>
        internal LilaTournament(LilaClient c, LilaSocket socket, TournamentData tournamentData)
        {
            tournamentPing = new PPingVersion(0);
            Version        = tournamentData.SocketVersion;

            Client = c;

            this.socket         = socket;
            this.tournamentData = tournamentData;

            socket.OnDisconnect += OnDisconnect;

            socket.AddHandler <MPong>(OnPong);
            socket.AddHandler <MCrowd>(OnCrowd);
            socket.AddHandler <MReload>(OnReload);
            socket.AddHandler <MMessage>(OnMessage);
            socket.AddHandler <MTournamentRedirect>(OnRedirect);
            socket.AddHandler <MTournamentReminder>(OnReminder);
            socket.AddHandler <MResync>(OnResync);
            socket.AddHandler <MChallenges>(OnChallenges);
            socket.AddHandler <MDeployPre>(OnDeployPre);
            socket.AddHandler <MFollowingPlaying>(OnFollowingPlaying);
            socket.AddHandler <MFollowingStoppedPlaying>(OnFollowingStoppedPlaying);
            socket.AddHandler <MFollowingOnlines>(OnFollowingOnline);

            SendPing();
            socket.SchedulePacket(tournamentPing, 1000);
        }
コード例 #2
0
ファイル: LilaGame.cs プロジェクト: arbitre125/LilaSharp
        /// <summary>
        /// Initializes a new instance of the <see cref="LilaGame"/> class.
        /// </summary>
        /// <param name="c">The c.</param>
        /// <param name="socket">The socket.</param>
        /// <param name="gameData">The game data.</param>
        internal LilaGame(LilaClient c, LilaSocket socket, GameData gameData)
        {
            gamePing = new PPingVersion(0);
            Version  = gameData.Player.Version;
            curClock = new ClockData
            {
                White = gameData.Clock.White,
                Black = gameData.Clock.Black
            };

            Client = c;

            this.socket   = socket;
            this.gameData = gameData;

            socket.OnDisconnect += OnDisconnect;

            socket.AddHandler <MPong>(OnPong);
            socket.AddHandler <MMove>(OnMove);
            socket.AddHandler <MGameMessages>(OnGameEvent);
            socket.AddHandler <MReload>(OnReload);
            socket.AddHandler <MMessage>(OnMessage);
            socket.AddHandler <MEnd>(OnEnd);
            socket.AddHandler <MEndData>(OnEndData);
            socket.AddHandler <MTakebackOffer>(OnTakebackOffer);
            socket.AddHandler <MAck>(OnAck);
            socket.AddHandler <MGone>(OnGone);
            socket.AddHandler <MCrowd>(OnCrowd);
            socket.AddHandler <MClock>(OnClock);
            socket.AddHandler <MChallenges>(OnChallenges);
            socket.AddHandler <MResync>(OnResync);
            socket.AddHandler <MRoundRedirect>(OnRedirect);
            socket.AddHandler <MCheckCount>(OnCheckCount);
            socket.AddHandler <MTournamentReminder>(OnReminder);
            socket.AddHandler <MBerserk>(OnBerserk);
            socket.AddHandler <MClockIncrement>(OnClockInc);
            socket.AddHandler <MTournamentStandings>(OnStandings);
            socket.AddHandler <MDeployPre>(OnDeployPre);

            socket.AddVersionHandler <MVersion>(OnVersion);

            SendPing();
            socket.SchedulePacket(gamePing, 1000);

            random = new Random();
        }