コード例 #1
0
ファイル: AcLeaderboard.cs プロジェクト: tankyx/actools
        public void OnConnectionClosed(MsgConnectionClosed msg)
        {
            if (msg.CarId >= Leaderboard.Count)
            {
                return;
            }
            var item = Leaderboard[msg.CarId];

            item.Driver = null;
            item.Reset(true);
            ConnectedOnly.Refresh(item);
        }
コード例 #2
0
ファイル: AcLeaderboard.cs プロジェクト: tankyx/actools
 public void CheckDisconnected()
 {
     foreach (var item in Leaderboard)
     {
         if (item.Driver != null && ++item.SilentFor > 5)
         {
             // Logging.Debug("item.SilentFor=" + item.SilentFor);
             ActionExtension.InvokeInMainThread(() => {
                 item.Driver = null;
                 item.Reset(true);
                 ConnectedOnly.Refresh(item);
             });
         }
     }
 }
コード例 #3
0
ファイル: AcLeaderboard.cs プロジェクト: tankyx/actools
        public void OnCarInfo(MsgCarInfo msg)
        {
            if (msg.CarId >= Leaderboard.Count)
            {
                return;
            }
            var item = Leaderboard[msg.CarId];

            if (item.Driver != null && item.Driver.DriverName == msg.DriverName)
            {
                return;
            }
            // Logging.Debug("New car: " + msg.CarId + ", car: " + msg.CarModel);
            item.SilentFor = 0;
            item.Driver    = new AcDriverDetails(msg.DriverGuid, msg.DriverName, msg.CarModel, msg.CarSkin);
            item.Reset(true);
            ConnectedOnly.Refresh(item);
        }