/**
* This is the badge the PTs use for moving from one place to another.
*/
inherit ARMOUR_OBJ;
/** @ignore yes */
void setup() {
set_name("badge");
set_short("blue badge");
add_adjective("blue");
add_property("nosteal", 1 );
add_property("dead usable", 1 );
set_long( "This is a small blue badge. It has a drawing of a womble on "
"the front; it seems to be using a magnifying glass to examine "
"something. On the back is engraved a scroll with some words on "
"it.\n");
setup_armour(1000);
set_damage_chance(0);
set_type("badge");
reset_drop();
set_read_mess("This badge allows the bearer to move into certain areas "
"to be playtested from certain entry locations (near to where the "
"areas will be eventually connected). To see the possible "
"destinations from your current room, use the command "
"\"destinations\", and to move into one of them, use the command "
"\"goto <label>\" where <label> will be A, B, C, etc.. You can get "
"a list of all transit points with \"transits\", although no "
"guarantee is made that each item on this list will be "
"recognisable. Please report any problems with rooms not loading to "
"the relevant domain Lord or Liaison(s).");
} /* setup() */
/** @ignore yes */
int list_destinations() { return PLAYTESTERS_H->list_destinations(); }
/** @ignore yes */
int list_transits() { return PLAYTESTERS_H->list_transits(); }
/** @ignore yes */
int do_goto( string where ) { return PLAYTESTERS_H->do_goto( where ); }
/** @ignore yes */
void init() {
if( !TP )
return;
if( !playtesterp(TP) ) {
tell_object( TP, "You are not a playtester. Your blue playtester's "
"badge disappears.\n");
set_drop();
move("/room/rubbish");
return;
}
add_command("destinations", "", (: list_destinations() :) );
add_command("transits", "", (: list_transits() :) );
add_command("goto", "<string>", (: do_goto($4[0]) :) );
} /* init() */