relics/RelicPill.cs
using Sandbox;
using System.Reflection.PortableExecutable;
using System.Runtime.Versioning;
using System.Threading.Tasks;

public class RelicPill : Relic
{
	public override void Init()
	{
		base.Init();
		
	}

	public override void LevelUp()
	{
		base.LevelUp();

		int healAmount = Manager.Instance.MaxHP - Manager.Instance.HP;

		Manager.Instance.HP = Manager.Instance.MaxHP;

		Manager.Instance.TimeSinceHPChanged = 0f;

		var mouse = Mouse.Position;
		var camera = Scene.Camera;
		var ray = camera.ScreenPixelToRay( mouse );

		var tr = Scene.Trace.Ray( ray, 10000f ).Run();

		Manager.Instance.SpawnHealHPFloater( healAmount, tr.EndPosition );

		Manager.Instance.PlaySfxCenter( "pill", volume: 0.7f, pitch: Game.Random.Float( 0.95f, 1.05f ) );

		Manager.Instance.Stats[StatType.TimerTotalTime] = Math.Max( 1f, Manager.Instance.Stats[StatType.TimerTotalTime] - 3f );
		Manager.Instance.TimeSinceTimerChanged = 0f;

		//Manager.Instance.RemoveRelic( this );
	}
}