/* Do not remove the headers from this file! see /USAGE for more info. */
//:COMMAND
//USAGE: loadall <dir>
//
//Removes and reloads all the files in a specified directory
/* To help with conversion testing */
#include <mudlib.h>
inherit CMD;
private void main(mixed * args)
{
string * files;
object * obs;
outf("Attempting to load %s/*.c... ", args[0]);
/*
** Get all the files in the given directory. If this command is in
** the directory, then remove it... we don't want to dest self.
*/
files = map_array(get_dir(args[0] + "/*.c"), (: $(args[0])+"/"+$1 :));
files -= ({ file_name(this_object()) + ".c" });
/*
** Blow away the old objects
*/
obs = map_array(files, (: find_object($1) :)) - ({ 0 });
obs->remove();
obs -= ({ 0 });
map_array(obs, (: destruct($1) :));
/*
** Load all the objects
*/
map_array(files, (: load_object($1) :));
out("Succeeded.\n");
}