Files
RobustToolbox/Robust.Client/UserInterface/CustomControls/FpsCounter.cs
T
ShadowCommanderandGitHub 2f819cf781 Refactor Controls to default to MouseFilterMode.Ignore (#1011)
* Refactor Controls to default to MouseFilterMode.Ignore

* Clean up MouseFilterMode.Ignore from Controls

* Fix BoxContainer eating UI clicks

* Fix ScrollContainer using the wrong variable

* Refactor ContainerButtons to use a StyleClass for formatting instead of typeof

* Refactor BaseButton to work when child has MouseFilter.Pass
2020-03-15 07:29:51 +01:00

33 lines
802 B
C#

using Robust.Client.UserInterface.Controls;
using Robust.Shared.Interfaces.Timing;
using Robust.Shared.Maths;
using Robust.Shared.Timing;
namespace Robust.Client.UserInterface.CustomControls
{
internal sealed class FpsCounter : Label
{
private readonly IGameTiming _gameTiming;
public FpsCounter(IGameTiming gameTiming)
{
_gameTiming = gameTiming;
FontColorShadowOverride = Color.Black;
ShadowOffsetXOverride = 1;
ShadowOffsetYOverride = 1;
}
protected override void Update(FrameEventArgs args)
{
if (!VisibleInTree)
{
return;
}
var fps = _gameTiming.FramesPerSecondAvg;
Text = $"FPS: {fps:N1}";
}
}
}