public static Color GetIconColor(CheckpointHandle cp) => Color.FromArgb(Read <int>(Address(cp), 0x54));
public static float Radius(CheckpointHandle cp) => Read <float>(Address(cp), 0x3C);
public static void Radius(CheckpointHandle cp, float value) => Write(Address(cp), 0x3C, value);
public static void Target(CheckpointHandle cp, Vector3 value) => Write(Address(cp), 0x10, value);
public static Vector3 Target(CheckpointHandle cp) => Read <Vector3>(Address(cp), 0x10);
public static void Position(CheckpointHandle cp, Vector3 value) => Write(Address(cp), 0x0, value);
public static Vector3 Position(CheckpointHandle cp) => Read <Vector3>(Address(cp), 0x0);
public static IntPtr Address(CheckpointHandle cp) => GetCheckpointAddress((int)cp);