Aust1n46 93a405ccbd Merge remote-tracking branch 'origin/localization'
Conflicts:
	MineverseChat/mineverse/Aust1n46/chat/MineverseChat.java
	MineverseChat/mineverse/Aust1n46/chat/command/chat/Channel.java
	MineverseChat/mineverse/Aust1n46/chat/command/chat/Chlist.java
	MineverseChat/mineverse/Aust1n46/chat/command/chat/Kickchannel.java
	MineverseChat/mineverse/Aust1n46/chat/command/chat/Kickchannelall.java
	MineverseChat/mineverse/Aust1n46/chat/command/chat/Leave.java
	MineverseChat/mineverse/Aust1n46/chat/command/chat/Removemessage.java
	MineverseChat/mineverse/Aust1n46/chat/command/chat/Setchannel.java
	MineverseChat/mineverse/Aust1n46/chat/command/chat/VentureChatGui.java
	MineverseChat/mineverse/Aust1n46/chat/command/message/Ignore.java
	MineverseChat/mineverse/Aust1n46/chat/listeners/ChatListener.java
	MineverseChat/mineverse/Aust1n46/chat/listeners/CommandListener.java
2020-03-20 06:53:02 -04:00

85 lines
3.4 KiB
Java

package mineverse.Aust1n46.chat.command.chat;
import org.bukkit.ChatColor;
import org.bukkit.command.CommandSender;
import mineverse.Aust1n46.chat.MineverseChat;
import mineverse.Aust1n46.chat.api.MineverseChatAPI;
import mineverse.Aust1n46.chat.api.MineverseChatPlayer;
import mineverse.Aust1n46.chat.channel.ChatChannel;
import mineverse.Aust1n46.chat.command.MineverseCommand;
import mineverse.Aust1n46.chat.localization.LocalizedMessage;
public class Setchannel extends MineverseCommand {
public Setchannel(String name) {
super(name);
}
@Override
public void execute(CommandSender sender, String command, String[] args) {
if(sender.hasPermission("venturechat.setchannel")) {
if(args.length < 2) {
sender.sendMessage(LocalizedMessage.COMMAND_INVALID_ARGUMENTS.toString()
.replace("{command}", "/setchannel")
.replace("{args}", "[player] [channel]"));
return;
}
MineverseChatPlayer player = MineverseChatAPI.getMineverseChatPlayer(args[0]);
if(player == null) {
sender.sendMessage(LocalizedMessage.PLAYER_OFFLINE.toString()
.replace("{args}", args[0]));
return;
}
ChatChannel channel = ChatChannel.getChannel(args[1]);
if(channel == null) {
sender.sendMessage(LocalizedMessage.INVALID_CHANNEL.toString()
.replace("{args}", args[1]));
return;
}
if(channel.hasPermission()) {
if(!player.isOnline()) {
sender.sendMessage(LocalizedMessage.PLAYER_OFFLINE_NO_PERMISSIONS_CHECK.toString());
return;
}
if(!player.getPlayer().hasPermission(channel.getPermission())) {
player.removeListening(channel.getName());
sender.sendMessage(LocalizedMessage.SET_CHANNEL_PLAYER_CHANNEL_NO_PERMISSION.toString()
.replace("{player}", player.getName())
.replace("{channel_color}", ChatColor.valueOf(channel.getColor().toUpperCase()) + "")
.replace("{channel_name}", channel.getName()));
return;
}
}
player.addListening(channel.getName());
player.setCurrentChannel(channel);
sender.sendMessage(LocalizedMessage.SET_CHANNEL_SENDER.toString()
.replace("{player}", player.getName())
.replace("{channel_color}", ChatColor.valueOf(channel.getColor().toUpperCase()) + "")
.replace("{channel_name}", channel.getName()));
if(player.hasConversation()) {
for(MineverseChatPlayer p : MineverseChat.onlinePlayers) {
if(p.isSpy()) {
p.getPlayer().sendMessage(LocalizedMessage.EXIT_PRIVATE_CONVERSATION_SPY.toString()
.replace("{player_sender}", player.getName())
.replace("{player_receiver}", MineverseChatAPI.getMineverseChatPlayer(player.getConversation()).getName()));
}
}
if(player.isOnline())
player.getPlayer().sendMessage(LocalizedMessage.EXIT_PRIVATE_CONVERSATION.toString()
.replace("{player_receiver}", MineverseChatAPI.getMineverseChatPlayer(player.getConversation()).getName()));
else
player.setModified(true);
player.setConversation(null);
}
if(player.isOnline())
player.getPlayer().sendMessage(LocalizedMessage.SET_CHANNEL.toString()
.replace("{channel_color}", ChatColor.valueOf(channel.getColor().toUpperCase()) + "")
.replace("{channel_name}", channel.getName()));
else
player.setModified(true);
return;
}
sender.sendMessage(LocalizedMessage.COMMAND_NO_PERMISSION.toString());
}
}