Last active 1449871744

Revision ca90e4aaad686e8251e1b2b60e932fcb647e20ab

gistfile1.java Raw
1package me.blha303;
2
3import java.io.IOException;
4
5import com.dwarfscraft.config.BungeeConfig;
6import com.google.common.eventbus.Subscribe;
7
8import net.md_5.bungee.api.ChatColor;
9import net.md_5.bungee.api.ProxyServer;
10import net.md_5.bungee.api.connection.ProxiedPlayer;
11import net.md_5.bungee.api.event.ChatEvent;
12import net.md_5.bungee.api.plugin.Listener;
13import net.md_5.bungee.api.plugin.Plugin;
14
15public class CrossServerChat extends Plugin implements Listener {
16
17 BungeeConfig config;
18
19 @Override
20 public void onEnable() {
21 String defaultmsg = "&7<&2%s&8-&2%s&7> &f%s";
22 ProxyServer.getInstance().getPluginManager().registerListener(this);
23 try {
24 config = new BungeeConfig(this, "%s is replaced with (in order) server name, player display name, message. Make sure you have three %s's.");
25 if (config.isNew()) {
26 config.set("string", defaultmsg);
27 }
28 } catch (IOException e) {
29 System.out.println("Could not create CrossServerChat config. Maybe you're out of disk space.");
30 }
31 }
32
33 @Subscribe
34 public void onChat(ChatEvent e) {
35 String m = e.getMessage();
36 String msg = ChatColor.translateAlternateColorCodes('&', config.getString("string"));
37 if (e.getSender() instanceof ProxiedPlayer) {
38 ProxiedPlayer pl = (ProxiedPlayer) e.getSender();
39 for (ProxiedPlayer p : ProxyServer.getInstance().getPlayers()) {
40 if (p.getServer() == pl.getServer()) {
41 return;
42 } else {
43 p.sendMessage(String.format(msg, pl.getServer().getInfo().getName(), pl.getDisplayName(), m));
44 }
45 }
46 }
47 }
48
49}
50