// AUTOMATICALLY GENERATED, DO NOT EDIT using System; using System.Runtime.InteropServices; namespace Creaturelib.Generated { internal static class Creature { /// Creature * & /// const BattleLibrary * /// const CreatureSpecies * /// const SpeciesVariant * /// unsigned char /// unsigned int /// unsigned int /// Gender /// unsigned char /// const Item * /// const char * /// bool /// unsigned char /// LearnedAttack * * /// long unsigned int /// bool /// unsigned char [DllImport("libCreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_Creature_Construct")] internal static extern byte Construct(ref IntPtr @out, IntPtr library, IntPtr species, IntPtr variant, byte level, uint experience, uint uid, Gender gender, byte coloring, IntPtr heldItem, IntPtr nickname, byte secretTalent, byte talent, IntPtr attacks, ulong attacksNum, byte allowedExperienceGain); /// const Creature * /// void [DllImport("libCreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_Creature_Destruct")] internal static extern void Destruct(IntPtr p); /// Creature * /// unsigned char [DllImport("libCreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_Creature_Initialize")] internal static extern byte Initialize(IntPtr p); /// const Creature * /// const BattleLibrary * [DllImport("libCreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_Creature_GetLibrary")] internal static extern IntPtr GetLibrary(IntPtr p); /// const Creature * /// const CreatureSpecies * [DllImport("libCreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_Creature_GetSpecies")] internal static extern IntPtr GetSpecies(IntPtr p); /// const Creature * /// const SpeciesVariant * [DllImport("libCreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_Creature_GetVariant")] internal static extern IntPtr GetVariant(IntPtr p); /// Creature * /// const CreatureSpecies * /// const SpeciesVariant * /// unsigned char [DllImport("libCreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_Creature_ChangeSpecies")] internal static extern byte ChangeSpecies(IntPtr p, IntPtr species, IntPtr variant); /// Creature * /// const SpeciesVariant * /// unsigned char [DllImport("libCreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_Creature_ChangeVariant")] internal static extern byte ChangeVariant(IntPtr p, IntPtr variant); /// const Creature * /// unsigned char [DllImport("libCreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_Creature_GetLevel")] internal static extern byte GetLevel(IntPtr p); /// const Creature * /// unsigned int [DllImport("libCreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_Creature_GetExperience")] internal static extern uint GetExperience(IntPtr p); /// const Creature * /// unsigned int [DllImport("libCreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_Creature_GetUniqueIdentifier")] internal static extern uint GetUniqueIdentifier(IntPtr p); /// const Creature * /// Gender [DllImport("libCreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_Creature_GetGender")] internal static extern Gender GetGender(IntPtr p); /// const Creature * /// unsigned char [DllImport("libCreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_Creature_GetColoring")] internal static extern byte GetColoring(IntPtr p); /// const Creature * /// const char * /// bool [DllImport("libCreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_Creature_HasHeldItem")] internal static extern byte HasHeldItem(IntPtr p, IntPtr name); /// const Creature * /// unsigned int /// bool [DllImport("libCreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_Creature_HasHeldItemWithHash")] internal static extern byte HasHeldItemWithHash(IntPtr p, uint hash); /// const Creature * /// const Item * [DllImport("libCreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_Creature_GetHeldItem")] internal static extern IntPtr GetHeldItem(IntPtr p); /// Creature * /// const char * /// unsigned char [DllImport("libCreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_Creature_SetHeldItem")] internal static extern byte SetHeldItem(IntPtr p, IntPtr name); /// Creature * /// unsigned int /// unsigned char [DllImport("libCreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_Creature_SetHeldItemWithHash")] internal static extern byte SetHeldItemWithHash(IntPtr p, uint hash); /// Creature * /// const Item * /// void [DllImport("libCreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_Creature_SetHeldItemFromItem")] internal static extern void SetHeldItemFromItem(IntPtr p, IntPtr item); /// const Creature * /// unsigned int [DllImport("libCreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_Creature_GetCurrentHealth")] internal static extern uint GetCurrentHealth(IntPtr p); /// const Creature * /// Battle * [DllImport("libCreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_Creature_GetBattle")] internal static extern IntPtr GetBattle(IntPtr p); /// const Creature * /// BattleSide * [DllImport("libCreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_Creature_GetBattleSide")] internal static extern IntPtr GetBattleSide(IntPtr p); /// const Creature * /// bool [DllImport("libCreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_Creature_IsOnBattleField")] internal static extern byte IsOnBattleField(IntPtr p); /// Creature * /// const char * [DllImport("libCreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_Creature_GetNickname")] internal static extern IntPtr GetNickname(IntPtr p); /// Creature * /// const char * /// void [DllImport("libCreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_Creature_SetNickname")] internal static extern void SetNickname(IntPtr p, IntPtr nickname); /// Creature * /// unsigned char /// bool [DllImport("libCreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_Creature_HasType")] internal static extern byte HasType(IntPtr p, byte type); /// Creature * /// long unsigned int [DllImport("libCreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_Creature_GetTypeCount")] internal static extern ulong GetTypeCount(IntPtr p); /// Creature * /// const unsigned char * [DllImport("libCreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_Creature_GetTypes")] internal static extern IntPtr GetTypes(IntPtr p); /// const Creature * /// unsigned int [DllImport("libCreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_Creature_GetMaxHealth")] internal static extern uint GetMaxHealth(IntPtr p); /// Creature * /// signed char /// unsigned char [DllImport("libCreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_Creature_ChangeLevelBy")] internal static extern byte ChangeLevelBy(IntPtr p, sbyte level); /// Creature * /// unsigned int /// DamageSource /// unsigned char [DllImport("libCreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_Creature_Damage")] internal static extern byte Damage(IntPtr p, uint damage, DamageSource source); /// Creature * /// unsigned int /// bool /// unsigned char [DllImport("libCreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_Creature_Heal")] internal static extern byte Heal(IntPtr p, uint health, byte canRevive); /// Creature * /// unsigned char [DllImport("libCreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_Creature_RestoreAllAttackUses")] internal static extern byte RestoreAllAttackUses(IntPtr p); /// const Creature * /// bool [DllImport("libCreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_Creature_GetRealTalentIsSecret")] internal static extern byte GetRealTalentIsSecret(IntPtr p); /// const Creature * /// bool [DllImport("libCreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_Creature_GetRealTalentIndex")] internal static extern byte GetRealTalentIndex(IntPtr p); /// const Creature * /// const char * & /// unsigned char [DllImport("libCreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_Creature_GetActiveTalent")] internal static extern byte GetActiveTalent(IntPtr p, ref IntPtr @out); /// Creature * /// const char * /// unsigned char [DllImport("libCreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_Creature_OverrideActiveTalent")] internal static extern byte OverrideActiveTalent(IntPtr p, IntPtr talent); /// Creature * /// unsigned int /// unsigned char [DllImport("libCreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_Creature_AddExperience")] internal static extern byte AddExperience(IntPtr p, uint experience); /// Creature * /// unsigned char [DllImport("libCreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_Creature_ClearVolatileScripts")] internal static extern byte ClearVolatileScripts(IntPtr p); /// Creature * /// const char * /// unsigned char [DllImport("libCreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_Creature_AddVolatileScriptByName")] internal static extern byte AddVolatileScriptByName(IntPtr p, IntPtr scriptName); /// Creature * /// BattleScript * /// unsigned char [DllImport("libCreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_Creature_AddVolatileScript")] internal static extern byte AddVolatileScript(IntPtr p, IntPtr script); /// Creature * /// const char * /// unsigned char [DllImport("libCreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_Creature_RemoveVolatileScriptByName")] internal static extern byte RemoveVolatileScriptByName(IntPtr p, IntPtr scriptName); /// Creature * /// BattleScript * /// unsigned char [DllImport("libCreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_Creature_RemoveVolatileScript")] internal static extern byte RemoveVolatileScript(IntPtr p, IntPtr script); /// Creature * /// const char * /// bool [DllImport("libCreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_Creature_HasVolatileScript")] internal static extern byte HasVolatileScript(IntPtr p, IntPtr scriptName); /// Creature * /// long unsigned int [DllImport("libCreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_Creature_GetAttacksCount")] internal static extern ulong GetAttacksCount(IntPtr p); /// Creature * /// const LearnedAttack * * [DllImport("libCreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_Creature_GetAttacks")] internal static extern IntPtr GetAttacks(IntPtr p); /// Creature * /// const char * /// bool [DllImport("libCreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_Creature_HasAttack")] internal static extern byte HasAttack(IntPtr p, IntPtr scriptName); /// const Creature * /// const CreatureSpecies * [DllImport("libCreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_Creature_GetDisplaySpecies")] internal static extern IntPtr GetDisplaySpecies(IntPtr p); /// const Creature * /// const SpeciesVariant * [DllImport("libCreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_Creature_GetDisplayVariant")] internal static extern IntPtr GetDisplayVariant(IntPtr p); /// Creature * /// const CreatureSpecies * /// void [DllImport("libCreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_Creature_SetDisplaySpecies")] internal static extern void SetDisplaySpecies(IntPtr p, IntPtr species); /// Creature * /// const SpeciesVariant * /// void [DllImport("libCreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_Creature_SetDisplayVariant")] internal static extern void SetDisplayVariant(IntPtr p, IntPtr variant); /// Creature * /// bool [DllImport("libCreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_Creature_AllowedExperienceGain")] internal static extern byte AllowedExperienceGain(IntPtr p); /// Creature * /// bool /// void [DllImport("libCreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_Creature_SetAllowedExperienceGain")] internal static extern void SetAllowedExperienceGain(IntPtr p, byte b); /// Creature * /// Statistic /// signed char /// void [DllImport("libCreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_Creature_ChangeStatBoost")] internal static extern void ChangeStatBoost(IntPtr p, Statistic stat, sbyte diffAmount); /// Creature * /// Statistic /// unsigned int [DllImport("libCreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_Creature_GetFlatStat")] internal static extern uint GetFlatStat(IntPtr p, Statistic stat); /// Creature * /// Statistic /// unsigned int [DllImport("libCreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_Creature_GetBoostedStat")] internal static extern uint GetBoostedStat(IntPtr p, Statistic stat); /// Creature * /// Statistic /// unsigned int [DllImport("libCreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_Creature_GetBaseStat")] internal static extern uint GetBaseStat(IntPtr p, Statistic stat); /// Creature * /// Statistic /// signed char [DllImport("libCreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_Creature_GetStatBoost")] internal static extern sbyte GetStatBoost(IntPtr p, Statistic stat); /// const Creature * /// unsigned char [DllImport("libCreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_Creature_GetAvailableAttackSlot")] internal static extern byte GetAvailableAttackSlot(IntPtr p); /// Creature * /// LearnedAttack * /// unsigned char [DllImport("libCreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_Creature_AddAttack")] internal static extern byte AddAttack(IntPtr p, IntPtr attack); /// Creature * /// long unsigned int /// LearnedAttack * /// unsigned char [DllImport("libCreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_Creature_ReplaceAttack")] internal static extern byte ReplaceAttack(IntPtr p, ulong index, IntPtr attack); /// Creature * /// long unsigned int /// long unsigned int /// unsigned char [DllImport("libCreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_Creature_SwapAttack")] internal static extern byte SwapAttack(IntPtr p, ulong a, ulong b); } }