UI/JumperScoreboard.razor
@using Sandbox;
@using Sandbox.UI;
@inherits PanelComponent
<root>
<div class="header">
<label class="name">Name</label>
<label class="score">Height</label>
</div>
<div class="entries">
@foreach (var player in Scene.Components.GetAll<JumperPlayerStuff>())
{
<div class=@(player.Network.IsOwner ? "entry me" : "entry")>
<label class="you">You</label>
<label class="name">@player.Network.OwnerConnection.DisplayName</label>
<label class="score">@player.Height</label>
</div>
}
</div>
</root>
@code {
bool IsOpen { get; set; }
private float Ping(float ping)
{
return (ping * 1000).Floor();
}
protected override int BuildHash()
{
IsOpen ^= Input.Pressed("slot3");
var result = Input.Down("score").GetHashCode();
foreach (var cl in GameObject.Components.GetAll<JumperPlayerStuff>())
{
result = HashCode.Combine(result, cl.MaxHeight);
}
return HashCode.Combine(IsOpen, result,Time.Delta);
}
}