using PkmnLibSharp.FFI; using PkmnLibSharp.Utils; using Interface = PkmnLibSharp.FFI.DynamicData.Libraries.MiscLibrary; namespace PkmnLibSharp.DynamicData.Libraries { public abstract class MiscLibrary : ExternPointer { protected MiscLibrary(IdentifiablePointer ptr, bool isOwner) : base(ptr, isOwner) { } protected override object CreateCache() => new(); protected override void Destructor() => Interface.misc_library_drop(Ptr); } public class Gen7MiscLibrary : MiscLibrary { public Gen7MiscLibrary() : base(Interface.gen_7_misc_library_new(), true) { } } }