Adds ItemTurnChoice interface
continuous-integration/drone/push Build is passing
Details
continuous-integration/drone/push Build is passing
Details
This commit is contained in:
parent
61e48a705a
commit
907e145083
|
@ -0,0 +1,40 @@
|
||||||
|
using System;
|
||||||
|
using PkmnLibSharp.Battling.ChoiceTurn;
|
||||||
|
using PkmnLibSharp.Library.Items;
|
||||||
|
|
||||||
|
namespace PkmnLibSharp.Battling
|
||||||
|
{
|
||||||
|
public class ItemTurnChoice : BaseTurnChoice
|
||||||
|
{
|
||||||
|
public ItemTurnChoice(Pokemon user, Item item) : base(
|
||||||
|
Creaturelib.Generated.ItemTurnChoice.ConstructWithoutTarget(user.Ptr, item.Ptr))
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
public ItemTurnChoice(Pokemon user, Item item, byte targetSide, byte targetIndex) : base(
|
||||||
|
Creaturelib.Generated.ItemTurnChoice.ConstructWithTarget(user.Ptr, item.Ptr, targetSide, targetIndex))
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
internal ItemTurnChoice(IntPtr ptr) : base(ptr){}
|
||||||
|
|
||||||
|
private Item? _item;
|
||||||
|
public Item Item
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
if (_item != null) return _item;
|
||||||
|
var ptr = Creaturelib.Generated.ItemTurnChoice.GetItem(Ptr);
|
||||||
|
if (TryResolvePointer(ptr, out _item))
|
||||||
|
return _item!;
|
||||||
|
_item = new Item(ptr);
|
||||||
|
return _item;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
protected override void DeletePtr()
|
||||||
|
{
|
||||||
|
Creaturelib.Generated.ItemTurnChoice.Destruct(Ptr);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -1,6 +1,7 @@
|
||||||
using System;
|
using System;
|
||||||
|
using PkmnLibSharp.Battling.ChoiceTurn;
|
||||||
|
|
||||||
namespace PkmnLibSharp.Battling.ChoiceTurn
|
namespace PkmnLibSharp.Battling
|
||||||
{
|
{
|
||||||
public class SwitchTurnChoice : BaseTurnChoice
|
public class SwitchTurnChoice : BaseTurnChoice
|
||||||
{
|
{
|
||||||
|
|
|
@ -11,7 +11,7 @@ namespace Creaturelib.Generated
|
||||||
[DllImport("libCreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_FleeTurnChoice_Construct")]
|
[DllImport("libCreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_FleeTurnChoice_Construct")]
|
||||||
internal static extern IntPtr Construct(IntPtr user);
|
internal static extern IntPtr Construct(IntPtr user);
|
||||||
|
|
||||||
/// <param name="p">AttackTurnChoice *</param>
|
/// <param name="p">FleeTurnChoice *</param>
|
||||||
/// <returns>void</returns>
|
/// <returns>void</returns>
|
||||||
[DllImport("libCreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_FleeTurnChoice_Destruct")]
|
[DllImport("libCreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_FleeTurnChoice_Destruct")]
|
||||||
internal static extern void Destruct(IntPtr p);
|
internal static extern void Destruct(IntPtr p);
|
||||||
|
|
|
@ -0,0 +1,39 @@
|
||||||
|
// AUTOMATICALLY GENERATED, DO NOT EDIT
|
||||||
|
using System;
|
||||||
|
using System.Runtime.InteropServices;
|
||||||
|
|
||||||
|
namespace Creaturelib.Generated
|
||||||
|
{
|
||||||
|
internal static class ItemTurnChoice
|
||||||
|
{
|
||||||
|
/// <param name="user">Creature *</param>
|
||||||
|
/// <param name="item">Item *</param>
|
||||||
|
/// <returns>ItemTurnChoice *</returns>
|
||||||
|
[DllImport("libCreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_ItemTurnChoice_ConstructWithoutTarget")]
|
||||||
|
internal static extern IntPtr ConstructWithoutTarget(IntPtr user, IntPtr item);
|
||||||
|
|
||||||
|
/// <param name="user">Creature *</param>
|
||||||
|
/// <param name="item">const Item *</param>
|
||||||
|
/// <param name="targetSide">unsigned char</param>
|
||||||
|
/// <param name="targetIndex">unsigned char</param>
|
||||||
|
/// <returns>ItemTurnChoice *</returns>
|
||||||
|
[DllImport("libCreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_ItemTurnChoice_ConstructWithTarget")]
|
||||||
|
internal static extern IntPtr ConstructWithTarget(IntPtr user, IntPtr item, byte targetSide, byte targetIndex);
|
||||||
|
|
||||||
|
/// <param name="p">SwitchTurnChoice *</param>
|
||||||
|
/// <returns>void</returns>
|
||||||
|
[DllImport("libCreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_ItemTurnChoice_Destruct")]
|
||||||
|
internal static extern void Destruct(IntPtr p);
|
||||||
|
|
||||||
|
/// <param name="p">const ItemTurnChoice *</param>
|
||||||
|
/// <returns>TurnChoiceKind</returns>
|
||||||
|
[DllImport("libCreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_ItemTurnChoice_GetKind")]
|
||||||
|
internal static extern TurnChoiceKind GetKind(IntPtr p);
|
||||||
|
|
||||||
|
/// <param name="p">const ItemTurnChoice *</param>
|
||||||
|
/// <returns>const Item *</returns>
|
||||||
|
[DllImport("libCreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_ItemTurnChoice_GetItem")]
|
||||||
|
internal static extern IntPtr GetItem(IntPtr p);
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
|
@ -11,7 +11,7 @@ namespace Creaturelib.Generated
|
||||||
[DllImport("libCreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_PassTurnChoice_Construct")]
|
[DllImport("libCreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_PassTurnChoice_Construct")]
|
||||||
internal static extern IntPtr Construct(IntPtr user);
|
internal static extern IntPtr Construct(IntPtr user);
|
||||||
|
|
||||||
/// <param name="p">AttackTurnChoice *</param>
|
/// <param name="p">PassTurnChoice *</param>
|
||||||
/// <returns>void</returns>
|
/// <returns>void</returns>
|
||||||
[DllImport("libCreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_PassTurnChoice_Destruct")]
|
[DllImport("libCreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_PassTurnChoice_Destruct")]
|
||||||
internal static extern void Destruct(IntPtr p);
|
internal static extern void Destruct(IntPtr p);
|
||||||
|
|
|
@ -12,7 +12,7 @@ namespace Creaturelib.Generated
|
||||||
[DllImport("libCreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_SwitchTurnChoice_Construct")]
|
[DllImport("libCreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_SwitchTurnChoice_Construct")]
|
||||||
internal static extern IntPtr Construct(IntPtr user, IntPtr newCreature);
|
internal static extern IntPtr Construct(IntPtr user, IntPtr newCreature);
|
||||||
|
|
||||||
/// <param name="p">AttackTurnChoice *</param>
|
/// <param name="p">SwitchTurnChoice *</param>
|
||||||
/// <returns>void</returns>
|
/// <returns>void</returns>
|
||||||
[DllImport("libCreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_SwitchTurnChoice_Destruct")]
|
[DllImport("libCreatureLib", CallingConvention = CallingConvention.Cdecl, EntryPoint= "CreatureLib_SwitchTurnChoice_Destruct")]
|
||||||
internal static extern void Destruct(IntPtr p);
|
internal static extern void Destruct(IntPtr p);
|
||||||
|
|
|
@ -22,6 +22,10 @@ namespace PkmnLibSharp.Library.Items
|
||||||
Initialize(p);
|
Initialize(p);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
internal Item(IntPtr p) : base(p)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
public string Name => _name ??= Creaturelib.Generated.Item.GetName(Ptr).PtrString()!;
|
public string Name => _name ??= Creaturelib.Generated.Item.GetName(Ptr).PtrString()!;
|
||||||
public ItemCategory Category => (ItemCategory)Creaturelib.Generated.Item.GetCategory(Ptr);
|
public ItemCategory Category => (ItemCategory)Creaturelib.Generated.Item.GetCategory(Ptr);
|
||||||
|
|
||||||
|
|
BIN
PkmnLibSharp/Native/Linux/libArbutils.so (Stored with Git LFS)
BIN
PkmnLibSharp/Native/Linux/libArbutils.so (Stored with Git LFS)
Binary file not shown.
BIN
PkmnLibSharp/Native/Linux/libCreatureLib.so (Stored with Git LFS)
BIN
PkmnLibSharp/Native/Linux/libCreatureLib.so (Stored with Git LFS)
Binary file not shown.
BIN
PkmnLibSharp/Native/Linux/libpkmnLib.so (Stored with Git LFS)
BIN
PkmnLibSharp/Native/Linux/libpkmnLib.so (Stored with Git LFS)
Binary file not shown.
BIN
PkmnLibSharp/Native/Linux/libpkmnlib_ai.so (Stored with Git LFS)
BIN
PkmnLibSharp/Native/Linux/libpkmnlib_ai.so (Stored with Git LFS)
Binary file not shown.
BIN
PkmnLibSharp/Native/Windows/libArbutils.dll (Stored with Git LFS)
BIN
PkmnLibSharp/Native/Windows/libArbutils.dll (Stored with Git LFS)
Binary file not shown.
BIN
PkmnLibSharp/Native/Windows/libCreatureLib.dll (Stored with Git LFS)
BIN
PkmnLibSharp/Native/Windows/libCreatureLib.dll (Stored with Git LFS)
Binary file not shown.
BIN
PkmnLibSharp/Native/Windows/libangelscript.dll (Stored with Git LFS)
BIN
PkmnLibSharp/Native/Windows/libangelscript.dll (Stored with Git LFS)
Binary file not shown.
BIN
PkmnLibSharp/Native/Windows/libpkmnLib.dll (Stored with Git LFS)
BIN
PkmnLibSharp/Native/Windows/libpkmnLib.dll (Stored with Git LFS)
Binary file not shown.
BIN
PkmnLibSharp/Native/Windows/libpkmnlib_ai.dll (Stored with Git LFS)
BIN
PkmnLibSharp/Native/Windows/libpkmnlib_ai.dll (Stored with Git LFS)
Binary file not shown.
File diff suppressed because one or more lines are too long
Loading…
Reference in New Issue