mirror of
https://github.com/Aust1n46/VentureChat.git
synced 2025-05-23 10:39:05 +00:00
Created custom tab executor for message command.
This commit is contained in:
parent
7e2b6cb83e
commit
03ff3ceaf7
@ -76,7 +76,7 @@ import mineverse.Aust1n46.chat.command.chat.Setchannelall;
|
|||||||
import mineverse.Aust1n46.chat.command.chat.VentureChatGui;
|
import mineverse.Aust1n46.chat.command.chat.VentureChatGui;
|
||||||
import mineverse.Aust1n46.chat.command.chat.Venturechat;
|
import mineverse.Aust1n46.chat.command.chat.Venturechat;
|
||||||
import mineverse.Aust1n46.chat.command.message.Ignore;
|
import mineverse.Aust1n46.chat.command.message.Ignore;
|
||||||
import mineverse.Aust1n46.chat.command.message.Message;
|
import mineverse.Aust1n46.chat.command.message.MessageCommandExecutor;
|
||||||
import mineverse.Aust1n46.chat.command.message.MessageToggle;
|
import mineverse.Aust1n46.chat.command.message.MessageToggle;
|
||||||
import mineverse.Aust1n46.chat.command.message.Notifications;
|
import mineverse.Aust1n46.chat.command.message.Notifications;
|
||||||
import mineverse.Aust1n46.chat.command.message.Reply;
|
import mineverse.Aust1n46.chat.command.message.Reply;
|
||||||
@ -314,9 +314,6 @@ public class MineverseChat extends JavaPlugin implements PluginMessageListener {
|
|||||||
commands.put("leave", new Leave("leave"));
|
commands.put("leave", new Leave("leave"));
|
||||||
commands.put("listen", new Listen("listen"));
|
commands.put("listen", new Listen("listen"));
|
||||||
commands.put("me", new Me("me"));
|
commands.put("me", new Me("me"));
|
||||||
commands.put("message", new Message("message"));
|
|
||||||
commands.put("tell", new Message("tell"));
|
|
||||||
commands.put("whisper", new Message("whisper"));
|
|
||||||
commands.put("venturechat", new Venturechat("venturechat"));
|
commands.put("venturechat", new Venturechat("venturechat"));
|
||||||
commands.put("mute", new Mute("mute"));
|
commands.put("mute", new Mute("mute"));
|
||||||
commands.put("muteall", new Muteall("muteall"));
|
commands.put("muteall", new Muteall("muteall"));
|
||||||
@ -339,6 +336,8 @@ public class MineverseChat extends JavaPlugin implements PluginMessageListener {
|
|||||||
this.getCommand(command).setExecutor(commandExecutor);
|
this.getCommand(command).setExecutor(commandExecutor);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
this.getCommand("message").setExecutor(new MessageCommandExecutor());
|
||||||
|
|
||||||
channelListener = new Channel();
|
channelListener = new Channel();
|
||||||
signListener = new SignListener();
|
signListener = new SignListener();
|
||||||
chatListener = new ChatListener();
|
chatListener = new ChatListener();
|
||||||
|
@ -2,46 +2,45 @@ package mineverse.Aust1n46.chat.command.message;
|
|||||||
|
|
||||||
import java.io.ByteArrayOutputStream;
|
import java.io.ByteArrayOutputStream;
|
||||||
import java.io.DataOutputStream;
|
import java.io.DataOutputStream;
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
import org.bukkit.ChatColor;
|
import org.bukkit.ChatColor;
|
||||||
import org.bukkit.Sound;
|
import org.bukkit.Sound;
|
||||||
|
import org.bukkit.command.Command;
|
||||||
import org.bukkit.command.CommandSender;
|
import org.bukkit.command.CommandSender;
|
||||||
|
import org.bukkit.command.TabExecutor;
|
||||||
import org.bukkit.entity.Player;
|
import org.bukkit.entity.Player;
|
||||||
|
|
||||||
import me.clip.placeholderapi.PlaceholderAPI;
|
import me.clip.placeholderapi.PlaceholderAPI;
|
||||||
import mineverse.Aust1n46.chat.MineverseChat;
|
import mineverse.Aust1n46.chat.MineverseChat;
|
||||||
import mineverse.Aust1n46.chat.api.MineverseChatAPI;
|
import mineverse.Aust1n46.chat.api.MineverseChatAPI;
|
||||||
import mineverse.Aust1n46.chat.api.MineverseChatPlayer;
|
import mineverse.Aust1n46.chat.api.MineverseChatPlayer;
|
||||||
import mineverse.Aust1n46.chat.command.MineverseCommand;
|
|
||||||
import mineverse.Aust1n46.chat.localization.LocalizedMessage;
|
import mineverse.Aust1n46.chat.localization.LocalizedMessage;
|
||||||
import mineverse.Aust1n46.chat.utilities.Format;
|
import mineverse.Aust1n46.chat.utilities.Format;
|
||||||
import mineverse.Aust1n46.chat.versions.VersionHandler;
|
import mineverse.Aust1n46.chat.versions.VersionHandler;
|
||||||
|
|
||||||
public class Message extends MineverseCommand {
|
public class MessageCommandExecutor implements TabExecutor {
|
||||||
private MineverseChat plugin = MineverseChat.getInstance();
|
private MineverseChat plugin = MineverseChat.getInstance();
|
||||||
|
|
||||||
public Message(String name) {
|
|
||||||
super(name);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void execute(CommandSender sender, String command, String[] args) {
|
public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
|
||||||
if(!(sender instanceof Player)) {
|
if(!(sender instanceof Player)) {
|
||||||
plugin.getServer().getConsoleSender().sendMessage(LocalizedMessage.COMMAND_MUST_BE_RUN_BY_PLAYER.toString());
|
plugin.getServer().getConsoleSender().sendMessage(LocalizedMessage.COMMAND_MUST_BE_RUN_BY_PLAYER.toString());
|
||||||
return;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
MineverseChatPlayer mcp = MineverseChatAPI.getMineverseChatPlayer((Player) sender);
|
MineverseChatPlayer mcp = MineverseChatAPI.getMineverseChatPlayer((Player) sender);
|
||||||
if(args.length == 0) {
|
if(args.length == 0) {
|
||||||
mcp.getPlayer().sendMessage(LocalizedMessage.COMMAND_INVALID_ARGUMENTS.toString()
|
mcp.getPlayer().sendMessage(LocalizedMessage.COMMAND_INVALID_ARGUMENTS.toString()
|
||||||
.replace("{command}", "/" + command)
|
.replace("{command}", "/" + command.getName())
|
||||||
.replace("{args}", "[player] [message]"));
|
.replace("{args}", "[player] [message]"));
|
||||||
return;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
if(plugin.getConfig().getBoolean("bungeecordmessaging", true)) {
|
if(plugin.getConfig().getBoolean("bungeecordmessaging", true)) {
|
||||||
sendBungeeCordMessage(mcp, command, args);
|
sendBungeeCordMessage(mcp, command.getName(), args);
|
||||||
return;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
MineverseChatPlayer player = MineverseChatAPI.getMineverseChatPlayer(args[0]);
|
MineverseChatPlayer player = MineverseChatAPI.getMineverseChatPlayer(args[0]);
|
||||||
@ -54,22 +53,22 @@ public class Message extends MineverseCommand {
|
|||||||
if(player == null || !player.isOnline()) {
|
if(player == null || !player.isOnline()) {
|
||||||
mcp.getPlayer().sendMessage(LocalizedMessage.PLAYER_OFFLINE.toString()
|
mcp.getPlayer().sendMessage(LocalizedMessage.PLAYER_OFFLINE.toString()
|
||||||
.replace("{args}", args[0]));
|
.replace("{args}", args[0]));
|
||||||
return;
|
return true;
|
||||||
}
|
}
|
||||||
if(!mcp.getPlayer().canSee(player.getPlayer())) {
|
if(!mcp.getPlayer().canSee(player.getPlayer())) {
|
||||||
mcp.getPlayer().sendMessage(LocalizedMessage.PLAYER_OFFLINE.toString()
|
mcp.getPlayer().sendMessage(LocalizedMessage.PLAYER_OFFLINE.toString()
|
||||||
.replace("{args}", args[0]));
|
.replace("{args}", args[0]));
|
||||||
return;
|
return true;
|
||||||
}
|
}
|
||||||
if(player.getIgnores().contains(mcp.getUUID())) {
|
if(player.getIgnores().contains(mcp.getUUID())) {
|
||||||
mcp.getPlayer().sendMessage(LocalizedMessage.IGNORING_MESSAGE.toString()
|
mcp.getPlayer().sendMessage(LocalizedMessage.IGNORING_MESSAGE.toString()
|
||||||
.replace("{player}", player.getName()));
|
.replace("{player}", player.getName()));
|
||||||
return;
|
return true;
|
||||||
}
|
}
|
||||||
if(!player.getMessageToggle()) {
|
if(!player.getMessageToggle()) {
|
||||||
mcp.getPlayer().sendMessage(LocalizedMessage.BLOCKING_MESSAGE.toString()
|
mcp.getPlayer().sendMessage(LocalizedMessage.BLOCKING_MESSAGE.toString()
|
||||||
.replace("{player}", player.getName()));
|
.replace("{player}", player.getName()));
|
||||||
return;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
if(args.length >= 2) {
|
if(args.length >= 2) {
|
||||||
@ -161,7 +160,17 @@ public class Message extends MineverseCommand {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return;
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public List<String> onTabComplete(CommandSender sender, Command command, String label, String[] args) {
|
||||||
|
List<String> completions = new ArrayList<>();
|
||||||
|
|
||||||
|
for(Player p : plugin.getServer().getOnlinePlayers()) {
|
||||||
|
completions.add(p.getName());
|
||||||
|
}
|
||||||
|
return completions;
|
||||||
}
|
}
|
||||||
|
|
||||||
private void sendBungeeCordMessage(MineverseChatPlayer mcp, String command, String[] args) {
|
private void sendBungeeCordMessage(MineverseChatPlayer mcp, String command, String[] args) {
|
@ -18,9 +18,9 @@ commands:
|
|||||||
aliases: [ump,vunmute]
|
aliases: [ump,vunmute]
|
||||||
description: Unmutes player in a channel so they can talk again.
|
description: Unmutes player in a channel so they can talk again.
|
||||||
permission-message: You don't have <permission>
|
permission-message: You don't have <permission>
|
||||||
tell:
|
message:
|
||||||
usage: /tell [playername] [msg]
|
usage: /message [playername] [msg]
|
||||||
aliases: [vtell]
|
aliases: [vmessage,msg,pm,tell,vtell,whisper,w,vwhisper]
|
||||||
description: Send a message to a player
|
description: Send a message to a player
|
||||||
permission-message: You don't have <permission>
|
permission-message: You don't have <permission>
|
||||||
ignore:
|
ignore:
|
||||||
@ -28,11 +28,6 @@ commands:
|
|||||||
aliases: [vignore]
|
aliases: [vignore]
|
||||||
description: This allows you to prevent a player from sending you a tell /ignore list to see who you have ignored
|
description: This allows you to prevent a player from sending you a tell /ignore list to see who you have ignored
|
||||||
permission-message: You don't have <permission>
|
permission-message: You don't have <permission>
|
||||||
whisper:
|
|
||||||
usage: /whisper [playername] [msg]
|
|
||||||
aliases: [w,vwhisper]
|
|
||||||
description: Send a message to a player
|
|
||||||
permission-message: You don't have <permission>
|
|
||||||
channel:
|
channel:
|
||||||
usage: /channel [channelname]
|
usage: /channel [channelname]
|
||||||
aliases: [ch,vchannel]
|
aliases: [ch,vchannel]
|
||||||
@ -68,10 +63,6 @@ commands:
|
|||||||
aliases: [kc,vkickchannel]
|
aliases: [kc,vkickchannel]
|
||||||
description: Kicks a player out of a channel
|
description: Kicks a player out of a channel
|
||||||
permission-message: You don't have <permission>
|
permission-message: You don't have <permission>
|
||||||
message:
|
|
||||||
usage: /message [playername] [msg]
|
|
||||||
aliases: [msg,pm,vmessage]
|
|
||||||
description: Send a message to a player
|
|
||||||
muteall:
|
muteall:
|
||||||
usage: /muteall [playername]
|
usage: /muteall [playername]
|
||||||
aliases: [mpa,vmuteall]
|
aliases: [mpa,vmuteall]
|
||||||
|
Loading…
x
Reference in New Issue
Block a user