/// <summary> /// Returns the total game time at which the message was current. /// </summary> public TimeSpan GetMessageGameTime(GameplayMessage message) { return AssaultWing.TargetElapsedTime.Multiply(message.FrameNumber); }
/// <summary> /// Returns the number of frames elapsed since the message was sent. /// </summary> public int GetMessageAge(GameplayMessage message) { var messageAgeInFrames = Game.DataEngine.ArenaFrameCount - message.FrameNumber; // Crude assumption for LagLog: GetMessageAge is called only once for each received message. if (Game.Settings.Net.LagLog) _gobUpdateLags.Add(messageAgeInFrames, Game.GameTime.TotalRealTime); return Math.Max(0, messageAgeInFrames); }