mirror of
				https://github.com/Aust1n46/VentureChat.git
				synced 2025-10-30 13:32:24 +00:00 
			
		
		
		
	Added tab completion for all network players to private messaging.
This commit is contained in:
		
							parent
							
								
									03ff3ceaf7
								
							
						
					
					
						commit
						13bd351c41
					
				| @ -147,7 +147,7 @@ public class MineverseChat extends JavaPlugin implements PluginMessageListener { | ||||
| 	private static final Logger log = Logger.getLogger("Minecraft"); | ||||
| 	public static Set<MineverseChatPlayer> players = new HashSet<MineverseChatPlayer>(); | ||||
| 	public static Set<MineverseChatPlayer> onlinePlayers = new HashSet<MineverseChatPlayer>(); | ||||
| 	public static HashMap<String, String> networkPlayers = new HashMap<String, String>(); | ||||
| 	public static List<String> networkPlayerNames = new ArrayList<String>(); | ||||
| 	private boolean firstRun = true; | ||||
| 	 | ||||
| 	// Plugin Messaging Channel | ||||
| @ -636,33 +636,6 @@ public class MineverseChat extends JavaPlugin implements PluginMessageListener { | ||||
| 			e.printStackTrace(); | ||||
| 		} | ||||
| 	} | ||||
| 
 | ||||
