summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKHobbits <rob@khobbits.co.uk>2012-04-02 02:31:07 +0100
committerKHobbits <rob@khobbits.co.uk>2012-04-02 02:31:31 +0100
commitf0f6747082b9fa372180546a8187c1eac4345e88 (patch)
tree2e1a1441b81d06bb211e2fff24aa0c1415d55e70
parentde081c8f0ec09a96680a54515b17233b9e086bc1 (diff)
downloadEssentials-f0f6747082b9fa372180546a8187c1eac4345e88.tar
Essentials-f0f6747082b9fa372180546a8187c1eac4345e88.tar.gz
Essentials-f0f6747082b9fa372180546a8187c1eac4345e88.tar.lz
Essentials-f0f6747082b9fa372180546a8187c1eac4345e88.tar.xz
Essentials-f0f6747082b9fa372180546a8187c1eac4345e88.zip
Optional second param to /gm to force gamemode on other players.
-rw-r--r--Essentials/src/com/earth2me/essentials/commands/Commandgamemode.java24
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()));
}
}