From ea32cb9e12f5003b4952215db4a562ab3930d9ef Mon Sep 17 00:00:00 2001 From: GJ Date: Tue, 5 Feb 2013 08:23:03 -0500 Subject: [PATCH] These commands cannot work for online players, period. --- .../nossr50/commands/admin/McgodCommand.java | 30 +++++++------- .../commands/admin/McrefreshCommand.java | 40 +++++++++++-------- .../commands/player/McabilityCommand.java | 24 +++++++---- .../resources/locale/locale_en_US.properties | 1 + 4 files changed, 56 insertions(+), 39 deletions(-) diff --git a/src/main/java/com/gmail/nossr50/commands/admin/McgodCommand.java b/src/main/java/com/gmail/nossr50/commands/admin/McgodCommand.java index 62c32336b..c7f180d87 100644 --- a/src/main/java/com/gmail/nossr50/commands/admin/McgodCommand.java +++ b/src/main/java/com/gmail/nossr50/commands/admin/McgodCommand.java @@ -52,8 +52,6 @@ public class McgodCommand implements CommandExecutor { McMMOPlayer mcMMOPlayer = Users.getPlayer(args[0]); - // If the mcMMOPlayer doesn't exist, create a temporary profile and - // check if it's present in the database. If it's not, abort the process. if (mcMMOPlayer == null) { profile = new PlayerProfile(args[0], false); @@ -61,20 +59,24 @@ public class McgodCommand implements CommandExecutor { sender.sendMessage(LocaleLoader.getString("Commands.DoesNotExist")); return true; } + + sender.sendMessage(LocaleLoader.getString("Commands.Offline")); + return true; + } + + profile = mcMMOPlayer.getProfile(); + Player player = mcMMOPlayer.getPlayer(); + + if (!player.isOnline()) { + sender.sendMessage(LocaleLoader.getString("Commands.Offline")); + return true; + } + + if (profile.getGodMode()) { + player.sendMessage(LocaleLoader.getString("Commands.GodMode.Disabled")); } else { - profile = mcMMOPlayer.getProfile(); - Player player = mcMMOPlayer.getPlayer(); - - // Check if the player is online before we try to send them a message. - if (player.isOnline()) { - if (profile.getGodMode()) { - player.sendMessage(LocaleLoader.getString("Commands.GodMode.Disabled")); - } - else { - player.sendMessage(LocaleLoader.getString("Commands.GodMode.Enabled")); - } - } + player.sendMessage(LocaleLoader.getString("Commands.GodMode.Enabled")); } profile.toggleGodMode(); diff --git a/src/main/java/com/gmail/nossr50/commands/admin/McrefreshCommand.java b/src/main/java/com/gmail/nossr50/commands/admin/McrefreshCommand.java index 841ccb4a5..b01dcbb6c 100644 --- a/src/main/java/com/gmail/nossr50/commands/admin/McrefreshCommand.java +++ b/src/main/java/com/gmail/nossr50/commands/admin/McrefreshCommand.java @@ -28,8 +28,14 @@ public class McrefreshCommand implements CommandExecutor { } profile = Users.getPlayer(sender.getName()).getProfile(); + + profile.setRecentlyHurt(0); + profile.resetCooldowns(); + profile.resetToolPrepMode(); + profile.resetAbilityMode(); + sender.sendMessage(LocaleLoader.getString("Ability.Generic.Refresh")); - break; + return true; case 1: if (!Permissions.hasPermission(sender, "mcmmo.commands.mcrefresh.others")) { @@ -39,7 +45,6 @@ public class McrefreshCommand implements CommandExecutor { McMMOPlayer mcMMOPlayer = Users.getPlayer(args[0]); - // If the mcMMOPlayer doesn't exist, create a temporary profile and check if it's present in the database. If it's not, abort the process. if (mcMMOPlayer == null) { profile = new PlayerProfile(args[0], false); @@ -47,28 +52,29 @@ public class McrefreshCommand implements CommandExecutor { sender.sendMessage(LocaleLoader.getString("Commands.DoesNotExist")); return true; } - } - else { - profile = mcMMOPlayer.getProfile(); - Player player = mcMMOPlayer.getPlayer(); - // Check if the player is online before we try to send them a message. - if (player.isOnline()) { - player.sendMessage(LocaleLoader.getString("Ability.Generic.Refresh")); - } + sender.sendMessage(LocaleLoader.getString("Commands.Offline")); + return true; + } + profile = mcMMOPlayer.getProfile(); + Player player = mcMMOPlayer.getPlayer(); + + if (!player.isOnline()) { + sender.sendMessage(LocaleLoader.getString("Commands.Offline")); + return true; } + profile.setRecentlyHurt(0); + profile.resetCooldowns(); + profile.resetToolPrepMode(); + profile.resetAbilityMode(); + + player.sendMessage(LocaleLoader.getString("Ability.Generic.Refresh")); sender.sendMessage(LocaleLoader.getString("Commands.mcrefresh.Success", args[0])); - break; + return true; default: return false; } - - profile.setRecentlyHurt(0); - profile.resetCooldowns(); - profile.resetToolPrepMode(); - profile.resetAbilityMode(); - return true; } } diff --git a/src/main/java/com/gmail/nossr50/commands/player/McabilityCommand.java b/src/main/java/com/gmail/nossr50/commands/player/McabilityCommand.java index b4b73fb08..7555525bd 100644 --- a/src/main/java/com/gmail/nossr50/commands/player/McabilityCommand.java +++ b/src/main/java/com/gmail/nossr50/commands/player/McabilityCommand.java @@ -50,16 +50,24 @@ public class McabilityCommand implements CommandExecutor { sender.sendMessage(LocaleLoader.getString("Commands.DoesNotExist")); return true; } + + sender.sendMessage(LocaleLoader.getString("Commands.Offline")); + return true; + } + + Player player = mcMMOPlayer.getPlayer(); + profile = mcMMOPlayer.getProfile(); + + if (!player.isOnline()) { + sender.sendMessage(LocaleLoader.getString("Commands.Offline")); + return true; + } + + if (profile.getAbilityUse()) { + player.sendMessage(LocaleLoader.getString("Commands.Ability.Off")); } else { - profile = mcMMOPlayer.getProfile(); - - if (profile.getAbilityUse()) { - mcMMOPlayer.getPlayer().sendMessage(LocaleLoader.getString("Commands.Ability.Off")); - } - else { - mcMMOPlayer.getPlayer().sendMessage(LocaleLoader.getString("Commands.Ability.On")); - } + player.sendMessage(LocaleLoader.getString("Commands.Ability.On")); } profile.toggleAbilityUse(); diff --git a/src/main/resources/locale/locale_en_US.properties b/src/main/resources/locale/locale_en_US.properties index eab6abbdf..c4fcaa5ff 100644 --- a/src/main/resources/locale/locale_en_US.properties +++ b/src/main/resources/locale/locale_en_US.properties @@ -437,6 +437,7 @@ Commands.mmoupdate.Start=[[GRAY]]Starting conversion... Commands.mmoupdate.Finish=[[GREEN]]Conversion finished! Commands.ModDescription=[[RED]]- Read brief mod description Commands.NoConsole=This command does not support console usage. +Commands.Offline=[[RED]]This command does not work for offline players. Commands.Other=[[GREEN]]--OTHER COMMANDS-- Commands.Party.Header=[[RED]]-----[][[GREEN]]PARTY[[RED]][]----- Commands.Party.Status=[[DARK_GRAY]]NAME: [[WHITE]]{0} {1}