package mineplex.bungee.motd; import java.util.concurrent.TimeUnit; import net.md_5.bungee.api.event.ProxyPingEvent; import net.md_5.bungee.api.plugin.Listener; import net.md_5.bungee.api.plugin.Plugin; import net.md_5.bungee.event.EventHandler; public class MotdManager implements Listener, Runnable { private Plugin _plugin; private MotdRepository _repository; private String _motd = "§b§l§m §8§l§m[ §r §9§lMineplex§r §f§lGames§r §8§l§m ]§b§l§m §r §c§l§m§kZ§6§l§m§kZ§e§l§m§kZ§a§l§m§kZ§b§l§m§kZ§r §f§lPLAY NOW§r §b§l§m§kZ§a§l§m§kZ§e§l§m§kZ§6§l§m§kZ§c§l§m§kZ"; public MotdManager(Plugin plugin) { _plugin = plugin; _plugin.getProxy().getScheduler().schedule(_plugin, this, 30L, 30L, TimeUnit.SECONDS); _plugin.getProxy().getPluginManager().registerListener(_plugin, this); _repository = new MotdRepository(); _repository.initialize(); } @EventHandler public void ServerPing(ProxyPingEvent event) { net.md_5.bungee.api.ServerPing serverPing = event.getResponse(); event.setResponse(new net.md_5.bungee.api.ServerPing(serverPing.getVersion(), serverPing.getPlayers(), _motd, serverPing.getFaviconObject())); } @Override public void run() { _motd = _repository.retrieveMotd(); } }