diff --git a/src/mineverse/Aust1n46/chat/command/chat/Kickchannel.java b/src/mineverse/Aust1n46/chat/command/chat/Kickchannel.java index 0e0abdf..573a539 100644 --- a/src/mineverse/Aust1n46/chat/command/chat/Kickchannel.java +++ b/src/mineverse/Aust1n46/chat/command/chat/Kickchannel.java @@ -3,6 +3,7 @@ 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; @@ -42,10 +43,16 @@ public class Kickchannel implements VentureCommand { .replace("{channel_color}", channel.getColor() + "") .replace("{channel_name}", channel.getName())); } - else + else { player.setModified(true); + } + boolean isThereABungeeChannel = channel.getBungee(); if(player.getListening().size() == 0) { + player.addListening(ChatChannel.getDefaultChannel().getName()); player.setCurrentChannel(ChatChannel.getDefaultChannel()); + if(ChatChannel.getDefaultChannel().getBungee()) { + isThereABungeeChannel = true; + } if(player.isOnline()) { player.getPlayer().sendMessage(LocalizedMessage.MUST_LISTEN_ONE_CHANNEL.toString()); player.getPlayer().sendMessage(LocalizedMessage.SET_CHANNEL.toString() @@ -55,6 +62,9 @@ public class Kickchannel implements VentureCommand { else player.setModified(true); } + if(isThereABungeeChannel) { + MineverseChat.synchronize(player, true); + } return; } sender.sendMessage(LocalizedMessage.COMMAND_NO_PERMISSION.toString()); diff --git a/src/mineverse/Aust1n46/chat/command/chat/Kickchannelall.java b/src/mineverse/Aust1n46/chat/command/chat/Kickchannelall.java index 1591649..5433664 100644 --- a/src/mineverse/Aust1n46/chat/command/chat/Kickchannelall.java +++ b/src/mineverse/Aust1n46/chat/command/chat/Kickchannelall.java @@ -3,6 +3,7 @@ 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; @@ -26,11 +27,26 @@ public class Kickchannelall implements VentureCommand { .replace("{args}", args[0])); return; } + boolean isThereABungeeChannel = false; + for(String channel : player.getListening()) { + if(ChatChannel.isChannel(channel)) { + ChatChannel chatChannelObj = ChatChannel.getChannel(channel); + if(chatChannelObj.getBungee()) { + isThereABungeeChannel = true; + } + } + } player.clearListening(); sender.sendMessage(LocalizedMessage.KICK_CHANNEL_ALL_SENDER.toString() .replace("{player}", player.getName())); player.addListening(ChatChannel.getDefaultChannel().getName()); - player.setCurrentChannel(ChatChannel.getDefaultChannel()); + player.setCurrentChannel(ChatChannel.getDefaultChannel()); + if(ChatChannel.getDefaultChannel().getBungee()) { + isThereABungeeChannel = true; + } + if(isThereABungeeChannel) { + MineverseChat.synchronize(player, true); + } if(player.isOnline()) { player.getPlayer().sendMessage(LocalizedMessage.KICK_CHANNEL_ALL_PLAYER.toString()); player.getPlayer().sendMessage(LocalizedMessage.MUST_LISTEN_ONE_CHANNEL.toString()); @@ -38,8 +54,9 @@ public class Kickchannelall implements VentureCommand { .replace("{channel_color}", ChatColor.valueOf(ChatChannel.getDefaultColor().toUpperCase()) + "") .replace("{channel_name}", ChatChannel.getDefaultChannel().getName())); } - else + else { player.setModified(true); + } return; } sender.sendMessage(LocalizedMessage.COMMAND_NO_PERMISSION.toString()); diff --git a/src/mineverse/Aust1n46/chat/command/chat/Leave.java b/src/mineverse/Aust1n46/chat/command/chat/Leave.java index 17f36e1..e3300af 100644 --- a/src/mineverse/Aust1n46/chat/command/chat/Leave.java +++ b/src/mineverse/Aust1n46/chat/command/chat/Leave.java @@ -32,15 +32,19 @@ public class Leave implements VentureCommand { mcp.getPlayer().sendMessage(LocalizedMessage.LEAVE_CHANNEL.toString() .replace("{channel_color}", channel.getColor() + "") .replace("{channel_name}", channel.getName())); + boolean isThereABungeeChannel = channel.getBungee(); if(mcp.getListening().size() == 0) { mcp.addListening(ChatChannel.getDefaultChannel().getName()); mcp.setCurrentChannel(ChatChannel.getDefaultChannel()); + if(ChatChannel.getDefaultChannel().getBungee()) { + isThereABungeeChannel = true; + } mcp.getPlayer().sendMessage(LocalizedMessage.MUST_LISTEN_ONE_CHANNEL.toString()); mcp.getPlayer().sendMessage(LocalizedMessage.SET_CHANNEL.toString() .replace("{channel_color}", ChatColor.valueOf(ChatChannel.getDefaultColor().toUpperCase()) + "") .replace("{channel_name}", ChatChannel.getDefaultChannel().getName())); } - if(channel.getBungee()) { + if(isThereABungeeChannel) { MineverseChat.synchronize(mcp, true); } return; diff --git a/src/mineverse/Aust1n46/chat/command/chat/Listen.java b/src/mineverse/Aust1n46/chat/command/chat/Listen.java index fd6e50a..c55ef13 100644 --- a/src/mineverse/Aust1n46/chat/command/chat/Listen.java +++ b/src/mineverse/Aust1n46/chat/command/chat/Listen.java @@ -4,6 +4,7 @@ import org.bukkit.Bukkit; import org.bukkit.command.CommandSender; import org.bukkit.entity.Player; +import mineverse.Aust1n46.chat.MineverseChat; import mineverse.Aust1n46.chat.api.MineverseChatAPI; import mineverse.Aust1n46.chat.api.MineverseChatPlayer; import mineverse.Aust1n46.chat.channel.ChatChannel; @@ -37,6 +38,9 @@ public class Listen implements VentureCommand { mcp.getPlayer().sendMessage(LocalizedMessage.LISTEN_CHANNEL.toString() .replace("{channel_color}", channel.getColor() + "") .replace("{channel_name}", channel.getName())); + if(channel.getBungee()) { + MineverseChat.synchronize(mcp, true); + } return; } mcp.getPlayer().sendMessage(LocalizedMessage.COMMAND_INVALID_ARGUMENTS.toString() diff --git a/src/mineverse/Aust1n46/chat/command/chat/Setchannel.java b/src/mineverse/Aust1n46/chat/command/chat/Setchannel.java index 8490239..5115532 100644 --- a/src/mineverse/Aust1n46/chat/command/chat/Setchannel.java +++ b/src/mineverse/Aust1n46/chat/command/chat/Setchannel.java @@ -2,6 +2,7 @@ package mineverse.Aust1n46.chat.command.chat; 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; @@ -70,8 +71,12 @@ public class Setchannel implements VentureCommand { player.getPlayer().sendMessage(LocalizedMessage.SET_CHANNEL.toString() .replace("{channel_color}", channel.getColor() + "") .replace("{channel_name}", channel.getName())); - else + else { player.setModified(true); + } + if(channel.getBungee()) { + MineverseChat.synchronize(player, true); + } return; } sender.sendMessage(LocalizedMessage.COMMAND_NO_PERMISSION.toString()); diff --git a/src/mineverse/Aust1n46/chat/command/chat/Setchannelall.java b/src/mineverse/Aust1n46/chat/command/chat/Setchannelall.java index 415d879..fdb8392 100644 --- a/src/mineverse/Aust1n46/chat/command/chat/Setchannelall.java +++ b/src/mineverse/Aust1n46/chat/command/chat/Setchannelall.java @@ -2,6 +2,7 @@ package mineverse.Aust1n46.chat.command.chat; 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; @@ -25,6 +26,7 @@ public class Setchannelall implements VentureCommand { .replace("{args}", args[0])); return; } + boolean isThereABungeeChannel = false; for(ChatChannel channel : ChatChannel.getChatChannels()) { if(channel.hasPermission()) { if(!player.isOnline()) { @@ -41,6 +43,9 @@ public class Setchannelall implements VentureCommand { else { player.addListening(channel.getName()); } + if(channel.getBungee()) { + isThereABungeeChannel = true; + } } sender.sendMessage(LocalizedMessage.SET_CHANNEL_ALL_SENDER.toString() .replace("{player}", player.getName())); @@ -48,6 +53,9 @@ public class Setchannelall implements VentureCommand { player.getPlayer().sendMessage(LocalizedMessage.SET_CHANNEL_ALL_PLAYER.toString()); else player.setModified(true); + if(isThereABungeeChannel) { + MineverseChat.synchronize(player, true); + } return; } sender.sendMessage(LocalizedMessage.COMMAND_NO_PERMISSION.toString());