/* -*- LPC -*- */ inherit "/cmds/base"; #include <player.h> mixed cmd_list() { string* titles; // string* multiple; // string bing; if (this_player()->query_player_title()) { write("Your player title is currently set to: " + this_player()->query_player_title() + ".\n"); } else { write("Your player title is currently not set.\n"); } titles = this_player()->query_all_player_titles(); /* multiple = PLAYER_TITLE_HANDLER->query_allowed_multiple_titles(); foreach (bing in multiple) { if (!sizeof(filter(explode(bing, " "), (: member_array($1, $2) == -1 :)))) { titles += ({ bing }); } } */ write("You can set your player title to one of " + query_multiple_short(map(titles, (: capitalize($1) :))) + ".\n"); return 1; } /* cmd_list() */ int cmd_set(string title) { mixed mess; // string* bits; // string womble; title = lower_case(title); //bits = explode(title, " "); /* if (sizeof(bits) > 1 && !PLAYER_TITLE_HANDLER->is_allowed_multiple_title(title)) { add_failed_mess("You cannot use a title with more than 1 bit.\n"); return 0; } */ if (strlen(title) > 20) { add_failed_mess("Your title is too long.\n"); } if (member_array(title, this_player()->query_all_player_titles()) == -1) { add_failed_mess("The title '" + title + "' is not valid.\n"); return 0; } /* foreach (womble in bits) { if (member_array(womble, this_player()->query_all_player_titles()) == -1) { add_failed_mess("The title '" + womble + "' is not valid.\n"); return 0; } } */ if (this_player()->query_player_title() && lower_case(this_player()->query_player_title()) == title) { add_failed_mess("You already have your player title set to '" + title + "'.\n"); return 0; } this_player()->set_player_title(title); if ( sizeof( this_player()->query_hide_invis() ) ) { mess = ({ "$N set$s $p player title to " + capitalize(title) + ".\n", "" }); } else { mess = "$N set$s $p player title to " + capitalize(title) + ".\n"; } add_succeeded_mess(mess); return 1; } /* cmd_set() */ int cmd_reset() { if (!this_player()->query_player_title()) { add_failed_mess("Your player title is already unset.\n"); return 0; } this_player()->set_player_title(0); add_succeeded_mess("$N reset$s $p player title.\n"); return 1; } /* cmd_reset() */ mixed *query_patterns() { return ({ "", (: cmd_list :), "<string'title'>", (: cmd_set($4[0]) :), "none", (: cmd_reset() :) }); } /* query_patterns() */