Changed parameter order for /mute and /unmute.

For better tab completion control.
This commit is contained in:
Aust1n46 2021-03-21 20:33:28 -05:00
parent b91e54bbe4
commit 264ddf8c2e
3 changed files with 31 additions and 24 deletions

View File

@ -938,7 +938,8 @@ public class MineverseChat extends JavaPlugin implements PluginMessageListener {
return; return;
} }
if(time > 0) { if(time > 0) {
playerToMuteMCP.addMute(chatChannelObj.getName(), time); long datetime = System.currentTimeMillis();
playerToMuteMCP.addMute(chatChannelObj.getName(), datetime + time);
String timeString = Format.parseTimeStringFromMillis(time); String timeString = Format.parseTimeStringFromMillis(time);
playerToMuteMCP.getPlayer() playerToMuteMCP.getPlayer()
.sendMessage(LocalizedMessage.MUTE_PLAYER_PLAYER_TIME.toString() .sendMessage(LocalizedMessage.MUTE_PLAYER_PLAYER_TIME.toString()

View File

@ -33,11 +33,11 @@ public class Mute extends MineverseCommand {
if (sender.hasPermission("venturechat.mute")) { if (sender.hasPermission("venturechat.mute")) {
if (args.length < 2) { if (args.length < 2) {
sender.sendMessage(LocalizedMessage.COMMAND_INVALID_ARGUMENTS.toString().replace("{command}", "/mute") sender.sendMessage(LocalizedMessage.COMMAND_INVALID_ARGUMENTS.toString().replace("{command}", "/mute")
.replace("{args}", "[player] [channel] {time}")); .replace("{args}", "[channel] [player] {time}"));
return; return;
} }
if (ChatChannel.isChannel(args[1])) { if (ChatChannel.isChannel(args[0])) {
ChatChannel channel = ChatChannel.getChannel(args[1]); ChatChannel channel = ChatChannel.getChannel(args[0]);
if (channel.isMutable()) { if (channel.isMutable()) {
long datetime = System.currentTimeMillis(); long datetime = System.currentTimeMillis();
long time = 0; long time = 0;
@ -56,15 +56,15 @@ public class Mute extends MineverseCommand {
} }
if(channel.getBungee()) { if(channel.getBungee()) {
if(args.length > 2) { if(args.length > 2) {
sendBungeeCordMute(sender, args[0], channel, datetime + time); sendBungeeCordMute(sender, args[1], channel, time);
return; return;
} }
sendBungeeCordMute(sender, args[0], channel, 0); sendBungeeCordMute(sender, args[1], channel, 0);
return; return;
} }
MineverseChatPlayer playerToMute = MineverseChatAPI.getMineverseChatPlayer(args[0]); MineverseChatPlayer playerToMute = MineverseChatAPI.getMineverseChatPlayer(args[1]);
if (playerToMute == null || (!playerToMute.isOnline() && !sender.hasPermission("venturechat.mute.offline"))) { if (playerToMute == null || (!playerToMute.isOnline() && !sender.hasPermission("venturechat.mute.offline"))) {
sender.sendMessage(LocalizedMessage.PLAYER_OFFLINE.toString().replace("{args}", args[0])); sender.sendMessage(LocalizedMessage.PLAYER_OFFLINE.toString().replace("{args}", args[1]));
return; return;
} }
if (playerToMute.isMuted(channel.getName())) { if (playerToMute.isMuted(channel.getName())) {
@ -113,7 +113,7 @@ public class Mute extends MineverseCommand {
.replace("{channel_name}", channel.getName())); .replace("{channel_name}", channel.getName()));
return; return;
} }
sender.sendMessage(LocalizedMessage.INVALID_CHANNEL.toString().replace("{args}", args[1])); sender.sendMessage(LocalizedMessage.INVALID_CHANNEL.toString().replace("{args}", args[0]));
return; return;
} }
sender.sendMessage(LocalizedMessage.COMMAND_NO_PERMISSION.toString()); sender.sendMessage(LocalizedMessage.COMMAND_NO_PERMISSION.toString());
@ -123,15 +123,18 @@ public class Mute extends MineverseCommand {
public List<String> onTabComplete(CommandSender sender, Command command, String label, String[] args) { public List<String> onTabComplete(CommandSender sender, Command command, String label, String[] args) {
List<String> completions = new ArrayList<>(); List<String> completions = new ArrayList<>();
if(args.length == 1) { if(args.length == 1) {
StringUtil.copyPartialMatches(args[0], MineverseChat.networkPlayerNames, completions); StringUtil.copyPartialMatches(args[0], ChatChannel.getChatChannels().stream().map(ChatChannel::getName).collect(Collectors.toList()), completions);
Collections.sort(completions); Collections.sort(completions);
return completions; return completions;
} }
if(args.length == 2) { if(args.length == 2) {
StringUtil.copyPartialMatches(args[1], ChatChannel.getChatChannels().stream().map(ChatChannel::getName).collect(Collectors.toList()), completions); if(ChatChannel.isChannel(args[0]) && ChatChannel.getChannel(args[0]).getBungee()) {
StringUtil.copyPartialMatches(args[1], MineverseChat.networkPlayerNames, completions);
Collections.sort(completions); Collections.sort(completions);
return completions; return completions;
} }
return null;
}
if(args.length == 3) { if(args.length == 3) {
StringUtil.copyPartialMatches(args[2], COMMON_MUTE_TIMES, completions); StringUtil.copyPartialMatches(args[2], COMMON_MUTE_TIMES, completions);
Collections.sort(completions); Collections.sort(completions);

View File

@ -30,18 +30,18 @@ public class Unmute extends MineverseCommand {
if (sender.hasPermission("venturechat.mute")) { if (sender.hasPermission("venturechat.mute")) {
if (args.length < 2) { if (args.length < 2) {
sender.sendMessage(LocalizedMessage.COMMAND_INVALID_ARGUMENTS.toString().replace("{command}", "/unmute") sender.sendMessage(LocalizedMessage.COMMAND_INVALID_ARGUMENTS.toString().replace("{command}", "/unmute")
.replace("{args}", "[player] [channel]")); .replace("{args}", "[channel] [player]"));
return; return;
} }
if (ChatChannel.isChannel(args[1])) { if (ChatChannel.isChannel(args[0])) {
ChatChannel channel = ChatChannel.getChannel(args[1]); ChatChannel channel = ChatChannel.getChannel(args[0]);
if(channel.getBungee()) { if(channel.getBungee()) {
sendBungeeCordUnmute(sender, args[0], channel); sendBungeeCordUnmute(sender, args[1], channel);
return; return;
} }
MineverseChatPlayer player = MineverseChatAPI.getMineverseChatPlayer(args[0]); MineverseChatPlayer player = MineverseChatAPI.getMineverseChatPlayer(args[1]);
if (player == null || (!player.isOnline() && !sender.hasPermission("venturechat.mute.offline"))) { if (player == null || (!player.isOnline() && !sender.hasPermission("venturechat.mute.offline"))) {
sender.sendMessage(LocalizedMessage.PLAYER_OFFLINE.toString().replace("{args}", args[0])); sender.sendMessage(LocalizedMessage.PLAYER_OFFLINE.toString().replace("{args}", args[1]));
return; return;
} }
if (!player.isMuted(channel.getName())) { if (!player.isMuted(channel.getName())) {
@ -64,7 +64,7 @@ public class Unmute extends MineverseCommand {
} }
return; return;
} }
sender.sendMessage(LocalizedMessage.INVALID_CHANNEL.toString().replace("{args}", args[1])); sender.sendMessage(LocalizedMessage.INVALID_CHANNEL.toString().replace("{args}", args[0]));
return; return;
} else { } else {
sender.sendMessage(LocalizedMessage.COMMAND_NO_PERMISSION.toString()); sender.sendMessage(LocalizedMessage.COMMAND_NO_PERMISSION.toString());
@ -76,15 +76,18 @@ public class Unmute extends MineverseCommand {
public List<String> onTabComplete(CommandSender sender, Command command, String label, String[] args) { public List<String> onTabComplete(CommandSender sender, Command command, String label, String[] args) {
List<String> completions = new ArrayList<>(); List<String> completions = new ArrayList<>();
if(args.length == 1) { if(args.length == 1) {
StringUtil.copyPartialMatches(args[0], MineverseChat.networkPlayerNames, completions); StringUtil.copyPartialMatches(args[0], ChatChannel.getChatChannels().stream().map(ChatChannel::getName).collect(Collectors.toList()), completions);
Collections.sort(completions); Collections.sort(completions);
return completions; return completions;
} }
if(args.length == 2) { if(args.length == 2) {
StringUtil.copyPartialMatches(args[1], ChatChannel.getChatChannels().stream().map(ChatChannel::getName).collect(Collectors.toList()), completions); if(ChatChannel.isChannel(args[0]) && ChatChannel.getChannel(args[0]).getBungee()) {
StringUtil.copyPartialMatches(args[1], MineverseChat.networkPlayerNames, completions);
Collections.sort(completions); Collections.sort(completions);
return completions; return completions;
} }
return null;
}
return Collections.emptyList(); return Collections.emptyList();
} }