Added values for AI[].

This commit is contained in:
AkjaHAsLk1IALk0MasH 2021-11-26 23:52:05 +07:00
parent 74e178e119
commit 85a4656274

View file

@ -689,12 +689,17 @@ namespace TShockAPI
/// ??? /// ???
/// </summary> /// </summary>
public int Index { get; set; } public int Index { get; set; }
/// <summary>
/// The special meaning of the projectile.
/// </summary>
public float[] Ai { get; set; }
} }
/// <summary> /// <summary>
/// NewProjectile - Called when a client creates a new projectile /// NewProjectile - Called when a client creates a new projectile
/// </summary> /// </summary>
public static HandlerList<NewProjectileEventArgs> NewProjectile = new HandlerList<NewProjectileEventArgs>(); public static HandlerList<NewProjectileEventArgs> NewProjectile = new HandlerList<NewProjectileEventArgs>();
private static bool OnNewProjectile(MemoryStream data, short ident, Vector2 pos, Vector2 vel, float knockback, short dmg, byte owner, short type, int index, TSPlayer player) private static bool OnNewProjectile(MemoryStream data, short ident, Vector2 pos, Vector2 vel, float knockback, short dmg, byte owner, short type, int index, TSPlayer player, float[] ai)
{ {
if (NewProjectile == null) if (NewProjectile == null)
return false; return false;
@ -711,6 +716,7 @@ namespace TShockAPI
Type = type, Type = type,
Index = index, Index = index,
Player = player, Player = player,
Ai = ai
}; };
NewProjectile.Invoke(null, args); NewProjectile.Invoke(null, args);
return args.Handled; return args.Handled;
@ -2788,7 +2794,7 @@ namespace TShockAPI
var index = TShock.Utils.SearchProjectile(ident, owner); var index = TShock.Utils.SearchProjectile(ident, owner);
if (OnNewProjectile(args.Data, ident, pos, vel, knockback, dmg, owner, type, index, args.Player)) if (OnNewProjectile(args.Data, ident, pos, vel, knockback, dmg, owner, type, index, args.Player, ai))
return true; return true;
lock (args.Player.RecentlyCreatedProjectiles) lock (args.Player.RecentlyCreatedProjectiles)