mud/lib/cmds/admins/objload.c
2020-09-06 05:43:07 -07:00

51 lines
1.3 KiB
C

/* /cmds/admins/objload.c
* From the Dead Souls Mud Library
* Provides information about loaded objects to find where trouble might be
* Created by Descartes of Borg 961204
* Version: @(#) objload.c 1.4@(#)
* Last modified: 96/12/04
*/
#include <lib.h>
#include <dirs.h>
#include <message_class.h>
inherit LIB_DAEMON;
static private int Realms = strlen(REALMS_DIRS);
mixed cmd(string args) {
string array output = ({ "Creator Files:" });
object array obs = objects((: file_name($1)[0..Realms-1] ==REALMS_DIRS :));
mapping vals = ([]);
foreach(object ob in obs) {
string str = file_privs(file_name(ob));
if( !vals[str] ) {
vals[str] = ({ 0, ({}) });
}
vals[str][0]++;
vals[str][1] = ({ vals[str][1]..., ob });
}
foreach(string who, mixed array data in vals) {
mapping mp = ([]);
output += ({ who + ": " + data[0] });
foreach(object ob in data[1]) {
mp[base_name(ob)]++;
}
foreach(string str, int count in mp) {
output += ({ "\t" + str + ": " + count });
}
}
previous_object()->eventPage(output, MSG_SYSTEM);
return 1;
}
string GetHelp() {
return "Syntax: objload\n\n"
"Provides you with information about how many objects "
"each creator has in the game.";
}