inherit "/cmds/base"; int concentrate_list( ) { object conc; conc = this_player()->query_concentrating(); if ( !conc ) { write("You are not currently concentrating on " "any particular opponent.\n" ); } else { write("You are currently concentrating on "+ conc->the_short() + ".\n"); } return 1; } /* concentrate_list() */ int concentrate(object *things ) { if ( sizeof( things ) > 1 ) { return notify_fail( "You can only concentrate on one thing at once.\n" ); } if (!sizeof(this_player()->query_attacker_list())) { add_failed_mess("You are not fighting anyone.\n"); return 0; } if ( things[0] == this_player() ) { return notify_fail( "It would be silly to concentrate on yourself.\n" ); } if (member_array(things[0], this_player()->query_attacker_list()) == -1) { return notify_fail("You can only concentrate on people you are " "fighting.\n"); } if (this_player()->set_concentrating(things[0])) { add_succeeded_mess(({"You are now concentrating on $I.\n", "" }), things); } else { add_succeeded_mess(({"Unable to concentrate on $I.\n", "" }), things); } return 1; } /* concentrate() */ mixed *query_patterns() { return ({ "[on] <indirect:living>", (: concentrate($1) :), "", (: concentrate_list() :) }); } /* query_patterns() */