Updates CreatureLib, implements support for ItemUseScript.
This commit is contained in:
@@ -7,7 +7,18 @@ namespace PkmnLibSharp.Library.Items
|
||||
public class Item : PointerWrapper
|
||||
{
|
||||
private string? _name;
|
||||
|
||||
|
||||
public Item(string name, ItemCategory category, BattleItemCategory battleCategory, int price, string effectName,
|
||||
EffectParameter[] parameters, string[] flags, byte flingPower)
|
||||
{
|
||||
var convertedFlags = flags.Select(x => x.ToPtr()).ToArray().ArrayPtr();
|
||||
var pars = parameters.Select(x => x.Ptr).ToArray().ArrayPtr();
|
||||
var p = Pkmnlib.Generated.Item.Construct(name.ToPtr(), (Pkmnlib.ItemCategory) category,
|
||||
(Pkmnlib.BattleItemCategory) battleCategory, price, effectName.ToPtr(), pars, (ulong) parameters.Length,
|
||||
convertedFlags, (ulong) flags.Length, flingPower);
|
||||
Initialize(p);
|
||||
}
|
||||
|
||||
public string Name => _name ??= Creaturelib.Generated.Item.GetName(Ptr).PtrString()!;
|
||||
public ItemCategory Category => (ItemCategory) Creaturelib.Generated.Item.GetCategory(Ptr);
|
||||
|
||||
@@ -22,16 +33,6 @@ namespace PkmnLibSharp.Library.Items
|
||||
return Creaturelib.Generated.Item.HasFlag(Ptr, s.ToPtr()) == MarshalHelper.True;
|
||||
}
|
||||
|
||||
public Item (string name, ItemCategory category, BattleItemCategory battleCategory,
|
||||
int price,
|
||||
string[] flags, byte flingPower)
|
||||
{
|
||||
var convertedFlags = flags.Select(x => x.ToPtr()).ToArray().ArrayPtr();
|
||||
var p = Pkmnlib.Generated.Item.Construct(name.ToPtr(), (Pkmnlib.ItemCategory) category,
|
||||
(Pkmnlib.BattleItemCategory) battleCategory, price, convertedFlags, (ulong) flags.Length, flingPower);
|
||||
Initialize(p);
|
||||
}
|
||||
|
||||
public override string ToString()
|
||||
{
|
||||
return base.ToString() + $": {Name}";
|
||||
|
||||
Reference in New Issue
Block a user