using System; using System.Runtime.InteropServices; namespace PkmnLibSharp.FFI.StaticData { internal static class Ability { [DllImport(Data.DllName, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.Ansi)] internal static extern IntPtr ability_new(IntPtr name, IntPtr effect, IntPtr parameters, ulong size); [DllImport(Data.DllName, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.Ansi)] internal static extern void ability_drop(IntPtr value); [DllImport(Data.DllName, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.Ansi)] internal static extern string ability_name(IntPtr value); [DllImport(Data.DllName, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.Ansi)] internal static extern string ability_effect(IntPtr value); [DllImport(Data.DllName, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.Ansi)] internal static extern ulong ability_parameter_length(IntPtr value); [DllImport(Data.DllName, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.Ansi)] internal static extern IntPtr ability_parameter_get(IntPtr value, ulong index); } }