From f3eaa5bf12b7733c6de6c8605a2854f677af6184 Mon Sep 17 00:00:00 2001 From: KHobbits Date: Sun, 10 Jun 2012 19:11:45 +0100 Subject: Allow syntax: /fly --- .../earth2me/essentials/commands/Commandfly.java | 26 +++++++++++++++++----- 1 file changed, 21 insertions(+), 5 deletions(-) diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandfly.java b/Essentials/src/com/earth2me/essentials/commands/Commandfly.java index 22e3c4eea..deb2da781 100644 --- a/Essentials/src/com/earth2me/essentials/commands/Commandfly.java +++ b/Essentials/src/com/earth2me/essentials/commands/Commandfly.java @@ -24,7 +24,7 @@ public class Commandfly extends EssentialsCommand throw new NotEnoughArgumentsException(); } - flyOtherPlayers(server, sender, args[0]); + flyOtherPlayers(server, sender, args); } @Override @@ -32,7 +32,7 @@ public class Commandfly extends EssentialsCommand { if (args.length > 0 && args[0].trim().length() > 2 && user.isAuthorized("essentials.fly.others")) { - flyOtherPlayers(server, user, args[0]); + flyOtherPlayers(server, user, args); return; } user.setAllowFlight(!user.getAllowFlight()); @@ -43,16 +43,32 @@ public class Commandfly extends EssentialsCommand user.sendMessage(_("flyMode", _(user.getAllowFlight() ? "enabled" : "disabled"), user.getDisplayName())); } - private void flyOtherPlayers(final Server server, final CommandSender sender, final String name) + private void flyOtherPlayers(final Server server, final CommandSender sender, final String[] args) { - for (Player matchPlayer : server.matchPlayer(name)) + for (Player matchPlayer : server.matchPlayer(args[0])) { final User player = ess.getUser(matchPlayer); if (player.isHidden()) { continue; + } + + if (args.length > 1) + { + if (args[1].contains("on") || args[1].contains("ena") || args[1].equalsIgnoreCase("1")) + { + player.setAllowFlight(!player.getAllowFlight()); + } + else + { + player.setAllowFlight(false); + } + } + else + { + player.setAllowFlight(!player.getAllowFlight()); } - player.setAllowFlight(!player.getAllowFlight()); + if (!player.getAllowFlight()) { player.setFlying(false); -- cgit v1.2.3