ui/WinnerDisplay.razor
@using System;
@using Sandbox;
@using Sandbox.UI;
@using Sandbox.UI.Construct;
@using Facepunch.BombRoyale;

@namespace Facepunch.BombRoyale.UI
@attribute [StyleSheet( "WinnerDisplay.razor.scss" )]
@inherits Panel

@{
	var state = StateSystem.Active as SummaryState;
	if ( !state.IsValid() )
		return;

	if ( state.WinnerIndex == 0 )
		return;
}

<root>
	@{
		var winnerName = state.WinnerName;
		var winnerIndex = state.WinnerIndex + 1;
	}

    <div class="banner p@(winnerIndex)"></div>

    <div class="container p@(winnerIndex)">
        <div class="logo"></div>

        <div class="avatar">
            <div class="inner"></div>
            <div class="head"></div>
        </div>

        <div class="name">
            <div class="label">@winnerName</div>
        </div>
    </div>
</root>

@code
{
    protected override int BuildHash()
    {
	    var state = StateSystem.Active as SummaryState;
	    return !state.IsValid() ? 0 : HashCode.Combine( state.WinnerIndex, state.WinnerName );
    }
}