#include <mudlib.h> #include <daemons.h> inherit DAEMON; inherit REF_D; #define SYNTAX "Syntax: sc [<object>]\n" string sc_object( object ob, string indent ); int cmd_sc( string a ) { mixed ob; object obj; int i; seteuid( geteuid( previous_object() ) ); if( !a ) a = "here"; ob = ref_ob( a ); if( !objectp( ob ) ) { notify_fail( wrap( "Could not identify " + identify( ob ) + " as an object." ) ); return 0; } write( wrap( "Deep Scanning: " + identify( ob ) + " EUID(" + geteuid( ob ) + ") UID(" + getuid( ob ) + ")" ) ); sc_object( ob, " " ); set_ref( "default", ob ); set_ref( "sc", deep_inventory( ob ) ); return 1; } string sc_object( object ob, string indent ) { mixed obs; int i, s; obs = all_inventory( ob ); s = sizeof( obs ); for( i = 0 ; i < s ; i++ ) { write( wrap( indent + (i+1) + ": " + identify( obs[i] ) + " EUID(" + geteuid( obs[i] ) + ")" + " UID(" + getuid( obs[i] ) + ")" + "" ) ); sc_object( obs[i], " "+indent ); } } int help() { write( SYNTAX + "Effect: does a recursive scan of <object> (defaults to your environment)\n"+ "" ); }