@EventHandler(priority = EventPriority.LOWEST)
    public void onPlayerQuit(PlayerQuitEvent event) throws VanishNotLoadedException {
        Player player = event.getPlayer();

        String newQuitMessage = "";
        newQuitMessage += this.plugin.getConfig().getString("server.quitmessage");
        newQuitMessage = this.plugin.format(newQuitMessage, player.getDisplayName());

        if (newQuitMessage == null) {
            this.plugin.getLogger().severe("No custom quit message found, using default instead.");
            return;
        }

        event.setQuitMessage(null);

        for (Player plr : this.plugin.getServer().getOnlinePlayers()) {
            if (VanishNoPacket.isVanished(player.getName())) {
                if (plr.hasPermission("mymessages.vanish.quit")) {
                    plr.sendMessage(newQuitMessage);
                }
            } else {
                plr.sendMessage(newQuitMessage);
            }
        }
    }