From 6f0d98000eac51d49e0e68111c8f2e2de10c643b Mon Sep 17 00:00:00 2001 From: Zack Piispanen Date: Fri, 4 Oct 2013 00:16:54 -0400 Subject: [PATCH] Another annoy command, the possibilities are endless. --- TShockAPI/Commands.cs | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/TShockAPI/Commands.cs b/TShockAPI/Commands.cs index 26fc0bd9..1fcb5daf 100755 --- a/TShockAPI/Commands.cs +++ b/TShockAPI/Commands.cs @@ -232,6 +232,7 @@ namespace TShockAPI add(Permissions.annoy, Annoy, "annoy"); add(Permissions.annoy, Confuse, "confuse"); add(Permissions.annoy, Rocket, "rocket"); + add(Permissions.annoy, FireWork, "firework"); add(Permissions.kill, Kill, "kill"); add(Permissions.godmode, ToggleGodMode, "godmode"); add(Permissions.butcher, Butcher, "butcher"); @@ -3609,6 +3610,37 @@ namespace TShockAPI } } + private static void FireWork(CommandArgs args) + { + if (args.Parameters.Count < 1) + { + args.Player.SendErrorMessage("Invalid syntax! Proper syntax: /firework [red|green|blue|yellow]"); + return; + } + var players = TShock.Utils.FindPlayer(args.Parameters[0]); + if (players.Count == 0) + args.Player.SendErrorMessage("Invalid player!"); + else if (players.Count > 1) + TShock.Utils.SendMultipleMatchError(args.Player, players.Select(p => p.Name)); + else + { + int type = 167; + if (args.Parameters.Count > 1) + { + if (args.Parameters[1].ToLower() == "green") + type = 168; + else if (args.Parameters[1].ToLower() == "blue") + type = 169; + else if (args.Parameters[1].ToLower() == "yello") + type = 170; + } + var ply = players[0]; + int p = Projectile.NewProjectile(ply.TPlayer.position.X, ply.TPlayer.position.Y - 64f, 0f, -8f, type, 0, (float)0); + Main.projectile[p].Kill(); + args.Player.SendSuccessMessage("Launched Firework on {0}.", ply.Name); + } + } + private static void Aliases(CommandArgs args) { if (args.Parameters.Count < 1)