using PkmnLib.Dynamic.Libraries; using PkmnLib.Dynamic.Models; using PkmnLib.Dynamic.Models.Choices; using PkmnLib.Dynamic.ScriptHandling.Registry; using PkmnLib.Static; using PkmnLib.Static.Utils; namespace PkmnLib.Dynamic.ScriptHandling; /// /// The script class is used to make changes to how a battle executes, without requiring hardcoded /// changes. This allows for easily defining generational differences, and add effects that the /// developer might require. /// public abstract class Script { internal event Action