#include <group_handler.h> inherit GROUP_SUBCOMMAND_INHERITABLE; int do_leader( object member, string group ); void create() { ::create(); add_group_sub_command("leader", "<indirect:any-living'member'>", (: do_leader( $1[ 0 ], $6 ) :) ); set_membership_required("leader", 0, 1 ); set_leadership_required("leader", 0, 1 ); } /* create() */ int do_leader( object member, string group ) { if( member == TP ) return notify_fail("Oh, good thinking, sparky.\n"); if( member->query_group() != group ) return notify_fail( member->the_short()+" is not in your group.\n"); GROUP->set_leader( group, member, TP ); return 1; } /* do_leader() */ string query_help_string_for( string sub ) { return "This command allows you to relinquish command and " "appoint a new leader for the group. It does not remove " "your membership of the group, but you lose all special " "privileges granted to leaders."; } /* query_help_string_for() */