| 	public void updatePlayerList(MineverseChatPlayer mcp, boolean request) { | ||||
| 		ByteArrayOutputStream outstream = new ByteArrayOutputStream(); | ||||
| 		DataOutputStream out = new DataOutputStream(outstream); | ||||
| 		try { | ||||
| 			out.writeUTF("Sync"); | ||||
| 			if(request) { | ||||
| 				out.writeUTF("PlayersReceive"); | ||||
| 				// System.out.println(mcp.getPlayer().getServer().getServerName()); | ||||
| 				out.writeUTF(this.getServer().getName()); | ||||
| 			} | ||||
| 			else { | ||||
| 				out.writeUTF("PlayersUpdate"); | ||||
| 				// System.out.println(networkPlayers.keySet().size()); | ||||
| 				out.write(networkPlayers.keySet().size()); | ||||
| 				for(String p : networkPlayers.keySet()) { | ||||
| 					out.writeUTF(p + "," + networkPlayers.get(p)); | ||||
| 				} | ||||
| 			} | ||||
| 			mcp.getPlayer().sendPluginMessage(this, MineverseChat.PLUGIN_MESSAGING_CHANNEL, outstream.toByteArray()); | ||||
| 			// System.out.println("Sync start bottom..."); | ||||
| 			out.close(); | ||||
| 		} | ||||
| 		catch(IOException e) { | ||||
| 			e.printStackTrace(); | ||||
| 		} | ||||
| 	} | ||||
| 	 | ||||
| 	public static void sendDiscordSRVPluginMessage(String chatChannel, String message) { | ||||
| 		if(onlinePlayers.size() == 0) { | ||||
| @ -786,6 +759,13 @@ public class MineverseChat extends JavaPlugin implements PluginMessageListener { | ||||
| 					} | ||||
| 				}	 | ||||
| 			} | ||||
| 			if(subchannel.equals("PlayerNames")) { | ||||
| 				networkPlayerNames.clear(); | ||||
| 				int playerCount = msgin.readInt(); | ||||
| 				for(int a = 0; a < playerCount; a ++) { | ||||
| 					networkPlayerNames.add(msgin.readUTF()); | ||||
| 				} | ||||
| 			} | ||||
| 			if(subchannel.equals("Chwho")) { | ||||
| 				String identifier = msgin.readUTF(); | ||||
| 				if(identifier.equals("Get")) { | ||||
| @ -838,16 +818,6 @@ public class MineverseChat extends JavaPlugin implements PluginMessageListener { | ||||
| 				String hash = msgin.readUTF(); | ||||
| 				this.getServer().dispatchCommand(this.getServer().getConsoleSender(), "removemessage " + hash); | ||||
| 			} | ||||
| 			if(subchannel.equals("PlayersUpdate")) { | ||||
| 				networkPlayers.clear(); | ||||
| 				int size = msgin.read(); | ||||
| 				for(int a = 1; a <= size; a++) { | ||||
| 					String p = msgin.readUTF(); | ||||
| 					String[] parts = p.split(","); | ||||
| 					networkPlayers.put(parts[0], parts[1]); | ||||
| 					System.out.print(p); | ||||
| 				} | ||||
| 			} | ||||
| 			if(subchannel.equals("Sync")) { | ||||
| 				if(this.getConfig().getString("loglevel", "info").equals("debug")) { | ||||
| 					Bukkit.getConsoleSender().sendMessage(Format.FormatStringAll("&8[&eVentureChat&8]&e - Received update...")); | ||||
|  | ||||
| @ -24,6 +24,8 @@ import net.md_5.bungee.api.chat.TextComponent; | ||||
| import net.md_5.bungee.api.connection.ProxiedPlayer; | ||||
| import net.md_5.bungee.api.connection.Server; | ||||
| import net.md_5.bungee.api.event.PluginMessageEvent; | ||||
| import net.md_5.bungee.api.event.ServerDisconnectEvent; | ||||
| import net.md_5.bungee.api.event.ServerSwitchEvent; | ||||
| import net.md_5.bungee.api.plugin.Listener; | ||||
| import net.md_5.bungee.api.plugin.Plugin; | ||||
| import net.md_5.bungee.config.Configuration; | ||||
| @ -38,7 +40,6 @@ public class MineverseChatBungee extends Plugin implements Listener { | ||||
| 	private Configuration bungeeconfig; | ||||
| 	private Configuration playerData; | ||||
| 	public static Set<SynchronizedMineverseChatPlayer> players = new HashSet<SynchronizedMineverseChatPlayer>(); | ||||
| 	public static HashMap<String, String> networkPlayers = new HashMap<String, String>(); | ||||
| 	public static String PLUGIN_MESSAGING_CHANNEL = "venturechat:data"; | ||||
| 
 | ||||
| 	@Override | ||||
| @ -133,6 +134,37 @@ public class MineverseChatBungee extends Plugin implements Listener { | ||||
| 			e.printStackTrace(); | ||||
| 		} | ||||
| 	} | ||||
| 	 | ||||
| 	@EventHandler | ||||
| 	public void onPlayerJoin(ServerSwitchEvent event) { | ||||
| 		updatePlayerNames(); | ||||
| 	} | ||||
| 	 | ||||
| 	@EventHandler | ||||
| 	public void onPlayerLeave(ServerDisconnectEvent event) { | ||||
| 		updatePlayerNames(); | ||||
| 	} | ||||
| 	 | ||||
| 	private void updatePlayerNames() { | ||||
| 		try { | ||||
| 			ByteArrayOutputStream outstream = new ByteArrayOutputStream(); | ||||
| 			DataOutputStream out = new DataOutputStream(outstream); | ||||
| 			out.writeUTF("PlayerNames"); | ||||
| 			out.writeInt(this.getProxy().getPlayers().size()); | ||||
| 			for(ProxiedPlayer pp : this.getProxy().getPlayers()) { | ||||
| 				out.writeUTF(pp.getName()); | ||||
| 			} | ||||
| 			 | ||||
| 			for(String send : getProxy().getServers().keySet()) { | ||||
| 				if(getProxy().getServers().get(send).getPlayers().size() > 0) { | ||||
| 					getProxy().getServers().get(send).sendData(MineverseChatBungee.PLUGIN_MESSAGING_CHANNEL, outstream.toByteArray()); | ||||
| 				} | ||||
| 			} | ||||
| 		} | ||||
| 		catch(Exception e) { | ||||
| 			e.printStackTrace(); | ||||
| 		} | ||||
| 	} | ||||
| 
 | ||||
| 	@EventHandler | ||||
| 	public void onPluginMessage(PluginMessageEvent ev) { | ||||
| @ -486,35 +518,6 @@ public class MineverseChatBungee extends Plugin implements Listener { | ||||
| 					smcp.setSpy(in.readBoolean()); | ||||
| 					smcp.setMessageToggle(in.readBoolean()); | ||||
| 				} | ||||
| 				if(identifier.equals("PlayersReceive")) { | ||||
| 					String server = in.readUTF(); | ||||
| 					out.writeUTF("PlayersUpdate"); | ||||
| 					out.write(networkPlayers.keySet().size()); | ||||
| 					for(String s : networkPlayers.keySet()) { | ||||
| 						out.writeUTF(s + "," + networkPlayers.get(s)); | ||||
| 					} | ||||
| 					if(getProxy().getServers().get(server).getPlayers().size() > 0)  | ||||
| 						getProxy().getServers().get(server).sendData(MineverseChatBungee.PLUGIN_MESSAGING_CHANNEL, outstream.toByteArray()); | ||||
| 				} | ||||
| 				if(identifier.equals("PlayersUpdate")) { | ||||
| 					networkPlayers.clear(); | ||||
| 					int size = in.read(); | ||||
| 					//System.out.println(size); | ||||
| 					for(int a = 1; a <= size; a ++) { | ||||
| 						String player = in.readUTF(); | ||||
| 						String[] parts = player.split(","); | ||||
| 						networkPlayers.put(parts[0], parts[1]); | ||||
| 					} | ||||
| 					out.writeUTF("PlayersUpdate"); | ||||
| 					out.write(networkPlayers.keySet().size()); | ||||
| 					for(String s : networkPlayers.keySet()) { | ||||
| 						out.writeUTF(s + "," + networkPlayers.get(s)); | ||||
| 					} | ||||
| 					for(String send : getProxy().getServers().keySet()) { | ||||
| 						if(getProxy().getServers().get(send).getPlayers().size() > 0)  | ||||
| 							getProxy().getServers().get(send).sendData(MineverseChatBungee.PLUGIN_MESSAGING_CHANNEL, outstream.toByteArray()); | ||||
| 					} | ||||
| 				} | ||||
| 			} | ||||
| 			if(subchannel.equals("Mute")) { | ||||
| 				String identifier = in.readUTF(); | ||||
|  | ||||
| @ -2,7 +2,6 @@ package mineverse.Aust1n46.chat.command.message; | ||||
| 
 | ||||
| import java.io.ByteArrayOutputStream; | ||||
| import java.io.DataOutputStream; | ||||
| import java.util.ArrayList; | ||||
| import java.util.List; | ||||
| 
 | ||||
| import org.bukkit.ChatColor; | ||||
| @ -165,12 +164,10 @@ public class MessageCommandExecutor implements TabExecutor { | ||||
| 	 | ||||
| 	@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()); | ||||
| 		if(plugin.getConfig().getBoolean("bungeecordmessaging", true)) { | ||||
| 			return MineverseChat.networkPlayerNames; | ||||
| 		} | ||||
| 		return completions; | ||||
| 		return null; | ||||
| 	} | ||||
| 	 | ||||
| 	private void sendBungeeCordMessage(MineverseChatPlayer mcp, String command, String[] args) { | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user
	 Aust1n46
						Aust1n46