diff options
author | KHobbits <rob@khobbits.co.uk> | 2012-04-02 02:31:07 +0100 |
---|---|---|
committer | KHobbits <rob@khobbits.co.uk> | 2012-04-02 02:31:31 +0100 |
commit | 767703bfc9107b05f413c129457c7c30f6833d7f (patch) | |
tree | 8034db675daca51e8eab230b5b60b548d176b1f1 | |
parent | 0e0a96b6d8ed23401ee9d7d607b12d3592127073 (diff) | |
download | Essentials-767703bfc9107b05f413c129457c7c30f6833d7f.tar Essentials-767703bfc9107b05f413c129457c7c30f6833d7f.tar.gz Essentials-767703bfc9107b05f413c129457c7c30f6833d7f.tar.lz Essentials-767703bfc9107b05f413c129457c7c30f6833d7f.tar.xz Essentials-767703bfc9107b05f413c129457c7c30f6833d7f.zip |
Optional second param to /gm to force gamemode on other players.
-rw-r--r-- | Essentials/src/com/earth2me/essentials/commands/Commandgamemode.java | 24 |
1 files changed, 19 insertions, 5 deletions
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandgamemode.java b/Essentials/src/com/earth2me/essentials/commands/Commandgamemode.java index 62ace9357..aad79d616 100644 --- a/Essentials/src/com/earth2me/essentials/commands/Commandgamemode.java +++ b/Essentials/src/com/earth2me/essentials/commands/Commandgamemode.java @@ -24,7 +24,7 @@ public class Commandgamemode extends EssentialsCommand throw new NotEnoughArgumentsException(); } - gamemodeOtherPlayers(server, sender, args[0]); + gamemodeOtherPlayers(server, sender, args); } @Override @@ -32,7 +32,7 @@ public class Commandgamemode extends EssentialsCommand { if (args.length > 0 && !args[0].trim().isEmpty() && user.isAuthorized("essentials.gamemode.others")) { - gamemodeOtherPlayers(server, user, args[0]); + gamemodeOtherPlayers(server, user, args); return; } @@ -40,9 +40,9 @@ public class Commandgamemode extends EssentialsCommand user.sendMessage(_("gameMode", _(user.getGameMode().toString().toLowerCase(Locale.ENGLISH)), user.getDisplayName())); } - private void gamemodeOtherPlayers(final Server server, final CommandSender sender, final String name) + private void gamemodeOtherPlayers(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()) @@ -50,7 +50,21 @@ public class Commandgamemode extends EssentialsCommand continue; } - player.setGameMode(player.getGameMode() == GameMode.SURVIVAL ? GameMode.CREATIVE : GameMode.SURVIVAL); + if (args.length > 1) + { + if (args[1].contains("creat") || args[1].equalsIgnoreCase("1")) + { + player.setGameMode(GameMode.CREATIVE); + } + else + { + player.setGameMode(GameMode.SURVIVAL); + } + } + else + { + player.setGameMode(player.getGameMode() == GameMode.SURVIVAL ? GameMode.CREATIVE : GameMode.SURVIVAL); + } sender.sendMessage(_("gameMode", _(player.getGameMode().toString().toLowerCase(Locale.ENGLISH)), player.getDisplayName())); } } |