/
LIB3/
LIB3/D/ADMIN/
LIB3/D/ADMIN/OBJ/
LIB3/D/ADMIN/ROOM/W/
LIB3/D/HOME/
LIB3/D/HOME/CITY/ARENA/
LIB3/D/HOME/CITY/ITEMS/
LIB3/D/HOME/CITY/POSTOFFI/
LIB3/DOC/
LIB3/GLOBAL/SPECIAL/
LIB3/GLOBAL/VIRTUAL/
LIB3/NET/
LIB3/NET/CONFIG/
LIB3/NET/DAEMON/CHARS/
LIB3/NET/GOPHER/
LIB3/NET/INHERIT/
LIB3/NET/OBJ/
LIB3/NET/SAVE/
LIB3/NET/VIRTUAL/
LIB3/OBJ/B_DAY/
LIB3/OBJ/HANDLERS/TERM_TYP/
LIB3/PLAYERS/B/
LIB3/PLAYERS/N/
LIB3/ROOM/
LIB3/SAVE/
LIB3/SAVE/BOARDS/
LIB3/SAVE/ENVIRON/
LIB3/SAVE/POST/
LIB3/STD/COMMANDS/SHADOWS/
LIB3/STD/CREATOR/
LIB3/STD/DOM/
LIB3/STD/EFFECTS/
LIB3/STD/EFFECTS/HEALING/
LIB3/STD/EFFECTS/OTHER/
LIB3/STD/EFFECTS/POISONS/
LIB3/STD/ENVIRON/
LIB3/STD/GUILDS/
LIB3/STD/LIQUIDS/
LIB3/STD/ROOM/
LIB3/STD/TRIGGER/SHADOW/
LIB3/W/
LIB3/W/BANNOR/
LIB3/W/NEWSTYLE/
/*
 * This is all the autoloading stuff.
 * please don't remove again - lynscar.
 */
void    add_preload( string file )
{
    if( previous_object() == this_object() ||
	    query_lord( geteuid( previous_object() ) ) )
    {

	if( !preload )
	{
	    preload = ({ file });
	}
	else
	    if( member_array( file, preload ) == -1 )
	    {
		preload += ({ file });
	    }
	save_object( "/secure/master" );
    }
}				/* add_preload() */

void    remove_preload( string file )
{
    int     i;

    if( previous_object() == this_object() ||
	    query_lord( geteuid( previous_object() ) ) )
    {

	if( preload )
	{
	    i = member_array( file, preload );
	    if( i >= 0 )
	    {
		preload = preload[ 0..i - 1 ] + preload[ i + 1..1000 ];
		save_object( "/secure/master" );
	    }
	}
    }
}				/* remove_preload() */

void    add_call_out_preload( string file )
{
    if( previous_object() == this_object() ||
	    query_lord( geteuid( previous_object() ) ) )
    {

	if( !call_out_preload )
	{
	    call_out_preload = ({ file });
	}
	else
	    if( member_array( file, call_out_preload ) == -1 )
	    {
		call_out_preload += ({ file });
	    }
	save_object( "/secure/master" );
    }
}				/* add_call_out_preload() */

void    remove_call_out_preload( string file )
{
    int     i;

    if( previous_object() == this_object() ||
	    query_lord( geteuid( previous_object() ) ) )
    {

	if( call_out_preload )
	{
	    i = member_array( file, call_out_preload );
	    if( i >= 0 )
	    {
		call_out_preload = delete( call_out_preload, i, 1 );
		save_object( "/secure/master" );
	    }
	}
    }
}				/* remove_call_out_preload() */

void    load_object()
{
    if( !done )
    {
	done = 1;
	seteuid( ROOT );
	restore_object( "/secure/master" );
    }
}				/* load_object() */

string *epilog()
{
    int     i;

    if( !preload )
    {
	load_object();
    }
    for( i = 0; i < sizeof( call_out_preload ); i++ )
	call_out( "preload", 2, call_out_preload[ i ] );
    return preload;
}				/* epilog() */

void    preload( string file )
{
    int     e;

    printf( "Preloading: " + file + ".\n" );
    if( (e = catch( file->dummy() )) )
    {
	printf( "            " + e + "\n" );
    }
}				/* preload() */