UI/Inventory/Slot.razor
@using Sandbox;
@using Sandbox.UI;
@namespace CryptidHunt

<root>
    @if (Item.IsValid())
    {
        <div class="weight">
            <div class="icon"></div>
            <div class="text">@((Item.Weight* Item.Amount).ToString("0.0#")) KG</div>
        </div>
        <div class="amount">
            <div class="text">@Item.Amount/@Item.MaxAmount</div>
        </div>
        <div class="iconContainer">
            <img class="itemIcon" src="@Item.Icon" )>
        </div>
    }
</root>

@code
{
    public Item Item { get; set; }

    public override void OnButtonEvent(ButtonEvent e)
    {
        if ( Item.IsValid() && e.Pressed && e.Button == "mouseleft" )
        {
            Inventory.Instance.SelectedItem = Item;
        }
    }

    public override void Tick()
    {
    }

    protected override int BuildHash() => System.HashCode.Combine( Time.Now );
}