diff --git a/TShockAPI/Commands.cs b/TShockAPI/Commands.cs index e454e8c2..799e3277 100755 --- a/TShockAPI/Commands.cs +++ b/TShockAPI/Commands.cs @@ -238,6 +238,7 @@ namespace TShockAPI add(Permissions.butcher, Butcher, "butcher"); add(Permissions.item, Give, "give", "g"); add(Permissions.clearitems, ClearItems, "clear", "clearitems"); + add(Permissions.clearitems, KillProjectiles, "killprojectile"); add(Permissions.heal, Heal, "heal"); add(Permissions.buffplayer, GBuff, "gbuff", "buffplayer"); add(Permissions.hardmode, StartHardMode, "hardmode"); @@ -3641,6 +3642,34 @@ namespace TShockAPI } } + private static void KillProjectiles(CommandArgs args) + { + if (args.Parameters.Count == 0) + { + foreach (Projectile p in Main.projectile) + { + if (p != null && p.active) + { + p.Kill(); + } + } + } + else + { + int id; + if (int.TryParse(args.Parameters[0], out id)) + { + foreach (Projectile p in Main.projectile) + { + if (p != null && p.active && p.type == id) + { + p.Kill(); + } + } + } + } + } + private static void Aliases(CommandArgs args) { if (args.Parameters.Count < 1)