public void changeChannels(String newChannel) {
		if (listening.contains(channel.toLowerCase()))
			listening.remove(channel.toLowerCase());
		channel = newChannel.toLowerCase();
		listening.add(channel.toLowerCase());

		// create it if it doesn't exist
		ChatChannel chan = ChannelManager.getChannel(channel.toLowerCase());
		if (chan == null) {
			chan = new ChatChannel(channel);
			ChannelManager.channels.add(chan);
			if (MCNSAChat3.thread != null)
				MCNSAChat3.thread.write(new ChannelUpdatePacket(chan));
		}

		// welcome them
		PluginUtil.sendLater(name, "Welcome to channel " + chan.color + chan.name + "&f!");
		ArrayList<String> names = new ArrayList<String>();
		for (ChatPlayer p : PlayerManager.getPlayersListeningToChannel(chan.name))
			if (!chan.modes.contains(ChatChannel.Mode.LOCAL) || p.server.equals(this.server))
				names.add(p.name);
		PluginUtil.sendLater(name, "Players here: " + PluginUtil.formatPlayerList(names.toArray(new String[0])));
	}