// AUTOMATICALLY GENERATED, DO NOT EDIT
using System;
using System.Runtime.InteropServices;
namespace Creaturelib.Generated
{
internal static class MiscLibrary
{
/// MiscLibrary *
[DllImport("CreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_MiscLibrary_Construct")]
internal static extern IntPtr Construct();
/// const MiscLibrary *
/// void
[DllImport("CreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_MiscLibrary_Destruct")]
internal static extern void Destruct(IntPtr p);
/// bool &
/// MiscLibrary *
/// ExecutingAttack *
/// Creature *
/// unsigned char
/// unsigned char
[DllImport("CreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_MiscLibrary_IsCritical")]
internal static extern byte IsCritical(ref byte @out, IntPtr p, IntPtr attack, IntPtr target, byte hit);
/// bool &
/// MiscLibrary *
/// FleeTurnChoice *
/// unsigned char
[DllImport("CreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_MiscLibrary_CanFlee")]
internal static extern byte CanFlee(ref byte @out, IntPtr p, IntPtr switchChoice);
/// BaseTurnChoice * &
/// MiscLibrary *
/// Creature *
/// unsigned char
/// unsigned char
/// unsigned char
[DllImport("CreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_MiscLibrary_ReplacementAttack")]
internal static extern byte ReplacementAttack(ref IntPtr @out, IntPtr p, IntPtr user, byte sideTarget, byte creatureTarget);
}
}