/** * multiplayer command to add/delete names to the list * of checked players */ #include <creator.h> inherit COMMAND_BASE; varargs int cmd( string command, string name, string what, string extra ) { if(name) name = lower_case(name); if( !PLAYER_H->test_user( name ) ) { write( name+" is not a player.\n"); return 1; } switch( command ) { case "add" : if( extra && !PLAYER_H->test_user( extra = lower_case(extra) ) ) { write( extra+" is not a player.\n"); return 1; } if( !call_other( MULTIPLAYER_H, "add_" + what, name, extra ) ) printf("\"%s\" isn't known here.\n", name ); else printf("\"%s\" added.\n", name ); break; case "del" : if( !call_other( MULTIPLAYER_H, "delete_" + what, name ) ) printf("\"%s\" isn't on the list.\n", name ); else printf("\"%s\" deleted.\n", name ); break; case "log" : MULTIPLAYER_H->mark_log( name, extra ); printf("Marked \"multiplay\" playerinfo events " "for \"%s\" as \"%s\".\n", name, ( extra ? extra : "handled") ); break; case "list" : write("The list currently consists of: $I$5=\n"+ query_multiple_short( sort_array( call_other( MULTIPLAYER_H, "query_" + what ), (: strcmp( $1, $2 ) :) ) )+"$I$0=\n"); break; } return 1; } /* cmd */ /** @ignore yes */ mixed *query_patterns() { return ({ "{gits|list gits}", (: cmd("list", 0, "gits") :), "{allow|list allow}", (: cmd("list", 0, "allowed") :), "add git <word'name'>", (: cmd("add", $4[0], "git") :), "add allowed <word'name'> <word'other name'>", (: cmd("add", $4[0], "allowed", $4[1]) :), "del git <word'name'>", (: cmd("del", $4[0], "git") :), "del allowed <word'name'>", (: cmd("del", $4[0], "allowed") :), "log <word'name'>", (: cmd("log", $4[0], "git") :), "log <word'name'> <string'log text'>", (: cmd("log", $4[0], "git", implode($4[1..], " ")) :) }); } /* query_patterns() */