/**
* Channels "borrowed" from the Nightmare mudlib by Sibbis 12/10/1994
* Converted to Divided Sky - Shaydz
*/
private nosave string *channels;
/**
* This method returns the channels this player has.
* @return an array of channel names the player has
*/
string *query_channels() { return channels; }
private void register_channels() {
string *orgs;
channels = ({"chat", "singing", "newbie"});
if( adminp(TO) )
orgs = ORGS_H->query_orgs();
else
orgs = ORGS_H->query_my_orgs( TO->query_name() );
if( sizeof(orgs) )
foreach( string org in orgs )
channels += ({ ORGS_H->query_channel(org) });
if( creatorp(TO) ) {
string name;
channels += ({"cre", "intercre", "intergossip", "nipples",
"killers", "nscre", "nschat", "skylib"});
if( lordp(TO) )
channels += ({"lord"});
if( seniorp(TO) )
channels += ({"senior"});
// 0 name for admin, as to get all domains/projects.
if( !adminp(TO) )
name = TO->query_name();
channels += DOMAIN_H->query_domains(name) - ({"playtesters"});
if( !DOMAIN_H->query_member("learning", TO->query_name() ) ||
sizeof( DOMAIN_H->query_domains( TO->query_name() ) ) > 1 ) {
channels += ({"playtesters"});
}
} else {
if( playtesterp(TO) )
channels += ({"playtesters"});
if( TO->query_property("player_killer") )
channels += ({"killers"});
}
CHANNEL_H->add_user(channels);
} /* register_channels() */
/** @ignore yes */
void channel_commands() {
if( interactive(TO) )
register_channels();
} /* channel_commands() */