using System; using System.Runtime.InteropServices; namespace PkmnLibSharp.FFI.StaticData.Libraries { internal static class NatureLibrary { [DllImport(Data.DllName, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.Ansi)] internal static extern IdentifiablePointer nature_library_new(ulong capacity); [DllImport(Data.DllName, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.Ansi)] internal static extern void nature_library_drop(IntPtr ptr); [DllImport(Data.DllName, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.Ansi)] internal static extern void nature_library_load_nature(IntPtr ptr, IntPtr name, IntPtr nature); [DllImport(Data.DllName, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.Ansi)] internal static extern IdentifiablePointer nature_library_get_nature(IntPtr ptr, IntPtr name); [DllImport(Data.DllName, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.Ansi)] internal static extern IdentifiablePointer nature_library_get_random_nature(IntPtr ptr, ulong seed); [DllImport(Data.DllName, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.Ansi)] internal static extern IntPtr nature_library_get_nature_name(IntPtr ptr, IntPtr nature); } }