@using Sandbox; @using Sandbox.UI; @using System; @namespace MurderGame @inherits Panel @if (ReloadNeeded) { } @code { public bool ReloadNeeded { get; set; } public bool Blink { get; set; } protected override int BuildHash() { var localPawn = Game.LocalPawn; if (localPawn is Player player) { var inventory = player.Inventory; if (inventory != null && inventory.GetCurrentWeapon() != null) { var weapon = inventory.GetCurrentWeapon(); var ammo = weapon.Ammo; ReloadNeeded = ammo == 0 && !weapon.Reloading; Blink = !weapon.Reloading; return HashCode.Combine(ReloadNeeded.GetHashCode(), Blink.GetHashCode()); } } if (ReloadNeeded) { ReloadNeeded = false; } return ReloadNeeded.GetHashCode(); } }