charms/CharmHoming.cs

A charm item class that increases the player's bullet homing radius. It defines an item id, a homing radius constant, a Description method returning a formatted string, and on start applies modifiers to player stats.

Http Calls
using System.Xml.Linq;
using static Sandbox.VertexLayout;

public class CharmHoming : Charm
{
	public const string ItemId = "charm_homing";

	private const float HomingRadius = 0.5f;

	public static string Description() => $"+{HomingRadius.ToString("0.##")}m bullet homing range";

	public override void OnRunStart()
	{
		Player.Modify( this, PlayerStat.BulletHomingRadius, HomingRadius * Utils.Meter2Unit, ModifierType.Add );
		Player.Modify( this, PlayerStat.BulletHomingRadiusDisplay, HomingRadius, ModifierType.Add );
	}
}