diff --git a/PkmnLibSharp/Battling/Battle/Battle.cs b/PkmnLibSharp/Battling/Battle/Battle.cs index 76cdbbf..8255cbe 100644 --- a/PkmnLibSharp/Battling/Battle/Battle.cs +++ b/PkmnLibSharp/Battling/Battle/Battle.cs @@ -3,6 +3,7 @@ using System.Collections.Generic; using System.Linq; using PkmnLibSharp.Battling.ChoiceTurn; using PkmnLibSharp.Battling.Events; +using PkmnLibSharp.Battling.History; using PkmnLibSharp.Utilities; namespace PkmnLibSharp.Battling @@ -88,6 +89,19 @@ namespace PkmnLibSharp.Battling public string? WeatherName => Pkmnlib.Generated.Battle.GetWeatherName(Ptr).PtrString(); + public HistoryHandler History + { + get + { + if (_history != null) return _history; + var ptr = Creaturelib.Generated.Battle.GetHistory(Ptr); + if (TryResolvePointer(ptr, out _history)) + return _history!; + _history = new HistoryHandler(ptr); + return _history; + } + } + public bool CanUse(BaseTurnChoice turnChoice) { @@ -201,6 +215,7 @@ namespace PkmnLibSharp.Battling private BattleRandom? _random; private ReadOnlyNativePtrArray? _sides; private ReadOnlyNativePtrArray? _parties; + private HistoryHandler? _history; protected override void DeletePtr() { diff --git a/PkmnLibSharp/Battling/Battle/ExecutingMove.cs b/PkmnLibSharp/Battling/Battle/ExecutingMove.cs index 734b8ef..f6b25c1 100644 --- a/PkmnLibSharp/Battling/Battle/ExecutingMove.cs +++ b/PkmnLibSharp/Battling/Battle/ExecutingMove.cs @@ -1,12 +1,72 @@ +using System; using PkmnLibSharp.Utilities; namespace PkmnLibSharp.Battling { public class ExecutingMove : PointerWrapper { + internal ExecutingMove(IntPtr ptr) : base(ptr){} + + public LearnedMove Move + { + get + { + if (_move != null) return _move; + var ptr = Creaturelib.Generated.ExecutingAttack.GetAttack(Ptr); + if (TryResolvePointer(ptr, out _move)) + return _move!; + _move = new LearnedMove(ptr); + return _move; + } + } + public Pokemon User + { + get + { + if (_user != null) return _user; + var ptr = Creaturelib.Generated.ExecutingAttack.GetUser(Ptr); + if (TryResolvePointer(ptr, out _user)) + return _user!; + _user = new Pokemon(ptr); + return _user; + } + } + + /// + /// Get the first hit for the first target. Honestly just here so I can quickly read hit info from my debugger. + /// + public HitData FirstHit => GetHitData(Targets[0], 0); + + public ReadOnlyNativePtrArray Targets + { + get + { + if (_targets != null) return _targets; + var size = Creaturelib.Generated.ExecutingAttack.GetTargetCount(Ptr); + var ptr = Creaturelib.Generated.ExecutingAttack.GetTargets(Ptr); + _targets = new ReadOnlyNativePtrArray(ptr, size); + return _targets; + } + } + + + public HitData GetHitData(Pokemon target, byte index) + { + var ptr = IntPtr.Zero; + Creaturelib.Generated.ExecutingAttack.GetHitData(ref ptr, Ptr, target.Ptr, index).Assert(); + return new HitData(ptr); + } + + public bool IsPokemonTarget(Pokemon pokemon) + { + return Creaturelib.Generated.ExecutingAttack.IsCreatureTarget(Ptr, pokemon.Ptr) == 1; + } + + private LearnedMove? _move; + private Pokemon? _user; + private ReadOnlyNativePtrArray? _targets; protected override void DeletePtr() { - throw new System.NotImplementedException(); } } } \ No newline at end of file diff --git a/PkmnLibSharp/Battling/Battle/HitData.cs b/PkmnLibSharp/Battling/Battle/HitData.cs new file mode 100644 index 0000000..fd87a23 --- /dev/null +++ b/PkmnLibSharp/Battling/Battle/HitData.cs @@ -0,0 +1,21 @@ +using System; +using PkmnLibSharp.Utilities; + +namespace PkmnLibSharp.Battling +{ + public class HitData : PointerWrapper + { + internal HitData(IntPtr ptr) : base(ptr){} + + public byte BasePower => Creaturelib.Generated.HitData.GetBasePower(Ptr); + public bool IsCritical => Creaturelib.Generated.HitData.IsCritical(Ptr) == 1; + public float Effectiveness => Creaturelib.Generated.HitData.GetEffectiveness(Ptr); + public uint Damage => Creaturelib.Generated.HitData.GetDamage(Ptr); + public byte Type => Creaturelib.Generated.HitData.GetType(Ptr); + + protected override void DeletePtr() + { + + } + } +} \ No newline at end of file diff --git a/PkmnLibSharp/Battling/History/HistoryElement.cs b/PkmnLibSharp/Battling/History/HistoryElement.cs new file mode 100644 index 0000000..5dfeffc --- /dev/null +++ b/PkmnLibSharp/Battling/History/HistoryElement.cs @@ -0,0 +1,40 @@ +using System; +using PkmnLibSharp.Utilities; + +namespace PkmnLibSharp.Battling.History +{ + public abstract class HistoryElement : PointerWrapper + { + internal HistoryElement(IntPtr ptr) : base(ptr){} + + public HistoryElementKind Kind => (HistoryElementKind) Creaturelib.Generated.HistoryElement.GetKind(Ptr); + + public HistoryElement? GetPrevious() + { + if (_previous != null) return _previous; + var ptr = Creaturelib.Generated.HistoryElement.GetPrevious(Ptr); + _previous = Construct(ptr); + return _previous; + } + + internal static HistoryElement? Construct(IntPtr ptr) + { + if (ptr == IntPtr.Zero) return null; + var kind = (HistoryElementKind) Creaturelib.Generated.HistoryElement.GetKind(ptr); + switch (kind) + { + case HistoryElementKind.MoveUse: + return new MoveUseHistory(ptr); + default: + throw new ArgumentOutOfRangeException(); + } + } + + private HistoryElement? _previous; + + protected override void DeletePtr() + { + + } + } +} \ No newline at end of file diff --git a/PkmnLibSharp/Battling/History/HistoryElementKind.cs b/PkmnLibSharp/Battling/History/HistoryElementKind.cs new file mode 100644 index 0000000..13b6534 --- /dev/null +++ b/PkmnLibSharp/Battling/History/HistoryElementKind.cs @@ -0,0 +1,7 @@ +namespace PkmnLibSharp.Battling.History +{ + public enum HistoryElementKind : byte + { + MoveUse = 0, + } +} \ No newline at end of file diff --git a/PkmnLibSharp/Battling/History/HistoryHandler.cs b/PkmnLibSharp/Battling/History/HistoryHandler.cs new file mode 100644 index 0000000..dbe243f --- /dev/null +++ b/PkmnLibSharp/Battling/History/HistoryHandler.cs @@ -0,0 +1,43 @@ +using System; +using System.Collections; +using System.Collections.Generic; +using PkmnLibSharp.Utilities; + +namespace PkmnLibSharp.Battling.History +{ + public class HistoryHandler : PointerWrapper + { + internal HistoryHandler(IntPtr ptr) : base(ptr){} + + public HistoryElement? TopElement + { + get + { + var ptr = Creaturelib.Generated.HistoryHandler.GetTopElement(Ptr); + return HistoryElement.Construct(ptr); + } + } + + public HistoryElement? GetLastUsedMove() + { + var ptr = Creaturelib.Generated.HistoryHandler.GetLastUsedAttack(Ptr); + return HistoryElement.Construct(ptr); + } + + public IEnumerable GetIterator() + { + var top = TopElement; + if (top == null) yield break; + while (top != null) + { + yield return top; + top = top.GetPrevious(); + } + } + + protected override void DeletePtr() + { + + } + } +} \ No newline at end of file diff --git a/PkmnLibSharp/Battling/History/MoveUseHistory.cs b/PkmnLibSharp/Battling/History/MoveUseHistory.cs new file mode 100644 index 0000000..010e963 --- /dev/null +++ b/PkmnLibSharp/Battling/History/MoveUseHistory.cs @@ -0,0 +1,24 @@ +using System; + +namespace PkmnLibSharp.Battling.History +{ + public class MoveUseHistory : HistoryElement + { + internal MoveUseHistory(IntPtr ptr) : base(ptr) + { + } + + public ExecutingMove Move + { + get + { + if (_move != null) return _move; + var ptr = Creaturelib.Generated.AttackUseHistory.GetAttack(Ptr); + _move = new ExecutingMove(ptr); + return _move; + } + } + + private ExecutingMove? _move; + } +} \ No newline at end of file diff --git a/PkmnLibSharp/Battling/Pokemon.cs b/PkmnLibSharp/Battling/Pokemon.cs index 4bf409e..6bad917 100644 --- a/PkmnLibSharp/Battling/Pokemon.cs +++ b/PkmnLibSharp/Battling/Pokemon.cs @@ -32,6 +32,7 @@ namespace PkmnLibSharp.Battling evs.SpecialAttack, evs.SpecialDefense, evs.Speed, nature.Ptr)) { Library = library; + Initialize(); } public BattleLibrary Library { get; private set; } @@ -274,6 +275,11 @@ namespace PkmnLibSharp.Battling public string? StatusName => Pkmnlib.Generated.Pokemon.GetStatusName(Ptr).PtrString(); + public void Initialize() + { + Creaturelib.Generated.Creature.Initialize(Ptr).Assert(); + } + public void ChangeForme(Forme forme) { _forme = null; diff --git a/PkmnLibSharp/Battling/PokemonBuilder.cs b/PkmnLibSharp/Battling/PokemonBuilder.cs index b3867ac..bedb84b 100644 --- a/PkmnLibSharp/Battling/PokemonBuilder.cs +++ b/PkmnLibSharp/Battling/PokemonBuilder.cs @@ -183,6 +183,12 @@ namespace PkmnLibSharp.Battling } var nature = Library.StaticLibrary.NatureLibrary.GetNature(Nature); + + if (Gender == (Gender) (-1)) + { + Gender = species.GetRandomGender(random); + } + return Finalize(species, forme!, heldItem, moves, nature); } } diff --git a/PkmnLibSharp/Generated/Creaturelib/AttackUseHistory.cs b/PkmnLibSharp/Generated/Creaturelib/AttackUseHistory.cs new file mode 100644 index 0000000..7a24de7 --- /dev/null +++ b/PkmnLibSharp/Generated/Creaturelib/AttackUseHistory.cs @@ -0,0 +1,15 @@ +// AUTOMATICALLY GENERATED, DO NOT EDIT +using System; +using System.Runtime.InteropServices; + +namespace Creaturelib.Generated +{ + internal static class AttackUseHistory + { + /// const AttackUseHistory * + /// const ExecutingAttack * + [DllImport("CreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_AttackUseHistory_GetAttack")] + internal static extern IntPtr GetAttack(IntPtr p); + + } +} diff --git a/PkmnLibSharp/Generated/Creaturelib/Battle.cs b/PkmnLibSharp/Generated/Creaturelib/Battle.cs index af57d9c..c65f3d8 100644 --- a/PkmnLibSharp/Generated/Creaturelib/Battle.cs +++ b/PkmnLibSharp/Generated/Creaturelib/Battle.cs @@ -192,5 +192,10 @@ namespace Creaturelib.Generated [DllImport("CreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_Battle_RegisterEventListener")] internal static extern byte RegisterEventListener(IntPtr p, IntPtr func); + /// Battle * + /// const HistoryHolder * + [DllImport("CreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_Battle_GetHistory")] + internal static extern IntPtr GetHistory(IntPtr p); + } } diff --git a/PkmnLibSharp/Generated/Creaturelib/C.cs b/PkmnLibSharp/Generated/Creaturelib/C.cs index 58074d7..6cb534d 100644 --- a/PkmnLibSharp/Generated/Creaturelib/C.cs +++ b/PkmnLibSharp/Generated/Creaturelib/C.cs @@ -10,5 +10,9 @@ namespace Creaturelib.Generated [DllImport("CreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_C_GetLastException")] internal static extern IntPtr GetLastException(); + /// const char * + [DllImport("CreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_C_GetLastExceptionStacktrace")] + internal static extern IntPtr GetLastExceptionStacktrace(); + } } diff --git a/PkmnLibSharp/Generated/Creaturelib/Creature.cs b/PkmnLibSharp/Generated/Creaturelib/Creature.cs index 7473320..ed28ac5 100644 --- a/PkmnLibSharp/Generated/Creaturelib/Creature.cs +++ b/PkmnLibSharp/Generated/Creaturelib/Creature.cs @@ -31,6 +31,11 @@ namespace Creaturelib.Generated [DllImport("CreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_Creature_Destruct")] internal static extern void Destruct(IntPtr p); + /// Creature * + /// unsigned char + [DllImport("CreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_Creature_Initialize")] + internal static extern byte Initialize(IntPtr p); + /// const Creature * /// const BattleLibrary * [DllImport("CreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_Creature_GetLibrary")] diff --git a/PkmnLibSharp/Generated/Creaturelib/ExecutingAttack.cs b/PkmnLibSharp/Generated/Creaturelib/ExecutingAttack.cs index 8562a07..505cd58 100644 --- a/PkmnLibSharp/Generated/Creaturelib/ExecutingAttack.cs +++ b/PkmnLibSharp/Generated/Creaturelib/ExecutingAttack.cs @@ -36,6 +36,16 @@ namespace Creaturelib.Generated [DllImport("CreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_ExecutingAttack_IsCreatureTarget")] internal static extern byte IsCreatureTarget(IntPtr p, IntPtr target); + /// ExecutingAttack * + /// unsigned char + [DllImport("CreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_ExecutingAttack_GetTargetCount")] + internal static extern byte GetTargetCount(IntPtr p); + + /// ExecutingAttack * + /// const const Creature * * + [DllImport("CreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_ExecutingAttack_GetTargets")] + internal static extern IntPtr GetTargets(IntPtr p); + /// ExecutingAttack * /// Creature * [DllImport("CreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_ExecutingAttack_GetUser")] diff --git a/PkmnLibSharp/Generated/Creaturelib/HistoryElement.cs b/PkmnLibSharp/Generated/Creaturelib/HistoryElement.cs new file mode 100644 index 0000000..3f3a9de --- /dev/null +++ b/PkmnLibSharp/Generated/Creaturelib/HistoryElement.cs @@ -0,0 +1,20 @@ +// AUTOMATICALLY GENERATED, DO NOT EDIT +using System; +using System.Runtime.InteropServices; + +namespace Creaturelib.Generated +{ + internal static class HistoryElement + { + /// const HistoryElement * + /// HistoryElementKind + [DllImport("CreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_HistoryElement_GetKind")] + internal static extern HistoryElementKind GetKind(IntPtr p); + + /// const HistoryElement * + /// const HistoryElement * + [DllImport("CreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_HistoryElement_GetPrevious")] + internal static extern IntPtr GetPrevious(IntPtr p); + + } +} diff --git a/PkmnLibSharp/Generated/Pkmnlib/asEMsgType.cs b/PkmnLibSharp/Generated/Creaturelib/HistoryElementKind.cs similarity index 50% rename from PkmnLibSharp/Generated/Pkmnlib/asEMsgType.cs rename to PkmnLibSharp/Generated/Creaturelib/HistoryElementKind.cs index a75a686..9aa9a37 100644 --- a/PkmnLibSharp/Generated/Pkmnlib/asEMsgType.cs +++ b/PkmnLibSharp/Generated/Creaturelib/HistoryElementKind.cs @@ -1,13 +1,11 @@ // AUTOMATICALLY GENERATED, DO NOT EDIT using System.Diagnostics.CodeAnalysis; -namespace Pkmnlib +namespace Creaturelib { [SuppressMessage("ReSharper", "InconsistentNaming")] - internal enum asEMsgType : int + internal enum HistoryElementKind : byte { - asMSGTYPE_ERROR = 0, - asMSGTYPE_WARNING = 1, - asMSGTYPE_INFORMATION = 2, + AttackUse = 0, } } diff --git a/PkmnLibSharp/Generated/Creaturelib/HistoryHandler.cs b/PkmnLibSharp/Generated/Creaturelib/HistoryHandler.cs new file mode 100644 index 0000000..53a5c41 --- /dev/null +++ b/PkmnLibSharp/Generated/Creaturelib/HistoryHandler.cs @@ -0,0 +1,20 @@ +// AUTOMATICALLY GENERATED, DO NOT EDIT +using System; +using System.Runtime.InteropServices; + +namespace Creaturelib.Generated +{ + internal static class HistoryHandler + { + /// const HistoryHolder * + /// const HistoryElement * + [DllImport("CreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_HistoryHandler_GetTopElement")] + internal static extern IntPtr GetTopElement(IntPtr p); + + /// const HistoryHolder * + /// const HistoryElement * + [DllImport("CreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_HistoryHandler_GetLastUsedAttack")] + internal static extern IntPtr GetLastUsedAttack(IntPtr p); + + } +} diff --git a/PkmnLibSharp/Generated/Pkmnlib/Evolution.cs b/PkmnLibSharp/Generated/Pkmnlib/Evolution.cs deleted file mode 100644 index a135d98..0000000 --- a/PkmnLibSharp/Generated/Pkmnlib/Evolution.cs +++ /dev/null @@ -1,88 +0,0 @@ -// AUTOMATICALLY GENERATED, DO NOT EDIT -using System; -using System.Runtime.InteropServices; - -namespace Pkmnlib.Generated -{ - internal static class Evolution - { - /// TimeOfDay - /// const PokemonSpecies * - /// const EvolutionData * - [DllImport("pkmnLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "PkmnLib_Evolution_CreateTimeEvolution")] - internal static extern IntPtr CreateTimeEvolution(TimeOfDay time, IntPtr into); - - /// const Item * - /// const PokemonSpecies * - /// const EvolutionData * - [DllImport("pkmnLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "PkmnLib_Evolution_CreateItemEvolution")] - internal static extern IntPtr CreateItemEvolution(IntPtr item, IntPtr into); - - /// Gender - /// unsigned char - /// const PokemonSpecies * - /// const EvolutionData * - [DllImport("pkmnLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "PkmnLib_Evolution_CreateGenderBasedEvolution")] - internal static extern IntPtr CreateGenderBasedEvolution(Gender gender, byte level, IntPtr into); - - /// const Item * - /// const PokemonSpecies * - /// const EvolutionData * - [DllImport("pkmnLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "PkmnLib_Evolution_CreateItemUseEvolution")] - internal static extern IntPtr CreateItemUseEvolution(IntPtr item, IntPtr into); - - /// const Item * - /// Gender - /// const PokemonSpecies * - /// const EvolutionData * - [DllImport("pkmnLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "PkmnLib_Evolution_CreateItemUseWithGenderEvolution")] - internal static extern IntPtr CreateItemUseWithGenderEvolution(IntPtr item, Gender gender, IntPtr into); - - /// const PokemonSpecies * - /// const EvolutionData * - [DllImport("pkmnLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "PkmnLib_Evolution_CreateTradeEvolution")] - internal static extern IntPtr CreateTradeEvolution(IntPtr into); - - /// const Item * - /// const PokemonSpecies * - /// const EvolutionData * - [DllImport("pkmnLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "PkmnLib_Evolution_CreateTradeWithItemEvolution")] - internal static extern IntPtr CreateTradeWithItemEvolution(IntPtr item, IntPtr into); - - /// const PokemonSpecies * - /// const PokemonSpecies * - /// const EvolutionData * - [DllImport("pkmnLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "PkmnLib_Evolution_CreateTradeWithSpeciesEvolution")] - internal static extern IntPtr CreateTradeWithSpeciesEvolution(IntPtr traded, IntPtr into); - - /// const EffectParameter * * - /// long unsigned int - /// const PokemonSpecies * - /// const EvolutionData * - [DllImport("pkmnLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "PkmnLib_Evolution_CreateCustomEvolution")] - internal static extern IntPtr CreateCustomEvolution(IntPtr data, ulong dataLength, IntPtr into); - - /// const EvolutionData * - /// EvolutionMethod - [DllImport("pkmnLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "PkmnLib_Evolution_GetMethod")] - internal static extern EvolutionMethod GetMethod(IntPtr data); - - /// const EvolutionData * - /// const PokemonSpecies * - [DllImport("pkmnLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "PkmnLib_Evolution_GetNewSpecies")] - internal static extern IntPtr GetNewSpecies(IntPtr data); - - /// const EvolutionData * - /// long unsigned int - [DllImport("pkmnLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "PkmnLib_Evolution_GetDataCount")] - internal static extern ulong GetDataCount(IntPtr data); - - /// const EvolutionData * - /// long unsigned int - /// const EffectParameter * & - /// unsigned char - [DllImport("pkmnLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "PkmnLib_Evolution_GetData")] - internal static extern byte GetData(IntPtr data, ulong index, ref IntPtr @out); - - } -} diff --git a/PkmnLibSharp/Generated/Pkmnlib/PokemonForme.cs b/PkmnLibSharp/Generated/Pkmnlib/PokemonForme.cs new file mode 100644 index 0000000..b5cbc82 --- /dev/null +++ b/PkmnLibSharp/Generated/Pkmnlib/PokemonForme.cs @@ -0,0 +1,33 @@ +// AUTOMATICALLY GENERATED, DO NOT EDIT +using System; +using System.Runtime.InteropServices; + +namespace Pkmnlib.Generated +{ + internal static class PokemonForme + { + /// const char * + /// float + /// float + /// unsigned int + /// unsigned char * + /// long unsigned int + /// unsigned short + /// unsigned short + /// unsigned short + /// unsigned short + /// unsigned short + /// unsigned short + /// const char * * + /// long unsigned int + /// const char * * + /// long unsigned int + /// const LearnableMoves * + /// const char * * + /// long unsigned int + /// PokemonForme * + [DllImport("pkmnLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "PkmnLib_PokemonForme_Construct")] + internal static extern IntPtr Construct(IntPtr name, float height, float weight, uint baseExperience, IntPtr types, ulong typeLength, ushort baseHealth, ushort baseAttack, ushort baseDefense, ushort baseMagicalAttack, ushort baseMagicalDefense, ushort baseSpeed, IntPtr talents, ulong talentsLength, IntPtr secretTalents, ulong secretTalentsLength, IntPtr attacks, IntPtr flags, ulong flagsCount); + + } +} diff --git a/PkmnLibSharp/Generated/Pkmnlib/asEBehaviours.cs b/PkmnLibSharp/Generated/Pkmnlib/asEBehaviours.cs deleted file mode 100644 index 9b36cad..0000000 --- a/PkmnLibSharp/Generated/Pkmnlib/asEBehaviours.cs +++ /dev/null @@ -1,25 +0,0 @@ -// AUTOMATICALLY GENERATED, DO NOT EDIT -using System.Diagnostics.CodeAnalysis; - -namespace Pkmnlib -{ - [SuppressMessage("ReSharper", "InconsistentNaming")] - internal enum asEBehaviours : int - { - asBEHAVE_CONSTRUCT = 0, - asBEHAVE_LIST_CONSTRUCT = 1, - asBEHAVE_DESTRUCT = 2, - asBEHAVE_FACTORY = 3, - asBEHAVE_LIST_FACTORY = 4, - asBEHAVE_ADDREF = 5, - asBEHAVE_RELEASE = 6, - asBEHAVE_GET_WEAKREF_FLAG = 7, - asBEHAVE_TEMPLATE_CALLBACK = 8, - asBEHAVE_FIRST_GC = 9, - asBEHAVE_SETGCFLAG = 10, - asBEHAVE_GETGCFLAG = 11, - asBEHAVE_ENUMREFS = 12, - asBEHAVE_RELEASEREFS = 13, - asBEHAVE_MAX = 14, - } -} diff --git a/PkmnLibSharp/Generated/Pkmnlib/asECallConvTypes.cs b/PkmnLibSharp/Generated/Pkmnlib/asECallConvTypes.cs deleted file mode 100644 index 27a5132..0000000 --- a/PkmnLibSharp/Generated/Pkmnlib/asECallConvTypes.cs +++ /dev/null @@ -1,19 +0,0 @@ -// AUTOMATICALLY GENERATED, DO NOT EDIT -using System.Diagnostics.CodeAnalysis; - -namespace Pkmnlib -{ - [SuppressMessage("ReSharper", "InconsistentNaming")] - internal enum asECallConvTypes : int - { - asCALL_CDECL = 0, - asCALL_STDCALL = 1, - asCALL_THISCALL_ASGLOBAL = 2, - asCALL_THISCALL = 3, - asCALL_CDECL_OBJLAST = 4, - asCALL_CDECL_OBJFIRST = 5, - asCALL_GENERIC = 6, - asCALL_THISCALL_OBJLAST = 7, - asCALL_THISCALL_OBJFIRST = 8, - } -} diff --git a/PkmnLibSharp/Generated/Pkmnlib/asEContextState.cs b/PkmnLibSharp/Generated/Pkmnlib/asEContextState.cs deleted file mode 100644 index ea11589..0000000 --- a/PkmnLibSharp/Generated/Pkmnlib/asEContextState.cs +++ /dev/null @@ -1,18 +0,0 @@ -// AUTOMATICALLY GENERATED, DO NOT EDIT -using System.Diagnostics.CodeAnalysis; - -namespace Pkmnlib -{ - [SuppressMessage("ReSharper", "InconsistentNaming")] - internal enum asEContextState : int - { - asEXECUTION_FINISHED = 0, - asEXECUTION_SUSPENDED = 1, - asEXECUTION_ABORTED = 2, - asEXECUTION_EXCEPTION = 3, - asEXECUTION_PREPARED = 4, - asEXECUTION_UNINITIALIZED = 5, - asEXECUTION_ACTIVE = 6, - asEXECUTION_ERROR = 7, - } -} diff --git a/PkmnLibSharp/Generated/Pkmnlib/asEEngineProp.cs b/PkmnLibSharp/Generated/Pkmnlib/asEEngineProp.cs deleted file mode 100644 index 7ffce44..0000000 --- a/PkmnLibSharp/Generated/Pkmnlib/asEEngineProp.cs +++ /dev/null @@ -1,42 +0,0 @@ -// AUTOMATICALLY GENERATED, DO NOT EDIT -using System.Diagnostics.CodeAnalysis; - -namespace Pkmnlib -{ - [SuppressMessage("ReSharper", "InconsistentNaming")] - internal enum asEEngineProp : int - { - asEP_ALLOW_UNSAFE_REFERENCES = 1, - asEP_OPTIMIZE_BYTECODE = 2, - asEP_COPY_SCRIPT_SECTIONS = 3, - asEP_MAX_STACK_SIZE = 4, - asEP_USE_CHARACTER_LITERALS = 5, - asEP_ALLOW_MULTILINE_STRINGS = 6, - asEP_ALLOW_IMPLICIT_HANDLE_TYPES = 7, - asEP_BUILD_WITHOUT_LINE_CUES = 8, - asEP_INIT_GLOBAL_VARS_AFTER_BUILD = 9, - asEP_REQUIRE_ENUM_SCOPE = 10, - asEP_SCRIPT_SCANNER = 11, - asEP_INCLUDE_JIT_INSTRUCTIONS = 12, - asEP_STRING_ENCODING = 13, - asEP_PROPERTY_ACCESSOR_MODE = 14, - asEP_EXPAND_DEF_ARRAY_TO_TMPL = 15, - asEP_AUTO_GARBAGE_COLLECT = 16, - asEP_DISALLOW_GLOBAL_VARS = 17, - asEP_ALWAYS_IMPL_DEFAULT_CONSTRUCT = 18, - asEP_COMPILER_WARNINGS = 19, - asEP_DISALLOW_VALUE_ASSIGN_FOR_REF_TYPE = 20, - asEP_ALTER_SYNTAX_NAMED_ARGS = 21, - asEP_DISABLE_INTEGER_DIVISION = 22, - asEP_DISALLOW_EMPTY_LIST_ELEMENTS = 23, - asEP_PRIVATE_PROP_AS_PROTECTED = 24, - asEP_ALLOW_UNICODE_IDENTIFIERS = 25, - asEP_HEREDOC_TRIM_MODE = 26, - asEP_MAX_NESTED_CALLS = 27, - asEP_GENERIC_CALL_MODE = 28, - asEP_INIT_STACK_SIZE = 29, - asEP_INIT_CALL_STACK_SIZE = 30, - asEP_MAX_CALL_STACK_SIZE = 31, - asEP_LAST_PROPERTY = 32, - } -} diff --git a/PkmnLibSharp/Generated/Pkmnlib/asEFuncType.cs b/PkmnLibSharp/Generated/Pkmnlib/asEFuncType.cs deleted file mode 100644 index ff34129..0000000 --- a/PkmnLibSharp/Generated/Pkmnlib/asEFuncType.cs +++ /dev/null @@ -1,18 +0,0 @@ -// AUTOMATICALLY GENERATED, DO NOT EDIT -using System.Diagnostics.CodeAnalysis; - -namespace Pkmnlib -{ - [SuppressMessage("ReSharper", "InconsistentNaming")] - internal enum asEFuncType : int - { - asFUNC_DUMMY = -1, - asFUNC_SYSTEM = 0, - asFUNC_SCRIPT = 1, - asFUNC_INTERFACE = 2, - asFUNC_VIRTUAL = 3, - asFUNC_FUNCDEF = 4, - asFUNC_IMPORTED = 5, - asFUNC_DELEGATE = 6, - } -} diff --git a/PkmnLibSharp/Generated/Pkmnlib/asEGMFlags.cs b/PkmnLibSharp/Generated/Pkmnlib/asEGMFlags.cs deleted file mode 100644 index 5fcf491..0000000 --- a/PkmnLibSharp/Generated/Pkmnlib/asEGMFlags.cs +++ /dev/null @@ -1,13 +0,0 @@ -// AUTOMATICALLY GENERATED, DO NOT EDIT -using System.Diagnostics.CodeAnalysis; - -namespace Pkmnlib -{ - [SuppressMessage("ReSharper", "InconsistentNaming")] - internal enum asEGMFlags : int - { - asGM_ONLY_IF_EXISTS = 0, - asGM_CREATE_IF_NOT_EXISTS = 1, - asGM_ALWAYS_CREATE = 2, - } -} diff --git a/PkmnLibSharp/Generated/Pkmnlib/asEObjTypeFlags.cs b/PkmnLibSharp/Generated/Pkmnlib/asEObjTypeFlags.cs deleted file mode 100644 index 88adc75..0000000 --- a/PkmnLibSharp/Generated/Pkmnlib/asEObjTypeFlags.cs +++ /dev/null @@ -1,57 +0,0 @@ -// AUTOMATICALLY GENERATED, DO NOT EDIT -using System.Diagnostics.CodeAnalysis; - -namespace Pkmnlib -{ - [SuppressMessage("ReSharper", "InconsistentNaming")] - internal enum asEObjTypeFlags : int - { - asOBJ_REF = 1, - asOBJ_VALUE = 2, - asOBJ_GC = 4, - asOBJ_POD = 8, - asOBJ_NOHANDLE = 16, - asOBJ_SCOPED = 32, - asOBJ_TEMPLATE = 64, - asOBJ_ASHANDLE = 128, - asOBJ_APP_CLASS = 256, - asOBJ_APP_CLASS_CONSTRUCTOR = 512, - asOBJ_APP_CLASS_C = 768, - asOBJ_APP_CLASS_DESTRUCTOR = 1024, - asOBJ_APP_CLASS_D = 1280, - asOBJ_APP_CLASS_CD = 1792, - asOBJ_APP_CLASS_ASSIGNMENT = 2048, - asOBJ_APP_CLASS_A = 2304, - asOBJ_APP_CLASS_CA = 2816, - asOBJ_APP_CLASS_DA = 3328, - asOBJ_APP_CLASS_CDA = 3840, - asOBJ_APP_CLASS_COPY_CONSTRUCTOR = 4096, - asOBJ_APP_CLASS_K = 4352, - asOBJ_APP_CLASS_CK = 4864, - asOBJ_APP_CLASS_DK = 5376, - asOBJ_APP_CLASS_CDK = 5888, - asOBJ_APP_CLASS_AK = 6400, - asOBJ_APP_CLASS_CAK = 6912, - asOBJ_APP_CLASS_DAK = 7424, - asOBJ_APP_CLASS_CDAK = 7936, - asOBJ_APP_PRIMITIVE = 8192, - asOBJ_APP_FLOAT = 16384, - asOBJ_APP_ARRAY = 32768, - asOBJ_APP_CLASS_ALLINTS = 65536, - asOBJ_APP_CLASS_ALLFLOATS = 131072, - asOBJ_NOCOUNT = 262144, - asOBJ_APP_CLASS_ALIGN8 = 524288, - asOBJ_IMPLICIT_HANDLE = 1048576, - asOBJ_MASK_VALID_FLAGS = 2097151, - asOBJ_SCRIPT_OBJECT = 2097152, - asOBJ_SHARED = 4194304, - asOBJ_NOINHERIT = 8388608, - asOBJ_FUNCDEF = 16777216, - asOBJ_LIST_PATTERN = 33554432, - asOBJ_ENUM = 67108864, - asOBJ_TEMPLATE_SUBTYPE = 134217728, - asOBJ_TYPEDEF = 268435456, - asOBJ_ABSTRACT = 536870912, - asOBJ_APP_ALIGN16 = 1073741824, - } -} diff --git a/PkmnLibSharp/Generated/Pkmnlib/asERetCodes.cs b/PkmnLibSharp/Generated/Pkmnlib/asERetCodes.cs deleted file mode 100644 index 3c36fc6..0000000 --- a/PkmnLibSharp/Generated/Pkmnlib/asERetCodes.cs +++ /dev/null @@ -1,39 +0,0 @@ -// AUTOMATICALLY GENERATED, DO NOT EDIT -using System.Diagnostics.CodeAnalysis; - -namespace Pkmnlib -{ - [SuppressMessage("ReSharper", "InconsistentNaming")] - internal enum asERetCodes : int - { - asMODULE_IS_IN_USE = -28, - asOUT_OF_MEMORY = -27, - asINIT_GLOBAL_VARS_FAILED = -26, - asBUILD_IN_PROGRESS = -25, - asWRONG_CALLING_CONV = -24, - asILLEGAL_BEHAVIOUR_FOR_TYPE = -23, - asCONFIG_GROUP_IS_IN_USE = -22, - asWRONG_CONFIG_GROUP = -21, - asLOWER_ARRAY_DIMENSION_NOT_REGISTERED = -20, - asCANT_BIND_ALL_FUNCTIONS = -19, - asINVALID_INTERFACE = -18, - asINVALID_CONFIGURATION = -17, - asNO_GLOBAL_VAR = -16, - asNO_MODULE = -15, - asMULTIPLE_FUNCTIONS = -14, - asALREADY_REGISTERED = -13, - asINVALID_TYPE = -12, - asINVALID_OBJECT = -11, - asINVALID_DECLARATION = -10, - asNAME_TAKEN = -9, - asINVALID_NAME = -8, - asNOT_SUPPORTED = -7, - asNO_FUNCTION = -6, - asINVALID_ARG = -5, - asCONTEXT_NOT_PREPARED = -4, - asCONTEXT_NOT_FINISHED = -3, - asCONTEXT_ACTIVE = -2, - asERROR = -1, - asSUCCESS = 0, - } -} diff --git a/PkmnLibSharp/Generated/Pkmnlib/asETokenClass.cs b/PkmnLibSharp/Generated/Pkmnlib/asETokenClass.cs deleted file mode 100644 index 1b74881..0000000 --- a/PkmnLibSharp/Generated/Pkmnlib/asETokenClass.cs +++ /dev/null @@ -1,16 +0,0 @@ -// AUTOMATICALLY GENERATED, DO NOT EDIT -using System.Diagnostics.CodeAnalysis; - -namespace Pkmnlib -{ - [SuppressMessage("ReSharper", "InconsistentNaming")] - internal enum asETokenClass : int - { - asTC_UNKNOWN = 0, - asTC_KEYWORD = 1, - asTC_VALUE = 2, - asTC_IDENTIFIER = 3, - asTC_COMMENT = 4, - asTC_WHITESPACE = 5, - } -} diff --git a/PkmnLibSharp/Generated/Pkmnlib/asETypeIdFlags.cs b/PkmnLibSharp/Generated/Pkmnlib/asETypeIdFlags.cs deleted file mode 100644 index 20a691a..0000000 --- a/PkmnLibSharp/Generated/Pkmnlib/asETypeIdFlags.cs +++ /dev/null @@ -1,29 +0,0 @@ -// AUTOMATICALLY GENERATED, DO NOT EDIT -using System.Diagnostics.CodeAnalysis; - -namespace Pkmnlib -{ - [SuppressMessage("ReSharper", "InconsistentNaming")] - internal enum asETypeIdFlags : int - { - asTYPEID_VOID = 0, - asTYPEID_BOOL = 1, - asTYPEID_INT8 = 2, - asTYPEID_INT16 = 3, - asTYPEID_INT32 = 4, - asTYPEID_INT64 = 5, - asTYPEID_UINT8 = 6, - asTYPEID_UINT16 = 7, - asTYPEID_UINT32 = 8, - asTYPEID_UINT64 = 9, - asTYPEID_FLOAT = 10, - asTYPEID_DOUBLE = 11, - asTYPEID_MASK_SEQNBR = 67108863, - asTYPEID_APPOBJECT = 67108864, - asTYPEID_SCRIPTOBJECT = 134217728, - asTYPEID_TEMPLATE = 268435456, - asTYPEID_MASK_OBJECT = 469762048, - asTYPEID_HANDLETOCONST = 536870912, - asTYPEID_OBJHANDLE = 1073741824, - } -} diff --git a/PkmnLibSharp/Generated/Pkmnlib/asETypeModifiers.cs b/PkmnLibSharp/Generated/Pkmnlib/asETypeModifiers.cs deleted file mode 100644 index 740674f..0000000 --- a/PkmnLibSharp/Generated/Pkmnlib/asETypeModifiers.cs +++ /dev/null @@ -1,15 +0,0 @@ -// AUTOMATICALLY GENERATED, DO NOT EDIT -using System.Diagnostics.CodeAnalysis; - -namespace Pkmnlib -{ - [SuppressMessage("ReSharper", "InconsistentNaming")] - internal enum asETypeModifiers : int - { - asTM_NONE = 0, - asTM_INREF = 1, - asTM_OUTREF = 2, - asTM_INOUTREF = 3, - asTM_CONST = 4, - } -} diff --git a/PkmnLibSharp/Generated/Pkmnlib/memory_order.cs b/PkmnLibSharp/Generated/Pkmnlib/memory_order.cs deleted file mode 100644 index f4f137c..0000000 --- a/PkmnLibSharp/Generated/Pkmnlib/memory_order.cs +++ /dev/null @@ -1,16 +0,0 @@ -// AUTOMATICALLY GENERATED, DO NOT EDIT -using System.Diagnostics.CodeAnalysis; - -namespace Pkmnlib -{ - [SuppressMessage("ReSharper", "InconsistentNaming")] - internal enum memory_order : int - { - memory_order_relaxed = 0, - memory_order_consume = 1, - memory_order_acquire = 2, - memory_order_release = 3, - memory_order_acq_rel = 4, - memory_order_seq_cst = 5, - } -} diff --git a/PkmnLibSharp/Library/Moves/MoveTarget.cs b/PkmnLibSharp/Library/Moves/MoveTarget.cs index 0e95057..f8c731a 100644 --- a/PkmnLibSharp/Library/Moves/MoveTarget.cs +++ b/PkmnLibSharp/Library/Moves/MoveTarget.cs @@ -1,6 +1,6 @@ namespace PkmnLibSharp.Library.Moves { - public enum MoveTarget + public enum MoveTarget : byte { Adjacent = 0, AdjacentAlly = 1, diff --git a/PkmnLibSharp/Library/Species/Forme.cs b/PkmnLibSharp/Library/Species/Forme.cs index f9b5de7..b5f88de 100644 --- a/PkmnLibSharp/Library/Species/Forme.cs +++ b/PkmnLibSharp/Library/Species/Forme.cs @@ -3,6 +3,7 @@ using System.Collections.Generic; using System.Linq; using System.Runtime.InteropServices; using Creaturelib.Generated; +using Pkmnlib.Generated; using PkmnLibSharp.Utilities; using Random = PkmnLibSharp.Utilities.Random; @@ -28,7 +29,7 @@ namespace PkmnLibSharp.Library var hab = hiddenAbilitiesConverted.ArrayPtr(); var tagsPtr = tagsConverted.ArrayPtr(); - var ptr = SpeciesVariant.Construct(name.ToPtr(), height, weight, baseExperience, types.ArrayPtr(), + var ptr = PokemonForme.Construct(name.ToPtr(), height, weight, baseExperience, types.ArrayPtr(), (ulong) types.Length, baseHealth, baseAttack, baseDefense, baseSpecialAttack, baseSpecialDefense, baseSpeed, ab, (ulong) abilities.Count, hab, (ulong) hiddenAbilities.Count, moves.Ptr, tagsPtr, (ulong) tags.Count); diff --git a/PkmnLibSharp/Native/libArbutils.so b/PkmnLibSharp/Native/libArbutils.so index c55f73e..81fcad1 100755 --- a/PkmnLibSharp/Native/libArbutils.so +++ b/PkmnLibSharp/Native/libArbutils.so @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:607493da81b2dea7552269a95d38f856e5c837c79fa09341a1f1b2c33d3a5735 -size 1927984 +oid sha256:6447c22ffdd37eb29df35b3ee6d11baed80e21a41382c0e1c4f4bb06a0adf666 +size 2773368 diff --git a/PkmnLibSharp/Native/libCreatureLib.so b/PkmnLibSharp/Native/libCreatureLib.so index b157887..f98cf6a 100755 --- a/PkmnLibSharp/Native/libCreatureLib.so +++ b/PkmnLibSharp/Native/libCreatureLib.so @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:fe5dba569967d3424a98d2f1f2c2da979d65ef55472dac8527ec1b586c601b11 -size 706328 +oid sha256:a213e47df930af1c9c820cfedbcf85b66400c53dc20ba0ec83c4b3be2e10c4f9 +size 14837392 diff --git a/PkmnLibSharp/Native/libpkmnLib.so b/PkmnLibSharp/Native/libpkmnLib.so index fad1d69..eb58cb6 100755 --- a/PkmnLibSharp/Native/libpkmnLib.so +++ b/PkmnLibSharp/Native/libpkmnLib.so @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:b8e60c246a10db358692a19143b9d29b123a8b5c32970f9c7056786c8b9a9481 -size 1111840 +oid sha256:c1974826cfe4b709cc6911a6159441fdf44eb5d0a60fd6c4f9a7258b9e8fef12 +size 13708752 diff --git a/PkmnLibSharp/Utilities/NativeException.cs b/PkmnLibSharp/Utilities/NativeException.cs index 90a99eb..ec6bdf4 100644 --- a/PkmnLibSharp/Utilities/NativeException.cs +++ b/PkmnLibSharp/Utilities/NativeException.cs @@ -4,8 +4,21 @@ namespace PkmnLibSharp.Utilities { public class NativeException : Exception { - public NativeException(string library, string message) : base($"[{library}] - '{message}'") + public string? Stack { get; } + + public NativeException(string library, string message, string? stack) : base($"[{library}] - '{message}'") { + Stack = stack; + } + + public override string ToString() + { + var s = base.ToString(); + if (Stack != null) + { + s += Environment.NewLine + Stack; + } + return s; } } } \ No newline at end of file diff --git a/PkmnLibSharp/Utilities/ResultChecker.cs b/PkmnLibSharp/Utilities/ResultChecker.cs index b520842..12e725e 100644 --- a/PkmnLibSharp/Utilities/ResultChecker.cs +++ b/PkmnLibSharp/Utilities/ResultChecker.cs @@ -10,13 +10,14 @@ namespace PkmnLibSharp.Utilities { case 0: return; case 1: - throw new NativeException("Arbutils", C.GetLastException().PtrString()!); + throw new NativeException("Arbutils", C.GetLastException().PtrString()!, null); case 2: - throw new NativeException("CreatureLibLibrary", - Creaturelib.Generated.C.GetLastException().PtrString()!); + var message = Creaturelib.Generated.C.GetLastException().PtrString()!; + var stack = Creaturelib.Generated.C.GetLastExceptionStacktrace().PtrString(); + throw new NativeException("CreatureLibLibrary", message, stack); case 4: throw new NativeException("PkmnLib", - Pkmnlib.Generated.C.GetLastException().PtrString()!); + Pkmnlib.Generated.C.GetLastException().PtrString()!, null); } } } diff --git a/PkmnLibSharp/arbutils.json b/PkmnLibSharp/arbutils.json index 14fc387..da6d5fd 100644 --- a/PkmnLibSharp/arbutils.json +++ b/PkmnLibSharp/arbutils.json @@ -1 +1 @@ -{"enums":[],"functions":[{"filename":"Arbutils","name":"Arbutils_C_GetLastException","parameters":[],"returns":"const char *"},{"filename":"Arbutils","name":"Arbutils_Random_Construct","parameters":[],"returns":"Random *"},{"filename":"Arbutils","name":"Arbutils_Random_ConstructWithSeed","parameters":[{"name":"seed","type":"long unsigned int"}],"returns":"Random *"},{"filename":"Arbutils","name":"Arbutils_Random_Destruct","parameters":[{"name":"p","type":"Random *"}],"returns":"void"},{"filename":"Arbutils","name":"Arbutils_Random_GetFloat","parameters":[{"name":"p","type":"Random *"}],"returns":"float"},{"filename":"Arbutils","name":"Arbutils_Random_GetDouble","parameters":[{"name":"p","type":"Random *"}],"returns":"double"},{"filename":"Arbutils","name":"Arbutils_Random_Get","parameters":[{"name":"p","type":"Random *"}],"returns":"int"},{"filename":"Arbutils","name":"Arbutils_Random_GetWithMax","parameters":[{"name":"p","type":"Random *"},{"name":"max","type":"int"},{"name":"out","type":"int &"}],"returns":"unsigned char"},{"filename":"Arbutils","name":"Arbutils_Random_GetInLimits","parameters":[{"name":"p","type":"Random *"},{"name":"min","type":"int"},{"name":"max","type":"int"},{"name":"out","type":"int &"}],"returns":"unsigned char"},{"filename":"Arbutils","name":"Arbutils_Random_GetUnsigned","parameters":[{"name":"p","type":"Random *"}],"returns":"unsigned int"},{"filename":"Arbutils","name":"Arbutils_Random_GetUnsignedWithMax","parameters":[{"name":"p","type":"Random *"},{"name":"max","type":"unsigned int"},{"name":"out","type":"unsigned int &"}],"returns":"unsigned char"},{"filename":"Arbutils","name":"Arbutils_Random_GetUnsignedInLimits","parameters":[{"name":"p","type":"Random *"},{"name":"min","type":"unsigned int"},{"name":"max","type":"unsigned int"},{"name":"out","type":"unsigned int &"}],"returns":"unsigned char"},{"filename":"Arbutils","name":"Arbutils_Random_GetSeed","parameters":[{"name":"p","type":"Random *"}],"returns":"long unsigned int"}]} +{"enums":[{"byteSize":4,"filename":"Arbutils","name":"float_denorm_style","values":{"-1":"denorm_indeterminate","0":"denorm_absent","1":"denorm_present"}},{"byteSize":4,"filename":"Arbutils","name":"float_round_style","values":{"-1":"round_indeterminate","0":"round_toward_zero","1":"round_to_nearest","2":"round_toward_infinity","3":"round_toward_neg_infinity"}}],"functions":[{"filename":"Arbutils","name":"Arbutils_C_GetLastException","parameters":[],"returns":"const char *"},{"filename":"Arbutils","name":"Arbutils_Random_Construct","parameters":[],"returns":"Random *"},{"filename":"Arbutils","name":"Arbutils_Random_ConstructWithSeed","parameters":[{"name":"seed","type":"long unsigned int"}],"returns":"Random *"},{"filename":"Arbutils","name":"Arbutils_Random_Destruct","parameters":[{"name":"p","type":"Random *"}],"returns":"void"},{"filename":"Arbutils","name":"Arbutils_Random_GetFloat","parameters":[{"name":"p","type":"Random *"}],"returns":"float"},{"filename":"Arbutils","name":"Arbutils_Random_GetDouble","parameters":[{"name":"p","type":"Random *"}],"returns":"double"},{"filename":"Arbutils","name":"Arbutils_Random_Get","parameters":[{"name":"p","type":"Random *"}],"returns":"int"},{"filename":"Arbutils","name":"Arbutils_Random_GetWithMax","parameters":[{"name":"p","type":"Random *"},{"name":"max","type":"int"},{"name":"out","type":"int &"}],"returns":"unsigned char"},{"filename":"Arbutils","name":"Arbutils_Random_GetInLimits","parameters":[{"name":"p","type":"Random *"},{"name":"min","type":"int"},{"name":"max","type":"int"},{"name":"out","type":"int &"}],"returns":"unsigned char"},{"filename":"Arbutils","name":"Arbutils_Random_GetUnsigned","parameters":[{"name":"p","type":"Random *"}],"returns":"unsigned int"},{"filename":"Arbutils","name":"Arbutils_Random_GetUnsignedWithMax","parameters":[{"name":"p","type":"Random *"},{"name":"max","type":"unsigned int"},{"name":"out","type":"unsigned int &"}],"returns":"unsigned char"},{"filename":"Arbutils","name":"Arbutils_Random_GetUnsignedInLimits","parameters":[{"name":"p","type":"Random *"},{"name":"min","type":"unsigned int"},{"name":"max","type":"unsigned int"},{"name":"out","type":"unsigned int &"}],"returns":"unsigned char"},{"filename":"Arbutils","name":"Arbutils_Random_GetSeed","parameters":[{"name":"p","type":"Random *"}],"returns":"long unsigned int"}]} diff --git a/PkmnLibSharp/creaturelib.json b/PkmnLibSharp/creaturelib.json index 5b86165..1a5c0f9 100644 --- a/PkmnLibSharp/creaturelib.json +++ b/PkmnLibSharp/creaturelib.json @@ -1 +1 @@ -{"enums":[{"byteSize":1,"filename":"CreatureLib","name":"ScriptCategory","values":{"0":"Attack","1":"Talent","2":"Status","3":"Creature","4":"Battle","5":"Side"}},{"byteSize":1,"filename":"CreatureLib","name":"Statistic","values":{"0":"Health","1":"PhysicalAttack","2":"PhysicalDefense","3":"MagicalAttack","4":"MagicalDefense","5":"Speed"}},{"byteSize":1,"filename":"CreatureLib","name":"Gender","values":{"0":"Male","1":"Female","2":"Genderless"}},{"byteSize":1,"filename":"CreatureLib","name":"ItemCategory","values":{"0":"MiscItem","1":"CaptureDevice","2":"Medicine","3":"Berry","4":"MoveLearner","5":"VariantChanger","6":"KeyItem","7":"Mail"}},{"byteSize":1,"filename":"CreatureLib","name":"BattleItemCategory","values":{"0":"None","1":"Healing","2":"StatusHealing","3":"CaptureDevice","4":"MiscBattleItem"}},{"byteSize":1,"filename":"CreatureLib","name":"DamageSource","values":{"0":"AttackDamage"}},{"byteSize":1,"filename":"CreatureLib","name":"EventDataKind","values":{"0":"Damage","1":"Heal","10":"ChangeVariant","11":"AttackUse","2":"Faint","3":"Switch","4":"TurnStart","5":"TurnEnd","6":"ExperienceGain","7":"Miss","8":"DisplayText","9":"ChangeSpecies"}},{"byteSize":4,"filename":"CreatureLib","name":"AttackLearnMethod","values":{"0":"Unknown","1":"Level"}},{"byteSize":1,"filename":"CreatureLib","name":"TurnChoiceKind","values":{"0":"Pass","1":"Attack","2":"Item","3":"Switch","4":"Flee"}},{"byteSize":1,"filename":"CreatureLib","name":"EffectParameterType","values":{"0":"None","1":"Bool","2":"Int","3":"Float","4":"String"}},{"byteSize":1,"filename":"CreatureLib","name":"AttackCategory","values":{"0":"Physical","1":"Magical","2":"Status"}},{"byteSize":1,"filename":"CreatureLib","name":"AttackTarget","values":{"0":"Adjacent","1":"AdjacentAlly","10":"RandomOpponent","11":"Self","2":"AdjacentAllySelf","3":"AdjacentOpponent","4":"All","5":"AllAdjacent","6":"AllAdjacentOpponent","7":"AllAlly","8":"AllOpponent","9":"Any"}},{"byteSize":1,"filename":"CreatureLib","name":"HistoryElementKind","values":{"0":"AttackUse"}}],"functions":[{"filename":"CreatureLib","name":"CreatureLib_Battle_Construct","parameters":[{"name":"out","type":"Battle * &"},{"name":"library","type":"const BattleLibrary *"},{"name":"partyArr","type":"BattleParty * *"},{"name":"numberOfParties","type":"long unsigned int"},{"name":"canFlee","type":"bool"},{"name":"numberOfSides","type":"unsigned char"},{"name":"creaturesPerSide","type":"unsigned char"},{"name":"randomSeed","type":"long unsigned int"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Battle_Destruct","parameters":[{"name":"p","type":"const Battle *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_Battle_GetLibrary","parameters":[{"name":"p","type":"const Battle *"}],"returns":"const BattleLibrary *"},{"filename":"CreatureLib","name":"CreatureLib_Battle_CanUse","parameters":[{"name":"out","type":"bool &"},{"name":"p","type":"Battle *"},{"name":"turnChoice","type":"BaseTurnChoice *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Battle_TrySetChoice","parameters":[{"name":"out","type":"bool &"},{"name":"p","type":"Battle *"},{"name":"turnChoice","type":"BaseTurnChoice *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Battle_CanFlee","parameters":[{"name":"p","type":"const Battle *"}],"returns":"bool"},{"filename":"CreatureLib","name":"CreatureLib_Battle_CheckChoicesSetAndRun","parameters":[{"name":"p","type":"Battle *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Battle_GetCurrentTurn","parameters":[{"name":"p","type":"Battle *"}],"returns":"unsigned int"},{"filename":"CreatureLib","name":"CreatureLib_Battle_GetCreaturesPerSide","parameters":[{"name":"p","type":"Battle *"}],"returns":"unsigned int"},{"filename":"CreatureLib","name":"CreatureLib_Battle_GetCurrentTurnQueue","parameters":[{"name":"p","type":"const Battle *"}],"returns":"ChoiceQueue *"},{"filename":"CreatureLib","name":"CreatureLib_Battle_GetRandom","parameters":[{"name":"p","type":"Battle *"}],"returns":"BattleRandom *"},{"filename":"CreatureLib","name":"CreatureLib_Battle_CreatureInField","parameters":[{"name":"out","type":"bool &"},{"name":"p","type":"const Battle *"},{"name":"c","type":"Creature *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Battle_GetCreature","parameters":[{"name":"out","type":"Creature * &"},{"name":"p","type":"const Battle *"},{"name":"side","type":"unsigned char"},{"name":"target","type":"unsigned char"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Battle_ForceRecall","parameters":[{"name":"p","type":"Battle *"},{"name":"side","type":"unsigned char"},{"name":"target","type":"unsigned char"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Battle_SwitchCreature","parameters":[{"name":"p","type":"Battle *"},{"name":"side","type":"unsigned char"},{"name":"target","type":"unsigned char"},{"name":"c","type":"Creature *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Battle_CanSlotBeFilled","parameters":[{"name":"out","type":"bool &"},{"name":"p","type":"const Battle *"},{"name":"side","type":"unsigned char"},{"name":"target","type":"unsigned char"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Battle_ValidateBattleState","parameters":[{"name":"p","type":"Battle *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Battle_HasEnded","parameters":[{"name":"p","type":"const Battle *"}],"returns":"bool"},{"filename":"CreatureLib","name":"CreatureLib_Battle_HasConclusiveResult","parameters":[{"name":"p","type":"const Battle *"}],"returns":"bool"},{"filename":"CreatureLib","name":"CreatureLib_Battle_GetWinningSide","parameters":[{"name":"p","type":"const Battle *"}],"returns":"bool"},{"filename":"CreatureLib","name":"CreatureLib_Battle_GetSidesCount","parameters":[{"name":"p","type":"const Battle *"}],"returns":"long unsigned int"},{"filename":"CreatureLib","name":"CreatureLib_Battle_GetSides","parameters":[{"name":"p","type":"const Battle *"}],"returns":"const BattleSide * *"},{"filename":"CreatureLib","name":"CreatureLib_Battle_GetPartiesCount","parameters":[{"name":"p","type":"const Battle *"}],"returns":"long unsigned int"},{"filename":"CreatureLib","name":"CreatureLib_Battle_GetParties","parameters":[{"name":"p","type":"const Battle *"}],"returns":"const BattleParty * *"},{"filename":"CreatureLib","name":"CreatureLib_Battle_GetVolatileScript","parameters":[{"name":"p","type":"Battle *"},{"name":"key","type":"const char *"}],"returns":"Script *"},{"filename":"CreatureLib","name":"CreatureLib_Battle_AddVolatileScriptByName","parameters":[{"name":"p","type":"Battle *"},{"name":"key","type":"const char *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Battle_AddVolatileScript","parameters":[{"name":"p","type":"Battle *"},{"name":"script","type":"Script *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Battle_RemoveVolatileScript","parameters":[{"name":"p","type":"Battle *"},{"name":"key","type":"const char *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Battle_RemoveVolatileScriptWithScript","parameters":[{"name":"p","type":"Battle *"},{"name":"script","type":"Script *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Battle_HasVolatileScript","parameters":[{"name":"p","type":"Battle *"},{"name":"key","type":"const char *"}],"returns":"bool"},{"filename":"CreatureLib","name":"CreatureLib_Battle_RegisterEventListener","parameters":[{"name":"p","type":"Battle *"},{"name":"func","type":"Function *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_BattleLibrary_Construct","parameters":[{"name":"out","type":"const BattleLibrary * &"},{"name":"staticLib","type":"const DataLibrary *"},{"name":"statCalculator","type":"BattleStatCalculator *"},{"name":"damageLibrary","type":"DamageLibrary *"},{"name":"experienceLibrary","type":"ExperienceLibrary *"},{"name":"scriptResolver","type":"ScriptResolver *"},{"name":"miscLibrary","type":"MiscLibrary *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_BattleLibrary_Destruct","parameters":[{"name":"p","type":"const BattleLibrary *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_BattleLibrary_GetStaticLib","parameters":[{"name":"p","type":"const BattleLibrary *"}],"returns":"const DataLibrary *"},{"filename":"CreatureLib","name":"CreatureLib_BattleLibrary_GetStatCalculator","parameters":[{"name":"p","type":"const BattleLibrary *"}],"returns":"const BattleStatCalculator *"},{"filename":"CreatureLib","name":"CreatureLib_BattleLibrary_GetDamageLibrary","parameters":[{"name":"p","type":"const BattleLibrary *"}],"returns":"const DamageLibrary *"},{"filename":"CreatureLib","name":"CreatureLib_BattleLibrary_GetMiscLibrary","parameters":[{"name":"p","type":"const BattleLibrary *"}],"returns":"const MiscLibrary *"},{"filename":"CreatureLib","name":"CreatureLib_BattleLibrary_GetExperienceLibrary","parameters":[{"name":"p","type":"const BattleLibrary *"}],"returns":"const ExperienceLibrary *"},{"filename":"CreatureLib","name":"CreatureLib_BattleParty_Construct","parameters":[{"name":"out","type":"BattleParty * &"},{"name":"p","type":"CreatureParty *"},{"name":"creatureIndices","type":"unsigned char *"},{"name":"numberOfIndices","type":"long unsigned int"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_BattleParty_Destruct","parameters":[{"name":"p","type":"const BattleParty *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_BattleParty_GetParty","parameters":[{"name":"p","type":"const BattleParty *"}],"returns":"CreatureParty *"},{"filename":"CreatureLib","name":"CreatureLib_BattleParty_IsResponsibleForIndex","parameters":[{"name":"out","type":"bool &"},{"name":"p","type":"const BattleParty *"},{"name":"side","type":"unsigned char"},{"name":"creature","type":"unsigned char"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_BattleParty_HasCreaturesNotInField","parameters":[{"name":"p","type":"const BattleParty *"}],"returns":"bool"},{"filename":"CreatureLib","name":"CreatureLib_BattleRandom_Construct","parameters":[],"returns":"BattleRandom *"},{"filename":"CreatureLib","name":"CreatureLib_BattleRandom_ConstructWithSeed","parameters":[{"name":"seed","type":"long unsigned int"}],"returns":"BattleRandom *"},{"filename":"CreatureLib","name":"CreatureLib_BattleRandom_Destruct","parameters":[{"name":"p","type":"BattleRandom *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_BattleRandom_EffectChance","parameters":[{"name":"out","type":"bool &"},{"name":"p","type":"BattleRandom *"},{"name":"chance","type":"float"},{"name":"attack","type":"ExecutingAttack *"},{"name":"target","type":"Creature *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_BattleRandom_Get","parameters":[{"name":"p","type":"BattleRandom *"}],"returns":"int"},{"filename":"CreatureLib","name":"CreatureLib_BattleRandom_GetMax","parameters":[{"name":"p","type":"BattleRandom *"},{"name":"max","type":"int"}],"returns":"int"},{"filename":"CreatureLib","name":"CreatureLib_BattleRandom_GetMinMax","parameters":[{"name":"p","type":"BattleRandom *"},{"name":"min","type":"int"},{"name":"max","type":"int"}],"returns":"int"},{"filename":"CreatureLib","name":"CreatureLib_BattleRandom_GetSeed","parameters":[{"name":"p","type":"BattleRandom *"}],"returns":"long unsigned int"},{"filename":"CreatureLib","name":"CreatureLib_BattleSide_Construct","parameters":[{"name":"index","type":"unsigned char"},{"name":"battle","type":"Battle *"},{"name":"creaturesPerSide","type":"unsigned char"}],"returns":"BattleSide *"},{"filename":"CreatureLib","name":"CreatureLib_BattleSide_Destruct","parameters":[{"name":"p","type":"BattleSide *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_BattleSide_AllChoicesSet","parameters":[{"name":"p","type":"BattleSide *"}],"returns":"bool"},{"filename":"CreatureLib","name":"CreatureLib_BattleSide_AllPossibleSlotsFilled","parameters":[{"name":"out","type":"bool &"},{"name":"p","type":"BattleSide *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_BattleSide_SetChoice","parameters":[{"name":"p","type":"BattleSide *"},{"name":"choice","type":"BaseTurnChoice *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_BattleSide_ResetChoices","parameters":[{"name":"p","type":"BattleSide *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_BattleSide_SetCreature","parameters":[{"name":"p","type":"BattleSide *"},{"name":"creature","type":"Creature *"},{"name":"index","type":"unsigned char"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_BattleSide_GetCreature","parameters":[{"name":"out","type":"Creature * &"},{"name":"p","type":"BattleSide *"},{"name":"index","type":"unsigned char"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_BattleSide_GetSideIndex","parameters":[{"name":"p","type":"BattleSide *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_BattleSide_GetCreatureIndex","parameters":[{"name":"out","type":"unsigned char &"},{"name":"p","type":"BattleSide *"},{"name":"c","type":"Creature *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_BattleSide_MarkSlotAsUnfillable","parameters":[{"name":"p","type":"BattleSide *"},{"name":"c","type":"Creature *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_BattleSide_IsDefeated","parameters":[{"name":"p","type":"BattleSide *"}],"returns":"bool"},{"filename":"CreatureLib","name":"CreatureLib_BattleSide_HasFled","parameters":[{"name":"p","type":"BattleSide *"}],"returns":"bool"},{"filename":"CreatureLib","name":"CreatureLib_BattleSide_MarkAsFled","parameters":[{"name":"p","type":"BattleSide *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_BattleStatCalculator_Construct","parameters":[],"returns":"const BattleStatCalculator *"},{"filename":"CreatureLib","name":"CreatureLib_BattleStatCalculator_Destruct","parameters":[{"name":"p","type":"const BattleStatCalculator *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_BattleStatCalculator_CalculateFlatStat","parameters":[{"name":"out","type":"unsigned int &"},{"name":"p","type":"const BattleStatCalculator *"},{"name":"creature","type":"Creature *"},{"name":"stat","type":"Statistic"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_BattleStatCalculator_CalculateBoostedStat","parameters":[{"name":"out","type":"unsigned int &"},{"name":"p","type":"const BattleStatCalculator *"},{"name":"creature","type":"Creature *"},{"name":"stat","type":"Statistic"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Creature_Construct","parameters":[{"name":"out","type":"Creature * &"},{"name":"library","type":"const BattleLibrary *"},{"name":"species","type":"const CreatureSpecies *"},{"name":"variant","type":"const SpeciesVariant *"},{"name":"level","type":"unsigned char"},{"name":"experience","type":"unsigned int"},{"name":"uid","type":"unsigned int"},{"name":"gender","type":"Gender"},{"name":"coloring","type":"unsigned char"},{"name":"heldItem","type":"const Item *"},{"name":"nickname","type":"const char *"},{"name":"secretTalent","type":"bool"},{"name":"talent","type":"unsigned char"},{"name":"attacks","type":"LearnedAttack * *"},{"name":"attacksNum","type":"long unsigned int"},{"name":"allowedExperienceGain","type":"bool"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Creature_Destruct","parameters":[{"name":"p","type":"const Creature *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_Creature_GetLibrary","parameters":[{"name":"p","type":"const Creature *"}],"returns":"const BattleLibrary *"},{"filename":"CreatureLib","name":"CreatureLib_Creature_GetSpecies","parameters":[{"name":"p","type":"const Creature *"}],"returns":"const CreatureSpecies *"},{"filename":"CreatureLib","name":"CreatureLib_Creature_GetVariant","parameters":[{"name":"p","type":"const Creature *"}],"returns":"const SpeciesVariant *"},{"filename":"CreatureLib","name":"CreatureLib_Creature_ChangeSpecies","parameters":[{"name":"p","type":"Creature *"},{"name":"species","type":"const CreatureSpecies *"},{"name":"variant","type":"const SpeciesVariant *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Creature_ChangeVariant","parameters":[{"name":"p","type":"Creature *"},{"name":"variant","type":"const SpeciesVariant *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Creature_GetLevel","parameters":[{"name":"p","type":"const Creature *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Creature_GetExperience","parameters":[{"name":"p","type":"const Creature *"}],"returns":"unsigned int"},{"filename":"CreatureLib","name":"CreatureLib_Creature_GetUniqueIdentifier","parameters":[{"name":"p","type":"const Creature *"}],"returns":"unsigned int"},{"filename":"CreatureLib","name":"CreatureLib_Creature_GetGender","parameters":[{"name":"p","type":"const Creature *"}],"returns":"Gender"},{"filename":"CreatureLib","name":"CreatureLib_Creature_GetColoring","parameters":[{"name":"p","type":"const Creature *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Creature_HasHeldItem","parameters":[{"name":"p","type":"const Creature *"},{"name":"name","type":"const char *"}],"returns":"bool"},{"filename":"CreatureLib","name":"CreatureLib_Creature_HasHeldItemWithHash","parameters":[{"name":"p","type":"const Creature *"},{"name":"hash","type":"unsigned int"}],"returns":"bool"},{"filename":"CreatureLib","name":"CreatureLib_Creature_GetHeldItem","parameters":[{"name":"p","type":"const Creature *"}],"returns":"const Item *"},{"filename":"CreatureLib","name":"CreatureLib_Creature_SetHeldItem","parameters":[{"name":"p","type":"Creature *"},{"name":"name","type":"const char *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Creature_SetHeldItemWithHash","parameters":[{"name":"p","type":"Creature *"},{"name":"hash","type":"unsigned int"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Creature_SetHeldItemFromItem","parameters":[{"name":"p","type":"Creature *"},{"name":"item","type":"const Item *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_Creature_GetCurrentHealth","parameters":[{"name":"p","type":"const Creature *"}],"returns":"unsigned int"},{"filename":"CreatureLib","name":"CreatureLib_Creature_GetBattle","parameters":[{"name":"p","type":"const Creature *"}],"returns":"Battle *"},{"filename":"CreatureLib","name":"CreatureLib_Creature_GetBattleSide","parameters":[{"name":"p","type":"const Creature *"}],"returns":"BattleSide *"},{"filename":"CreatureLib","name":"CreatureLib_Creature_IsOnBattleField","parameters":[{"name":"p","type":"const Creature *"}],"returns":"bool"},{"filename":"CreatureLib","name":"CreatureLib_Creature_GetNickname","parameters":[{"name":"p","type":"Creature *"}],"returns":"const char *"},{"filename":"CreatureLib","name":"CreatureLib_Creature_HasType","parameters":[{"name":"p","type":"Creature *"},{"name":"type","type":"unsigned char"}],"returns":"bool"},{"filename":"CreatureLib","name":"CreatureLib_Creature_GetMaxHealth","parameters":[{"name":"p","type":"const Creature *"}],"returns":"unsigned int"},{"filename":"CreatureLib","name":"CreatureLib_Creature_ChangeLevelBy","parameters":[{"name":"p","type":"Creature *"},{"name":"level","type":"signed char"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Creature_Damage","parameters":[{"name":"p","type":"Creature *"},{"name":"damage","type":"unsigned int"},{"name":"source","type":"DamageSource"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Creature_Heal","parameters":[{"name":"p","type":"Creature *"},{"name":"health","type":"unsigned int"},{"name":"canRevive","type":"bool"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Creature_RestoreAllAttackUses","parameters":[{"name":"p","type":"Creature *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Creature_GetActiveTalent","parameters":[{"name":"p","type":"const Creature *"},{"name":"out","type":"const char * &"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Creature_OverrideActiveTalent","parameters":[{"name":"p","type":"Creature *"},{"name":"talent","type":"const char *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Creature_AddExperience","parameters":[{"name":"p","type":"Creature *"},{"name":"experience","type":"unsigned int"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Creature_ClearVolatileScripts","parameters":[{"name":"p","type":"Creature *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Creature_AddVolatileScriptByName","parameters":[{"name":"p","type":"Creature *"},{"name":"scriptName","type":"const char *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Creature_AddVolatileScript","parameters":[{"name":"p","type":"Creature *"},{"name":"script","type":"Script *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Creature_RemoveVolatileScriptByName","parameters":[{"name":"p","type":"Creature *"},{"name":"scriptName","type":"const char *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Creature_RemoveVolatileScript","parameters":[{"name":"p","type":"Creature *"},{"name":"script","type":"Script *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Creature_HasVolatileScript","parameters":[{"name":"p","type":"Creature *"},{"name":"scriptName","type":"const char *"}],"returns":"bool"},{"filename":"CreatureLib","name":"CreatureLib_Creature_GetAttacksCount","parameters":[{"name":"p","type":"Creature *"}],"returns":"long unsigned int"},{"filename":"CreatureLib","name":"CreatureLib_Creature_GetAttacks","parameters":[{"name":"p","type":"Creature *"}],"returns":"const LearnedAttack * *"},{"filename":"CreatureLib","name":"CreatureLib_Creature_HasAttack","parameters":[{"name":"p","type":"Creature *"},{"name":"scriptName","type":"const char *"}],"returns":"bool"},{"filename":"CreatureLib","name":"CreatureLib_Creature_GetDisplaySpecies","parameters":[{"name":"p","type":"const Creature *"}],"returns":"const CreatureSpecies *"},{"filename":"CreatureLib","name":"CreatureLib_Creature_GetDisplayVariant","parameters":[{"name":"p","type":"const Creature *"}],"returns":"const SpeciesVariant *"},{"filename":"CreatureLib","name":"CreatureLib_Creature_SetDisplaySpecies","parameters":[{"name":"p","type":"Creature *"},{"name":"species","type":"const CreatureSpecies *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_Creature_SetDisplayVariant","parameters":[{"name":"p","type":"Creature *"},{"name":"variant","type":"const SpeciesVariant *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_Creature_ChangeStatBoost","parameters":[{"name":"p","type":"Creature *"},{"name":"stat","type":"Statistic"},{"name":"diffAmount","type":"signed char"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_Creature_GetFlatStat","parameters":[{"name":"p","type":"Creature *"},{"name":"stat","type":"Statistic"}],"returns":"unsigned int"},{"filename":"CreatureLib","name":"CreatureLib_Creature_GetBoostedStat","parameters":[{"name":"p","type":"Creature *"},{"name":"stat","type":"Statistic"}],"returns":"unsigned int"},{"filename":"CreatureLib","name":"CreatureLib_Creature_GetBaseStat","parameters":[{"name":"p","type":"Creature *"},{"name":"stat","type":"Statistic"}],"returns":"unsigned int"},{"filename":"CreatureLib","name":"CreatureLib_Creature_GetStatBoost","parameters":[{"name":"p","type":"Creature *"},{"name":"stat","type":"Statistic"}],"returns":"signed char"},{"filename":"CreatureLib","name":"CreatureLib_Creature_GetAvailableAttackSlot","parameters":[{"name":"p","type":"const Creature *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Creature_AddAttack","parameters":[{"name":"p","type":"Creature *"},{"name":"attack","type":"LearnedAttack *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Creature_ReplaceAttack","parameters":[{"name":"p","type":"Creature *"},{"name":"index","type":"long unsigned int"},{"name":"attack","type":"LearnedAttack *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Creature_SwapAttack","parameters":[{"name":"p","type":"Creature *"},{"name":"a","type":"long unsigned int"},{"name":"b","type":"long unsigned int"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_CreatureParty_ConstructWithSize","parameters":[{"name":"size","type":"long unsigned int"}],"returns":"CreatureParty *"},{"filename":"CreatureLib","name":"CreatureLib_CreatureParty_ConstructFromArray","parameters":[{"name":"creatures","type":"Creature * *"},{"name":"size","type":"long unsigned int"}],"returns":"CreatureParty *"},{"filename":"CreatureLib","name":"CreatureLib_CreatureParty_Destruct","parameters":[{"name":"p","type":"const CreatureParty *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_CreatureParty_GetAtIndex","parameters":[{"name":"out","type":"Creature * &"},{"name":"p","type":"const CreatureParty *"},{"name":"index","type":"long unsigned int"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_CreatureParty_Switch","parameters":[{"name":"p","type":"CreatureParty *"},{"name":"a","type":"long unsigned int"},{"name":"b","type":"long unsigned int"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_CreatureParty_PackParty","parameters":[{"name":"p","type":"CreatureParty *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_CreatureParty_SwapInto","parameters":[{"name":"p","type":"CreatureParty *"},{"name":"index","type":"long unsigned int"},{"name":"creature","type":"Creature *"}],"returns":"Creature *"},{"filename":"CreatureLib","name":"CreatureLib_CreatureParty_HasAvailableCreatures","parameters":[{"name":"p","type":"const CreatureParty *"}],"returns":"bool"},{"filename":"CreatureLib","name":"CreatureLib_CreatureParty_GetLength","parameters":[{"name":"p","type":"const CreatureParty *"}],"returns":"long unsigned int"},{"filename":"CreatureLib","name":"CreatureLib_CreatureParty_GetParty","parameters":[{"name":"p","type":"CreatureParty *"}],"returns":"const Creature * *"},{"filename":"CreatureLib","name":"CreatureLib_DamageLibrary_Construct","parameters":[],"returns":"const DamageLibrary *"},{"filename":"CreatureLib","name":"CreatureLib_DamageLibrary_Destruct","parameters":[{"name":"p","type":"const DamageLibrary *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_DamageLibrary_GetDamage","parameters":[{"name":"out","type":"unsigned int &"},{"name":"p","type":"const DamageLibrary *"},{"name":"attack","type":"ExecutingAttack *"},{"name":"target","type":"Creature *"},{"name":"hitIndex","type":"unsigned char"},{"name":"hitData","type":"HitData *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_DamageLibrary_GetBasePower","parameters":[{"name":"out","type":"unsigned char &"},{"name":"p","type":"const DamageLibrary *"},{"name":"attack","type":"ExecutingAttack *"},{"name":"target","type":"Creature *"},{"name":"hitIndex","type":"unsigned char"},{"name":"hitData","type":"HitData *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_DamageLibrary_GetStatModifier","parameters":[{"name":"out","type":"float &"},{"name":"p","type":"const DamageLibrary *"},{"name":"attack","type":"ExecutingAttack *"},{"name":"target","type":"Creature *"},{"name":"hitIndex","type":"unsigned char"},{"name":"hitData","type":"HitData *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_DamageLibrary_GetDamageModifier","parameters":[{"name":"out","type":"float &"},{"name":"p","type":"const DamageLibrary *"},{"name":"attack","type":"ExecutingAttack *"},{"name":"target","type":"Creature *"},{"name":"hitIndex","type":"unsigned char"},{"name":"hitData","type":"HitData *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_EventData_Destruct","parameters":[{"name":"p","type":"const EventData *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_EventData_GetKind","parameters":[{"name":"p","type":"const EventData *"}],"returns":"EventDataKind"},{"filename":"CreatureLib","name":"CreatureLib_DamageEvent_GetCreature","parameters":[{"name":"p","type":"const DamageEvent *"}],"returns":"Creature *"},{"filename":"CreatureLib","name":"CreatureLib_DamageEvent_GetDamageSource","parameters":[{"name":"p","type":"const DamageEvent *"}],"returns":"DamageSource"},{"filename":"CreatureLib","name":"CreatureLib_DamageEvent_GetOriginalHealth","parameters":[{"name":"p","type":"const DamageEvent *"}],"returns":"unsigned int"},{"filename":"CreatureLib","name":"CreatureLib_DamageEvent_GetNewHealth","parameters":[{"name":"p","type":"const DamageEvent *"}],"returns":"unsigned int"},{"filename":"CreatureLib","name":"CreatureLib_DamageEvent_Destruct","parameters":[{"name":"p","type":"const DamageEvent *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_HealEvent_GetCreature","parameters":[{"name":"p","type":"const HealEvent *"}],"returns":"Creature *"},{"filename":"CreatureLib","name":"CreatureLib_HealEvent_GetOriginalHealth","parameters":[{"name":"p","type":"const HealEvent *"}],"returns":"unsigned int"},{"filename":"CreatureLib","name":"CreatureLib_HealEvent_GetNewHealth","parameters":[{"name":"p","type":"const HealEvent *"}],"returns":"unsigned int"},{"filename":"CreatureLib","name":"CreatureLib_HealEvent_Destruct","parameters":[{"name":"p","type":"const HealEvent *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_FaintEvent_GetCreature","parameters":[{"name":"p","type":"const FaintEvent *"}],"returns":"Creature *"},{"filename":"CreatureLib","name":"CreatureLib_FaintEvent_Destruct","parameters":[{"name":"p","type":"const FaintEvent *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_SwitchEvent_GetNewCreature","parameters":[{"name":"p","type":"const SwitchEvent *"}],"returns":"Creature *"},{"filename":"CreatureLib","name":"CreatureLib_SwitchEvent_GetSide","parameters":[{"name":"p","type":"const SwitchEvent *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_SwitchEvent_GetIndex","parameters":[{"name":"p","type":"const SwitchEvent *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_SwitchEvent_Destruct","parameters":[{"name":"p","type":"const SwitchEvent *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_TurnStartEvent_Destruct","parameters":[{"name":"p","type":"const TurnStartEvent *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_TurnEndEvent_Destruct","parameters":[{"name":"p","type":"const TurnEndEvent *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_ExperienceGainEvent_GetCreature","parameters":[{"name":"p","type":"const ExperienceGainEvent *"}],"returns":"Creature *"},{"filename":"CreatureLib","name":"CreatureLib_ExperienceGainEvent_GetPreviousExperience","parameters":[{"name":"p","type":"const ExperienceGainEvent *"}],"returns":"unsigned int"},{"filename":"CreatureLib","name":"CreatureLib_ExperienceGainEvent_GetNewExperience","parameters":[{"name":"p","type":"const ExperienceGainEvent *"}],"returns":"unsigned int"},{"filename":"CreatureLib","name":"CreatureLib_ExperienceGainEvent_Destruct","parameters":[{"name":"p","type":"const ExperienceGainEvent *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_DisplayTextEvent_GetText","parameters":[{"name":"p","type":"const DisplayTextEvent *"}],"returns":"const char *"},{"filename":"CreatureLib","name":"CreatureLib_DisplayTextEvent_Destruct","parameters":[{"name":"p","type":"const DisplayTextEvent *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_ExecutingAttack_Construct","parameters":[{"name":"out","type":"ExecutingAttack * &"},{"name":"targets","type":"const Creature * *"},{"name":"targetCount","type":"long unsigned int"},{"name":"numberHits","type":"unsigned char"},{"name":"user","type":"Creature *"},{"name":"attack","type":"LearnedAttack *"},{"name":"script","type":"Script *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_ExecutingAttack_Destruct","parameters":[{"name":"p","type":"ExecutingAttack *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_ExecutingAttack_GetHitData","parameters":[{"name":"out","type":"HitData * &"},{"name":"p","type":"ExecutingAttack *"},{"name":"target","type":"Creature *"},{"name":"hit","type":"unsigned char"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_ExecutingAttack_IsCreatureTarget","parameters":[{"name":"p","type":"ExecutingAttack *"},{"name":"target","type":"Creature *"}],"returns":"bool"},{"filename":"CreatureLib","name":"CreatureLib_ExecutingAttack_GetUser","parameters":[{"name":"p","type":"ExecutingAttack *"}],"returns":"Creature *"},{"filename":"CreatureLib","name":"CreatureLib_ExecutingAttack_GetAttack","parameters":[{"name":"p","type":"ExecutingAttack *"}],"returns":"LearnedAttack *"},{"filename":"CreatureLib","name":"CreatureLib_HitData_IsCritical","parameters":[{"name":"p","type":"const HitData *"}],"returns":"bool"},{"filename":"CreatureLib","name":"CreatureLib_HitData_GetBasePower","parameters":[{"name":"p","type":"const HitData *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_HitData_GetEffectiveness","parameters":[{"name":"p","type":"const HitData *"}],"returns":"float"},{"filename":"CreatureLib","name":"CreatureLib_HitData_GetDamage","parameters":[{"name":"p","type":"const HitData *"}],"returns":"unsigned int"},{"filename":"CreatureLib","name":"CreatureLib_HitData_GetType","parameters":[{"name":"p","type":"const HitData *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_HitData_SetCritical","parameters":[{"name":"p","type":"HitData *"},{"name":"val","type":"bool"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_HitData_SetBasePower","parameters":[{"name":"p","type":"HitData *"},{"name":"val","type":"unsigned char"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_HitData_SetEffectiveness","parameters":[{"name":"p","type":"HitData *"},{"name":"val","type":"float"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_HitData_SetDamage","parameters":[{"name":"p","type":"HitData *"},{"name":"val","type":"unsigned int"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_HitData_SetType","parameters":[{"name":"p","type":"HitData *"},{"name":"val","type":"unsigned char"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_ExperienceLibrary_Construct","parameters":[],"returns":"const ExperienceLibrary *"},{"filename":"CreatureLib","name":"CreatureLib_ExperienceLibrary_Destruct","parameters":[{"name":"p","type":"const ExperienceLibrary *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_ExperienceLibrary_HandleExperienceGain","parameters":[{"name":"p","type":"const ExperienceLibrary *"},{"name":"faintedMon","type":"Creature *"},{"name":"opponents","type":"Creature * *"},{"name":"opponentsCount","type":"long unsigned int"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_LearnedAttack_Construct","parameters":[{"name":"out","type":"LearnedAttack * &"},{"name":"attack","type":"const AttackData *"},{"name":"maxUses","type":"unsigned char"},{"name":"learnMethod","type":"AttackLearnMethod"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_LearnedAttack_Destruct","parameters":[{"name":"p","type":"LearnedAttack *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_LearnedAttack_GetAttack","parameters":[{"name":"p","type":"const LearnedAttack *"}],"returns":"const AttackData *"},{"filename":"CreatureLib","name":"CreatureLib_LearnedAttack_GetMaxUses","parameters":[{"name":"p","type":"const LearnedAttack *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_LearnedAttack_GetRemainingUses","parameters":[{"name":"p","type":"const LearnedAttack *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_LearnedAttack_GetLearnMethod","parameters":[{"name":"p","type":"const LearnedAttack *"}],"returns":"AttackLearnMethod"},{"filename":"CreatureLib","name":"CreatureLib_LearnedAttack_TryUse","parameters":[{"name":"p","type":"LearnedAttack *"},{"name":"uses","type":"unsigned char"}],"returns":"bool"},{"filename":"CreatureLib","name":"CreatureLib_LearnedAttack_DecreaseUses","parameters":[{"name":"p","type":"LearnedAttack *"},{"name":"uses","type":"unsigned char"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_LearnedAttack_RestoreUses","parameters":[{"name":"p","type":"LearnedAttack *"},{"name":"uses","type":"unsigned char"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_LearnedAttack_RestoreAllUses","parameters":[{"name":"p","type":"LearnedAttack *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_MiscLibrary_Construct","parameters":[],"returns":"MiscLibrary *"},{"filename":"CreatureLib","name":"CreatureLib_MiscLibrary_Destruct","parameters":[{"name":"p","type":"const MiscLibrary *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_MiscLibrary_IsCritical","parameters":[{"name":"out","type":"bool &"},{"name":"p","type":"MiscLibrary *"},{"name":"attack","type":"ExecutingAttack *"},{"name":"target","type":"Creature *"},{"name":"hit","type":"unsigned char"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_MiscLibrary_CanFlee","parameters":[{"name":"out","type":"bool &"},{"name":"p","type":"MiscLibrary *"},{"name":"switchChoice","type":"FleeTurnChoice *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_MiscLibrary_ReplacementAttack","parameters":[{"name":"out","type":"BaseTurnChoice * &"},{"name":"p","type":"MiscLibrary *"},{"name":"user","type":"Creature *"},{"name":"sideTarget","type":"unsigned char"},{"name":"creatureTarget","type":"unsigned char"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Script_Destruct","parameters":[{"name":"p","type":"Script *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_Script_Stack","parameters":[{"name":"p","type":"Script *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Script_OnRemove","parameters":[{"name":"p","type":"Script *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Script_GetName","parameters":[{"name":"p","type":"Script *"}],"returns":"const char *"},{"filename":"CreatureLib","name":"CreatureLib_Script_OnBeforeTurn","parameters":[{"name":"p","type":"Script *"},{"name":"choice","type":"const BaseTurnChoice *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Script_ChangeAttack","parameters":[{"name":"p","type":"Script *"},{"name":"choice","type":"AttackTurnChoice *"},{"name":"outAttack","type":"const char * &"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Script_PreventAttack","parameters":[{"name":"p","type":"Script *"},{"name":"attack","type":"ExecutingAttack *"},{"name":"outResult","type":"bool *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Script_FailAttack","parameters":[{"name":"p","type":"Script *"},{"name":"attack","type":"ExecutingAttack *"},{"name":"outResult","type":"bool *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Script_StopBeforeAttack","parameters":[{"name":"p","type":"Script *"},{"name":"attack","type":"ExecutingAttack *"},{"name":"outResult","type":"bool *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Script_OnBeforeAttack","parameters":[{"name":"p","type":"Script *"},{"name":"attack","type":"ExecutingAttack *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Script_FailIncomingAttack","parameters":[{"name":"p","type":"Script *"},{"name":"attack","type":"ExecutingAttack *"},{"name":"target","type":"Creature *"},{"name":"outResult","type":"bool *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Script_IsInvulnerable","parameters":[{"name":"p","type":"Script *"},{"name":"attack","type":"ExecutingAttack *"},{"name":"target","type":"Creature *"},{"name":"outResult","type":"bool *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Script_OnAttackMiss","parameters":[{"name":"p","type":"Script *"},{"name":"attack","type":"ExecutingAttack *"},{"name":"target","type":"Creature *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Script_ChangeAttackType","parameters":[{"name":"p","type":"Script *"},{"name":"attack","type":"ExecutingAttack *"},{"name":"target","type":"Creature *"},{"name":"hitNumber","type":"unsigned char"},{"name":"outType","type":"unsigned char *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Script_OverrideBasePower","parameters":[{"name":"p","type":"Script *"},{"name":"attack","type":"ExecutingAttack *"},{"name":"target","type":"Creature *"},{"name":"hitNumber","type":"unsigned char"},{"name":"basePower","type":"unsigned char *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Script_ChangeDamageStatsUser","parameters":[{"name":"p","type":"Script *"},{"name":"attack","type":"ExecutingAttack *"},{"name":"target","type":"Creature *"},{"name":"hitNumber","type":"unsigned char"},{"name":"statsUser","type":"Creature * *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Script_BypassDefensiveStat","parameters":[{"name":"p","type":"Script *"},{"name":"attack","type":"ExecutingAttack *"},{"name":"target","type":"Creature *"},{"name":"hitNumber","type":"unsigned char"},{"name":"bypass","type":"bool *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Script_BypassOffensiveStat","parameters":[{"name":"p","type":"Script *"},{"name":"attack","type":"ExecutingAttack *"},{"name":"target","type":"Creature *"},{"name":"hitNumber","type":"unsigned char"},{"name":"bypass","type":"bool *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Script_ModifyStatModifier","parameters":[{"name":"p","type":"Script *"},{"name":"attack","type":"ExecutingAttack *"},{"name":"target","type":"Creature *"},{"name":"hitNumber","type":"unsigned char"},{"name":"modifier","type":"float *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Script_ModifyDamageModifier","parameters":[{"name":"p","type":"Script *"},{"name":"attack","type":"ExecutingAttack *"},{"name":"target","type":"Creature *"},{"name":"hitNumber","type":"unsigned char"},{"name":"modifier","type":"float *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Script_OverrideDamage","parameters":[{"name":"p","type":"Script *"},{"name":"attack","type":"ExecutingAttack *"},{"name":"target","type":"Creature *"},{"name":"hitNumber","type":"unsigned char"},{"name":"damage","type":"unsigned int *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Script_PreventSecondaryEffects","parameters":[{"name":"p","type":"Script *"},{"name":"attack","type":"ExecutingAttack *"},{"name":"target","type":"Creature *"},{"name":"hitNumber","type":"unsigned char"},{"name":"outResult","type":"bool *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Script_OnSecondaryEffect","parameters":[{"name":"p","type":"Script *"},{"name":"attack","type":"ExecutingAttack *"},{"name":"target","type":"Creature *"},{"name":"hitNumber","type":"unsigned char"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Script_OnAfterHits","parameters":[{"name":"p","type":"Script *"},{"name":"attack","type":"ExecutingAttack *"},{"name":"target","type":"Creature *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Script_PreventSelfSwitch","parameters":[{"name":"p","type":"Script *"},{"name":"choice","type":"const SwitchTurnChoice *"},{"name":"outResult","type":"bool *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Script_ModifyEffectChance","parameters":[{"name":"p","type":"Script *"},{"name":"attack","type":"const ExecutingAttack *"},{"name":"target","type":"Creature *"},{"name":"chance","type":"float *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Script_ModifyIncomingEffectChance","parameters":[{"name":"p","type":"Script *"},{"name":"attack","type":"const ExecutingAttack *"},{"name":"target","type":"Creature *"},{"name":"chance","type":"float *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_ScriptResolver_Construct","parameters":[],"returns":"ScriptResolver *"},{"filename":"CreatureLib","name":"CreatureLib_ScriptResolver_Destruct","parameters":[{"name":"p","type":"const ScriptResolver *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_ScriptResolver_Initialize","parameters":[{"name":"p","type":"ScriptResolver *"},{"name":"library","type":"BattleLibrary *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_ScriptResolver_LoadScript","parameters":[{"name":"out","type":"Script * &"},{"name":"p","type":"ScriptResolver *"},{"name":"category","type":"ScriptCategory"},{"name":"scriptName","type":"const char *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_AttackTurnChoice_Construct","parameters":[{"name":"user","type":"Creature *"},{"name":"attack","type":"LearnedAttack *"},{"name":"sideIndex","type":"unsigned char"},{"name":"targetIndex","type":"unsigned char"}],"returns":"AttackTurnChoice *"},{"filename":"CreatureLib","name":"CreatureLib_AttackTurnChoice_Destruct","parameters":[{"name":"p","type":"AttackTurnChoice *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_FleeTurnChoice_Construct","parameters":[{"name":"user","type":"Creature *"}],"returns":"FleeTurnChoice *"},{"filename":"CreatureLib","name":"CreatureLib_FleeTurnChoice_Destruct","parameters":[{"name":"p","type":"AttackTurnChoice *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_PassTurnChoice_Construct","parameters":[{"name":"user","type":"Creature *"}],"returns":"PassTurnChoice *"},{"filename":"CreatureLib","name":"CreatureLib_PassTurnChoice_Destruct","parameters":[{"name":"p","type":"AttackTurnChoice *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_SwitchTurnChoice_Construct","parameters":[{"name":"user","type":"Creature *"},{"name":"newCreature","type":"Creature *"}],"returns":"SwitchTurnChoice *"},{"filename":"CreatureLib","name":"CreatureLib_SwitchTurnChoice_Destruct","parameters":[{"name":"p","type":"AttackTurnChoice *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_BaseTurnChoice_GetKind","parameters":[{"name":"p","type":"const BaseTurnChoice *"}],"returns":"TurnChoiceKind"},{"filename":"CreatureLib","name":"CreatureLib_BaseTurnChoice_GetUser","parameters":[{"name":"p","type":"const BaseTurnChoice *"}],"returns":"Creature *"},{"filename":"CreatureLib","name":"CreatureLib_AttackTurnChoice_GetAttack","parameters":[{"name":"p","type":"const AttackTurnChoice *"}],"returns":"LearnedAttack *"},{"filename":"CreatureLib","name":"CreatureLib_AttackTurnChoice_GetKind","parameters":[{"name":"p","type":"const AttackTurnChoice *"}],"returns":"TurnChoiceKind"},{"filename":"CreatureLib","name":"CreatureLib_AttackTurnChoice_GetPriority","parameters":[{"name":"out","type":"signed char &"},{"name":"p","type":"AttackTurnChoice *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_AttackTurnChoice_GetAttackScript","parameters":[{"name":"p","type":"const AttackTurnChoice *"}],"returns":"Script *"},{"filename":"CreatureLib","name":"CreatureLib_AttackTurnChoice_GetTargetSideIndex","parameters":[{"name":"p","type":"const AttackTurnChoice *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_AttackTurnChoice_GetTargetCreatureIndex","parameters":[{"name":"p","type":"const AttackTurnChoice *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_SwitchTurnChoice_GetNewCreature","parameters":[{"name":"p","type":"const SwitchTurnChoice *"}],"returns":"Creature *"},{"filename":"CreatureLib","name":"CreatureLib_C_GetLastException","parameters":[],"returns":"const char *"},{"filename":"CreatureLib","name":"CreatureLib_AttackData_Construct","parameters":[{"name":"out","type":"AttackData * &"},{"name":"name","type":"const char *"},{"name":"type","type":"unsigned char"},{"name":"category","type":"AttackCategory"},{"name":"power","type":"unsigned char"},{"name":"accuracy","type":"unsigned char"},{"name":"baseUsage","type":"unsigned char"},{"name":"target","type":"AttackTarget"},{"name":"priority","type":"signed char"},{"name":"effectChance","type":"float"},{"name":"effectName","type":"const char *"},{"name":"effectParameters","type":"EffectParameter * *"},{"name":"effectParameterCount","type":"long unsigned int"},{"name":"flags","type":"const char * *"},{"name":"flagsCount","type":"long unsigned int"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_AttackData_Destruct","parameters":[{"name":"p","type":"const AttackData *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_AttackData_GetName","parameters":[{"name":"p","type":"const AttackData *"}],"returns":"const char *"},{"filename":"CreatureLib","name":"CreatureLib_AttackData_GetType","parameters":[{"name":"p","type":"const AttackData *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_AttackData_GetCategory","parameters":[{"name":"p","type":"const AttackData *"}],"returns":"AttackCategory"},{"filename":"CreatureLib","name":"CreatureLib_AttackData_GetBasePower","parameters":[{"name":"p","type":"const AttackData *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_AttackData_GetAccuracy","parameters":[{"name":"p","type":"const AttackData *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_AttackData_GetBaseUsages","parameters":[{"name":"p","type":"const AttackData *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_AttackData_GetTarget","parameters":[{"name":"p","type":"const AttackData *"}],"returns":"AttackTarget"},{"filename":"CreatureLib","name":"CreatureLib_AttackData_GetPriority","parameters":[{"name":"p","type":"const AttackData *"}],"returns":"signed char"},{"filename":"CreatureLib","name":"CreatureLib_AttackData_HasSecondaryEffect","parameters":[{"name":"p","type":"const AttackData *"}],"returns":"bool"},{"filename":"CreatureLib","name":"CreatureLib_AttackData_GetSecondaryEffectChance","parameters":[{"name":"p","type":"const AttackData *"}],"returns":"float"},{"filename":"CreatureLib","name":"CreatureLib_AttackData_GetSecondaryEffectName","parameters":[{"name":"p","type":"const AttackData *"}],"returns":"const char *"},{"filename":"CreatureLib","name":"CreatureLib_AttackData_HasFlag","parameters":[{"name":"p","type":"const AttackData *"},{"name":"key","type":"const char *"}],"returns":"bool"},{"filename":"CreatureLib","name":"CreatureLib_AttackLibrary_Construct","parameters":[{"name":"library","type":"AttackLibrary * &"},{"name":"initialCapacity","type":"long unsigned int"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_AttackLibrary_Destruct","parameters":[{"name":"p","type":"const AttackLibrary *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_AttackLibrary_Insert","parameters":[{"name":"p","type":"AttackLibrary *"},{"name":"name","type":"const char *"},{"name":"t","type":"AttackData *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_AttackLibrary_InsertWithHash","parameters":[{"name":"p","type":"AttackLibrary *"},{"name":"hashedKey","type":"unsigned int"},{"name":"t","type":"AttackData *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_AttackLibrary_Delete","parameters":[{"name":"p","type":"AttackLibrary *"},{"name":"name","type":"const char *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_AttackLibrary_DeleteWithHash","parameters":[{"name":"p","type":"AttackLibrary *"},{"name":"hashedKey","type":"unsigned int"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_AttackLibrary_TryGet","parameters":[{"name":"p","type":"AttackLibrary *"},{"name":"name","type":"const char *"},{"name":"out","type":"const AttackData * &"}],"returns":"bool"},{"filename":"CreatureLib","name":"CreatureLib_AttackLibrary_TryGetWithHash","parameters":[{"name":"p","type":"AttackLibrary *"},{"name":"hashedKey","type":"unsigned int"},{"name":"out","type":"const AttackData * &"}],"returns":"bool"},{"filename":"CreatureLib","name":"CreatureLib_AttackLibrary_Get","parameters":[{"name":"p","type":"AttackLibrary *"},{"name":"name","type":"const char *"},{"name":"out","type":"const AttackData * &"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_AttackLibrary_GetWithHash","parameters":[{"name":"p","type":"AttackLibrary *"},{"name":"hashedKey","type":"unsigned int"},{"name":"out","type":"const AttackData * &"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_AttackLibrary_GetCount","parameters":[{"name":"p","type":"AttackLibrary *"}],"returns":"long unsigned int"},{"filename":"CreatureLib","name":"CreatureLib_AttackLibrary_GetAtIndex","parameters":[{"name":"p","type":"AttackLibrary *"},{"name":"index","type":"long unsigned int"},{"name":"out","type":"const AttackData * &"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_CreatureSpecies_Construct","parameters":[{"name":"out","type":"CreatureSpecies * &"},{"name":"id","type":"unsigned short"},{"name":"name","type":"const char *"},{"name":"defaultVariant","type":"SpeciesVariant *"},{"name":"genderRatio","type":"float"},{"name":"growthRate","type":"const char *"},{"name":"captureRate","type":"unsigned char"},{"name":"flags","type":"const char * *"},{"name":"flagsCount","type":"long unsigned int"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_CreatureSpecies_Destruct","parameters":[{"name":"p","type":"const CreatureSpecies *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_CreatureSpecies_GetId","parameters":[{"name":"p","type":"const CreatureSpecies *"}],"returns":"unsigned short"},{"filename":"CreatureLib","name":"CreatureLib_CreatureSpecies_GetGenderRate","parameters":[{"name":"p","type":"const CreatureSpecies *"}],"returns":"float"},{"filename":"CreatureLib","name":"CreatureLib_CreatureSpecies_GetCaptureRate","parameters":[{"name":"p","type":"const CreatureSpecies *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_CreatureSpecies_GetName","parameters":[{"name":"p","type":"const CreatureSpecies *"}],"returns":"const char *"},{"filename":"CreatureLib","name":"CreatureLib_CreatureSpecies_GetGrowthRate","parameters":[{"name":"p","type":"const CreatureSpecies *"}],"returns":"const char *"},{"filename":"CreatureLib","name":"CreatureLib_CreatureSpecies_HasVariant","parameters":[{"name":"p","type":"const CreatureSpecies *"},{"name":"name","type":"const char *"}],"returns":"bool"},{"filename":"CreatureLib","name":"CreatureLib_CreatureSpecies_HasVariantWithHash","parameters":[{"name":"p","type":"const CreatureSpecies *"},{"name":"hash","type":"unsigned int"}],"returns":"bool"},{"filename":"CreatureLib","name":"CreatureLib_CreatureSpecies_TryGetVariant","parameters":[{"name":"p","type":"const CreatureSpecies *"},{"name":"name","type":"const char *"},{"name":"out","type":"const SpeciesVariant * &"}],"returns":"bool"},{"filename":"CreatureLib","name":"CreatureLib_CreatureSpecies_TryGetVariantWithHash","parameters":[{"name":"p","type":"const CreatureSpecies *"},{"name":"hash","type":"unsigned int"},{"name":"out","type":"const SpeciesVariant * &"}],"returns":"bool"},{"filename":"CreatureLib","name":"CreatureLib_CreatureSpecies_GetVariant","parameters":[{"name":"out","type":"const SpeciesVariant * &"},{"name":"p","type":"const CreatureSpecies *"},{"name":"name","type":"const char *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_CreatureSpecies_GetVariantWithHash","parameters":[{"name":"out","type":"const SpeciesVariant * &"},{"name":"p","type":"const CreatureSpecies *"},{"name":"hash","type":"unsigned int"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_CreatureSpecies_SetVariant","parameters":[{"name":"p","type":"CreatureSpecies *"},{"name":"name","type":"const char *"},{"name":"variant","type":"SpeciesVariant *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_CreatureSpecies_GetRandomGender","parameters":[{"name":"p","type":"CreatureSpecies *"},{"name":"random","type":"Random *"}],"returns":"Gender"},{"filename":"CreatureLib","name":"CreatureLib_CreatureSpecies_GetVariantsCount","parameters":[{"name":"p","type":"CreatureSpecies *"}],"returns":"long unsigned int"},{"filename":"CreatureLib","name":"CreatureLib_CreatureSpecies_GetVariants","parameters":[{"name":"p","type":"CreatureSpecies *"}],"returns":"const const SpeciesVariant * *"},{"filename":"CreatureLib","name":"CreatureLib_CreatureSpecies_HasFlag","parameters":[{"name":"p","type":"const CreatureSpecies *"},{"name":"key","type":"const char *"}],"returns":"bool"},{"filename":"CreatureLib","name":"CreatureLib_DataLibrary_Construct","parameters":[{"name":"out","type":"const DataLibrary * &"},{"name":"settings","type":"LibrarySettings *"},{"name":"species","type":"SpeciesLibrary *"},{"name":"attacks","type":"AttackLibrary *"},{"name":"items","type":"ItemLibrary *"},{"name":"growthRates","type":"GrowthRateLibrary *"},{"name":"typeLibrary","type":"TypeLibrary *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_DataLibrary_Destruct","parameters":[{"name":"p","type":"const DataLibrary *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_DataLibrary_GetSettings","parameters":[{"name":"p","type":"const DataLibrary *"}],"returns":"const LibrarySettings *"},{"filename":"CreatureLib","name":"CreatureLib_DataLibrary_GetSpeciesLibrary","parameters":[{"name":"p","type":"const DataLibrary *"}],"returns":"const SpeciesLibrary *"},{"filename":"CreatureLib","name":"CreatureLib_DataLibrary_GetAttackLibrary","parameters":[{"name":"p","type":"const DataLibrary *"}],"returns":"const AttackLibrary *"},{"filename":"CreatureLib","name":"CreatureLib_DataLibrary_GetItemLibrary","parameters":[{"name":"p","type":"const DataLibrary *"}],"returns":"const ItemLibrary *"},{"filename":"CreatureLib","name":"CreatureLib_DataLibrary_GetGrowthRates","parameters":[{"name":"p","type":"const DataLibrary *"}],"returns":"const GrowthRateLibrary *"},{"filename":"CreatureLib","name":"CreatureLib_DataLibrary_GetTypeLibrary","parameters":[{"name":"p","type":"const DataLibrary *"}],"returns":"const TypeLibrary *"},{"filename":"CreatureLib","name":"CreatureLib_EffectParameter_FromBool","parameters":[{"name":"b","type":"bool"}],"returns":"EffectParameter *"},{"filename":"CreatureLib","name":"CreatureLib_EffectParameter_FromInt","parameters":[{"name":"i","type":"long int"}],"returns":"EffectParameter *"},{"filename":"CreatureLib","name":"CreatureLib_EffectParameter_FromFloat","parameters":[{"name":"f","type":"float"}],"returns":"EffectParameter *"},{"filename":"CreatureLib","name":"CreatureLib_EffectParameter_FromString","parameters":[{"name":"c","type":"const char *"}],"returns":"EffectParameter *"},{"filename":"CreatureLib","name":"CreatureLib_EffectParameter_Destruct","parameters":[{"name":"p","type":"const EffectParameter *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_EffectParameter_GetType","parameters":[{"name":"p","type":"const EffectParameter *"}],"returns":"EffectParameterType"},{"filename":"CreatureLib","name":"CreatureLib_EffectParameter_AsBool","parameters":[{"name":"p","type":"const EffectParameter *"},{"name":"out","type":"bool &"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_EffectParameter_AsInt","parameters":[{"name":"p","type":"const EffectParameter *"},{"name":"out","type":"long int &"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_EffectParameter_AsFloat","parameters":[{"name":"p","type":"const EffectParameter *"},{"name":"out","type":"float &"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_EffectParameter_AsString","parameters":[{"name":"p","type":"const EffectParameter *"},{"name":"out","type":"const char * &"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_LookupGrowthRate_Construct","parameters":[{"name":"experiencePerLevel","type":"unsigned int *"},{"name":"count","type":"long unsigned int"}],"returns":"GrowthRate *"},{"filename":"CreatureLib","name":"CreatureLib_ExternGrowthRate_Construct","parameters":[{"name":"out","type":"GrowthRate * &"},{"name":"calcLevel","type":"Function *"},{"name":"calcExperience","type":"Function *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_GrowthRate_Destruct","parameters":[{"name":"p","type":"const GrowthRate *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_LookupGrowthRate_Destruct","parameters":[{"name":"p","type":"const LookupGrowthRate *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_ExternGrowthRate_Destruct","parameters":[{"name":"p","type":"const ExternGrowthRate *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_GrowthRate_CalculateLevel","parameters":[{"name":"out","type":"unsigned char &"},{"name":"p","type":"const GrowthRate *"},{"name":"experience","type":"unsigned int"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_GrowthRate_CalculateExperience","parameters":[{"name":"out","type":"unsigned int &"},{"name":"p","type":"const GrowthRate *"},{"name":"level","type":"unsigned char"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_GrowthRateLibrary_Construct","parameters":[{"name":"initialCapacity","type":"long unsigned int"}],"returns":"GrowthRateLibrary *"},{"filename":"CreatureLib","name":"CreatureLib_GrowthRateLibrary_Destruct","parameters":[{"name":"p","type":"GrowthRateLibrary *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_GrowthRateLibrary_CalculateLevel","parameters":[{"name":"out","type":"unsigned char &"},{"name":"library","type":"GrowthRateLibrary *"},{"name":"growthRate","type":"const char *"},{"name":"experience","type":"unsigned int"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_GrowthRateLibrary_CalculateLevelWithHash","parameters":[{"name":"out","type":"unsigned char &"},{"name":"library","type":"GrowthRateLibrary *"},{"name":"growthRateHash","type":"unsigned int"},{"name":"experience","type":"unsigned int"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_GrowthRateLibrary_CalculateExperience","parameters":[{"name":"out","type":"unsigned int &"},{"name":"library","type":"GrowthRateLibrary *"},{"name":"growthRate","type":"const char *"},{"name":"level","type":"unsigned char"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_GrowthRateLibrary_CalculateExperienceWithHash","parameters":[{"name":"out","type":"unsigned int &"},{"name":"library","type":"GrowthRateLibrary *"},{"name":"growthRateHash","type":"unsigned int"},{"name":"level","type":"unsigned char"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_GrowthRateLibrary_AddGrowthRate","parameters":[{"name":"library","type":"GrowthRateLibrary *"},{"name":"growthRateName","type":"const char *"},{"name":"growthRate","type":"GrowthRate *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_GrowthRateLibrary_AddGrowthRateWithHash","parameters":[{"name":"library","type":"GrowthRateLibrary *"},{"name":"growthRateHash","type":"unsigned int"},{"name":"growthRate","type":"GrowthRate *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Item_Construct","parameters":[{"name":"name","type":"const char *"},{"name":"category","type":"ItemCategory"},{"name":"battleCategory","type":"BattleItemCategory"},{"name":"price","type":"int"},{"name":"flags","type":"const char * *"},{"name":"flagsCount","type":"long unsigned int"}],"returns":"Item *"},{"filename":"CreatureLib","name":"CreatureLib_Item_Destruct","parameters":[{"name":"p","type":"const Item *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_Item_GetName","parameters":[{"name":"p","type":"const Item *"}],"returns":"const char *"},{"filename":"CreatureLib","name":"CreatureLib_Item_GetCategory","parameters":[{"name":"p","type":"const Item *"}],"returns":"ItemCategory"},{"filename":"CreatureLib","name":"CreatureLib_Item_GetBattleCategory","parameters":[{"name":"p","type":"const Item *"}],"returns":"BattleItemCategory"},{"filename":"CreatureLib","name":"CreatureLib_Item_GetPrice","parameters":[{"name":"p","type":"const Item *"}],"returns":"int"},{"filename":"CreatureLib","name":"CreatureLib_Item_HasFlag","parameters":[{"name":"p","type":"const Item *"},{"name":"key","type":"const char *"}],"returns":"bool"},{"filename":"CreatureLib","name":"CreatureLib_ItemLibrary_Construct","parameters":[{"name":"initialCapacity","type":"long unsigned int"}],"returns":"const ItemLibrary *"},{"filename":"CreatureLib","name":"CreatureLib_ItemLibrary_Destruct","parameters":[{"name":"p","type":"const ItemLibrary *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_ItemLibrary_Insert","parameters":[{"name":"p","type":"ItemLibrary *"},{"name":"name","type":"const char *"},{"name":"t","type":"Item *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_ItemLibrary_InsertWithHash","parameters":[{"name":"p","type":"ItemLibrary *"},{"name":"hashedKey","type":"unsigned int"},{"name":"t","type":"Item *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_ItemLibrary_Delete","parameters":[{"name":"p","type":"ItemLibrary *"},{"name":"name","type":"const char *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_ItemLibrary_DeleteWithHash","parameters":[{"name":"p","type":"ItemLibrary *"},{"name":"hashedKey","type":"unsigned int"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_ItemLibrary_TryGet","parameters":[{"name":"p","type":"ItemLibrary *"},{"name":"name","type":"const char *"},{"name":"out","type":"const Item * &"}],"returns":"bool"},{"filename":"CreatureLib","name":"CreatureLib_ItemLibrary_TryGetWithHash","parameters":[{"name":"p","type":"ItemLibrary *"},{"name":"hashedKey","type":"unsigned int"},{"name":"out","type":"const Item * &"}],"returns":"bool"},{"filename":"CreatureLib","name":"CreatureLib_ItemLibrary_Get","parameters":[{"name":"p","type":"ItemLibrary *"},{"name":"name","type":"const char *"},{"name":"out","type":"const Item * &"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_ItemLibrary_GetWithHash","parameters":[{"name":"p","type":"ItemLibrary *"},{"name":"hashedKey","type":"unsigned int"},{"name":"out","type":"const Item * &"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_ItemLibrary_GetCount","parameters":[{"name":"p","type":"ItemLibrary *"}],"returns":"long unsigned int"},{"filename":"CreatureLib","name":"CreatureLib_ItemLibrary_GetAtIndex","parameters":[{"name":"p","type":"ItemLibrary *"},{"name":"index","type":"long unsigned int"},{"name":"out","type":"const Item * &"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_LearnableAttacks_Construct","parameters":[{"name":"out","type":"LearnableAttacks * &"},{"name":"levelAttackCapacity","type":"long unsigned int"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_LearnableAttacks_Destruct","parameters":[{"name":"p","type":"LearnableAttacks *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_LearnableAttacks_AddLevelAttack","parameters":[{"name":"p","type":"LearnableAttacks *"},{"name":"level","type":"unsigned char"},{"name":"attack","type":"const AttackData *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_LearnableAttacks_GetAttacksForLevel","parameters":[{"name":"p","type":"LearnableAttacks *"},{"name":"level","type":"unsigned char"}],"returns":"const const AttackData * *"},{"filename":"CreatureLib","name":"CreatureLib_LearnableAttacks_HasAttacksForLevel","parameters":[{"name":"p","type":"LearnableAttacks *"},{"name":"level","type":"unsigned char"}],"returns":"bool"},{"filename":"CreatureLib","name":"CreatureLib_LearnableAttacks_GetAttacksForLevelCount","parameters":[{"name":"p","type":"LearnableAttacks *"},{"name":"level","type":"unsigned char"}],"returns":"long unsigned int"},{"filename":"CreatureLib","name":"CreatureLib_LearnableAttacks_GetDistinctLevelAttacksCount","parameters":[{"name":"p","type":"LearnableAttacks *"}],"returns":"long unsigned int"},{"filename":"CreatureLib","name":"CreatureLib_LearnableAttacks_GetDistinctLevelAttacks","parameters":[{"name":"p","type":"LearnableAttacks *"}],"returns":"const const AttackData * *"},{"filename":"CreatureLib","name":"CreatureLib_LibrarySettings_Construct","parameters":[{"name":"maximalLevel","type":"unsigned char"},{"name":"maximalMoves","type":"unsigned char"}],"returns":"const LibrarySettings *"},{"filename":"CreatureLib","name":"CreatureLib_LibrarySettings_Destruct","parameters":[{"name":"p","type":"const LibrarySettings *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_LibrarySettings_GetMaximalLevel","parameters":[{"name":"p","type":"const LibrarySettings *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_LibrarySettings_GetMaximalAttacks","parameters":[{"name":"p","type":"const LibrarySettings *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_SpeciesLibrary_Construct","parameters":[{"name":"initialCapacity","type":"long unsigned int"}],"returns":"const SpeciesLibrary *"},{"filename":"CreatureLib","name":"CreatureLib_SpeciesLibrary_Destruct","parameters":[{"name":"p","type":"const SpeciesLibrary *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_SpeciesLibrary_Insert","parameters":[{"name":"p","type":"SpeciesLibrary *"},{"name":"name","type":"const char *"},{"name":"t","type":"CreatureSpecies *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_SpeciesLibrary_InsertWithHash","parameters":[{"name":"p","type":"SpeciesLibrary *"},{"name":"hashedKey","type":"unsigned int"},{"name":"t","type":"CreatureSpecies *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_SpeciesLibrary_Delete","parameters":[{"name":"p","type":"SpeciesLibrary *"},{"name":"name","type":"const char *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_SpeciesLibrary_DeleteWithHash","parameters":[{"name":"p","type":"SpeciesLibrary *"},{"name":"hashedKey","type":"unsigned int"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_SpeciesLibrary_TryGet","parameters":[{"name":"p","type":"SpeciesLibrary *"},{"name":"name","type":"const char *"},{"name":"out","type":"const CreatureSpecies * &"}],"returns":"bool"},{"filename":"CreatureLib","name":"CreatureLib_SpeciesLibrary_TryGetWithHash","parameters":[{"name":"p","type":"SpeciesLibrary *"},{"name":"hashedKey","type":"unsigned int"},{"name":"out","type":"const CreatureSpecies * &"}],"returns":"bool"},{"filename":"CreatureLib","name":"CreatureLib_SpeciesLibrary_Get","parameters":[{"name":"p","type":"SpeciesLibrary *"},{"name":"name","type":"const char *"},{"name":"out","type":"const CreatureSpecies * &"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_SpeciesLibrary_GetWithHash","parameters":[{"name":"p","type":"SpeciesLibrary *"},{"name":"hashedKey","type":"unsigned int"},{"name":"out","type":"const CreatureSpecies * &"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_SpeciesLibrary_GetCount","parameters":[{"name":"p","type":"SpeciesLibrary *"}],"returns":"long unsigned int"},{"filename":"CreatureLib","name":"CreatureLib_SpeciesLibrary_GetAtIndex","parameters":[{"name":"p","type":"SpeciesLibrary *"},{"name":"index","type":"long unsigned int"},{"name":"out","type":"const CreatureSpecies * &"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_SpeciesVariant_Construct","parameters":[{"name":"name","type":"const char *"},{"name":"height","type":"float"},{"name":"weight","type":"float"},{"name":"baseExperience","type":"unsigned int"},{"name":"types","type":"unsigned char *"},{"name":"typeLength","type":"long unsigned int"},{"name":"baseHealth","type":"unsigned short"},{"name":"baseAttack","type":"unsigned short"},{"name":"baseDefense","type":"unsigned short"},{"name":"baseMagicalAttack","type":"unsigned short"},{"name":"baseMagicalDefense","type":"unsigned short"},{"name":"baseSpeed","type":"unsigned short"},{"name":"talents","type":"const char * *"},{"name":"talentsLength","type":"long unsigned int"},{"name":"secretTalents","type":"const char * *"},{"name":"secretTalentsLength","type":"long unsigned int"},{"name":"attacks","type":"const LearnableAttacks *"},{"name":"flags","type":"const char * *"},{"name":"flagsCount","type":"long unsigned int"}],"returns":"SpeciesVariant *"},{"filename":"CreatureLib","name":"CreatureLib_SpeciesVariant_Destruct","parameters":[{"name":"p","type":"SpeciesVariant *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_SpeciesVariant_GetName","parameters":[{"name":"p","type":"SpeciesVariant *"}],"returns":"const char *"},{"filename":"CreatureLib","name":"CreatureLib_SpeciesVariant_GetHeight","parameters":[{"name":"p","type":"const SpeciesVariant *"}],"returns":"float"},{"filename":"CreatureLib","name":"CreatureLib_SpeciesVariant_GetWeight","parameters":[{"name":"p","type":"const SpeciesVariant *"}],"returns":"float"},{"filename":"CreatureLib","name":"CreatureLib_SpeciesVariant_GetBaseExperience","parameters":[{"name":"p","type":"const SpeciesVariant *"}],"returns":"unsigned int"},{"filename":"CreatureLib","name":"CreatureLib_SpeciesVariant_GetTypeCount","parameters":[{"name":"p","type":"const SpeciesVariant *"}],"returns":"long unsigned int"},{"filename":"CreatureLib","name":"CreatureLib_SpeciesVariant_GetType","parameters":[{"name":"p","type":"SpeciesVariant *"},{"name":"index","type":"long unsigned int"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_SpeciesVariant_GetStatistic","parameters":[{"name":"p","type":"SpeciesVariant *"},{"name":"stat","type":"Statistic"}],"returns":"unsigned short"},{"filename":"CreatureLib","name":"CreatureLib_SpeciesVariant_GetTalentCount","parameters":[{"name":"p","type":"const SpeciesVariant *"}],"returns":"long unsigned int"},{"filename":"CreatureLib","name":"CreatureLib_SpeciesVariant_GetSecretTalentCount","parameters":[{"name":"p","type":"const SpeciesVariant *"}],"returns":"long unsigned int"},{"filename":"CreatureLib","name":"CreatureLib_SpeciesVariant_GetTalent","parameters":[{"name":"p","type":"SpeciesVariant *"},{"name":"secret","type":"bool"},{"name":"index","type":"unsigned char"},{"name":"out","type":"const char * &"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_SpeciesVariant_GetLearnableAttacks","parameters":[{"name":"p","type":"SpeciesVariant *"}],"returns":"const LearnableAttacks *"},{"filename":"CreatureLib","name":"CreatureLib_SpeciesVariant_GetRandomTalent","parameters":[{"name":"p","type":"SpeciesVariant *"},{"name":"rand","type":"Random *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_SpeciesVariant_HasFlag","parameters":[{"name":"p","type":"const SpeciesVariant *"},{"name":"key","type":"const char *"}],"returns":"bool"},{"filename":"CreatureLib","name":"CreatureLib_TypeLibrary_Construct","parameters":[{"name":"initialCapacity","type":"long unsigned int"}],"returns":"TypeLibrary *"},{"filename":"CreatureLib","name":"CreatureLib_TypeLibrary_Destruct","parameters":[{"name":"p","type":"const TypeLibrary *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_TypeLibrary_GetTypeId","parameters":[{"name":"out","type":"unsigned char &"},{"name":"p","type":"const TypeLibrary *"},{"name":"type","type":"const char *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_TypeLibrary_RegisterType","parameters":[{"name":"out","type":"unsigned char &"},{"name":"p","type":"TypeLibrary *"},{"name":"type","type":"const char *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_TypeLibrary_SetEffectiveness","parameters":[{"name":"p","type":"TypeLibrary *"},{"name":"attacking","type":"unsigned char"},{"name":"defensive","type":"unsigned char"},{"name":"effectiveness","type":"float"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_TypeLibrary_GetSingleEffectiveness","parameters":[{"name":"out","type":"float &"},{"name":"p","type":"TypeLibrary *"},{"name":"attacking","type":"unsigned char"},{"name":"defensive","type":"unsigned char"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_TypeLibrary_GetEffectiveness","parameters":[{"name":"out","type":"float &"},{"name":"p","type":"TypeLibrary *"},{"name":"attacking","type":"unsigned char"},{"name":"defensive","type":"unsigned char *"},{"name":"defensiveCount","type":"long unsigned int"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_TypeLibrary_GetTypeName","parameters":[{"name":"out","type":"const char * &"},{"name":"p","type":"TypeLibrary *"},{"name":"type","type":"unsigned char"}],"returns":"unsigned char"}]} +{"enums":[{"byteSize":4,"filename":"CreatureLib","name":"float_denorm_style","values":{"-1":"denorm_indeterminate","0":"denorm_absent","1":"denorm_present"}},{"byteSize":4,"filename":"CreatureLib","name":"float_round_style","values":{"-1":"round_indeterminate","0":"round_toward_zero","1":"round_to_nearest","2":"round_toward_infinity","3":"round_toward_neg_infinity"}},{"byteSize":1,"filename":"CreatureLib","name":"ScriptCategory","values":{"0":"Attack","1":"Talent","2":"Status","3":"Creature","4":"Battle","5":"Side"}},{"byteSize":1,"filename":"CreatureLib","name":"Statistic","values":{"0":"Health","1":"PhysicalAttack","2":"PhysicalDefense","3":"MagicalAttack","4":"MagicalDefense","5":"Speed"}},{"byteSize":1,"filename":"CreatureLib","name":"Gender","values":{"0":"Male","1":"Female","2":"Genderless"}},{"byteSize":1,"filename":"CreatureLib","name":"ItemCategory","values":{"0":"MiscItem","1":"CaptureDevice","2":"Medicine","3":"Berry","4":"MoveLearner","5":"VariantChanger","6":"KeyItem","7":"Mail"}},{"byteSize":1,"filename":"CreatureLib","name":"BattleItemCategory","values":{"0":"None","1":"Healing","2":"StatusHealing","3":"CaptureDevice","4":"MiscBattleItem"}},{"byteSize":1,"filename":"CreatureLib","name":"DamageSource","values":{"0":"AttackDamage"}},{"byteSize":1,"filename":"CreatureLib","name":"EventDataKind","values":{"0":"Damage","1":"Heal","10":"ChangeVariant","11":"AttackUse","2":"Faint","3":"Switch","4":"TurnStart","5":"TurnEnd","6":"ExperienceGain","7":"Miss","8":"DisplayText","9":"ChangeSpecies"}},{"byteSize":1,"filename":"CreatureLib","name":"HistoryElementKind","values":{"0":"AttackUse"}},{"byteSize":4,"filename":"CreatureLib","name":"AttackLearnMethod","values":{"0":"Unknown","1":"Level"}},{"byteSize":1,"filename":"CreatureLib","name":"TurnChoiceKind","values":{"0":"Pass","1":"Attack","2":"Item","3":"Switch","4":"Flee"}},{"byteSize":1,"filename":"CreatureLib","name":"EffectParameterType","values":{"0":"None","1":"Bool","2":"Int","3":"Float","4":"String"}},{"byteSize":1,"filename":"CreatureLib","name":"AttackCategory","values":{"0":"Physical","1":"Magical","2":"Status"}},{"byteSize":1,"filename":"CreatureLib","name":"AttackTarget","values":{"0":"Adjacent","1":"AdjacentAlly","10":"RandomOpponent","11":"Self","2":"AdjacentAllySelf","3":"AdjacentOpponent","4":"All","5":"AllAdjacent","6":"AllAdjacentOpponent","7":"AllAlly","8":"AllOpponent","9":"Any"}}],"functions":[{"filename":"CreatureLib","name":"CreatureLib_Battle_Construct","parameters":[{"name":"out","type":"Battle * &"},{"name":"library","type":"const BattleLibrary *"},{"name":"partyArr","type":"BattleParty * *"},{"name":"numberOfParties","type":"long unsigned int"},{"name":"canFlee","type":"bool"},{"name":"numberOfSides","type":"unsigned char"},{"name":"creaturesPerSide","type":"unsigned char"},{"name":"randomSeed","type":"long unsigned int"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Battle_Destruct","parameters":[{"name":"p","type":"const Battle *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_Battle_GetLibrary","parameters":[{"name":"p","type":"const Battle *"}],"returns":"const BattleLibrary *"},{"filename":"CreatureLib","name":"CreatureLib_Battle_CanUse","parameters":[{"name":"out","type":"bool &"},{"name":"p","type":"Battle *"},{"name":"turnChoice","type":"BaseTurnChoice *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Battle_TrySetChoice","parameters":[{"name":"out","type":"bool &"},{"name":"p","type":"Battle *"},{"name":"turnChoice","type":"BaseTurnChoice *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Battle_CanFlee","parameters":[{"name":"p","type":"const Battle *"}],"returns":"bool"},{"filename":"CreatureLib","name":"CreatureLib_Battle_CheckChoicesSetAndRun","parameters":[{"name":"p","type":"Battle *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Battle_GetCurrentTurn","parameters":[{"name":"p","type":"Battle *"}],"returns":"unsigned int"},{"filename":"CreatureLib","name":"CreatureLib_Battle_GetCreaturesPerSide","parameters":[{"name":"p","type":"Battle *"}],"returns":"unsigned int"},{"filename":"CreatureLib","name":"CreatureLib_Battle_GetCurrentTurnQueue","parameters":[{"name":"p","type":"const Battle *"}],"returns":"ChoiceQueue *"},{"filename":"CreatureLib","name":"CreatureLib_Battle_GetRandom","parameters":[{"name":"p","type":"Battle *"}],"returns":"BattleRandom *"},{"filename":"CreatureLib","name":"CreatureLib_Battle_CreatureInField","parameters":[{"name":"out","type":"bool &"},{"name":"p","type":"const Battle *"},{"name":"c","type":"Creature *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Battle_GetCreature","parameters":[{"name":"out","type":"Creature * &"},{"name":"p","type":"const Battle *"},{"name":"side","type":"unsigned char"},{"name":"target","type":"unsigned char"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Battle_ForceRecall","parameters":[{"name":"p","type":"Battle *"},{"name":"side","type":"unsigned char"},{"name":"target","type":"unsigned char"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Battle_SwitchCreature","parameters":[{"name":"p","type":"Battle *"},{"name":"side","type":"unsigned char"},{"name":"target","type":"unsigned char"},{"name":"c","type":"Creature *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Battle_CanSlotBeFilled","parameters":[{"name":"out","type":"bool &"},{"name":"p","type":"const Battle *"},{"name":"side","type":"unsigned char"},{"name":"target","type":"unsigned char"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Battle_ValidateBattleState","parameters":[{"name":"p","type":"Battle *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Battle_HasEnded","parameters":[{"name":"p","type":"const Battle *"}],"returns":"bool"},{"filename":"CreatureLib","name":"CreatureLib_Battle_HasConclusiveResult","parameters":[{"name":"p","type":"const Battle *"}],"returns":"bool"},{"filename":"CreatureLib","name":"CreatureLib_Battle_GetWinningSide","parameters":[{"name":"p","type":"const Battle *"}],"returns":"bool"},{"filename":"CreatureLib","name":"CreatureLib_Battle_GetSidesCount","parameters":[{"name":"p","type":"const Battle *"}],"returns":"long unsigned int"},{"filename":"CreatureLib","name":"CreatureLib_Battle_GetSides","parameters":[{"name":"p","type":"const Battle *"}],"returns":"const BattleSide * *"},{"filename":"CreatureLib","name":"CreatureLib_Battle_GetPartiesCount","parameters":[{"name":"p","type":"const Battle *"}],"returns":"long unsigned int"},{"filename":"CreatureLib","name":"CreatureLib_Battle_GetParties","parameters":[{"name":"p","type":"const Battle *"}],"returns":"const BattleParty * *"},{"filename":"CreatureLib","name":"CreatureLib_Battle_GetVolatileScript","parameters":[{"name":"p","type":"Battle *"},{"name":"key","type":"const char *"}],"returns":"Script *"},{"filename":"CreatureLib","name":"CreatureLib_Battle_AddVolatileScriptByName","parameters":[{"name":"p","type":"Battle *"},{"name":"key","type":"const char *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Battle_AddVolatileScript","parameters":[{"name":"p","type":"Battle *"},{"name":"script","type":"Script *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Battle_RemoveVolatileScript","parameters":[{"name":"p","type":"Battle *"},{"name":"key","type":"const char *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Battle_RemoveVolatileScriptWithScript","parameters":[{"name":"p","type":"Battle *"},{"name":"script","type":"Script *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Battle_HasVolatileScript","parameters":[{"name":"p","type":"Battle *"},{"name":"key","type":"const char *"}],"returns":"bool"},{"filename":"CreatureLib","name":"CreatureLib_Battle_RegisterEventListener","parameters":[{"name":"p","type":"Battle *"},{"name":"func","type":"Function *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Battle_GetHistory","parameters":[{"name":"p","type":"Battle *"}],"returns":"const HistoryHolder *"},{"filename":"CreatureLib","name":"CreatureLib_BattleLibrary_Construct","parameters":[{"name":"out","type":"const BattleLibrary * &"},{"name":"staticLib","type":"const DataLibrary *"},{"name":"statCalculator","type":"BattleStatCalculator *"},{"name":"damageLibrary","type":"DamageLibrary *"},{"name":"experienceLibrary","type":"ExperienceLibrary *"},{"name":"scriptResolver","type":"ScriptResolver *"},{"name":"miscLibrary","type":"MiscLibrary *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_BattleLibrary_Destruct","parameters":[{"name":"p","type":"const BattleLibrary *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_BattleLibrary_GetStaticLib","parameters":[{"name":"p","type":"const BattleLibrary *"}],"returns":"const DataLibrary *"},{"filename":"CreatureLib","name":"CreatureLib_BattleLibrary_GetStatCalculator","parameters":[{"name":"p","type":"const BattleLibrary *"}],"returns":"const BattleStatCalculator *"},{"filename":"CreatureLib","name":"CreatureLib_BattleLibrary_GetDamageLibrary","parameters":[{"name":"p","type":"const BattleLibrary *"}],"returns":"const DamageLibrary *"},{"filename":"CreatureLib","name":"CreatureLib_BattleLibrary_GetMiscLibrary","parameters":[{"name":"p","type":"const BattleLibrary *"}],"returns":"const MiscLibrary *"},{"filename":"CreatureLib","name":"CreatureLib_BattleLibrary_GetExperienceLibrary","parameters":[{"name":"p","type":"const BattleLibrary *"}],"returns":"const ExperienceLibrary *"},{"filename":"CreatureLib","name":"CreatureLib_BattleParty_Construct","parameters":[{"name":"out","type":"BattleParty * &"},{"name":"p","type":"CreatureParty *"},{"name":"creatureIndices","type":"unsigned char *"},{"name":"numberOfIndices","type":"long unsigned int"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_BattleParty_Destruct","parameters":[{"name":"p","type":"const BattleParty *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_BattleParty_GetParty","parameters":[{"name":"p","type":"const BattleParty *"}],"returns":"CreatureParty *"},{"filename":"CreatureLib","name":"CreatureLib_BattleParty_IsResponsibleForIndex","parameters":[{"name":"out","type":"bool &"},{"name":"p","type":"const BattleParty *"},{"name":"side","type":"unsigned char"},{"name":"creature","type":"unsigned char"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_BattleParty_HasCreaturesNotInField","parameters":[{"name":"p","type":"const BattleParty *"}],"returns":"bool"},{"filename":"CreatureLib","name":"CreatureLib_BattleRandom_Construct","parameters":[],"returns":"BattleRandom *"},{"filename":"CreatureLib","name":"CreatureLib_BattleRandom_ConstructWithSeed","parameters":[{"name":"seed","type":"long unsigned int"}],"returns":"BattleRandom *"},{"filename":"CreatureLib","name":"CreatureLib_BattleRandom_Destruct","parameters":[{"name":"p","type":"BattleRandom *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_BattleRandom_EffectChance","parameters":[{"name":"out","type":"bool &"},{"name":"p","type":"BattleRandom *"},{"name":"chance","type":"float"},{"name":"attack","type":"ExecutingAttack *"},{"name":"target","type":"Creature *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_BattleRandom_Get","parameters":[{"name":"p","type":"BattleRandom *"}],"returns":"int"},{"filename":"CreatureLib","name":"CreatureLib_BattleRandom_GetMax","parameters":[{"name":"p","type":"BattleRandom *"},{"name":"max","type":"int"}],"returns":"int"},{"filename":"CreatureLib","name":"CreatureLib_BattleRandom_GetMinMax","parameters":[{"name":"p","type":"BattleRandom *"},{"name":"min","type":"int"},{"name":"max","type":"int"}],"returns":"int"},{"filename":"CreatureLib","name":"CreatureLib_BattleRandom_GetSeed","parameters":[{"name":"p","type":"BattleRandom *"}],"returns":"long unsigned int"},{"filename":"CreatureLib","name":"CreatureLib_BattleSide_Construct","parameters":[{"name":"index","type":"unsigned char"},{"name":"battle","type":"Battle *"},{"name":"creaturesPerSide","type":"unsigned char"}],"returns":"BattleSide *"},{"filename":"CreatureLib","name":"CreatureLib_BattleSide_Destruct","parameters":[{"name":"p","type":"BattleSide *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_BattleSide_AllChoicesSet","parameters":[{"name":"p","type":"BattleSide *"}],"returns":"bool"},{"filename":"CreatureLib","name":"CreatureLib_BattleSide_AllPossibleSlotsFilled","parameters":[{"name":"out","type":"bool &"},{"name":"p","type":"BattleSide *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_BattleSide_SetChoice","parameters":[{"name":"p","type":"BattleSide *"},{"name":"choice","type":"BaseTurnChoice *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_BattleSide_ResetChoices","parameters":[{"name":"p","type":"BattleSide *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_BattleSide_SetCreature","parameters":[{"name":"p","type":"BattleSide *"},{"name":"creature","type":"Creature *"},{"name":"index","type":"unsigned char"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_BattleSide_GetCreature","parameters":[{"name":"out","type":"Creature * &"},{"name":"p","type":"BattleSide *"},{"name":"index","type":"unsigned char"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_BattleSide_GetSideIndex","parameters":[{"name":"p","type":"BattleSide *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_BattleSide_GetCreatureIndex","parameters":[{"name":"out","type":"unsigned char &"},{"name":"p","type":"BattleSide *"},{"name":"c","type":"Creature *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_BattleSide_MarkSlotAsUnfillable","parameters":[{"name":"p","type":"BattleSide *"},{"name":"c","type":"Creature *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_BattleSide_IsDefeated","parameters":[{"name":"p","type":"BattleSide *"}],"returns":"bool"},{"filename":"CreatureLib","name":"CreatureLib_BattleSide_HasFled","parameters":[{"name":"p","type":"BattleSide *"}],"returns":"bool"},{"filename":"CreatureLib","name":"CreatureLib_BattleSide_MarkAsFled","parameters":[{"name":"p","type":"BattleSide *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_BattleStatCalculator_Construct","parameters":[],"returns":"const BattleStatCalculator *"},{"filename":"CreatureLib","name":"CreatureLib_BattleStatCalculator_Destruct","parameters":[{"name":"p","type":"const BattleStatCalculator *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_BattleStatCalculator_CalculateFlatStat","parameters":[{"name":"out","type":"unsigned int &"},{"name":"p","type":"const BattleStatCalculator *"},{"name":"creature","type":"Creature *"},{"name":"stat","type":"Statistic"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_BattleStatCalculator_CalculateBoostedStat","parameters":[{"name":"out","type":"unsigned int &"},{"name":"p","type":"const BattleStatCalculator *"},{"name":"creature","type":"Creature *"},{"name":"stat","type":"Statistic"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Creature_Construct","parameters":[{"name":"out","type":"Creature * &"},{"name":"library","type":"const BattleLibrary *"},{"name":"species","type":"const CreatureSpecies *"},{"name":"variant","type":"const SpeciesVariant *"},{"name":"level","type":"unsigned char"},{"name":"experience","type":"unsigned int"},{"name":"uid","type":"unsigned int"},{"name":"gender","type":"Gender"},{"name":"coloring","type":"unsigned char"},{"name":"heldItem","type":"const Item *"},{"name":"nickname","type":"const char *"},{"name":"secretTalent","type":"bool"},{"name":"talent","type":"unsigned char"},{"name":"attacks","type":"LearnedAttack * *"},{"name":"attacksNum","type":"long unsigned int"},{"name":"allowedExperienceGain","type":"bool"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Creature_Destruct","parameters":[{"name":"p","type":"const Creature *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_Creature_Initialize","parameters":[{"name":"p","type":"Creature *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Creature_GetLibrary","parameters":[{"name":"p","type":"const Creature *"}],"returns":"const BattleLibrary *"},{"filename":"CreatureLib","name":"CreatureLib_Creature_GetSpecies","parameters":[{"name":"p","type":"const Creature *"}],"returns":"const CreatureSpecies *"},{"filename":"CreatureLib","name":"CreatureLib_Creature_GetVariant","parameters":[{"name":"p","type":"const Creature *"}],"returns":"const SpeciesVariant *"},{"filename":"CreatureLib","name":"CreatureLib_Creature_ChangeSpecies","parameters":[{"name":"p","type":"Creature *"},{"name":"species","type":"const CreatureSpecies *"},{"name":"variant","type":"const SpeciesVariant *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Creature_ChangeVariant","parameters":[{"name":"p","type":"Creature *"},{"name":"variant","type":"const SpeciesVariant *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Creature_GetLevel","parameters":[{"name":"p","type":"const Creature *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Creature_GetExperience","parameters":[{"name":"p","type":"const Creature *"}],"returns":"unsigned int"},{"filename":"CreatureLib","name":"CreatureLib_Creature_GetUniqueIdentifier","parameters":[{"name":"p","type":"const Creature *"}],"returns":"unsigned int"},{"filename":"CreatureLib","name":"CreatureLib_Creature_GetGender","parameters":[{"name":"p","type":"const Creature *"}],"returns":"Gender"},{"filename":"CreatureLib","name":"CreatureLib_Creature_GetColoring","parameters":[{"name":"p","type":"const Creature *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Creature_HasHeldItem","parameters":[{"name":"p","type":"const Creature *"},{"name":"name","type":"const char *"}],"returns":"bool"},{"filename":"CreatureLib","name":"CreatureLib_Creature_HasHeldItemWithHash","parameters":[{"name":"p","type":"const Creature *"},{"name":"hash","type":"unsigned int"}],"returns":"bool"},{"filename":"CreatureLib","name":"CreatureLib_Creature_GetHeldItem","parameters":[{"name":"p","type":"const Creature *"}],"returns":"const Item *"},{"filename":"CreatureLib","name":"CreatureLib_Creature_SetHeldItem","parameters":[{"name":"p","type":"Creature *"},{"name":"name","type":"const char *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Creature_SetHeldItemWithHash","parameters":[{"name":"p","type":"Creature *"},{"name":"hash","type":"unsigned int"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Creature_SetHeldItemFromItem","parameters":[{"name":"p","type":"Creature *"},{"name":"item","type":"const Item *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_Creature_GetCurrentHealth","parameters":[{"name":"p","type":"const Creature *"}],"returns":"unsigned int"},{"filename":"CreatureLib","name":"CreatureLib_Creature_GetBattle","parameters":[{"name":"p","type":"const Creature *"}],"returns":"Battle *"},{"filename":"CreatureLib","name":"CreatureLib_Creature_GetBattleSide","parameters":[{"name":"p","type":"const Creature *"}],"returns":"BattleSide *"},{"filename":"CreatureLib","name":"CreatureLib_Creature_IsOnBattleField","parameters":[{"name":"p","type":"const Creature *"}],"returns":"bool"},{"filename":"CreatureLib","name":"CreatureLib_Creature_GetNickname","parameters":[{"name":"p","type":"Creature *"}],"returns":"const char *"},{"filename":"CreatureLib","name":"CreatureLib_Creature_HasType","parameters":[{"name":"p","type":"Creature *"},{"name":"type","type":"unsigned char"}],"returns":"bool"},{"filename":"CreatureLib","name":"CreatureLib_Creature_GetMaxHealth","parameters":[{"name":"p","type":"const Creature *"}],"returns":"unsigned int"},{"filename":"CreatureLib","name":"CreatureLib_Creature_ChangeLevelBy","parameters":[{"name":"p","type":"Creature *"},{"name":"level","type":"signed char"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Creature_Damage","parameters":[{"name":"p","type":"Creature *"},{"name":"damage","type":"unsigned int"},{"name":"source","type":"DamageSource"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Creature_Heal","parameters":[{"name":"p","type":"Creature *"},{"name":"health","type":"unsigned int"},{"name":"canRevive","type":"bool"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Creature_RestoreAllAttackUses","parameters":[{"name":"p","type":"Creature *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Creature_GetActiveTalent","parameters":[{"name":"p","type":"const Creature *"},{"name":"out","type":"const char * &"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Creature_OverrideActiveTalent","parameters":[{"name":"p","type":"Creature *"},{"name":"talent","type":"const char *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Creature_AddExperience","parameters":[{"name":"p","type":"Creature *"},{"name":"experience","type":"unsigned int"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Creature_ClearVolatileScripts","parameters":[{"name":"p","type":"Creature *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Creature_AddVolatileScriptByName","parameters":[{"name":"p","type":"Creature *"},{"name":"scriptName","type":"const char *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Creature_AddVolatileScript","parameters":[{"name":"p","type":"Creature *"},{"name":"script","type":"Script *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Creature_RemoveVolatileScriptByName","parameters":[{"name":"p","type":"Creature *"},{"name":"scriptName","type":"const char *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Creature_RemoveVolatileScript","parameters":[{"name":"p","type":"Creature *"},{"name":"script","type":"Script *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Creature_HasVolatileScript","parameters":[{"name":"p","type":"Creature *"},{"name":"scriptName","type":"const char *"}],"returns":"bool"},{"filename":"CreatureLib","name":"CreatureLib_Creature_GetAttacksCount","parameters":[{"name":"p","type":"Creature *"}],"returns":"long unsigned int"},{"filename":"CreatureLib","name":"CreatureLib_Creature_GetAttacks","parameters":[{"name":"p","type":"Creature *"}],"returns":"const LearnedAttack * *"},{"filename":"CreatureLib","name":"CreatureLib_Creature_HasAttack","parameters":[{"name":"p","type":"Creature *"},{"name":"scriptName","type":"const char *"}],"returns":"bool"},{"filename":"CreatureLib","name":"CreatureLib_Creature_GetDisplaySpecies","parameters":[{"name":"p","type":"const Creature *"}],"returns":"const CreatureSpecies *"},{"filename":"CreatureLib","name":"CreatureLib_Creature_GetDisplayVariant","parameters":[{"name":"p","type":"const Creature *"}],"returns":"const SpeciesVariant *"},{"filename":"CreatureLib","name":"CreatureLib_Creature_SetDisplaySpecies","parameters":[{"name":"p","type":"Creature *"},{"name":"species","type":"const CreatureSpecies *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_Creature_SetDisplayVariant","parameters":[{"name":"p","type":"Creature *"},{"name":"variant","type":"const SpeciesVariant *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_Creature_ChangeStatBoost","parameters":[{"name":"p","type":"Creature *"},{"name":"stat","type":"Statistic"},{"name":"diffAmount","type":"signed char"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_Creature_GetFlatStat","parameters":[{"name":"p","type":"Creature *"},{"name":"stat","type":"Statistic"}],"returns":"unsigned int"},{"filename":"CreatureLib","name":"CreatureLib_Creature_GetBoostedStat","parameters":[{"name":"p","type":"Creature *"},{"name":"stat","type":"Statistic"}],"returns":"unsigned int"},{"filename":"CreatureLib","name":"CreatureLib_Creature_GetBaseStat","parameters":[{"name":"p","type":"Creature *"},{"name":"stat","type":"Statistic"}],"returns":"unsigned int"},{"filename":"CreatureLib","name":"CreatureLib_Creature_GetStatBoost","parameters":[{"name":"p","type":"Creature *"},{"name":"stat","type":"Statistic"}],"returns":"signed char"},{"filename":"CreatureLib","name":"CreatureLib_Creature_GetAvailableAttackSlot","parameters":[{"name":"p","type":"const Creature *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Creature_AddAttack","parameters":[{"name":"p","type":"Creature *"},{"name":"attack","type":"LearnedAttack *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Creature_ReplaceAttack","parameters":[{"name":"p","type":"Creature *"},{"name":"index","type":"long unsigned int"},{"name":"attack","type":"LearnedAttack *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Creature_SwapAttack","parameters":[{"name":"p","type":"Creature *"},{"name":"a","type":"long unsigned int"},{"name":"b","type":"long unsigned int"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_CreatureParty_ConstructWithSize","parameters":[{"name":"size","type":"long unsigned int"}],"returns":"CreatureParty *"},{"filename":"CreatureLib","name":"CreatureLib_CreatureParty_ConstructFromArray","parameters":[{"name":"creatures","type":"Creature * *"},{"name":"size","type":"long unsigned int"}],"returns":"CreatureParty *"},{"filename":"CreatureLib","name":"CreatureLib_CreatureParty_Destruct","parameters":[{"name":"p","type":"const CreatureParty *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_CreatureParty_GetAtIndex","parameters":[{"name":"out","type":"Creature * &"},{"name":"p","type":"const CreatureParty *"},{"name":"index","type":"long unsigned int"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_CreatureParty_Switch","parameters":[{"name":"p","type":"CreatureParty *"},{"name":"a","type":"long unsigned int"},{"name":"b","type":"long unsigned int"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_CreatureParty_PackParty","parameters":[{"name":"p","type":"CreatureParty *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_CreatureParty_SwapInto","parameters":[{"name":"p","type":"CreatureParty *"},{"name":"index","type":"long unsigned int"},{"name":"creature","type":"Creature *"}],"returns":"Creature *"},{"filename":"CreatureLib","name":"CreatureLib_CreatureParty_HasAvailableCreatures","parameters":[{"name":"p","type":"const CreatureParty *"}],"returns":"bool"},{"filename":"CreatureLib","name":"CreatureLib_CreatureParty_GetLength","parameters":[{"name":"p","type":"const CreatureParty *"}],"returns":"long unsigned int"},{"filename":"CreatureLib","name":"CreatureLib_CreatureParty_GetParty","parameters":[{"name":"p","type":"CreatureParty *"}],"returns":"const Creature * *"},{"filename":"CreatureLib","name":"CreatureLib_DamageLibrary_Construct","parameters":[],"returns":"const DamageLibrary *"},{"filename":"CreatureLib","name":"CreatureLib_DamageLibrary_Destruct","parameters":[{"name":"p","type":"const DamageLibrary *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_DamageLibrary_GetDamage","parameters":[{"name":"out","type":"unsigned int &"},{"name":"p","type":"const DamageLibrary *"},{"name":"attack","type":"ExecutingAttack *"},{"name":"target","type":"Creature *"},{"name":"hitIndex","type":"unsigned char"},{"name":"hitData","type":"HitData *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_DamageLibrary_GetBasePower","parameters":[{"name":"out","type":"unsigned char &"},{"name":"p","type":"const DamageLibrary *"},{"name":"attack","type":"ExecutingAttack *"},{"name":"target","type":"Creature *"},{"name":"hitIndex","type":"unsigned char"},{"name":"hitData","type":"HitData *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_DamageLibrary_GetStatModifier","parameters":[{"name":"out","type":"float &"},{"name":"p","type":"const DamageLibrary *"},{"name":"attack","type":"ExecutingAttack *"},{"name":"target","type":"Creature *"},{"name":"hitIndex","type":"unsigned char"},{"name":"hitData","type":"HitData *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_DamageLibrary_GetDamageModifier","parameters":[{"name":"out","type":"float &"},{"name":"p","type":"const DamageLibrary *"},{"name":"attack","type":"ExecutingAttack *"},{"name":"target","type":"Creature *"},{"name":"hitIndex","type":"unsigned char"},{"name":"hitData","type":"HitData *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_EventData_Destruct","parameters":[{"name":"p","type":"const EventData *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_EventData_GetKind","parameters":[{"name":"p","type":"const EventData *"}],"returns":"EventDataKind"},{"filename":"CreatureLib","name":"CreatureLib_DamageEvent_GetCreature","parameters":[{"name":"p","type":"const DamageEvent *"}],"returns":"Creature *"},{"filename":"CreatureLib","name":"CreatureLib_DamageEvent_GetDamageSource","parameters":[{"name":"p","type":"const DamageEvent *"}],"returns":"DamageSource"},{"filename":"CreatureLib","name":"CreatureLib_DamageEvent_GetOriginalHealth","parameters":[{"name":"p","type":"const DamageEvent *"}],"returns":"unsigned int"},{"filename":"CreatureLib","name":"CreatureLib_DamageEvent_GetNewHealth","parameters":[{"name":"p","type":"const DamageEvent *"}],"returns":"unsigned int"},{"filename":"CreatureLib","name":"CreatureLib_DamageEvent_Destruct","parameters":[{"name":"p","type":"const DamageEvent *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_HealEvent_GetCreature","parameters":[{"name":"p","type":"const HealEvent *"}],"returns":"Creature *"},{"filename":"CreatureLib","name":"CreatureLib_HealEvent_GetOriginalHealth","parameters":[{"name":"p","type":"const HealEvent *"}],"returns":"unsigned int"},{"filename":"CreatureLib","name":"CreatureLib_HealEvent_GetNewHealth","parameters":[{"name":"p","type":"const HealEvent *"}],"returns":"unsigned int"},{"filename":"CreatureLib","name":"CreatureLib_HealEvent_Destruct","parameters":[{"name":"p","type":"const HealEvent *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_FaintEvent_GetCreature","parameters":[{"name":"p","type":"const FaintEvent *"}],"returns":"Creature *"},{"filename":"CreatureLib","name":"CreatureLib_FaintEvent_Destruct","parameters":[{"name":"p","type":"const FaintEvent *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_SwitchEvent_GetNewCreature","parameters":[{"name":"p","type":"const SwitchEvent *"}],"returns":"Creature *"},{"filename":"CreatureLib","name":"CreatureLib_SwitchEvent_GetSide","parameters":[{"name":"p","type":"const SwitchEvent *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_SwitchEvent_GetIndex","parameters":[{"name":"p","type":"const SwitchEvent *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_SwitchEvent_Destruct","parameters":[{"name":"p","type":"const SwitchEvent *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_TurnStartEvent_Destruct","parameters":[{"name":"p","type":"const TurnStartEvent *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_TurnEndEvent_Destruct","parameters":[{"name":"p","type":"const TurnEndEvent *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_ExperienceGainEvent_GetCreature","parameters":[{"name":"p","type":"const ExperienceGainEvent *"}],"returns":"Creature *"},{"filename":"CreatureLib","name":"CreatureLib_ExperienceGainEvent_GetPreviousExperience","parameters":[{"name":"p","type":"const ExperienceGainEvent *"}],"returns":"unsigned int"},{"filename":"CreatureLib","name":"CreatureLib_ExperienceGainEvent_GetNewExperience","parameters":[{"name":"p","type":"const ExperienceGainEvent *"}],"returns":"unsigned int"},{"filename":"CreatureLib","name":"CreatureLib_ExperienceGainEvent_Destruct","parameters":[{"name":"p","type":"const ExperienceGainEvent *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_DisplayTextEvent_GetText","parameters":[{"name":"p","type":"const DisplayTextEvent *"}],"returns":"const char *"},{"filename":"CreatureLib","name":"CreatureLib_DisplayTextEvent_Destruct","parameters":[{"name":"p","type":"const DisplayTextEvent *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_ExecutingAttack_Construct","parameters":[{"name":"out","type":"ExecutingAttack * &"},{"name":"targets","type":"const Creature * *"},{"name":"targetCount","type":"long unsigned int"},{"name":"numberHits","type":"unsigned char"},{"name":"user","type":"Creature *"},{"name":"attack","type":"LearnedAttack *"},{"name":"script","type":"Script *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_ExecutingAttack_Destruct","parameters":[{"name":"p","type":"ExecutingAttack *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_ExecutingAttack_GetHitData","parameters":[{"name":"out","type":"HitData * &"},{"name":"p","type":"ExecutingAttack *"},{"name":"target","type":"Creature *"},{"name":"hit","type":"unsigned char"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_ExecutingAttack_IsCreatureTarget","parameters":[{"name":"p","type":"ExecutingAttack *"},{"name":"target","type":"Creature *"}],"returns":"bool"},{"filename":"CreatureLib","name":"CreatureLib_ExecutingAttack_GetTargetCount","parameters":[{"name":"p","type":"ExecutingAttack *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_ExecutingAttack_GetTargets","parameters":[{"name":"p","type":"ExecutingAttack *"}],"returns":"const const Creature * *"},{"filename":"CreatureLib","name":"CreatureLib_ExecutingAttack_GetUser","parameters":[{"name":"p","type":"ExecutingAttack *"}],"returns":"Creature *"},{"filename":"CreatureLib","name":"CreatureLib_ExecutingAttack_GetAttack","parameters":[{"name":"p","type":"ExecutingAttack *"}],"returns":"LearnedAttack *"},{"filename":"CreatureLib","name":"CreatureLib_HitData_IsCritical","parameters":[{"name":"p","type":"const HitData *"}],"returns":"bool"},{"filename":"CreatureLib","name":"CreatureLib_HitData_GetBasePower","parameters":[{"name":"p","type":"const HitData *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_HitData_GetEffectiveness","parameters":[{"name":"p","type":"const HitData *"}],"returns":"float"},{"filename":"CreatureLib","name":"CreatureLib_HitData_GetDamage","parameters":[{"name":"p","type":"const HitData *"}],"returns":"unsigned int"},{"filename":"CreatureLib","name":"CreatureLib_HitData_GetType","parameters":[{"name":"p","type":"const HitData *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_HitData_SetCritical","parameters":[{"name":"p","type":"HitData *"},{"name":"val","type":"bool"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_HitData_SetBasePower","parameters":[{"name":"p","type":"HitData *"},{"name":"val","type":"unsigned char"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_HitData_SetEffectiveness","parameters":[{"name":"p","type":"HitData *"},{"name":"val","type":"float"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_HitData_SetDamage","parameters":[{"name":"p","type":"HitData *"},{"name":"val","type":"unsigned int"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_HitData_SetType","parameters":[{"name":"p","type":"HitData *"},{"name":"val","type":"unsigned char"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_ExperienceLibrary_Construct","parameters":[],"returns":"const ExperienceLibrary *"},{"filename":"CreatureLib","name":"CreatureLib_ExperienceLibrary_Destruct","parameters":[{"name":"p","type":"const ExperienceLibrary *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_ExperienceLibrary_HandleExperienceGain","parameters":[{"name":"p","type":"const ExperienceLibrary *"},{"name":"faintedMon","type":"Creature *"},{"name":"opponents","type":"Creature * *"},{"name":"opponentsCount","type":"long unsigned int"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_HistoryHandler_GetTopElement","parameters":[{"name":"p","type":"const HistoryHolder *"}],"returns":"const HistoryElement *"},{"filename":"CreatureLib","name":"CreatureLib_HistoryHandler_GetLastUsedAttack","parameters":[{"name":"p","type":"const HistoryHolder *"}],"returns":"const HistoryElement *"},{"filename":"CreatureLib","name":"CreatureLib_HistoryElement_GetKind","parameters":[{"name":"p","type":"const HistoryElement *"}],"returns":"HistoryElementKind"},{"filename":"CreatureLib","name":"CreatureLib_HistoryElement_GetPrevious","parameters":[{"name":"p","type":"const HistoryElement *"}],"returns":"const HistoryElement *"},{"filename":"CreatureLib","name":"CreatureLib_AttackUseHistory_GetAttack","parameters":[{"name":"p","type":"const AttackUseHistory *"}],"returns":"const ExecutingAttack *"},{"filename":"CreatureLib","name":"CreatureLib_LearnedAttack_Construct","parameters":[{"name":"out","type":"LearnedAttack * &"},{"name":"attack","type":"const AttackData *"},{"name":"maxUses","type":"unsigned char"},{"name":"learnMethod","type":"AttackLearnMethod"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_LearnedAttack_Destruct","parameters":[{"name":"p","type":"LearnedAttack *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_LearnedAttack_GetAttack","parameters":[{"name":"p","type":"const LearnedAttack *"}],"returns":"const AttackData *"},{"filename":"CreatureLib","name":"CreatureLib_LearnedAttack_GetMaxUses","parameters":[{"name":"p","type":"const LearnedAttack *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_LearnedAttack_GetRemainingUses","parameters":[{"name":"p","type":"const LearnedAttack *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_LearnedAttack_GetLearnMethod","parameters":[{"name":"p","type":"const LearnedAttack *"}],"returns":"AttackLearnMethod"},{"filename":"CreatureLib","name":"CreatureLib_LearnedAttack_TryUse","parameters":[{"name":"p","type":"LearnedAttack *"},{"name":"uses","type":"unsigned char"}],"returns":"bool"},{"filename":"CreatureLib","name":"CreatureLib_LearnedAttack_DecreaseUses","parameters":[{"name":"p","type":"LearnedAttack *"},{"name":"uses","type":"unsigned char"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_LearnedAttack_RestoreUses","parameters":[{"name":"p","type":"LearnedAttack *"},{"name":"uses","type":"unsigned char"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_LearnedAttack_RestoreAllUses","parameters":[{"name":"p","type":"LearnedAttack *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_MiscLibrary_Construct","parameters":[],"returns":"MiscLibrary *"},{"filename":"CreatureLib","name":"CreatureLib_MiscLibrary_Destruct","parameters":[{"name":"p","type":"const MiscLibrary *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_MiscLibrary_IsCritical","parameters":[{"name":"out","type":"bool &"},{"name":"p","type":"MiscLibrary *"},{"name":"attack","type":"ExecutingAttack *"},{"name":"target","type":"Creature *"},{"name":"hit","type":"unsigned char"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_MiscLibrary_CanFlee","parameters":[{"name":"out","type":"bool &"},{"name":"p","type":"MiscLibrary *"},{"name":"switchChoice","type":"FleeTurnChoice *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_MiscLibrary_ReplacementAttack","parameters":[{"name":"out","type":"BaseTurnChoice * &"},{"name":"p","type":"MiscLibrary *"},{"name":"user","type":"Creature *"},{"name":"sideTarget","type":"unsigned char"},{"name":"creatureTarget","type":"unsigned char"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Script_Destruct","parameters":[{"name":"p","type":"Script *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_Script_Stack","parameters":[{"name":"p","type":"Script *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Script_OnRemove","parameters":[{"name":"p","type":"Script *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Script_GetName","parameters":[{"name":"p","type":"Script *"}],"returns":"const char *"},{"filename":"CreatureLib","name":"CreatureLib_Script_OnBeforeTurn","parameters":[{"name":"p","type":"Script *"},{"name":"choice","type":"const BaseTurnChoice *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Script_ChangeAttack","parameters":[{"name":"p","type":"Script *"},{"name":"choice","type":"AttackTurnChoice *"},{"name":"outAttack","type":"const char * &"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Script_PreventAttack","parameters":[{"name":"p","type":"Script *"},{"name":"attack","type":"ExecutingAttack *"},{"name":"outResult","type":"bool *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Script_FailAttack","parameters":[{"name":"p","type":"Script *"},{"name":"attack","type":"ExecutingAttack *"},{"name":"outResult","type":"bool *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Script_StopBeforeAttack","parameters":[{"name":"p","type":"Script *"},{"name":"attack","type":"ExecutingAttack *"},{"name":"outResult","type":"bool *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Script_OnBeforeAttack","parameters":[{"name":"p","type":"Script *"},{"name":"attack","type":"ExecutingAttack *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Script_FailIncomingAttack","parameters":[{"name":"p","type":"Script *"},{"name":"attack","type":"ExecutingAttack *"},{"name":"target","type":"Creature *"},{"name":"outResult","type":"bool *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Script_IsInvulnerable","parameters":[{"name":"p","type":"Script *"},{"name":"attack","type":"ExecutingAttack *"},{"name":"target","type":"Creature *"},{"name":"outResult","type":"bool *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Script_OnAttackMiss","parameters":[{"name":"p","type":"Script *"},{"name":"attack","type":"ExecutingAttack *"},{"name":"target","type":"Creature *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Script_ChangeAttackType","parameters":[{"name":"p","type":"Script *"},{"name":"attack","type":"ExecutingAttack *"},{"name":"target","type":"Creature *"},{"name":"hitNumber","type":"unsigned char"},{"name":"outType","type":"unsigned char *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Script_OverrideBasePower","parameters":[{"name":"p","type":"Script *"},{"name":"attack","type":"ExecutingAttack *"},{"name":"target","type":"Creature *"},{"name":"hitNumber","type":"unsigned char"},{"name":"basePower","type":"unsigned char *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Script_ChangeDamageStatsUser","parameters":[{"name":"p","type":"Script *"},{"name":"attack","type":"ExecutingAttack *"},{"name":"target","type":"Creature *"},{"name":"hitNumber","type":"unsigned char"},{"name":"statsUser","type":"Creature * *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Script_BypassDefensiveStat","parameters":[{"name":"p","type":"Script *"},{"name":"attack","type":"ExecutingAttack *"},{"name":"target","type":"Creature *"},{"name":"hitNumber","type":"unsigned char"},{"name":"bypass","type":"bool *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Script_BypassOffensiveStat","parameters":[{"name":"p","type":"Script *"},{"name":"attack","type":"ExecutingAttack *"},{"name":"target","type":"Creature *"},{"name":"hitNumber","type":"unsigned char"},{"name":"bypass","type":"bool *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Script_ModifyStatModifier","parameters":[{"name":"p","type":"Script *"},{"name":"attack","type":"ExecutingAttack *"},{"name":"target","type":"Creature *"},{"name":"hitNumber","type":"unsigned char"},{"name":"modifier","type":"float *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Script_ModifyDamageModifier","parameters":[{"name":"p","type":"Script *"},{"name":"attack","type":"ExecutingAttack *"},{"name":"target","type":"Creature *"},{"name":"hitNumber","type":"unsigned char"},{"name":"modifier","type":"float *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Script_OverrideDamage","parameters":[{"name":"p","type":"Script *"},{"name":"attack","type":"ExecutingAttack *"},{"name":"target","type":"Creature *"},{"name":"hitNumber","type":"unsigned char"},{"name":"damage","type":"unsigned int *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Script_PreventSecondaryEffects","parameters":[{"name":"p","type":"Script *"},{"name":"attack","type":"ExecutingAttack *"},{"name":"target","type":"Creature *"},{"name":"hitNumber","type":"unsigned char"},{"name":"outResult","type":"bool *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Script_OnSecondaryEffect","parameters":[{"name":"p","type":"Script *"},{"name":"attack","type":"ExecutingAttack *"},{"name":"target","type":"Creature *"},{"name":"hitNumber","type":"unsigned char"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Script_OnAfterHits","parameters":[{"name":"p","type":"Script *"},{"name":"attack","type":"ExecutingAttack *"},{"name":"target","type":"Creature *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Script_PreventSelfSwitch","parameters":[{"name":"p","type":"Script *"},{"name":"choice","type":"const SwitchTurnChoice *"},{"name":"outResult","type":"bool *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Script_ModifyEffectChance","parameters":[{"name":"p","type":"Script *"},{"name":"attack","type":"const ExecutingAttack *"},{"name":"target","type":"Creature *"},{"name":"chance","type":"float *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Script_ModifyIncomingEffectChance","parameters":[{"name":"p","type":"Script *"},{"name":"attack","type":"const ExecutingAttack *"},{"name":"target","type":"Creature *"},{"name":"chance","type":"float *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_ScriptResolver_Construct","parameters":[],"returns":"ScriptResolver *"},{"filename":"CreatureLib","name":"CreatureLib_ScriptResolver_Destruct","parameters":[{"name":"p","type":"const ScriptResolver *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_ScriptResolver_Initialize","parameters":[{"name":"p","type":"ScriptResolver *"},{"name":"library","type":"BattleLibrary *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_ScriptResolver_LoadScript","parameters":[{"name":"out","type":"Script * &"},{"name":"p","type":"ScriptResolver *"},{"name":"category","type":"ScriptCategory"},{"name":"scriptName","type":"const char *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_AttackTurnChoice_Construct","parameters":[{"name":"user","type":"Creature *"},{"name":"attack","type":"LearnedAttack *"},{"name":"sideIndex","type":"unsigned char"},{"name":"targetIndex","type":"unsigned char"}],"returns":"AttackTurnChoice *"},{"filename":"CreatureLib","name":"CreatureLib_AttackTurnChoice_Destruct","parameters":[{"name":"p","type":"AttackTurnChoice *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_FleeTurnChoice_Construct","parameters":[{"name":"user","type":"Creature *"}],"returns":"FleeTurnChoice *"},{"filename":"CreatureLib","name":"CreatureLib_FleeTurnChoice_Destruct","parameters":[{"name":"p","type":"AttackTurnChoice *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_PassTurnChoice_Construct","parameters":[{"name":"user","type":"Creature *"}],"returns":"PassTurnChoice *"},{"filename":"CreatureLib","name":"CreatureLib_PassTurnChoice_Destruct","parameters":[{"name":"p","type":"AttackTurnChoice *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_SwitchTurnChoice_Construct","parameters":[{"name":"user","type":"Creature *"},{"name":"newCreature","type":"Creature *"}],"returns":"SwitchTurnChoice *"},{"filename":"CreatureLib","name":"CreatureLib_SwitchTurnChoice_Destruct","parameters":[{"name":"p","type":"AttackTurnChoice *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_BaseTurnChoice_GetKind","parameters":[{"name":"p","type":"const BaseTurnChoice *"}],"returns":"TurnChoiceKind"},{"filename":"CreatureLib","name":"CreatureLib_BaseTurnChoice_GetUser","parameters":[{"name":"p","type":"const BaseTurnChoice *"}],"returns":"Creature *"},{"filename":"CreatureLib","name":"CreatureLib_AttackTurnChoice_GetAttack","parameters":[{"name":"p","type":"const AttackTurnChoice *"}],"returns":"LearnedAttack *"},{"filename":"CreatureLib","name":"CreatureLib_AttackTurnChoice_GetKind","parameters":[{"name":"p","type":"const AttackTurnChoice *"}],"returns":"TurnChoiceKind"},{"filename":"CreatureLib","name":"CreatureLib_AttackTurnChoice_GetPriority","parameters":[{"name":"out","type":"signed char &"},{"name":"p","type":"AttackTurnChoice *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_AttackTurnChoice_GetAttackScript","parameters":[{"name":"p","type":"const AttackTurnChoice *"}],"returns":"Script *"},{"filename":"CreatureLib","name":"CreatureLib_AttackTurnChoice_GetTargetSideIndex","parameters":[{"name":"p","type":"const AttackTurnChoice *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_AttackTurnChoice_GetTargetCreatureIndex","parameters":[{"name":"p","type":"const AttackTurnChoice *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_SwitchTurnChoice_GetNewCreature","parameters":[{"name":"p","type":"const SwitchTurnChoice *"}],"returns":"Creature *"},{"filename":"CreatureLib","name":"CreatureLib_C_GetLastException","parameters":[],"returns":"const char *"},{"filename":"CreatureLib","name":"CreatureLib_C_GetLastExceptionStacktrace","parameters":[],"returns":"const char *"},{"filename":"CreatureLib","name":"CreatureLib_AttackData_Construct","parameters":[{"name":"out","type":"AttackData * &"},{"name":"name","type":"const char *"},{"name":"type","type":"unsigned char"},{"name":"category","type":"AttackCategory"},{"name":"power","type":"unsigned char"},{"name":"accuracy","type":"unsigned char"},{"name":"baseUsage","type":"unsigned char"},{"name":"target","type":"AttackTarget"},{"name":"priority","type":"signed char"},{"name":"effectChance","type":"float"},{"name":"effectName","type":"const char *"},{"name":"effectParameters","type":"EffectParameter * *"},{"name":"effectParameterCount","type":"long unsigned int"},{"name":"flags","type":"const char * *"},{"name":"flagsCount","type":"long unsigned int"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_AttackData_Destruct","parameters":[{"name":"p","type":"const AttackData *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_AttackData_GetName","parameters":[{"name":"p","type":"const AttackData *"}],"returns":"const char *"},{"filename":"CreatureLib","name":"CreatureLib_AttackData_GetType","parameters":[{"name":"p","type":"const AttackData *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_AttackData_GetCategory","parameters":[{"name":"p","type":"const AttackData *"}],"returns":"AttackCategory"},{"filename":"CreatureLib","name":"CreatureLib_AttackData_GetBasePower","parameters":[{"name":"p","type":"const AttackData *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_AttackData_GetAccuracy","parameters":[{"name":"p","type":"const AttackData *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_AttackData_GetBaseUsages","parameters":[{"name":"p","type":"const AttackData *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_AttackData_GetTarget","parameters":[{"name":"p","type":"const AttackData *"}],"returns":"AttackTarget"},{"filename":"CreatureLib","name":"CreatureLib_AttackData_GetPriority","parameters":[{"name":"p","type":"const AttackData *"}],"returns":"signed char"},{"filename":"CreatureLib","name":"CreatureLib_AttackData_HasSecondaryEffect","parameters":[{"name":"p","type":"const AttackData *"}],"returns":"bool"},{"filename":"CreatureLib","name":"CreatureLib_AttackData_GetSecondaryEffectChance","parameters":[{"name":"p","type":"const AttackData *"}],"returns":"float"},{"filename":"CreatureLib","name":"CreatureLib_AttackData_GetSecondaryEffectName","parameters":[{"name":"p","type":"const AttackData *"}],"returns":"const char *"},{"filename":"CreatureLib","name":"CreatureLib_AttackData_HasFlag","parameters":[{"name":"p","type":"const AttackData *"},{"name":"key","type":"const char *"}],"returns":"bool"},{"filename":"CreatureLib","name":"CreatureLib_AttackLibrary_Construct","parameters":[{"name":"library","type":"AttackLibrary * &"},{"name":"initialCapacity","type":"long unsigned int"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_AttackLibrary_Destruct","parameters":[{"name":"p","type":"const AttackLibrary *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_AttackLibrary_Insert","parameters":[{"name":"p","type":"AttackLibrary *"},{"name":"name","type":"const char *"},{"name":"t","type":"AttackData *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_AttackLibrary_InsertWithHash","parameters":[{"name":"p","type":"AttackLibrary *"},{"name":"hashedKey","type":"unsigned int"},{"name":"t","type":"AttackData *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_AttackLibrary_Delete","parameters":[{"name":"p","type":"AttackLibrary *"},{"name":"name","type":"const char *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_AttackLibrary_DeleteWithHash","parameters":[{"name":"p","type":"AttackLibrary *"},{"name":"hashedKey","type":"unsigned int"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_AttackLibrary_TryGet","parameters":[{"name":"p","type":"AttackLibrary *"},{"name":"name","type":"const char *"},{"name":"out","type":"const AttackData * &"}],"returns":"bool"},{"filename":"CreatureLib","name":"CreatureLib_AttackLibrary_TryGetWithHash","parameters":[{"name":"p","type":"AttackLibrary *"},{"name":"hashedKey","type":"unsigned int"},{"name":"out","type":"const AttackData * &"}],"returns":"bool"},{"filename":"CreatureLib","name":"CreatureLib_AttackLibrary_Get","parameters":[{"name":"p","type":"AttackLibrary *"},{"name":"name","type":"const char *"},{"name":"out","type":"const AttackData * &"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_AttackLibrary_GetWithHash","parameters":[{"name":"p","type":"AttackLibrary *"},{"name":"hashedKey","type":"unsigned int"},{"name":"out","type":"const AttackData * &"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_AttackLibrary_GetCount","parameters":[{"name":"p","type":"AttackLibrary *"}],"returns":"long unsigned int"},{"filename":"CreatureLib","name":"CreatureLib_AttackLibrary_GetAtIndex","parameters":[{"name":"p","type":"AttackLibrary *"},{"name":"index","type":"long unsigned int"},{"name":"out","type":"const AttackData * &"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_CreatureSpecies_Construct","parameters":[{"name":"out","type":"CreatureSpecies * &"},{"name":"id","type":"unsigned short"},{"name":"name","type":"const char *"},{"name":"defaultVariant","type":"SpeciesVariant *"},{"name":"genderRatio","type":"float"},{"name":"growthRate","type":"const char *"},{"name":"captureRate","type":"unsigned char"},{"name":"flags","type":"const char * *"},{"name":"flagsCount","type":"long unsigned int"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_CreatureSpecies_Destruct","parameters":[{"name":"p","type":"const CreatureSpecies *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_CreatureSpecies_GetId","parameters":[{"name":"p","type":"const CreatureSpecies *"}],"returns":"unsigned short"},{"filename":"CreatureLib","name":"CreatureLib_CreatureSpecies_GetGenderRate","parameters":[{"name":"p","type":"const CreatureSpecies *"}],"returns":"float"},{"filename":"CreatureLib","name":"CreatureLib_CreatureSpecies_GetCaptureRate","parameters":[{"name":"p","type":"const CreatureSpecies *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_CreatureSpecies_GetName","parameters":[{"name":"p","type":"const CreatureSpecies *"}],"returns":"const char *"},{"filename":"CreatureLib","name":"CreatureLib_CreatureSpecies_GetGrowthRate","parameters":[{"name":"p","type":"const CreatureSpecies *"}],"returns":"const char *"},{"filename":"CreatureLib","name":"CreatureLib_CreatureSpecies_HasVariant","parameters":[{"name":"p","type":"const CreatureSpecies *"},{"name":"name","type":"const char *"}],"returns":"bool"},{"filename":"CreatureLib","name":"CreatureLib_CreatureSpecies_HasVariantWithHash","parameters":[{"name":"p","type":"const CreatureSpecies *"},{"name":"hash","type":"unsigned int"}],"returns":"bool"},{"filename":"CreatureLib","name":"CreatureLib_CreatureSpecies_TryGetVariant","parameters":[{"name":"p","type":"const CreatureSpecies *"},{"name":"name","type":"const char *"},{"name":"out","type":"const SpeciesVariant * &"}],"returns":"bool"},{"filename":"CreatureLib","name":"CreatureLib_CreatureSpecies_TryGetVariantWithHash","parameters":[{"name":"p","type":"const CreatureSpecies *"},{"name":"hash","type":"unsigned int"},{"name":"out","type":"const SpeciesVariant * &"}],"returns":"bool"},{"filename":"CreatureLib","name":"CreatureLib_CreatureSpecies_GetVariant","parameters":[{"name":"out","type":"const SpeciesVariant * &"},{"name":"p","type":"const CreatureSpecies *"},{"name":"name","type":"const char *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_CreatureSpecies_GetVariantWithHash","parameters":[{"name":"out","type":"const SpeciesVariant * &"},{"name":"p","type":"const CreatureSpecies *"},{"name":"hash","type":"unsigned int"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_CreatureSpecies_SetVariant","parameters":[{"name":"p","type":"CreatureSpecies *"},{"name":"name","type":"const char *"},{"name":"variant","type":"SpeciesVariant *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_CreatureSpecies_GetRandomGender","parameters":[{"name":"p","type":"CreatureSpecies *"},{"name":"random","type":"Random *"}],"returns":"Gender"},{"filename":"CreatureLib","name":"CreatureLib_CreatureSpecies_GetVariantsCount","parameters":[{"name":"p","type":"CreatureSpecies *"}],"returns":"long unsigned int"},{"filename":"CreatureLib","name":"CreatureLib_CreatureSpecies_GetVariants","parameters":[{"name":"p","type":"CreatureSpecies *"}],"returns":"const const SpeciesVariant * *"},{"filename":"CreatureLib","name":"CreatureLib_CreatureSpecies_HasFlag","parameters":[{"name":"p","type":"const CreatureSpecies *"},{"name":"key","type":"const char *"}],"returns":"bool"},{"filename":"CreatureLib","name":"CreatureLib_DataLibrary_Construct","parameters":[{"name":"out","type":"const DataLibrary * &"},{"name":"settings","type":"LibrarySettings *"},{"name":"species","type":"SpeciesLibrary *"},{"name":"attacks","type":"AttackLibrary *"},{"name":"items","type":"ItemLibrary *"},{"name":"growthRates","type":"GrowthRateLibrary *"},{"name":"typeLibrary","type":"TypeLibrary *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_DataLibrary_Destruct","parameters":[{"name":"p","type":"const DataLibrary *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_DataLibrary_GetSettings","parameters":[{"name":"p","type":"const DataLibrary *"}],"returns":"const LibrarySettings *"},{"filename":"CreatureLib","name":"CreatureLib_DataLibrary_GetSpeciesLibrary","parameters":[{"name":"p","type":"const DataLibrary *"}],"returns":"const SpeciesLibrary *"},{"filename":"CreatureLib","name":"CreatureLib_DataLibrary_GetAttackLibrary","parameters":[{"name":"p","type":"const DataLibrary *"}],"returns":"const AttackLibrary *"},{"filename":"CreatureLib","name":"CreatureLib_DataLibrary_GetItemLibrary","parameters":[{"name":"p","type":"const DataLibrary *"}],"returns":"const ItemLibrary *"},{"filename":"CreatureLib","name":"CreatureLib_DataLibrary_GetGrowthRates","parameters":[{"name":"p","type":"const DataLibrary *"}],"returns":"const GrowthRateLibrary *"},{"filename":"CreatureLib","name":"CreatureLib_DataLibrary_GetTypeLibrary","parameters":[{"name":"p","type":"const DataLibrary *"}],"returns":"const TypeLibrary *"},{"filename":"CreatureLib","name":"CreatureLib_EffectParameter_FromBool","parameters":[{"name":"b","type":"bool"}],"returns":"EffectParameter *"},{"filename":"CreatureLib","name":"CreatureLib_EffectParameter_FromInt","parameters":[{"name":"i","type":"long int"}],"returns":"EffectParameter *"},{"filename":"CreatureLib","name":"CreatureLib_EffectParameter_FromFloat","parameters":[{"name":"f","type":"float"}],"returns":"EffectParameter *"},{"filename":"CreatureLib","name":"CreatureLib_EffectParameter_FromString","parameters":[{"name":"c","type":"const char *"}],"returns":"EffectParameter *"},{"filename":"CreatureLib","name":"CreatureLib_EffectParameter_Destruct","parameters":[{"name":"p","type":"const EffectParameter *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_EffectParameter_GetType","parameters":[{"name":"p","type":"const EffectParameter *"}],"returns":"EffectParameterType"},{"filename":"CreatureLib","name":"CreatureLib_EffectParameter_AsBool","parameters":[{"name":"p","type":"const EffectParameter *"},{"name":"out","type":"bool &"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_EffectParameter_AsInt","parameters":[{"name":"p","type":"const EffectParameter *"},{"name":"out","type":"long int &"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_EffectParameter_AsFloat","parameters":[{"name":"p","type":"const EffectParameter *"},{"name":"out","type":"float &"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_EffectParameter_AsString","parameters":[{"name":"p","type":"const EffectParameter *"},{"name":"out","type":"const char * &"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_LookupGrowthRate_Construct","parameters":[{"name":"experiencePerLevel","type":"unsigned int *"},{"name":"count","type":"long unsigned int"}],"returns":"GrowthRate *"},{"filename":"CreatureLib","name":"CreatureLib_ExternGrowthRate_Construct","parameters":[{"name":"out","type":"GrowthRate * &"},{"name":"calcLevel","type":"Function *"},{"name":"calcExperience","type":"Function *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_GrowthRate_Destruct","parameters":[{"name":"p","type":"const GrowthRate *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_LookupGrowthRate_Destruct","parameters":[{"name":"p","type":"const LookupGrowthRate *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_ExternGrowthRate_Destruct","parameters":[{"name":"p","type":"const ExternGrowthRate *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_GrowthRate_CalculateLevel","parameters":[{"name":"out","type":"unsigned char &"},{"name":"p","type":"const GrowthRate *"},{"name":"experience","type":"unsigned int"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_GrowthRate_CalculateExperience","parameters":[{"name":"out","type":"unsigned int &"},{"name":"p","type":"const GrowthRate *"},{"name":"level","type":"unsigned char"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_GrowthRateLibrary_Construct","parameters":[{"name":"initialCapacity","type":"long unsigned int"}],"returns":"GrowthRateLibrary *"},{"filename":"CreatureLib","name":"CreatureLib_GrowthRateLibrary_Destruct","parameters":[{"name":"p","type":"GrowthRateLibrary *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_GrowthRateLibrary_CalculateLevel","parameters":[{"name":"out","type":"unsigned char &"},{"name":"library","type":"GrowthRateLibrary *"},{"name":"growthRate","type":"const char *"},{"name":"experience","type":"unsigned int"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_GrowthRateLibrary_CalculateLevelWithHash","parameters":[{"name":"out","type":"unsigned char &"},{"name":"library","type":"GrowthRateLibrary *"},{"name":"growthRateHash","type":"unsigned int"},{"name":"experience","type":"unsigned int"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_GrowthRateLibrary_CalculateExperience","parameters":[{"name":"out","type":"unsigned int &"},{"name":"library","type":"GrowthRateLibrary *"},{"name":"growthRate","type":"const char *"},{"name":"level","type":"unsigned char"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_GrowthRateLibrary_CalculateExperienceWithHash","parameters":[{"name":"out","type":"unsigned int &"},{"name":"library","type":"GrowthRateLibrary *"},{"name":"growthRateHash","type":"unsigned int"},{"name":"level","type":"unsigned char"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_GrowthRateLibrary_AddGrowthRate","parameters":[{"name":"library","type":"GrowthRateLibrary *"},{"name":"growthRateName","type":"const char *"},{"name":"growthRate","type":"GrowthRate *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_GrowthRateLibrary_AddGrowthRateWithHash","parameters":[{"name":"library","type":"GrowthRateLibrary *"},{"name":"growthRateHash","type":"unsigned int"},{"name":"growthRate","type":"GrowthRate *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_Item_Construct","parameters":[{"name":"name","type":"const char *"},{"name":"category","type":"ItemCategory"},{"name":"battleCategory","type":"BattleItemCategory"},{"name":"price","type":"int"},{"name":"flags","type":"const char * *"},{"name":"flagsCount","type":"long unsigned int"}],"returns":"Item *"},{"filename":"CreatureLib","name":"CreatureLib_Item_Destruct","parameters":[{"name":"p","type":"const Item *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_Item_GetName","parameters":[{"name":"p","type":"const Item *"}],"returns":"const char *"},{"filename":"CreatureLib","name":"CreatureLib_Item_GetCategory","parameters":[{"name":"p","type":"const Item *"}],"returns":"ItemCategory"},{"filename":"CreatureLib","name":"CreatureLib_Item_GetBattleCategory","parameters":[{"name":"p","type":"const Item *"}],"returns":"BattleItemCategory"},{"filename":"CreatureLib","name":"CreatureLib_Item_GetPrice","parameters":[{"name":"p","type":"const Item *"}],"returns":"int"},{"filename":"CreatureLib","name":"CreatureLib_Item_HasFlag","parameters":[{"name":"p","type":"const Item *"},{"name":"key","type":"const char *"}],"returns":"bool"},{"filename":"CreatureLib","name":"CreatureLib_ItemLibrary_Construct","parameters":[{"name":"initialCapacity","type":"long unsigned int"}],"returns":"const ItemLibrary *"},{"filename":"CreatureLib","name":"CreatureLib_ItemLibrary_Destruct","parameters":[{"name":"p","type":"const ItemLibrary *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_ItemLibrary_Insert","parameters":[{"name":"p","type":"ItemLibrary *"},{"name":"name","type":"const char *"},{"name":"t","type":"Item *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_ItemLibrary_InsertWithHash","parameters":[{"name":"p","type":"ItemLibrary *"},{"name":"hashedKey","type":"unsigned int"},{"name":"t","type":"Item *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_ItemLibrary_Delete","parameters":[{"name":"p","type":"ItemLibrary *"},{"name":"name","type":"const char *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_ItemLibrary_DeleteWithHash","parameters":[{"name":"p","type":"ItemLibrary *"},{"name":"hashedKey","type":"unsigned int"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_ItemLibrary_TryGet","parameters":[{"name":"p","type":"ItemLibrary *"},{"name":"name","type":"const char *"},{"name":"out","type":"const Item * &"}],"returns":"bool"},{"filename":"CreatureLib","name":"CreatureLib_ItemLibrary_TryGetWithHash","parameters":[{"name":"p","type":"ItemLibrary *"},{"name":"hashedKey","type":"unsigned int"},{"name":"out","type":"const Item * &"}],"returns":"bool"},{"filename":"CreatureLib","name":"CreatureLib_ItemLibrary_Get","parameters":[{"name":"p","type":"ItemLibrary *"},{"name":"name","type":"const char *"},{"name":"out","type":"const Item * &"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_ItemLibrary_GetWithHash","parameters":[{"name":"p","type":"ItemLibrary *"},{"name":"hashedKey","type":"unsigned int"},{"name":"out","type":"const Item * &"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_ItemLibrary_GetCount","parameters":[{"name":"p","type":"ItemLibrary *"}],"returns":"long unsigned int"},{"filename":"CreatureLib","name":"CreatureLib_ItemLibrary_GetAtIndex","parameters":[{"name":"p","type":"ItemLibrary *"},{"name":"index","type":"long unsigned int"},{"name":"out","type":"const Item * &"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_LearnableAttacks_Construct","parameters":[{"name":"out","type":"LearnableAttacks * &"},{"name":"levelAttackCapacity","type":"long unsigned int"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_LearnableAttacks_Destruct","parameters":[{"name":"p","type":"LearnableAttacks *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_LearnableAttacks_AddLevelAttack","parameters":[{"name":"p","type":"LearnableAttacks *"},{"name":"level","type":"unsigned char"},{"name":"attack","type":"const AttackData *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_LearnableAttacks_GetAttacksForLevel","parameters":[{"name":"p","type":"LearnableAttacks *"},{"name":"level","type":"unsigned char"}],"returns":"const const AttackData * *"},{"filename":"CreatureLib","name":"CreatureLib_LearnableAttacks_HasAttacksForLevel","parameters":[{"name":"p","type":"LearnableAttacks *"},{"name":"level","type":"unsigned char"}],"returns":"bool"},{"filename":"CreatureLib","name":"CreatureLib_LearnableAttacks_GetAttacksForLevelCount","parameters":[{"name":"p","type":"LearnableAttacks *"},{"name":"level","type":"unsigned char"}],"returns":"long unsigned int"},{"filename":"CreatureLib","name":"CreatureLib_LearnableAttacks_GetDistinctLevelAttacksCount","parameters":[{"name":"p","type":"LearnableAttacks *"}],"returns":"long unsigned int"},{"filename":"CreatureLib","name":"CreatureLib_LearnableAttacks_GetDistinctLevelAttacks","parameters":[{"name":"p","type":"LearnableAttacks *"}],"returns":"const const AttackData * *"},{"filename":"CreatureLib","name":"CreatureLib_LibrarySettings_Construct","parameters":[{"name":"maximalLevel","type":"unsigned char"},{"name":"maximalMoves","type":"unsigned char"}],"returns":"const LibrarySettings *"},{"filename":"CreatureLib","name":"CreatureLib_LibrarySettings_Destruct","parameters":[{"name":"p","type":"const LibrarySettings *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_LibrarySettings_GetMaximalLevel","parameters":[{"name":"p","type":"const LibrarySettings *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_LibrarySettings_GetMaximalAttacks","parameters":[{"name":"p","type":"const LibrarySettings *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_SpeciesLibrary_Construct","parameters":[{"name":"initialCapacity","type":"long unsigned int"}],"returns":"const SpeciesLibrary *"},{"filename":"CreatureLib","name":"CreatureLib_SpeciesLibrary_Destruct","parameters":[{"name":"p","type":"const SpeciesLibrary *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_SpeciesLibrary_Insert","parameters":[{"name":"p","type":"SpeciesLibrary *"},{"name":"name","type":"const char *"},{"name":"t","type":"CreatureSpecies *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_SpeciesLibrary_InsertWithHash","parameters":[{"name":"p","type":"SpeciesLibrary *"},{"name":"hashedKey","type":"unsigned int"},{"name":"t","type":"CreatureSpecies *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_SpeciesLibrary_Delete","parameters":[{"name":"p","type":"SpeciesLibrary *"},{"name":"name","type":"const char *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_SpeciesLibrary_DeleteWithHash","parameters":[{"name":"p","type":"SpeciesLibrary *"},{"name":"hashedKey","type":"unsigned int"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_SpeciesLibrary_TryGet","parameters":[{"name":"p","type":"SpeciesLibrary *"},{"name":"name","type":"const char *"},{"name":"out","type":"const CreatureSpecies * &"}],"returns":"bool"},{"filename":"CreatureLib","name":"CreatureLib_SpeciesLibrary_TryGetWithHash","parameters":[{"name":"p","type":"SpeciesLibrary *"},{"name":"hashedKey","type":"unsigned int"},{"name":"out","type":"const CreatureSpecies * &"}],"returns":"bool"},{"filename":"CreatureLib","name":"CreatureLib_SpeciesLibrary_Get","parameters":[{"name":"p","type":"SpeciesLibrary *"},{"name":"name","type":"const char *"},{"name":"out","type":"const CreatureSpecies * &"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_SpeciesLibrary_GetWithHash","parameters":[{"name":"p","type":"SpeciesLibrary *"},{"name":"hashedKey","type":"unsigned int"},{"name":"out","type":"const CreatureSpecies * &"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_SpeciesLibrary_GetCount","parameters":[{"name":"p","type":"SpeciesLibrary *"}],"returns":"long unsigned int"},{"filename":"CreatureLib","name":"CreatureLib_SpeciesLibrary_GetAtIndex","parameters":[{"name":"p","type":"SpeciesLibrary *"},{"name":"index","type":"long unsigned int"},{"name":"out","type":"const CreatureSpecies * &"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_SpeciesVariant_Construct","parameters":[{"name":"name","type":"const char *"},{"name":"height","type":"float"},{"name":"weight","type":"float"},{"name":"baseExperience","type":"unsigned int"},{"name":"types","type":"unsigned char *"},{"name":"typeLength","type":"long unsigned int"},{"name":"baseHealth","type":"unsigned short"},{"name":"baseAttack","type":"unsigned short"},{"name":"baseDefense","type":"unsigned short"},{"name":"baseMagicalAttack","type":"unsigned short"},{"name":"baseMagicalDefense","type":"unsigned short"},{"name":"baseSpeed","type":"unsigned short"},{"name":"talents","type":"const char * *"},{"name":"talentsLength","type":"long unsigned int"},{"name":"secretTalents","type":"const char * *"},{"name":"secretTalentsLength","type":"long unsigned int"},{"name":"attacks","type":"const LearnableAttacks *"},{"name":"flags","type":"const char * *"},{"name":"flagsCount","type":"long unsigned int"}],"returns":"SpeciesVariant *"},{"filename":"CreatureLib","name":"CreatureLib_SpeciesVariant_Destruct","parameters":[{"name":"p","type":"SpeciesVariant *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_SpeciesVariant_GetName","parameters":[{"name":"p","type":"SpeciesVariant *"}],"returns":"const char *"},{"filename":"CreatureLib","name":"CreatureLib_SpeciesVariant_GetHeight","parameters":[{"name":"p","type":"const SpeciesVariant *"}],"returns":"float"},{"filename":"CreatureLib","name":"CreatureLib_SpeciesVariant_GetWeight","parameters":[{"name":"p","type":"const SpeciesVariant *"}],"returns":"float"},{"filename":"CreatureLib","name":"CreatureLib_SpeciesVariant_GetBaseExperience","parameters":[{"name":"p","type":"const SpeciesVariant *"}],"returns":"unsigned int"},{"filename":"CreatureLib","name":"CreatureLib_SpeciesVariant_GetTypeCount","parameters":[{"name":"p","type":"const SpeciesVariant *"}],"returns":"long unsigned int"},{"filename":"CreatureLib","name":"CreatureLib_SpeciesVariant_GetType","parameters":[{"name":"p","type":"SpeciesVariant *"},{"name":"index","type":"long unsigned int"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_SpeciesVariant_GetStatistic","parameters":[{"name":"p","type":"SpeciesVariant *"},{"name":"stat","type":"Statistic"}],"returns":"unsigned short"},{"filename":"CreatureLib","name":"CreatureLib_SpeciesVariant_GetTalentCount","parameters":[{"name":"p","type":"const SpeciesVariant *"}],"returns":"long unsigned int"},{"filename":"CreatureLib","name":"CreatureLib_SpeciesVariant_GetSecretTalentCount","parameters":[{"name":"p","type":"const SpeciesVariant *"}],"returns":"long unsigned int"},{"filename":"CreatureLib","name":"CreatureLib_SpeciesVariant_GetTalent","parameters":[{"name":"p","type":"SpeciesVariant *"},{"name":"secret","type":"bool"},{"name":"index","type":"unsigned char"},{"name":"out","type":"const char * &"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_SpeciesVariant_GetLearnableAttacks","parameters":[{"name":"p","type":"SpeciesVariant *"}],"returns":"const LearnableAttacks *"},{"filename":"CreatureLib","name":"CreatureLib_SpeciesVariant_GetRandomTalent","parameters":[{"name":"p","type":"SpeciesVariant *"},{"name":"rand","type":"Random *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_SpeciesVariant_HasFlag","parameters":[{"name":"p","type":"const SpeciesVariant *"},{"name":"key","type":"const char *"}],"returns":"bool"},{"filename":"CreatureLib","name":"CreatureLib_TypeLibrary_Construct","parameters":[{"name":"initialCapacity","type":"long unsigned int"}],"returns":"TypeLibrary *"},{"filename":"CreatureLib","name":"CreatureLib_TypeLibrary_Destruct","parameters":[{"name":"p","type":"const TypeLibrary *"}],"returns":"void"},{"filename":"CreatureLib","name":"CreatureLib_TypeLibrary_GetTypeId","parameters":[{"name":"out","type":"unsigned char &"},{"name":"p","type":"const TypeLibrary *"},{"name":"type","type":"const char *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_TypeLibrary_RegisterType","parameters":[{"name":"out","type":"unsigned char &"},{"name":"p","type":"TypeLibrary *"},{"name":"type","type":"const char *"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_TypeLibrary_SetEffectiveness","parameters":[{"name":"p","type":"TypeLibrary *"},{"name":"attacking","type":"unsigned char"},{"name":"defensive","type":"unsigned char"},{"name":"effectiveness","type":"float"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_TypeLibrary_GetSingleEffectiveness","parameters":[{"name":"out","type":"float &"},{"name":"p","type":"TypeLibrary *"},{"name":"attacking","type":"unsigned char"},{"name":"defensive","type":"unsigned char"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_TypeLibrary_GetEffectiveness","parameters":[{"name":"out","type":"float &"},{"name":"p","type":"TypeLibrary *"},{"name":"attacking","type":"unsigned char"},{"name":"defensive","type":"unsigned char *"},{"name":"defensiveCount","type":"long unsigned int"}],"returns":"unsigned char"},{"filename":"CreatureLib","name":"CreatureLib_TypeLibrary_GetTypeName","parameters":[{"name":"out","type":"const char * &"},{"name":"p","type":"TypeLibrary *"},{"name":"type","type":"unsigned char"}],"returns":"unsigned char"}]} diff --git a/PkmnLibSharp/generator.py b/PkmnLibSharp/generator.py index 5f75bbf..0fab564 100644 --- a/PkmnLibSharp/generator.py +++ b/PkmnLibSharp/generator.py @@ -10,6 +10,12 @@ def resolve_enum_size(size): def write_enum(enum, enumNames): namespace = str.capitalize(enum["filename"]) + if (enum["name"].startswith("bfd_")): + return + if (enum["name"].startswith("float_")): + return + if (enum["name"].startswith("as")): + return filename = "Generated/{}/{}.cs".format(namespace, enum["name"]) os.makedirs(os.path.dirname(filename), exist_ok=True) with open(filename, "w") as f: diff --git a/PkmnLibSharp/pkmnlib.json b/PkmnLibSharp/pkmnlib.json index 24e8fce..77cf67c 100644 --- a/PkmnLibSharp/pkmnlib.json +++ b/PkmnLibSharp/pkmnlib.json @@ -1 +1 @@ -{"enums":[{"byteSize":1,"filename":"pkmnLib","name":"ScriptCategory","values":{"0":"Attack","1":"Talent","2":"Status","3":"Creature","4":"Battle","5":"Side"}},{"byteSize":4,"filename":"pkmnLib","name":"asEObjTypeFlags","values":{"1":"asOBJ_REF","1024":"asOBJ_APP_CLASS_DESTRUCTOR","1048576":"asOBJ_IMPLICIT_HANDLE","1073741824":"asOBJ_APP_ALIGN16","128":"asOBJ_ASHANDLE","1280":"asOBJ_APP_CLASS_D","131072":"asOBJ_APP_CLASS_ALLFLOATS","134217728":"asOBJ_TEMPLATE_SUBTYPE","16":"asOBJ_NOHANDLE","16384":"asOBJ_APP_FLOAT","16777216":"asOBJ_FUNCDEF","1792":"asOBJ_APP_CLASS_CD","2":"asOBJ_VALUE","2048":"asOBJ_APP_CLASS_ASSIGNMENT","2097151":"asOBJ_MASK_VALID_FLAGS","2097152":"asOBJ_SCRIPT_OBJECT","2304":"asOBJ_APP_CLASS_A","256":"asOBJ_APP_CLASS","262144":"asOBJ_NOCOUNT","268435456":"asOBJ_TYPEDEF","2816":"asOBJ_APP_CLASS_CA","32":"asOBJ_SCOPED","32768":"asOBJ_APP_ARRAY","3328":"asOBJ_APP_CLASS_DA","33554432":"asOBJ_LIST_PATTERN","3840":"asOBJ_APP_CLASS_CDA","4":"asOBJ_GC","4096":"asOBJ_APP_CLASS_COPY_CONSTRUCTOR","4194304":"asOBJ_SHARED","4352":"asOBJ_APP_CLASS_K","4864":"asOBJ_APP_CLASS_CK","512":"asOBJ_APP_CLASS_CONSTRUCTOR","524288":"asOBJ_APP_CLASS_ALIGN8","536870912":"asOBJ_ABSTRACT","5376":"asOBJ_APP_CLASS_DK","5888":"asOBJ_APP_CLASS_CDK","64":"asOBJ_TEMPLATE","6400":"asOBJ_APP_CLASS_AK","65536":"asOBJ_APP_CLASS_ALLINTS","67108864":"asOBJ_ENUM","6912":"asOBJ_APP_CLASS_CAK","7424":"asOBJ_APP_CLASS_DAK","768":"asOBJ_APP_CLASS_C","7936":"asOBJ_APP_CLASS_CDAK","8":"asOBJ_POD","8192":"asOBJ_APP_PRIMITIVE","8388608":"asOBJ_NOINHERIT"}},{"byteSize":4,"filename":"pkmnLib","name":"asECallConvTypes","values":{"0":"asCALL_CDECL","1":"asCALL_STDCALL","2":"asCALL_THISCALL_ASGLOBAL","3":"asCALL_THISCALL","4":"asCALL_CDECL_OBJLAST","5":"asCALL_CDECL_OBJFIRST","6":"asCALL_GENERIC","7":"asCALL_THISCALL_OBJLAST","8":"asCALL_THISCALL_OBJFIRST"}},{"byteSize":1,"filename":"pkmnLib","name":"Statistic","values":{"0":"Health","1":"PhysicalAttack","2":"PhysicalDefense","3":"MagicalAttack","4":"MagicalDefense","5":"Speed"}},{"byteSize":1,"filename":"pkmnLib","name":"MoveCategory","values":{"0":"Physical","1":"Special","2":"Status"}},{"byteSize":1,"filename":"pkmnLib","name":"AttackTarget","values":{"0":"Adjacent","1":"AdjacentAlly","10":"RandomOpponent","11":"Self","2":"AdjacentAllySelf","3":"AdjacentOpponent","4":"All","5":"AllAdjacent","6":"AllAdjacentOpponent","7":"AllAlly","8":"AllOpponent","9":"Any"}},{"byteSize":1,"filename":"pkmnLib","name":"EffectParameterType","values":{"0":"None","1":"Bool","2":"Int","3":"Float","4":"String"}},{"byteSize":4,"filename":"pkmnLib","name":"AttackLearnMethod","values":{"0":"Unknown","1":"Level"}},{"byteSize":1,"filename":"pkmnLib","name":"Gender","values":{"0":"Male","1":"Female","2":"Genderless"}},{"byteSize":1,"filename":"pkmnLib","name":"ItemCategory","values":{"0":"MiscItem","1":"CaptureDevice","2":"Medicine","3":"Berry","4":"MoveLearner","5":"VariantChanger","6":"KeyItem","7":"Mail"}},{"byteSize":1,"filename":"pkmnLib","name":"BattleItemCategory","values":{"0":"None","1":"Healing","2":"StatusHealing","3":"CaptureDevice","4":"MiscBattleItem"}},{"byteSize":1,"filename":"pkmnLib","name":"EvolutionMethod","values":{"0":"Level","1":"HighFriendship","10":"TradeWithHeldItem","11":"TradeWithSpecificPokemon","12":"Custom","2":"KnownMove","3":"LocationBased","4":"TimeBased","5":"HoldsItem","6":"IsGenderAndLevel","7":"EvolutionItemUse","8":"EvolutionItemUseWithGender","9":"Trade"}},{"byteSize":1,"filename":"pkmnLib","name":"TimeOfDay","values":{"0":"Night","1":"Morning","2":"Afternoon","3":"Evening"}},{"byteSize":4,"filename":"pkmnLib","name":"asETypeIdFlags","values":{"0":"asTYPEID_VOID","1":"asTYPEID_BOOL","10":"asTYPEID_FLOAT","1073741824":"asTYPEID_OBJHANDLE","11":"asTYPEID_DOUBLE","134217728":"asTYPEID_SCRIPTOBJECT","2":"asTYPEID_INT8","268435456":"asTYPEID_TEMPLATE","3":"asTYPEID_INT16","4":"asTYPEID_INT32","469762048":"asTYPEID_MASK_OBJECT","5":"asTYPEID_INT64","536870912":"asTYPEID_HANDLETOCONST","6":"asTYPEID_UINT8","67108863":"asTYPEID_MASK_SEQNBR","67108864":"asTYPEID_APPOBJECT","7":"asTYPEID_UINT16","8":"asTYPEID_UINT32","9":"asTYPEID_UINT64"}},{"byteSize":4,"filename":"pkmnLib","name":"asEContextState","values":{"0":"asEXECUTION_FINISHED","1":"asEXECUTION_SUSPENDED","2":"asEXECUTION_ABORTED","3":"asEXECUTION_EXCEPTION","4":"asEXECUTION_PREPARED","5":"asEXECUTION_UNINITIALIZED","6":"asEXECUTION_ACTIVE","7":"asEXECUTION_ERROR"}},{"byteSize":4,"filename":"pkmnLib","name":"asERetCodes","values":{"-1":"asERROR","-10":"asINVALID_DECLARATION","-11":"asINVALID_OBJECT","-12":"asINVALID_TYPE","-13":"asALREADY_REGISTERED","-14":"asMULTIPLE_FUNCTIONS","-15":"asNO_MODULE","-16":"asNO_GLOBAL_VAR","-17":"asINVALID_CONFIGURATION","-18":"asINVALID_INTERFACE","-19":"asCANT_BIND_ALL_FUNCTIONS","-2":"asCONTEXT_ACTIVE","-20":"asLOWER_ARRAY_DIMENSION_NOT_REGISTERED","-21":"asWRONG_CONFIG_GROUP","-22":"asCONFIG_GROUP_IS_IN_USE","-23":"asILLEGAL_BEHAVIOUR_FOR_TYPE","-24":"asWRONG_CALLING_CONV","-25":"asBUILD_IN_PROGRESS","-26":"asINIT_GLOBAL_VARS_FAILED","-27":"asOUT_OF_MEMORY","-28":"asMODULE_IS_IN_USE","-3":"asCONTEXT_NOT_FINISHED","-4":"asCONTEXT_NOT_PREPARED","-5":"asINVALID_ARG","-6":"asNO_FUNCTION","-7":"asNOT_SUPPORTED","-8":"asINVALID_NAME","-9":"asNAME_TAKEN","0":"asSUCCESS"}},{"byteSize":4,"filename":"pkmnLib","name":"asETypeModifiers","values":{"0":"asTM_NONE","1":"asTM_INREF","2":"asTM_OUTREF","3":"asTM_INOUTREF","4":"asTM_CONST"}},{"byteSize":4,"filename":"pkmnLib","name":"asEBehaviours","values":{"0":"asBEHAVE_CONSTRUCT","1":"asBEHAVE_LIST_CONSTRUCT","10":"asBEHAVE_SETGCFLAG","11":"asBEHAVE_GETGCFLAG","12":"asBEHAVE_ENUMREFS","13":"asBEHAVE_RELEASEREFS","14":"asBEHAVE_MAX","2":"asBEHAVE_DESTRUCT","3":"asBEHAVE_FACTORY","4":"asBEHAVE_LIST_FACTORY","5":"asBEHAVE_ADDREF","6":"asBEHAVE_RELEASE","7":"asBEHAVE_GET_WEAKREF_FLAG","8":"asBEHAVE_TEMPLATE_CALLBACK","9":"asBEHAVE_FIRST_GC"}},{"byteSize":4,"filename":"pkmnLib","name":"asEMsgType","values":{"0":"asMSGTYPE_ERROR","1":"asMSGTYPE_WARNING","2":"asMSGTYPE_INFORMATION"}},{"byteSize":4,"filename":"pkmnLib","name":"asEEngineProp","values":{"1":"asEP_ALLOW_UNSAFE_REFERENCES","10":"asEP_REQUIRE_ENUM_SCOPE","11":"asEP_SCRIPT_SCANNER","12":"asEP_INCLUDE_JIT_INSTRUCTIONS","13":"asEP_STRING_ENCODING","14":"asEP_PROPERTY_ACCESSOR_MODE","15":"asEP_EXPAND_DEF_ARRAY_TO_TMPL","16":"asEP_AUTO_GARBAGE_COLLECT","17":"asEP_DISALLOW_GLOBAL_VARS","18":"asEP_ALWAYS_IMPL_DEFAULT_CONSTRUCT","19":"asEP_COMPILER_WARNINGS","2":"asEP_OPTIMIZE_BYTECODE","20":"asEP_DISALLOW_VALUE_ASSIGN_FOR_REF_TYPE","21":"asEP_ALTER_SYNTAX_NAMED_ARGS","22":"asEP_DISABLE_INTEGER_DIVISION","23":"asEP_DISALLOW_EMPTY_LIST_ELEMENTS","24":"asEP_PRIVATE_PROP_AS_PROTECTED","25":"asEP_ALLOW_UNICODE_IDENTIFIERS","26":"asEP_HEREDOC_TRIM_MODE","27":"asEP_MAX_NESTED_CALLS","28":"asEP_GENERIC_CALL_MODE","29":"asEP_INIT_STACK_SIZE","3":"asEP_COPY_SCRIPT_SECTIONS","30":"asEP_INIT_CALL_STACK_SIZE","31":"asEP_MAX_CALL_STACK_SIZE","32":"asEP_LAST_PROPERTY","4":"asEP_MAX_STACK_SIZE","5":"asEP_USE_CHARACTER_LITERALS","6":"asEP_ALLOW_MULTILINE_STRINGS","7":"asEP_ALLOW_IMPLICIT_HANDLE_TYPES","8":"asEP_BUILD_WITHOUT_LINE_CUES","9":"asEP_INIT_GLOBAL_VARS_AFTER_BUILD"}},{"byteSize":4,"filename":"pkmnLib","name":"asEGMFlags","values":{"0":"asGM_ONLY_IF_EXISTS","1":"asGM_CREATE_IF_NOT_EXISTS","2":"asGM_ALWAYS_CREATE"}},{"byteSize":4,"filename":"pkmnLib","name":"asETokenClass","values":{"0":"asTC_UNKNOWN","1":"asTC_KEYWORD","2":"asTC_VALUE","3":"asTC_IDENTIFIER","4":"asTC_COMMENT","5":"asTC_WHITESPACE"}},{"byteSize":4,"filename":"pkmnLib","name":"METADATATYPE","values":{"1":"MDT_TYPE","2":"MDT_FUNC","3":"MDT_VAR","4":"MDT_VIRTPROP","5":"MDT_FUNC_OR_VAR"}},{"byteSize":4,"filename":"pkmnLib","name":"asEFuncType","values":{"-1":"asFUNC_DUMMY","0":"asFUNC_SYSTEM","1":"asFUNC_SCRIPT","2":"asFUNC_INTERFACE","3":"asFUNC_VIRTUAL","4":"asFUNC_FUNCDEF","5":"asFUNC_IMPORTED","6":"asFUNC_DELEGATE"}},{"byteSize":1,"filename":"pkmnLib","name":"PkmnScriptCategory","values":{"128":"Weather","129":"Status"}},{"byteSize":1,"filename":"pkmnLib","name":"EventDataKind","values":{"0":"Damage","1":"Heal","10":"ChangeVariant","11":"AttackUse","2":"Faint","3":"Switch","4":"TurnStart","5":"TurnEnd","6":"ExperienceGain","7":"Miss","8":"DisplayText","9":"ChangeSpecies"}},{"byteSize":1,"filename":"pkmnLib","name":"PkmnEventDataKind","values":{"128":"WeatherChange","129":"StatusChange"}},{"byteSize":1,"filename":"pkmnLib","name":"TurnChoiceKind","values":{"0":"Pass","1":"Attack","2":"Item","3":"Switch","4":"Flee"}},{"byteSize":1,"filename":"pkmnLib","name":"AttackCategory","values":{"0":"Physical","1":"Magical","2":"Status"}},{"byteSize":4,"filename":"pkmnLib","name":"syntax_option_type","values":{}},{"byteSize":4,"filename":"pkmnLib","name":"error_type","values":{"0":"_S_error_collate","1":"_S_error_ctype","10":"_S_error_badrepeat","11":"_S_error_complexity","12":"_S_error_stack","2":"_S_error_escape","3":"_S_error_backref","4":"_S_error_brack","5":"_S_error_paren","6":"_S_error_brace","7":"_S_error_badbrace","8":"_S_error_range","9":"_S_error_space"}},{"byteSize":4,"filename":"pkmnLib","name":"match_flag_type","values":{}},{"byteSize":1,"filename":"pkmnLib","name":"DamageSource","values":{"0":"AttackDamage"}},{"byteSize":1,"filename":"pkmnLib","name":"PkmnDamageSource","values":{"1":"Struggle"}}],"functions":[{"filename":"pkmnLib","name":"PkmnLib_AngelScriptResolver_Construct","parameters":[],"returns":"AngelScriptResolver *"},{"filename":"pkmnLib","name":"PkmnLib_AngelScriptResolver_Destruct","parameters":[{"name":"p","type":"AngelScriptResolver *"}],"returns":"unsigned char"},{"filename":"pkmnLib","name":"PkmnLib_AngelScriptResolver_Initialize","parameters":[{"name":"p","type":"AngelScriptResolver *"},{"name":"lib","type":"BattleLibrary *"}],"returns":"unsigned char"},{"filename":"pkmnLib","name":"PkmnLib_AngelScriptResolver_CreateScript","parameters":[{"name":"p","type":"AngelScriptResolver *"},{"name":"name","type":"const char *"},{"name":"script","type":"const char *"}],"returns":"unsigned char"},{"filename":"pkmnLib","name":"PkmnLib_AngelScriptResolver_FinalizeModule","parameters":[{"name":"p","type":"AngelScriptResolver *"}],"returns":"unsigned char"},{"filename":"pkmnLib","name":"PkmnLib_AngelScriptResolver_LoadScript","parameters":[{"name":"out","type":"Script * &"},{"name":"p","type":"AngelScriptResolver *"},{"name":"category","type":"ScriptCategory"},{"name":"scriptName","type":"const char *"}],"returns":"unsigned char"},{"filename":"pkmnLib","name":"PkmnLib_AngelScriptResolver_WriteByteCodeToFile","parameters":[{"name":"p","type":"AngelScriptResolver *"},{"name":"file","type":"const char *"},{"name":"stripDebugInfo","type":"bool"}],"returns":"unsigned char"},{"filename":"pkmnLib","name":"PkmnLib_AngelScriptResolver_LoadByteCodeFromFile","parameters":[{"name":"p","type":"AngelScriptResolver *"},{"name":"file","type":"const char *"}],"returns":"unsigned char"},{"filename":"pkmnLib","name":"PkmnLib_AngelScriptResolver_WriteByteCodeToMemory","parameters":[{"name":"p","type":"AngelScriptResolver *"},{"name":"stripDebugInfo","type":"bool"},{"name":"size","type":"long unsigned int &"},{"name":"out","type":"unsigned char * &"}],"returns":"unsigned char"},{"filename":"pkmnLib","name":"PkmnLib_AngelScriptResolver_LoadByteCodeFromMemory","parameters":[{"name":"p","type":"AngelScriptResolver *"},{"name":"memory","type":"unsigned char *"},{"name":"size","type":"long unsigned int"}],"returns":"unsigned char"},{"filename":"pkmnLib","name":"PkmnLib_AngelScriptResolver_RegisterType","parameters":[{"name":"p","type":"AngelScriptResolver *"},{"name":"typeName","type":"const char *"}],"returns":"unsigned char"},{"filename":"pkmnLib","name":"PkmnLib_AngelScriptResolver_RegisterTypeMethod","parameters":[{"name":"p","type":"AngelScriptResolver *"},{"name":"typeName","type":"const char *"},{"name":"decl","type":"const char *"},{"name":"func","type":"Function *"}],"returns":"unsigned char"},{"filename":"pkmnLib","name":"PkmnLib_AngelScriptResolver_RegisterGlobalMethod","parameters":[{"name":"p","type":"AngelScriptResolver *"},{"name":"decl","type":"const char *"},{"name":"func","type":"Function *"}],"returns":"unsigned char"},{"filename":"pkmnLib","name":"PkmnLib_AngelscriptScript_Destruct","parameters":[{"name":"p","type":"AngelScriptScript *"}],"returns":"unsigned char"},{"filename":"pkmnLib","name":"PkmnLib_Battle_Construct","parameters":[{"name":"out","type":"Battle * &"},{"name":"library","type":"const BattleLibrary *"},{"name":"parties","type":"const BattleParty * *"},{"name":"partiesCount","type":"long unsigned int"},{"name":"canFlee","type":"bool"},{"name":"numberOfSides","type":"unsigned char"},{"name":"creaturesPerSide","type":"unsigned char"},{"name":"randomSeed","type":"long unsigned int"}],"returns":"unsigned char"},{"filename":"pkmnLib","name":"PkmnLib_Battle_Destruct","parameters":[{"name":"p","type":"Battle *"}],"returns":"void"},{"filename":"pkmnLib","name":"PkmnLib_Battle_SetWeather","parameters":[{"name":"p","type":"Battle *"},{"name":"name","type":"const char *"}],"returns":"unsigned char"},{"filename":"pkmnLib","name":"PkmnLib_Battle_ClearWeather","parameters":[{"name":"p","type":"Battle *"}],"returns":"unsigned char"},{"filename":"pkmnLib","name":"PkmnLib_Battle_GetWeatherName","parameters":[{"name":"p","type":"Battle *"}],"returns":"const char *"},{"filename":"pkmnLib","name":"PkmnLib_BattleLibrary_Construct","parameters":[{"name":"out","type":"BattleLibrary * &"},{"name":"staticLib","type":"PokemonLibrary *"},{"name":"statCalculator","type":"StatCalculator *"},{"name":"damageLibrary","type":"DamageLibrary *"},{"name":"experienceLibrary","type":"ExperienceLibrary *"},{"name":"scriptResolver","type":"ScriptResolver *"},{"name":"miscLibrary","type":"MiscLibrary *"}],"returns":"unsigned char"},{"filename":"pkmnLib","name":"PkmnLib_BattleLibrary_Destruct","parameters":[{"name":"p","type":"BattleLibrary *"}],"returns":"void"},{"filename":"pkmnLib","name":"PkmnLib_DamageLibrary_Construct","parameters":[],"returns":"DamageLibrary *"},{"filename":"pkmnLib","name":"PkmnLib_DamageLibrary_Destruct","parameters":[{"name":"p","type":"DamageLibrary *"}],"returns":"void"},{"filename":"pkmnLib","name":"PkmnLib_WeatherChangeEvent_Destruct","parameters":[{"name":"p","type":"WeatherChangeEvent *"}],"returns":"void"},{"filename":"pkmnLib","name":"PkmnLib_WeatherChangeEvent_GetWeatherName","parameters":[{"name":"p","type":"WeatherChangeEvent *"}],"returns":"const char *"},{"filename":"pkmnLib","name":"PkmnLib_ExperienceLibrary_Construct","parameters":[],"returns":"ExperienceLibrary *"},{"filename":"pkmnLib","name":"PkmnLib_ExperienceLibrary_HandleExperienceGain","parameters":[{"name":"p","type":"ExperienceLibrary *"},{"name":"faintedMon","type":"Creature *"},{"name":"opponents","type":"const Creature * *"},{"name":"numberOfOpponents","type":"long unsigned int"}],"returns":"unsigned char"},{"filename":"pkmnLib","name":"PkmnLib_ExperienceLibrary_Destruct","parameters":[{"name":"p","type":"ExperienceLibrary *"}],"returns":"void"},{"filename":"pkmnLib","name":"PkmnLib_MiscLibrary_Construct","parameters":[],"returns":"MiscLibrary *"},{"filename":"pkmnLib","name":"PkmnLib_MiscLibrary_Destruct","parameters":[{"name":"p","type":"MiscLibrary *"}],"returns":"void"},{"filename":"pkmnLib","name":"PkmnLib_PkmnScript_ModifyCriticalStage","parameters":[{"name":"script","type":"PkmnScript *"},{"name":"attack","type":"ExecutingAttack *"},{"name":"target","type":"Creature *"},{"name":"hit","type":"unsigned char"},{"name":"critStage","type":"unsigned char *"}],"returns":"unsigned char"},{"filename":"pkmnLib","name":"PkmnLib_Pokemon_Construct","parameters":[{"name":"library","type":"const BattleLibrary *"},{"name":"species","type":"const PokemonSpecies *"},{"name":"forme","type":"const PokemonForme *"},{"name":"level","type":"unsigned char"},{"name":"experience","type":"unsigned int"},{"name":"uid","type":"unsigned int"},{"name":"gender","type":"Gender"},{"name":"coloring","type":"unsigned char"},{"name":"heldItem","type":"const Item *"},{"name":"nickname","type":"const char *"},{"name":"hiddenAbility","type":"bool"},{"name":"abilityIndex","type":"unsigned char"},{"name":"moves","type":"const LearnedAttack * *"},{"name":"moveCount","type":"long unsigned int"},{"name":"hpIv","type":"unsigned char"},{"name":"attIv","type":"unsigned char"},{"name":"defIv","type":"unsigned char"},{"name":"sAtIv","type":"unsigned char"},{"name":"sDeIv","type":"unsigned char"},{"name":"spIv","type":"unsigned char"},{"name":"hpEv","type":"unsigned char"},{"name":"attEv","type":"unsigned char"},{"name":"defEv","type":"unsigned char"},{"name":"sAtEv","type":"unsigned char"},{"name":"sDeEv","type":"unsigned char"},{"name":"spEv","type":"unsigned char"},{"name":"nature","type":"const Nature *"}],"returns":"Pokemon *"},{"filename":"pkmnLib","name":"PkmnLib_Pokemon_Destruct","parameters":[{"name":"p","type":"const Pokemon *"}],"returns":"void"},{"filename":"pkmnLib","name":"PkmnLib_Pokemon_IsShiny","parameters":[{"name":"p","type":"const Pokemon *"}],"returns":"bool"},{"filename":"pkmnLib","name":"PkmnLib_Pokemon_GetNature","parameters":[{"name":"p","type":"const Pokemon *"}],"returns":"const Nature *"},{"filename":"pkmnLib","name":"PkmnLib_Pokemon_GetIndividualValue","parameters":[{"name":"p","type":"const Pokemon *"},{"name":"stat","type":"Statistic"}],"returns":"unsigned char"},{"filename":"pkmnLib","name":"PkmnLib_Pokemon_SetIndividualValue","parameters":[{"name":"p","type":"Pokemon *"},{"name":"stat","type":"Statistic"},{"name":"value","type":"unsigned char"}],"returns":"void"},{"filename":"pkmnLib","name":"PkmnLib_Pokemon_GetEffortValue","parameters":[{"name":"p","type":"const Pokemon *"},{"name":"stat","type":"Statistic"}],"returns":"unsigned char"},{"filename":"pkmnLib","name":"PkmnLib_Pokemon_SetEffortValue","parameters":[{"name":"p","type":"Pokemon *"},{"name":"stat","type":"Statistic"},{"name":"value","type":"unsigned char"}],"returns":"void"},{"filename":"pkmnLib","name":"PkmnLib_Pokemon_SetStatus","parameters":[{"name":"p","type":"Pokemon *"},{"name":"name","type":"const char *"}],"returns":"unsigned char"},{"filename":"pkmnLib","name":"PkmnLib_Pokemon_ClearStatus","parameters":[{"name":"p","type":"Pokemon *"}],"returns":"unsigned char"},{"filename":"pkmnLib","name":"PkmnLib_Pokemon_GetStatusName","parameters":[{"name":"p","type":"Pokemon *"}],"returns":"const char *"},{"filename":"pkmnLib","name":"PkmnLib_Pokemon_GetFriendship","parameters":[{"name":"p","type":"const Pokemon *"}],"returns":"unsigned char"},{"filename":"pkmnLib","name":"PkmnLib_Pokemon_SetFriendship","parameters":[{"name":"p","type":"Pokemon *"},{"name":"value","type":"unsigned char"}],"returns":"void"},{"filename":"pkmnLib","name":"PkmnLib_Pokemon_ChangeFriendship","parameters":[{"name":"p","type":"Pokemon *"},{"name":"amount","type":"signed char"}],"returns":"void"},{"filename":"pkmnLib","name":"PkmnLib_StatCalculator_Construct","parameters":[],"returns":"StatCalculator *"},{"filename":"pkmnLib","name":"PkmnLib_StatCalculator_Destruct","parameters":[{"name":"p","type":"StatCalculator *"}],"returns":"void"},{"filename":"pkmnLib","name":"PkmnLib_C_GetLastException","parameters":[],"returns":"const char *"},{"filename":"pkmnLib","name":"PkmnLib_EvolutionData_CreateLevelEvolution","parameters":[{"name":"level","type":"unsigned char"},{"name":"into","type":"const PokemonSpecies *"}],"returns":"const EvolutionData *"},{"filename":"pkmnLib","name":"PkmnLib_EvolutionData_CreateFriendshipEvolution","parameters":[{"name":"friendship","type":"unsigned char"},{"name":"into","type":"const PokemonSpecies *"}],"returns":"const EvolutionData *"},{"filename":"pkmnLib","name":"PkmnLib_EvolutionData_CreateKnownMoveEvolution","parameters":[{"name":"move","type":"const MoveData *"},{"name":"into","type":"const PokemonSpecies *"}],"returns":"const EvolutionData *"},{"filename":"pkmnLib","name":"PkmnLib_EvolutionData_CreateLocationEvolution","parameters":[{"name":"location","type":"const char *"},{"name":"into","type":"const PokemonSpecies *"}],"returns":"const EvolutionData *"},{"filename":"pkmnLib","name":"PkmnLib_EvolutionData_CreateTimeEvolution","parameters":[{"name":"time","type":"TimeOfDay"},{"name":"into","type":"const PokemonSpecies *"}],"returns":"const EvolutionData *"},{"filename":"pkmnLib","name":"PkmnLib_EvolutionData_CreateItemEvolution","parameters":[{"name":"item","type":"const Item *"},{"name":"into","type":"const PokemonSpecies *"}],"returns":"const EvolutionData *"},{"filename":"pkmnLib","name":"PkmnLib_EvolutionData_CreateGenderBasedEvolution","parameters":[{"name":"gender","type":"Gender"},{"name":"level","type":"unsigned char"},{"name":"into","type":"const PokemonSpecies *"}],"returns":"const EvolutionData *"},{"filename":"pkmnLib","name":"PkmnLib_EvolutionData_CreateItemUseEvolution","parameters":[{"name":"item","type":"const Item *"},{"name":"into","type":"const PokemonSpecies *"}],"returns":"const EvolutionData *"},{"filename":"pkmnLib","name":"PkmnLib_EvolutionData_CreateItemUseWithGenderEvolution","parameters":[{"name":"item","type":"const Item *"},{"name":"gender","type":"Gender"},{"name":"into","type":"const PokemonSpecies *"}],"returns":"const EvolutionData *"},{"filename":"pkmnLib","name":"PkmnLib_EvolutionData_CreateTradeEvolution","parameters":[{"name":"into","type":"const PokemonSpecies *"}],"returns":"const EvolutionData *"},{"filename":"pkmnLib","name":"PkmnLib_EvolutionData_CreateTradeWithItemEvolution","parameters":[{"name":"item","type":"const Item *"},{"name":"into","type":"const PokemonSpecies *"}],"returns":"const EvolutionData *"},{"filename":"pkmnLib","name":"PkmnLib_EvolutionData_CreateTradeWithSpeciesEvolution","parameters":[{"name":"traded","type":"const PokemonSpecies *"},{"name":"into","type":"const PokemonSpecies *"}],"returns":"const EvolutionData *"},{"filename":"pkmnLib","name":"PkmnLib_EvolutionData_CreateCustomEvolution","parameters":[{"name":"data","type":"const EffectParameter * *"},{"name":"dataLength","type":"long unsigned int"},{"name":"into","type":"const PokemonSpecies *"}],"returns":"const EvolutionData *"},{"filename":"pkmnLib","name":"PkmnLib_EvolutionData_GetMethod","parameters":[{"name":"data","type":"const EvolutionData *"}],"returns":"EvolutionMethod"},{"filename":"pkmnLib","name":"PkmnLib_EvolutionData_GetNewSpecies","parameters":[{"name":"data","type":"const EvolutionData *"}],"returns":"const PokemonSpecies *"},{"filename":"pkmnLib","name":"PkmnLib_EvolutionData_GetDataCount","parameters":[{"name":"data","type":"const EvolutionData *"}],"returns":"long unsigned int"},{"filename":"pkmnLib","name":"PkmnLib_EvolutionData_GetData","parameters":[{"name":"data","type":"const EvolutionData *"},{"name":"index","type":"long unsigned int"},{"name":"out","type":"const EffectParameter * &"}],"returns":"unsigned char"},{"filename":"pkmnLib","name":"PkmnLib_Item_Construct","parameters":[{"name":"name","type":"const char *"},{"name":"category","type":"ItemCategory"},{"name":"battleCategory","type":"BattleItemCategory"},{"name":"price","type":"int"},{"name":"flags","type":"const char * *"},{"name":"flagsCount","type":"long unsigned int"},{"name":"flingPower","type":"unsigned char"}],"returns":"Item *"},{"filename":"pkmnLib","name":"PkmnLib_Item_Destruct","parameters":[{"name":"p","type":"const Item *"}],"returns":"void"},{"filename":"pkmnLib","name":"PkmnLib_Item_GetFlingPower","parameters":[{"name":"p","type":"const Item *"}],"returns":"unsigned char"},{"filename":"pkmnLib","name":"PkmnLib_LearnableMoves_Construct","parameters":[{"name":"out","type":"LearnableMoves * &"},{"name":"levelAttackCapacity","type":"long unsigned int"}],"returns":"unsigned char"},{"filename":"pkmnLib","name":"PkmnLib_LearnableMoves_Destruct","parameters":[{"name":"p","type":"const LearnableMoves *"}],"returns":"void"},{"filename":"pkmnLib","name":"PkmnLib_LearnableMoves_AddEggMove","parameters":[{"name":"p","type":"LearnableMoves *"},{"name":"move","type":"MoveData *"}],"returns":"void"},{"filename":"pkmnLib","name":"PkmnLib_LearnableMoves_GetEggMovesCount","parameters":[{"name":"p","type":"LearnableMoves *"}],"returns":"long unsigned int"},{"filename":"pkmnLib","name":"PkmnLib_LearnableMoves_GetEggMoves","parameters":[{"name":"p","type":"LearnableMoves *"}],"returns":"const const MoveData * *"},{"filename":"pkmnLib","name":"PkmnLib_LibrarySettings_Construct","parameters":[{"name":"maximalLevel","type":"unsigned char"},{"name":"maximalMoves","type":"unsigned char"},{"name":"shinyRate","type":"unsigned short"}],"returns":"const LibrarySettings *"},{"filename":"pkmnLib","name":"PkmnLib_LibrarySettings_Destruct","parameters":[{"name":"p","type":"const LibrarySettings *"}],"returns":"void"},{"filename":"pkmnLib","name":"PkmnLib_LibrarySettings_GetShinyRate","parameters":[{"name":"p","type":"const LibrarySettings *"}],"returns":"unsigned short"},{"filename":"pkmnLib","name":"PkmnLib_Nature_Construct","parameters":[{"name":"increasedStat","type":"Statistic"},{"name":"decreasedStat","type":"Statistic"},{"name":"increasedModifier","type":"float"},{"name":"decreasedModifier","type":"float"}],"returns":"Nature *"},{"filename":"pkmnLib","name":"PkmnLib_Nature_Destruct","parameters":[{"name":"p","type":"const Nature *"}],"returns":"void"},{"filename":"pkmnLib","name":"PkmnLib_Nature_GetIncreaseModifier","parameters":[{"name":"p","type":"const Nature *"}],"returns":"float"},{"filename":"pkmnLib","name":"PkmnLib_Nature_GetDecreaseModifier","parameters":[{"name":"p","type":"const Nature *"}],"returns":"float"},{"filename":"pkmnLib","name":"PkmnLib_Nature_GetIncreasedStat","parameters":[{"name":"p","type":"const Nature *"}],"returns":"Statistic"},{"filename":"pkmnLib","name":"PkmnLib_Nature_GetDecreasedStat","parameters":[{"name":"p","type":"const Nature *"}],"returns":"Statistic"},{"filename":"pkmnLib","name":"PkmnLib_Nature_GetStatModifier","parameters":[{"name":"nature","type":"const Nature *"},{"name":"stat","type":"Statistic"}],"returns":"float"},{"filename":"pkmnLib","name":"PkmnLib_NatureLibrary_Construct","parameters":[{"name":"initialCapacity","type":"long unsigned int"}],"returns":"NatureLibrary *"},{"filename":"pkmnLib","name":"PkmnLib_NatureLibrary_Destruct","parameters":[{"name":"p","type":"const NatureLibrary *"}],"returns":"void"},{"filename":"pkmnLib","name":"PkmnLib_NatureLibrary_LoadNature","parameters":[{"name":"p","type":"NatureLibrary *"},{"name":"name","type":"const char *"},{"name":"nature","type":"const Nature *"}],"returns":"unsigned char"},{"filename":"pkmnLib","name":"PkmnLib_NatureLibrary_GetNatureByName","parameters":[{"name":"p","type":"NatureLibrary *"},{"name":"name","type":"const char *"},{"name":"out","type":"const Nature * &"}],"returns":"unsigned char"},{"filename":"pkmnLib","name":"PkmnLib_NatureLibrary_GetRandomNatureName","parameters":[{"name":"p","type":"NatureLibrary *"},{"name":"rand","type":"Random *"},{"name":"out","type":"const char * &"}],"returns":"unsigned char"},{"filename":"pkmnLib","name":"PkmnLib_NatureLibrary_GetNatureName","parameters":[{"name":"p","type":"NatureLibrary *"},{"name":"nature","type":"const Nature *"},{"name":"out","type":"const char * &"}],"returns":"unsigned char"},{"filename":"pkmnLib","name":"PkmnLib_NatureLibrary_GetNatureCount","parameters":[{"name":"p","type":"const NatureLibrary *"}],"returns":"long unsigned int"},{"filename":"pkmnLib","name":"PkmnLib_NatureLibrary_GetNatureByIndex","parameters":[{"name":"p","type":"NatureLibrary *"},{"name":"index","type":"long unsigned int"},{"name":"out","type":"const char * &"}],"returns":"unsigned char"},{"filename":"pkmnLib","name":"PkmnLib_PokemonLibrary_Construct","parameters":[{"name":"out","type":"PokemonLibrary * &"},{"name":"settings","type":"LibrarySettings *"},{"name":"species","type":"SpeciesLibrary *"},{"name":"moves","type":"MoveLibrary *"},{"name":"items","type":"ItemLibrary *"},{"name":"growthRates","type":"GrowthRateLibrary *"},{"name":"typeLibrary","type":"TypeLibrary *"},{"name":"natures","type":"NatureLibrary *"}],"returns":"unsigned char"},{"filename":"pkmnLib","name":"PkmnLib_PokemonLibrary_Destruct","parameters":[{"name":"p","type":"const PokemonLibrary *"}],"returns":"void"},{"filename":"pkmnLib","name":"PkmnLib_PokemonLibrary_GetNatureLibrary","parameters":[{"name":"p","type":"const PokemonLibrary *"}],"returns":"const NatureLibrary *"},{"filename":"pkmnLib","name":"PkmnLib_PokemonSpecies_Construct","parameters":[{"name":"out","type":"const PokemonSpecies * &"},{"name":"id","type":"unsigned short"},{"name":"name","type":"const char *"},{"name":"defaultForme","type":"const PokemonForme *"},{"name":"genderRatio","type":"float"},{"name":"growthRate","type":"const char *"},{"name":"captureRate","type":"unsigned char"},{"name":"baseHappiness","type":"unsigned char"},{"name":"eggGroupsRaw","type":"const const char * *"},{"name":"eggGroupsLength","type":"long unsigned int"},{"name":"flags","type":"const char * *"},{"name":"flagsCount","type":"long unsigned int"}],"returns":"unsigned char"},{"filename":"pkmnLib","name":"PkmnLib_PokemonSpecies_Destruct","parameters":[{"name":"p","type":"const PokemonSpecies *"}],"returns":"void"},{"filename":"pkmnLib","name":"PkmnLib_PokemonSpecies_GetBaseHappiness","parameters":[{"name":"p","type":"const PokemonSpecies *"}],"returns":"unsigned char"},{"filename":"pkmnLib","name":"PkmnLib_PokemonSpecies_AddEvolution","parameters":[{"name":"p","type":"PokemonSpecies *"},{"name":"evo","type":"EvolutionData *"}],"returns":"void"},{"filename":"pkmnLib","name":"PkmnLib_PokemonSpecies_GetEvolutionCount","parameters":[{"name":"p","type":"const PokemonSpecies *"}],"returns":"long unsigned int"},{"filename":"pkmnLib","name":"PkmnLib_PokemonSpecies_GetEvolution","parameters":[{"name":"p","type":"const PokemonSpecies *"},{"name":"index","type":"long unsigned int"},{"name":"out","type":"const EvolutionData * &"}],"returns":"unsigned char"},{"filename":"pkmnLib","name":"PkmnLib_PokemonSpecies_GetEvolutions","parameters":[{"name":"p","type":"const PokemonSpecies *"},{"name":"out","type":"const const EvolutionData * * &"}],"returns":"unsigned char"},{"filename":"pkmnLib","name":"PkmnLib_PokemonSpecies_GetEggGroupCount","parameters":[{"name":"p","type":"const PokemonSpecies *"}],"returns":"long unsigned int"},{"filename":"pkmnLib","name":"PkmnLib_PokemonSpecies_GetEggGroup","parameters":[{"name":"p","type":"const PokemonSpecies *"},{"name":"index","type":"long unsigned int"}],"returns":"const char *"},{"filename":"pkmnLib","name":"PkmnLib_SpeciesLibrary_FindPreEvolution","parameters":[{"name":"p","type":"const SpeciesLibrary *"},{"name":"species","type":"const PokemonSpecies *"}],"returns":"const PokemonSpecies *"}]} +{"enums":[{"byteSize":4,"filename":"pkmnLib","name":"float_denorm_style","values":{"-1":"denorm_indeterminate","0":"denorm_absent","1":"denorm_present"}},{"byteSize":4,"filename":"pkmnLib","name":"float_round_style","values":{"-1":"round_indeterminate","0":"round_toward_zero","1":"round_to_nearest","2":"round_toward_infinity","3":"round_toward_neg_infinity"}},{"byteSize":1,"filename":"pkmnLib","name":"ScriptCategory","values":{"0":"Attack","1":"Talent","2":"Status","3":"Creature","4":"Battle","5":"Side"}},{"byteSize":4,"filename":"pkmnLib","name":"asEObjTypeFlags","values":{"1":"asOBJ_REF","1024":"asOBJ_APP_CLASS_DESTRUCTOR","1048576":"asOBJ_IMPLICIT_HANDLE","1073741824":"asOBJ_APP_ALIGN16","128":"asOBJ_ASHANDLE","1280":"asOBJ_APP_CLASS_D","131072":"asOBJ_APP_CLASS_ALLFLOATS","134217728":"asOBJ_TEMPLATE_SUBTYPE","16":"asOBJ_NOHANDLE","16384":"asOBJ_APP_FLOAT","16777216":"asOBJ_FUNCDEF","1792":"asOBJ_APP_CLASS_CD","2":"asOBJ_VALUE","2048":"asOBJ_APP_CLASS_ASSIGNMENT","2097151":"asOBJ_MASK_VALID_FLAGS","2097152":"asOBJ_SCRIPT_OBJECT","2304":"asOBJ_APP_CLASS_A","256":"asOBJ_APP_CLASS","262144":"asOBJ_NOCOUNT","268435456":"asOBJ_TYPEDEF","2816":"asOBJ_APP_CLASS_CA","32":"asOBJ_SCOPED","32768":"asOBJ_APP_ARRAY","3328":"asOBJ_APP_CLASS_DA","33554432":"asOBJ_LIST_PATTERN","3840":"asOBJ_APP_CLASS_CDA","4":"asOBJ_GC","4096":"asOBJ_APP_CLASS_COPY_CONSTRUCTOR","4194304":"asOBJ_SHARED","4352":"asOBJ_APP_CLASS_K","4864":"asOBJ_APP_CLASS_CK","512":"asOBJ_APP_CLASS_CONSTRUCTOR","524288":"asOBJ_APP_CLASS_ALIGN8","536870912":"asOBJ_ABSTRACT","5376":"asOBJ_APP_CLASS_DK","5888":"asOBJ_APP_CLASS_CDK","64":"asOBJ_TEMPLATE","6400":"asOBJ_APP_CLASS_AK","65536":"asOBJ_APP_CLASS_ALLINTS","67108864":"asOBJ_ENUM","6912":"asOBJ_APP_CLASS_CAK","7424":"asOBJ_APP_CLASS_DAK","768":"asOBJ_APP_CLASS_C","7936":"asOBJ_APP_CLASS_CDAK","8":"asOBJ_POD","8192":"asOBJ_APP_PRIMITIVE","8388608":"asOBJ_NOINHERIT"}},{"byteSize":4,"filename":"pkmnLib","name":"asECallConvTypes","values":{"0":"asCALL_CDECL","1":"asCALL_STDCALL","2":"asCALL_THISCALL_ASGLOBAL","3":"asCALL_THISCALL","4":"asCALL_CDECL_OBJLAST","5":"asCALL_CDECL_OBJFIRST","6":"asCALL_GENERIC","7":"asCALL_THISCALL_OBJLAST","8":"asCALL_THISCALL_OBJFIRST"}},{"byteSize":1,"filename":"pkmnLib","name":"Statistic","values":{"0":"Health","1":"PhysicalAttack","2":"PhysicalDefense","3":"MagicalAttack","4":"MagicalDefense","5":"Speed"}},{"byteSize":1,"filename":"pkmnLib","name":"MoveCategory","values":{"0":"Physical","1":"Special","2":"Status"}},{"byteSize":1,"filename":"pkmnLib","name":"AttackTarget","values":{"0":"Adjacent","1":"AdjacentAlly","10":"RandomOpponent","11":"Self","2":"AdjacentAllySelf","3":"AdjacentOpponent","4":"All","5":"AllAdjacent","6":"AllAdjacentOpponent","7":"AllAlly","8":"AllOpponent","9":"Any"}},{"byteSize":1,"filename":"pkmnLib","name":"EffectParameterType","values":{"0":"None","1":"Bool","2":"Int","3":"Float","4":"String"}},{"byteSize":4,"filename":"pkmnLib","name":"AttackLearnMethod","values":{"0":"Unknown","1":"Level"}},{"byteSize":1,"filename":"pkmnLib","name":"Gender","values":{"0":"Male","1":"Female","2":"Genderless"}},{"byteSize":1,"filename":"pkmnLib","name":"ItemCategory","values":{"0":"MiscItem","1":"CaptureDevice","2":"Medicine","3":"Berry","4":"MoveLearner","5":"VariantChanger","6":"KeyItem","7":"Mail"}},{"byteSize":1,"filename":"pkmnLib","name":"BattleItemCategory","values":{"0":"None","1":"Healing","2":"StatusHealing","3":"CaptureDevice","4":"MiscBattleItem"}},{"byteSize":1,"filename":"pkmnLib","name":"EvolutionMethod","values":{"0":"Level","1":"HighFriendship","10":"TradeWithHeldItem","11":"TradeWithSpecificPokemon","12":"Custom","2":"KnownMove","3":"LocationBased","4":"TimeBased","5":"HoldsItem","6":"IsGenderAndLevel","7":"EvolutionItemUse","8":"EvolutionItemUseWithGender","9":"Trade"}},{"byteSize":1,"filename":"pkmnLib","name":"TimeOfDay","values":{"0":"Night","1":"Morning","2":"Afternoon","3":"Evening"}},{"byteSize":4,"filename":"pkmnLib","name":"asETypeIdFlags","values":{"0":"asTYPEID_VOID","1":"asTYPEID_BOOL","10":"asTYPEID_FLOAT","1073741824":"asTYPEID_OBJHANDLE","11":"asTYPEID_DOUBLE","134217728":"asTYPEID_SCRIPTOBJECT","2":"asTYPEID_INT8","268435456":"asTYPEID_TEMPLATE","3":"asTYPEID_INT16","4":"asTYPEID_INT32","469762048":"asTYPEID_MASK_OBJECT","5":"asTYPEID_INT64","536870912":"asTYPEID_HANDLETOCONST","6":"asTYPEID_UINT8","67108863":"asTYPEID_MASK_SEQNBR","67108864":"asTYPEID_APPOBJECT","7":"asTYPEID_UINT16","8":"asTYPEID_UINT32","9":"asTYPEID_UINT64"}},{"byteSize":4,"filename":"pkmnLib","name":"asEContextState","values":{"0":"asEXECUTION_FINISHED","1":"asEXECUTION_SUSPENDED","2":"asEXECUTION_ABORTED","3":"asEXECUTION_EXCEPTION","4":"asEXECUTION_PREPARED","5":"asEXECUTION_UNINITIALIZED","6":"asEXECUTION_ACTIVE","7":"asEXECUTION_ERROR"}},{"byteSize":4,"filename":"pkmnLib","name":"asERetCodes","values":{"-1":"asERROR","-10":"asINVALID_DECLARATION","-11":"asINVALID_OBJECT","-12":"asINVALID_TYPE","-13":"asALREADY_REGISTERED","-14":"asMULTIPLE_FUNCTIONS","-15":"asNO_MODULE","-16":"asNO_GLOBAL_VAR","-17":"asINVALID_CONFIGURATION","-18":"asINVALID_INTERFACE","-19":"asCANT_BIND_ALL_FUNCTIONS","-2":"asCONTEXT_ACTIVE","-20":"asLOWER_ARRAY_DIMENSION_NOT_REGISTERED","-21":"asWRONG_CONFIG_GROUP","-22":"asCONFIG_GROUP_IS_IN_USE","-23":"asILLEGAL_BEHAVIOUR_FOR_TYPE","-24":"asWRONG_CALLING_CONV","-25":"asBUILD_IN_PROGRESS","-26":"asINIT_GLOBAL_VARS_FAILED","-27":"asOUT_OF_MEMORY","-28":"asMODULE_IS_IN_USE","-3":"asCONTEXT_NOT_FINISHED","-4":"asCONTEXT_NOT_PREPARED","-5":"asINVALID_ARG","-6":"asNO_FUNCTION","-7":"asNOT_SUPPORTED","-8":"asINVALID_NAME","-9":"asNAME_TAKEN","0":"asSUCCESS"}},{"byteSize":4,"filename":"pkmnLib","name":"asETypeModifiers","values":{"0":"asTM_NONE","1":"asTM_INREF","2":"asTM_OUTREF","3":"asTM_INOUTREF","4":"asTM_CONST"}},{"byteSize":4,"filename":"pkmnLib","name":"asEBehaviours","values":{"0":"asBEHAVE_CONSTRUCT","1":"asBEHAVE_LIST_CONSTRUCT","10":"asBEHAVE_SETGCFLAG","11":"asBEHAVE_GETGCFLAG","12":"asBEHAVE_ENUMREFS","13":"asBEHAVE_RELEASEREFS","14":"asBEHAVE_MAX","2":"asBEHAVE_DESTRUCT","3":"asBEHAVE_FACTORY","4":"asBEHAVE_LIST_FACTORY","5":"asBEHAVE_ADDREF","6":"asBEHAVE_RELEASE","7":"asBEHAVE_GET_WEAKREF_FLAG","8":"asBEHAVE_TEMPLATE_CALLBACK","9":"asBEHAVE_FIRST_GC"}},{"byteSize":4,"filename":"pkmnLib","name":"asEMsgType","values":{"0":"asMSGTYPE_ERROR","1":"asMSGTYPE_WARNING","2":"asMSGTYPE_INFORMATION"}},{"byteSize":4,"filename":"pkmnLib","name":"asEEngineProp","values":{"1":"asEP_ALLOW_UNSAFE_REFERENCES","10":"asEP_REQUIRE_ENUM_SCOPE","11":"asEP_SCRIPT_SCANNER","12":"asEP_INCLUDE_JIT_INSTRUCTIONS","13":"asEP_STRING_ENCODING","14":"asEP_PROPERTY_ACCESSOR_MODE","15":"asEP_EXPAND_DEF_ARRAY_TO_TMPL","16":"asEP_AUTO_GARBAGE_COLLECT","17":"asEP_DISALLOW_GLOBAL_VARS","18":"asEP_ALWAYS_IMPL_DEFAULT_CONSTRUCT","19":"asEP_COMPILER_WARNINGS","2":"asEP_OPTIMIZE_BYTECODE","20":"asEP_DISALLOW_VALUE_ASSIGN_FOR_REF_TYPE","21":"asEP_ALTER_SYNTAX_NAMED_ARGS","22":"asEP_DISABLE_INTEGER_DIVISION","23":"asEP_DISALLOW_EMPTY_LIST_ELEMENTS","24":"asEP_PRIVATE_PROP_AS_PROTECTED","25":"asEP_ALLOW_UNICODE_IDENTIFIERS","26":"asEP_HEREDOC_TRIM_MODE","27":"asEP_MAX_NESTED_CALLS","28":"asEP_GENERIC_CALL_MODE","29":"asEP_INIT_STACK_SIZE","3":"asEP_COPY_SCRIPT_SECTIONS","30":"asEP_INIT_CALL_STACK_SIZE","31":"asEP_MAX_CALL_STACK_SIZE","32":"asEP_LAST_PROPERTY","4":"asEP_MAX_STACK_SIZE","5":"asEP_USE_CHARACTER_LITERALS","6":"asEP_ALLOW_MULTILINE_STRINGS","7":"asEP_ALLOW_IMPLICIT_HANDLE_TYPES","8":"asEP_BUILD_WITHOUT_LINE_CUES","9":"asEP_INIT_GLOBAL_VARS_AFTER_BUILD"}},{"byteSize":4,"filename":"pkmnLib","name":"asEGMFlags","values":{"0":"asGM_ONLY_IF_EXISTS","1":"asGM_CREATE_IF_NOT_EXISTS","2":"asGM_ALWAYS_CREATE"}},{"byteSize":4,"filename":"pkmnLib","name":"asETokenClass","values":{"0":"asTC_UNKNOWN","1":"asTC_KEYWORD","2":"asTC_VALUE","3":"asTC_IDENTIFIER","4":"asTC_COMMENT","5":"asTC_WHITESPACE"}},{"byteSize":4,"filename":"pkmnLib","name":"METADATATYPE","values":{"1":"MDT_TYPE","2":"MDT_FUNC","3":"MDT_VAR","4":"MDT_VIRTPROP","5":"MDT_FUNC_OR_VAR"}},{"byteSize":4,"filename":"pkmnLib","name":"asEFuncType","values":{"-1":"asFUNC_DUMMY","0":"asFUNC_SYSTEM","1":"asFUNC_SCRIPT","2":"asFUNC_INTERFACE","3":"asFUNC_VIRTUAL","4":"asFUNC_FUNCDEF","5":"asFUNC_IMPORTED","6":"asFUNC_DELEGATE"}},{"byteSize":1,"filename":"pkmnLib","name":"PkmnScriptCategory","values":{"128":"Weather","129":"Status"}},{"byteSize":1,"filename":"pkmnLib","name":"EventDataKind","values":{"0":"Damage","1":"Heal","10":"ChangeVariant","11":"AttackUse","2":"Faint","3":"Switch","4":"TurnStart","5":"TurnEnd","6":"ExperienceGain","7":"Miss","8":"DisplayText","9":"ChangeSpecies"}},{"byteSize":1,"filename":"pkmnLib","name":"PkmnEventDataKind","values":{"128":"WeatherChange","129":"StatusChange"}},{"byteSize":1,"filename":"pkmnLib","name":"TurnChoiceKind","values":{"0":"Pass","1":"Attack","2":"Item","3":"Switch","4":"Flee"}},{"byteSize":1,"filename":"pkmnLib","name":"AttackCategory","values":{"0":"Physical","1":"Magical","2":"Status"}},{"byteSize":4,"filename":"pkmnLib","name":"syntax_option_type","values":{}},{"byteSize":4,"filename":"pkmnLib","name":"error_type","values":{"0":"_S_error_collate","1":"_S_error_ctype","10":"_S_error_badrepeat","11":"_S_error_complexity","12":"_S_error_stack","2":"_S_error_escape","3":"_S_error_backref","4":"_S_error_brack","5":"_S_error_paren","6":"_S_error_brace","7":"_S_error_badbrace","8":"_S_error_range","9":"_S_error_space"}},{"byteSize":4,"filename":"pkmnLib","name":"match_flag_type","values":{}},{"byteSize":1,"filename":"pkmnLib","name":"DamageSource","values":{"0":"AttackDamage"}},{"byteSize":1,"filename":"pkmnLib","name":"PkmnDamageSource","values":{"1":"Struggle"}}],"functions":[{"filename":"pkmnLib","name":"PkmnLib_AngelScriptResolver_Construct","parameters":[],"returns":"AngelScriptResolver *"},{"filename":"pkmnLib","name":"PkmnLib_AngelScriptResolver_Destruct","parameters":[{"name":"p","type":"AngelScriptResolver *"}],"returns":"unsigned char"},{"filename":"pkmnLib","name":"PkmnLib_AngelScriptResolver_Initialize","parameters":[{"name":"p","type":"AngelScriptResolver *"},{"name":"lib","type":"BattleLibrary *"}],"returns":"unsigned char"},{"filename":"pkmnLib","name":"PkmnLib_AngelScriptResolver_CreateScript","parameters":[{"name":"p","type":"AngelScriptResolver *"},{"name":"name","type":"const char *"},{"name":"script","type":"const char *"}],"returns":"unsigned char"},{"filename":"pkmnLib","name":"PkmnLib_AngelScriptResolver_FinalizeModule","parameters":[{"name":"p","type":"AngelScriptResolver *"}],"returns":"unsigned char"},{"filename":"pkmnLib","name":"PkmnLib_AngelScriptResolver_LoadScript","parameters":[{"name":"out","type":"Script * &"},{"name":"p","type":"AngelScriptResolver *"},{"name":"category","type":"ScriptCategory"},{"name":"scriptName","type":"const char *"}],"returns":"unsigned char"},{"filename":"pkmnLib","name":"PkmnLib_AngelScriptResolver_WriteByteCodeToFile","parameters":[{"name":"p","type":"AngelScriptResolver *"},{"name":"file","type":"const char *"},{"name":"stripDebugInfo","type":"bool"}],"returns":"unsigned char"},{"filename":"pkmnLib","name":"PkmnLib_AngelScriptResolver_LoadByteCodeFromFile","parameters":[{"name":"p","type":"AngelScriptResolver *"},{"name":"file","type":"const char *"}],"returns":"unsigned char"},{"filename":"pkmnLib","name":"PkmnLib_AngelScriptResolver_WriteByteCodeToMemory","parameters":[{"name":"p","type":"AngelScriptResolver *"},{"name":"stripDebugInfo","type":"bool"},{"name":"size","type":"long unsigned int &"},{"name":"out","type":"unsigned char * &"}],"returns":"unsigned char"},{"filename":"pkmnLib","name":"PkmnLib_AngelScriptResolver_LoadByteCodeFromMemory","parameters":[{"name":"p","type":"AngelScriptResolver *"},{"name":"memory","type":"unsigned char *"},{"name":"size","type":"long unsigned int"}],"returns":"unsigned char"},{"filename":"pkmnLib","name":"PkmnLib_AngelScriptResolver_RegisterType","parameters":[{"name":"p","type":"AngelScriptResolver *"},{"name":"typeName","type":"const char *"}],"returns":"unsigned char"},{"filename":"pkmnLib","name":"PkmnLib_AngelScriptResolver_RegisterTypeMethod","parameters":[{"name":"p","type":"AngelScriptResolver *"},{"name":"typeName","type":"const char *"},{"name":"decl","type":"const char *"},{"name":"func","type":"Function *"}],"returns":"unsigned char"},{"filename":"pkmnLib","name":"PkmnLib_AngelScriptResolver_RegisterGlobalMethod","parameters":[{"name":"p","type":"AngelScriptResolver *"},{"name":"decl","type":"const char *"},{"name":"func","type":"Function *"}],"returns":"unsigned char"},{"filename":"pkmnLib","name":"PkmnLib_AngelscriptScript_Destruct","parameters":[{"name":"p","type":"AngelScriptScript *"}],"returns":"unsigned char"},{"filename":"pkmnLib","name":"PkmnLib_Battle_Construct","parameters":[{"name":"out","type":"Battle * &"},{"name":"library","type":"const BattleLibrary *"},{"name":"parties","type":"const BattleParty * *"},{"name":"partiesCount","type":"long unsigned int"},{"name":"canFlee","type":"bool"},{"name":"numberOfSides","type":"unsigned char"},{"name":"creaturesPerSide","type":"unsigned char"},{"name":"randomSeed","type":"long unsigned int"}],"returns":"unsigned char"},{"filename":"pkmnLib","name":"PkmnLib_Battle_Destruct","parameters":[{"name":"p","type":"Battle *"}],"returns":"void"},{"filename":"pkmnLib","name":"PkmnLib_Battle_SetWeather","parameters":[{"name":"p","type":"Battle *"},{"name":"name","type":"const char *"}],"returns":"unsigned char"},{"filename":"pkmnLib","name":"PkmnLib_Battle_ClearWeather","parameters":[{"name":"p","type":"Battle *"}],"returns":"unsigned char"},{"filename":"pkmnLib","name":"PkmnLib_Battle_GetWeatherName","parameters":[{"name":"p","type":"Battle *"}],"returns":"const char *"},{"filename":"pkmnLib","name":"PkmnLib_BattleLibrary_Construct","parameters":[{"name":"out","type":"BattleLibrary * &"},{"name":"staticLib","type":"PokemonLibrary *"},{"name":"statCalculator","type":"StatCalculator *"},{"name":"damageLibrary","type":"DamageLibrary *"},{"name":"experienceLibrary","type":"ExperienceLibrary *"},{"name":"scriptResolver","type":"ScriptResolver *"},{"name":"miscLibrary","type":"MiscLibrary *"}],"returns":"unsigned char"},{"filename":"pkmnLib","name":"PkmnLib_BattleLibrary_Destruct","parameters":[{"name":"p","type":"BattleLibrary *"}],"returns":"void"},{"filename":"pkmnLib","name":"PkmnLib_DamageLibrary_Construct","parameters":[],"returns":"DamageLibrary *"},{"filename":"pkmnLib","name":"PkmnLib_DamageLibrary_Destruct","parameters":[{"name":"p","type":"DamageLibrary *"}],"returns":"void"},{"filename":"pkmnLib","name":"PkmnLib_WeatherChangeEvent_Destruct","parameters":[{"name":"p","type":"WeatherChangeEvent *"}],"returns":"void"},{"filename":"pkmnLib","name":"PkmnLib_WeatherChangeEvent_GetWeatherName","parameters":[{"name":"p","type":"WeatherChangeEvent *"}],"returns":"const char *"},{"filename":"pkmnLib","name":"PkmnLib_ExperienceLibrary_Construct","parameters":[],"returns":"ExperienceLibrary *"},{"filename":"pkmnLib","name":"PkmnLib_ExperienceLibrary_HandleExperienceGain","parameters":[{"name":"p","type":"ExperienceLibrary *"},{"name":"faintedMon","type":"Creature *"},{"name":"opponents","type":"const Creature * *"},{"name":"numberOfOpponents","type":"long unsigned int"}],"returns":"unsigned char"},{"filename":"pkmnLib","name":"PkmnLib_ExperienceLibrary_Destruct","parameters":[{"name":"p","type":"ExperienceLibrary *"}],"returns":"void"},{"filename":"pkmnLib","name":"PkmnLib_MiscLibrary_Construct","parameters":[],"returns":"MiscLibrary *"},{"filename":"pkmnLib","name":"PkmnLib_MiscLibrary_Destruct","parameters":[{"name":"p","type":"MiscLibrary *"}],"returns":"void"},{"filename":"pkmnLib","name":"PkmnLib_PkmnScript_ModifyCriticalStage","parameters":[{"name":"script","type":"PkmnScript *"},{"name":"attack","type":"ExecutingAttack *"},{"name":"target","type":"Creature *"},{"name":"hit","type":"unsigned char"},{"name":"critStage","type":"unsigned char *"}],"returns":"unsigned char"},{"filename":"pkmnLib","name":"PkmnLib_Pokemon_Construct","parameters":[{"name":"library","type":"const BattleLibrary *"},{"name":"species","type":"const PokemonSpecies *"},{"name":"forme","type":"const PokemonForme *"},{"name":"level","type":"unsigned char"},{"name":"experience","type":"unsigned int"},{"name":"uid","type":"unsigned int"},{"name":"gender","type":"Gender"},{"name":"coloring","type":"unsigned char"},{"name":"heldItem","type":"const Item *"},{"name":"nickname","type":"const char *"},{"name":"hiddenAbility","type":"bool"},{"name":"abilityIndex","type":"unsigned char"},{"name":"moves","type":"const LearnedAttack * *"},{"name":"moveCount","type":"long unsigned int"},{"name":"hpIv","type":"unsigned char"},{"name":"attIv","type":"unsigned char"},{"name":"defIv","type":"unsigned char"},{"name":"sAtIv","type":"unsigned char"},{"name":"sDeIv","type":"unsigned char"},{"name":"spIv","type":"unsigned char"},{"name":"hpEv","type":"unsigned char"},{"name":"attEv","type":"unsigned char"},{"name":"defEv","type":"unsigned char"},{"name":"sAtEv","type":"unsigned char"},{"name":"sDeEv","type":"unsigned char"},{"name":"spEv","type":"unsigned char"},{"name":"nature","type":"const Nature *"}],"returns":"Pokemon *"},{"filename":"pkmnLib","name":"PkmnLib_Pokemon_Destruct","parameters":[{"name":"p","type":"const Pokemon *"}],"returns":"void"},{"filename":"pkmnLib","name":"PkmnLib_Pokemon_IsShiny","parameters":[{"name":"p","type":"const Pokemon *"}],"returns":"bool"},{"filename":"pkmnLib","name":"PkmnLib_Pokemon_GetNature","parameters":[{"name":"p","type":"const Pokemon *"}],"returns":"const Nature *"},{"filename":"pkmnLib","name":"PkmnLib_Pokemon_GetIndividualValue","parameters":[{"name":"p","type":"const Pokemon *"},{"name":"stat","type":"Statistic"}],"returns":"unsigned char"},{"filename":"pkmnLib","name":"PkmnLib_Pokemon_SetIndividualValue","parameters":[{"name":"p","type":"Pokemon *"},{"name":"stat","type":"Statistic"},{"name":"value","type":"unsigned char"}],"returns":"void"},{"filename":"pkmnLib","name":"PkmnLib_Pokemon_GetEffortValue","parameters":[{"name":"p","type":"const Pokemon *"},{"name":"stat","type":"Statistic"}],"returns":"unsigned char"},{"filename":"pkmnLib","name":"PkmnLib_Pokemon_SetEffortValue","parameters":[{"name":"p","type":"Pokemon *"},{"name":"stat","type":"Statistic"},{"name":"value","type":"unsigned char"}],"returns":"void"},{"filename":"pkmnLib","name":"PkmnLib_Pokemon_SetStatus","parameters":[{"name":"p","type":"Pokemon *"},{"name":"name","type":"const char *"}],"returns":"unsigned char"},{"filename":"pkmnLib","name":"PkmnLib_Pokemon_ClearStatus","parameters":[{"name":"p","type":"Pokemon *"}],"returns":"unsigned char"},{"filename":"pkmnLib","name":"PkmnLib_Pokemon_GetStatusName","parameters":[{"name":"p","type":"Pokemon *"}],"returns":"const char *"},{"filename":"pkmnLib","name":"PkmnLib_Pokemon_GetFriendship","parameters":[{"name":"p","type":"const Pokemon *"}],"returns":"unsigned char"},{"filename":"pkmnLib","name":"PkmnLib_Pokemon_SetFriendship","parameters":[{"name":"p","type":"Pokemon *"},{"name":"value","type":"unsigned char"}],"returns":"void"},{"filename":"pkmnLib","name":"PkmnLib_Pokemon_ChangeFriendship","parameters":[{"name":"p","type":"Pokemon *"},{"name":"amount","type":"signed char"}],"returns":"void"},{"filename":"pkmnLib","name":"PkmnLib_StatCalculator_Construct","parameters":[],"returns":"StatCalculator *"},{"filename":"pkmnLib","name":"PkmnLib_StatCalculator_Destruct","parameters":[{"name":"p","type":"StatCalculator *"}],"returns":"void"},{"filename":"pkmnLib","name":"PkmnLib_C_GetLastException","parameters":[],"returns":"const char *"},{"filename":"pkmnLib","name":"PkmnLib_EvolutionData_CreateLevelEvolution","parameters":[{"name":"level","type":"unsigned char"},{"name":"into","type":"const PokemonSpecies *"}],"returns":"const EvolutionData *"},{"filename":"pkmnLib","name":"PkmnLib_EvolutionData_CreateFriendshipEvolution","parameters":[{"name":"friendship","type":"unsigned char"},{"name":"into","type":"const PokemonSpecies *"}],"returns":"const EvolutionData *"},{"filename":"pkmnLib","name":"PkmnLib_EvolutionData_CreateKnownMoveEvolution","parameters":[{"name":"move","type":"const MoveData *"},{"name":"into","type":"const PokemonSpecies *"}],"returns":"const EvolutionData *"},{"filename":"pkmnLib","name":"PkmnLib_EvolutionData_CreateLocationEvolution","parameters":[{"name":"location","type":"const char *"},{"name":"into","type":"const PokemonSpecies *"}],"returns":"const EvolutionData *"},{"filename":"pkmnLib","name":"PkmnLib_EvolutionData_CreateTimeEvolution","parameters":[{"name":"time","type":"TimeOfDay"},{"name":"into","type":"const PokemonSpecies *"}],"returns":"const EvolutionData *"},{"filename":"pkmnLib","name":"PkmnLib_EvolutionData_CreateItemEvolution","parameters":[{"name":"item","type":"const Item *"},{"name":"into","type":"const PokemonSpecies *"}],"returns":"const EvolutionData *"},{"filename":"pkmnLib","name":"PkmnLib_EvolutionData_CreateGenderBasedEvolution","parameters":[{"name":"gender","type":"Gender"},{"name":"level","type":"unsigned char"},{"name":"into","type":"const PokemonSpecies *"}],"returns":"const EvolutionData *"},{"filename":"pkmnLib","name":"PkmnLib_EvolutionData_CreateItemUseEvolution","parameters":[{"name":"item","type":"const Item *"},{"name":"into","type":"const PokemonSpecies *"}],"returns":"const EvolutionData *"},{"filename":"pkmnLib","name":"PkmnLib_EvolutionData_CreateItemUseWithGenderEvolution","parameters":[{"name":"item","type":"const Item *"},{"name":"gender","type":"Gender"},{"name":"into","type":"const PokemonSpecies *"}],"returns":"const EvolutionData *"},{"filename":"pkmnLib","name":"PkmnLib_EvolutionData_CreateTradeEvolution","parameters":[{"name":"into","type":"const PokemonSpecies *"}],"returns":"const EvolutionData *"},{"filename":"pkmnLib","name":"PkmnLib_EvolutionData_CreateTradeWithItemEvolution","parameters":[{"name":"item","type":"const Item *"},{"name":"into","type":"const PokemonSpecies *"}],"returns":"const EvolutionData *"},{"filename":"pkmnLib","name":"PkmnLib_EvolutionData_CreateTradeWithSpeciesEvolution","parameters":[{"name":"traded","type":"const PokemonSpecies *"},{"name":"into","type":"const PokemonSpecies *"}],"returns":"const EvolutionData *"},{"filename":"pkmnLib","name":"PkmnLib_EvolutionData_CreateCustomEvolution","parameters":[{"name":"data","type":"const EffectParameter * *"},{"name":"dataLength","type":"long unsigned int"},{"name":"into","type":"const PokemonSpecies *"}],"returns":"const EvolutionData *"},{"filename":"pkmnLib","name":"PkmnLib_EvolutionData_GetMethod","parameters":[{"name":"data","type":"const EvolutionData *"}],"returns":"EvolutionMethod"},{"filename":"pkmnLib","name":"PkmnLib_EvolutionData_GetNewSpecies","parameters":[{"name":"data","type":"const EvolutionData *"}],"returns":"const PokemonSpecies *"},{"filename":"pkmnLib","name":"PkmnLib_EvolutionData_GetDataCount","parameters":[{"name":"data","type":"const EvolutionData *"}],"returns":"long unsigned int"},{"filename":"pkmnLib","name":"PkmnLib_EvolutionData_GetData","parameters":[{"name":"data","type":"const EvolutionData *"},{"name":"index","type":"long unsigned int"},{"name":"out","type":"const EffectParameter * &"}],"returns":"unsigned char"},{"filename":"pkmnLib","name":"PkmnLib_Item_Construct","parameters":[{"name":"name","type":"const char *"},{"name":"category","type":"ItemCategory"},{"name":"battleCategory","type":"BattleItemCategory"},{"name":"price","type":"int"},{"name":"flags","type":"const char * *"},{"name":"flagsCount","type":"long unsigned int"},{"name":"flingPower","type":"unsigned char"}],"returns":"Item *"},{"filename":"pkmnLib","name":"PkmnLib_Item_Destruct","parameters":[{"name":"p","type":"const Item *"}],"returns":"void"},{"filename":"pkmnLib","name":"PkmnLib_Item_GetFlingPower","parameters":[{"name":"p","type":"const Item *"}],"returns":"unsigned char"},{"filename":"pkmnLib","name":"PkmnLib_LearnableMoves_Construct","parameters":[{"name":"out","type":"LearnableMoves * &"},{"name":"levelAttackCapacity","type":"long unsigned int"}],"returns":"unsigned char"},{"filename":"pkmnLib","name":"PkmnLib_LearnableMoves_Destruct","parameters":[{"name":"p","type":"const LearnableMoves *"}],"returns":"void"},{"filename":"pkmnLib","name":"PkmnLib_LearnableMoves_AddEggMove","parameters":[{"name":"p","type":"LearnableMoves *"},{"name":"move","type":"MoveData *"}],"returns":"void"},{"filename":"pkmnLib","name":"PkmnLib_LearnableMoves_GetEggMovesCount","parameters":[{"name":"p","type":"LearnableMoves *"}],"returns":"long unsigned int"},{"filename":"pkmnLib","name":"PkmnLib_LearnableMoves_GetEggMoves","parameters":[{"name":"p","type":"LearnableMoves *"}],"returns":"const const MoveData * *"},{"filename":"pkmnLib","name":"PkmnLib_LibrarySettings_Construct","parameters":[{"name":"maximalLevel","type":"unsigned char"},{"name":"maximalMoves","type":"unsigned char"},{"name":"shinyRate","type":"unsigned short"}],"returns":"const LibrarySettings *"},{"filename":"pkmnLib","name":"PkmnLib_LibrarySettings_Destruct","parameters":[{"name":"p","type":"const LibrarySettings *"}],"returns":"void"},{"filename":"pkmnLib","name":"PkmnLib_LibrarySettings_GetShinyRate","parameters":[{"name":"p","type":"const LibrarySettings *"}],"returns":"unsigned short"},{"filename":"pkmnLib","name":"PkmnLib_Nature_Construct","parameters":[{"name":"increasedStat","type":"Statistic"},{"name":"decreasedStat","type":"Statistic"},{"name":"increasedModifier","type":"float"},{"name":"decreasedModifier","type":"float"}],"returns":"Nature *"},{"filename":"pkmnLib","name":"PkmnLib_Nature_Destruct","parameters":[{"name":"p","type":"const Nature *"}],"returns":"void"},{"filename":"pkmnLib","name":"PkmnLib_Nature_GetIncreaseModifier","parameters":[{"name":"p","type":"const Nature *"}],"returns":"float"},{"filename":"pkmnLib","name":"PkmnLib_Nature_GetDecreaseModifier","parameters":[{"name":"p","type":"const Nature *"}],"returns":"float"},{"filename":"pkmnLib","name":"PkmnLib_Nature_GetIncreasedStat","parameters":[{"name":"p","type":"const Nature *"}],"returns":"Statistic"},{"filename":"pkmnLib","name":"PkmnLib_Nature_GetDecreasedStat","parameters":[{"name":"p","type":"const Nature *"}],"returns":"Statistic"},{"filename":"pkmnLib","name":"PkmnLib_Nature_GetStatModifier","parameters":[{"name":"nature","type":"const Nature *"},{"name":"stat","type":"Statistic"}],"returns":"float"},{"filename":"pkmnLib","name":"PkmnLib_NatureLibrary_Construct","parameters":[{"name":"initialCapacity","type":"long unsigned int"}],"returns":"NatureLibrary *"},{"filename":"pkmnLib","name":"PkmnLib_NatureLibrary_Destruct","parameters":[{"name":"p","type":"const NatureLibrary *"}],"returns":"void"},{"filename":"pkmnLib","name":"PkmnLib_NatureLibrary_LoadNature","parameters":[{"name":"p","type":"NatureLibrary *"},{"name":"name","type":"const char *"},{"name":"nature","type":"const Nature *"}],"returns":"unsigned char"},{"filename":"pkmnLib","name":"PkmnLib_NatureLibrary_GetNatureByName","parameters":[{"name":"p","type":"NatureLibrary *"},{"name":"name","type":"const char *"},{"name":"out","type":"const Nature * &"}],"returns":"unsigned char"},{"filename":"pkmnLib","name":"PkmnLib_NatureLibrary_GetRandomNatureName","parameters":[{"name":"p","type":"NatureLibrary *"},{"name":"rand","type":"Random *"},{"name":"out","type":"const char * &"}],"returns":"unsigned char"},{"filename":"pkmnLib","name":"PkmnLib_NatureLibrary_GetNatureName","parameters":[{"name":"p","type":"NatureLibrary *"},{"name":"nature","type":"const Nature *"},{"name":"out","type":"const char * &"}],"returns":"unsigned char"},{"filename":"pkmnLib","name":"PkmnLib_NatureLibrary_GetNatureCount","parameters":[{"name":"p","type":"const NatureLibrary *"}],"returns":"long unsigned int"},{"filename":"pkmnLib","name":"PkmnLib_NatureLibrary_GetNatureByIndex","parameters":[{"name":"p","type":"NatureLibrary *"},{"name":"index","type":"long unsigned int"},{"name":"out","type":"const char * &"}],"returns":"unsigned char"},{"filename":"pkmnLib","name":"PkmnLib_PokemonForme_Construct","parameters":[{"name":"name","type":"const char *"},{"name":"height","type":"float"},{"name":"weight","type":"float"},{"name":"baseExperience","type":"unsigned int"},{"name":"types","type":"unsigned char *"},{"name":"typeLength","type":"long unsigned int"},{"name":"baseHealth","type":"unsigned short"},{"name":"baseAttack","type":"unsigned short"},{"name":"baseDefense","type":"unsigned short"},{"name":"baseMagicalAttack","type":"unsigned short"},{"name":"baseMagicalDefense","type":"unsigned short"},{"name":"baseSpeed","type":"unsigned short"},{"name":"talents","type":"const char * *"},{"name":"talentsLength","type":"long unsigned int"},{"name":"secretTalents","type":"const char * *"},{"name":"secretTalentsLength","type":"long unsigned int"},{"name":"attacks","type":"const LearnableMoves *"},{"name":"flags","type":"const char * *"},{"name":"flagsCount","type":"long unsigned int"}],"returns":"PokemonForme *"},{"filename":"pkmnLib","name":"PkmnLib_PokemonLibrary_Construct","parameters":[{"name":"out","type":"PokemonLibrary * &"},{"name":"settings","type":"LibrarySettings *"},{"name":"species","type":"SpeciesLibrary *"},{"name":"moves","type":"MoveLibrary *"},{"name":"items","type":"ItemLibrary *"},{"name":"growthRates","type":"GrowthRateLibrary *"},{"name":"typeLibrary","type":"TypeLibrary *"},{"name":"natures","type":"NatureLibrary *"}],"returns":"unsigned char"},{"filename":"pkmnLib","name":"PkmnLib_PokemonLibrary_Destruct","parameters":[{"name":"p","type":"const PokemonLibrary *"}],"returns":"void"},{"filename":"pkmnLib","name":"PkmnLib_PokemonLibrary_GetNatureLibrary","parameters":[{"name":"p","type":"const PokemonLibrary *"}],"returns":"const NatureLibrary *"},{"filename":"pkmnLib","name":"PkmnLib_PokemonSpecies_Construct","parameters":[{"name":"out","type":"const PokemonSpecies * &"},{"name":"id","type":"unsigned short"},{"name":"name","type":"const char *"},{"name":"defaultForme","type":"const PokemonForme *"},{"name":"genderRatio","type":"float"},{"name":"growthRate","type":"const char *"},{"name":"captureRate","type":"unsigned char"},{"name":"baseHappiness","type":"unsigned char"},{"name":"eggGroupsRaw","type":"const const char * *"},{"name":"eggGroupsLength","type":"long unsigned int"},{"name":"flags","type":"const char * *"},{"name":"flagsCount","type":"long unsigned int"}],"returns":"unsigned char"},{"filename":"pkmnLib","name":"PkmnLib_PokemonSpecies_Destruct","parameters":[{"name":"p","type":"const PokemonSpecies *"}],"returns":"void"},{"filename":"pkmnLib","name":"PkmnLib_PokemonSpecies_GetBaseHappiness","parameters":[{"name":"p","type":"const PokemonSpecies *"}],"returns":"unsigned char"},{"filename":"pkmnLib","name":"PkmnLib_PokemonSpecies_AddEvolution","parameters":[{"name":"p","type":"PokemonSpecies *"},{"name":"evo","type":"EvolutionData *"}],"returns":"void"},{"filename":"pkmnLib","name":"PkmnLib_PokemonSpecies_GetEvolutionCount","parameters":[{"name":"p","type":"const PokemonSpecies *"}],"returns":"long unsigned int"},{"filename":"pkmnLib","name":"PkmnLib_PokemonSpecies_GetEvolution","parameters":[{"name":"p","type":"const PokemonSpecies *"},{"name":"index","type":"long unsigned int"},{"name":"out","type":"const EvolutionData * &"}],"returns":"unsigned char"},{"filename":"pkmnLib","name":"PkmnLib_PokemonSpecies_GetEvolutions","parameters":[{"name":"p","type":"const PokemonSpecies *"},{"name":"out","type":"const const EvolutionData * * &"}],"returns":"unsigned char"},{"filename":"pkmnLib","name":"PkmnLib_PokemonSpecies_GetEggGroupCount","parameters":[{"name":"p","type":"const PokemonSpecies *"}],"returns":"long unsigned int"},{"filename":"pkmnLib","name":"PkmnLib_PokemonSpecies_GetEggGroup","parameters":[{"name":"p","type":"const PokemonSpecies *"},{"name":"index","type":"long unsigned int"}],"returns":"const char *"},{"filename":"pkmnLib","name":"PkmnLib_SpeciesLibrary_FindPreEvolution","parameters":[{"name":"p","type":"const SpeciesLibrary *"},{"name":"species","type":"const PokemonSpecies *"}],"returns":"const PokemonSpecies *"}]} diff --git a/PkmnLibSharpTests/Battling/PokemonBuilder.cs b/PkmnLibSharpTests/Battling/PokemonBuilder.cs index c2aecdd..8e798d6 100644 --- a/PkmnLibSharpTests/Battling/PokemonBuilder.cs +++ b/PkmnLibSharpTests/Battling/PokemonBuilder.cs @@ -14,8 +14,9 @@ namespace PkmnLibSharpTests.Battling protected override Pokemon Finalize(Species species, Forme forme, Item? heldItem, IReadOnlyCollection moves, Nature nature) { - return new Pokemon(Library, species, forme!, Level, Experience, Uid, Gender, Coloring, + var pkmn = new Pokemon(Library, species, forme!, Level, Experience, Uid, Gender, Coloring, heldItem, Nickname, HiddenAbility, (byte) AbilityIndex, moves, IVs, EVs, nature); + return pkmn; } } } \ No newline at end of file diff --git a/PkmnLibSharpTests/Library/EffectParameterTests.cs b/PkmnLibSharpTests/Library/EffectParameterTests.cs index 506653f..9b39f12 100644 --- a/PkmnLibSharpTests/Library/EffectParameterTests.cs +++ b/PkmnLibSharpTests/Library/EffectParameterTests.cs @@ -51,7 +51,7 @@ namespace PkmnLibSharpTests.Library { var p = new EffectParameter(10); var ex = Assert.Throws(() => { p.AsString(); }); - Assert.AreEqual("[CreatureLibLibrary] - '[CreatureLib_EffectParameter_AsString] [EffectParameter.hpp:54] Cast effect parameter to string, but was Int'", ex.Message); + Assert.AreEqual("[CreatureLibLibrary] - '[CreatureLib_EffectParameter_AsString] [EffectParameter.hpp:52] Cast effect parameter to string, but was Int'", ex.Message); p.Dispose(); } }