/** * This is the ptesters command, to make dealing with all sorts * of PT stuff easier. Such as adding/removing playtesters, * seniors and transit routes. * @author Sandoz */ #define LIST 1 #define ADD_TESTER 2 #define ADD_SENIOR 3 #define REM_TESTER 4 #define REM_SENIOR 5 #define ADD_ROUTE 6 #define REM_ROUTE 7 #define LIST_ROUTE 8 #define BADGE 9 #define LIST_APPS 10 #define SHOW_APP 11 #define ACCEPT_APP 12 #define REJECT_APP 13 inherit COMMAND_BASE; /** @ignore yes */ private varargs int cmd( int action, string name, string reason ) { string str; switch( action ) { case LIST : str = PLAYTESTERS_H->query_show_list(); TP->more_string( str, "Playtester"); return 1; case ADD_TESTER : str = PLAYTESTERS_H->reason_invalid_playtester( lower_case(name) ); if( str ) { add_failed_mess( CAP(name)+" cannot be made a playtester, " "because: "+str+".\n"); return 0; } return PLAYTESTERS_H->add_playtester( lower_case(name) ); case ADD_SENIOR : return PLAYTESTERS_H->add_senior_playtester( lower_case(name) ); case REM_TESTER : if( !reason || reason == "" ) { add_failed_mess("You need to specify a reason when demoting " "someone.\n"); return 0; } return PLAYTESTERS_H->remove_playtester( lower_case(name), reason ); case REM_SENIOR : if( !reason || reason == "" ) { add_failed_mess("You need to supply a reason when demoting " "someone.\n"); return 0; } return PLAYTESTERS_H->remove_senior_playtester( lower_case(name), reason ); case ADD_ROUTE : return PLAYTESTERS_H->add_route( name, reason ); case REM_ROUTE : return PLAYTESTERS_H->remove_route( name, reason ); case LIST_ROUTE : return PLAYTESTERS_H->list_routes(); case BADGE : return PLAYTESTERS_H->create_badge( name ); case LIST_APPS : return PLAYTESTERS_H->do_list_apps(); case SHOW_APP : return PLAYTESTERS_H->do_show_app( name ); case ACCEPT_APP : return PLAYTESTERS_H->do_accept_app( name ); case REJECT_APP : return PLAYTESTERS_H->do_reject_app( name ); default: return TP->syntax_messages("ptesters"); } } /* cmd() */ /** @ignore yes */ mixed query_patterns() { return ({ "list", (: cmd(LIST) :), "add <word'name'>", (: cmd( ADD_TESTER, $4[0] ) :), "add senior <word'name'>", (: cmd( ADD_SENIOR, $4[0] ) :), "remove <word'name'> <string'reason'>", (: cmd( REM_TESTER, $4[0], $4[1] ) :), "remove senior <word'name'> <string'reason'>", (: cmd( REM_SENIOR, $4[0], $4[1] ) :), "add route from <word'start'> to <word'destination'>", (: cmd( ADD_ROUTE, $4[0], $4[1] ) :), "remove route from <word'start'> to <word'destination'>", (: cmd( REM_ROUTE, $4[0], $4[1] ) :), "list routes", (: cmd( LIST_ROUTE ) :), "create badge for <word'player'>", (: cmd( BADGE, $4[0] ) :), "list applications", (: cmd( LIST_APPS ) :), "show <word'name'> application", (: cmd( SHOW_APP, $4[0] ) :), "accept <word'name'> application", (: cmd( ACCEPT_APP, $4[0] ) :), "reject <word'name'> application", (: cmd( REJECT_APP, $4[0] ) :), }); } /* query_patterns() */