/// <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); }
/// <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(); }