gems/GemPoisonNumHits.cs

A Gem subclass that increases the number of hits required to remove poison from enemies. It defines an item id, textual descriptions for the gem and its upgrade, and applies the stat modifier to the Player on run start.

Reflection
using Sandbox;

public class GemPoisonNumHits : Gem
{
	public const string ItemId = "gem_poison_num_hits";

	public static string Description( int level ) => $"Enemies require +{level} hit to remove poison";
	public static string UpgradeDescription( int level ) => $"Enemies require +{level - 1}→+{level} hits to remove poison";

	public override void OnRunStart()
	{
		Player.Modify( this, PlayerStat.PoisonNumHitsToRemove, Level, ModifierType.Add );
	}
}