/**
* @author Pinkfish
* Started Mon Jun 18 20:15:58 PDT 2001
*/
inherit "/std/room/furniture/commercial";
#include <money.h>
#include <mail.h>
#define BOARD_TAG "postal"
int _num_uses;
void setup() {
set_name( "counter" );
set_short( "postal counter" );
add_adjective("postal");
set_long( "A wooden counter that looks like a place you could write "
"and read mail.\n");
set_allowed_positions(({"sitting", "lying", "kneeling", "meditating"}));
set_allowed_room_verbs((["sitting" : "sits" ]));
set_weight(2000);
set_value(6400000);
add_help_file("postal");
set_commercial_size(25);
set_commercial_type("utility");
set_shop_use_types(({ "pickler" }));
}
int do_mail(string to) {
if (MAIL_TRACK->mail(to)) {
_num_uses++;
return 1;
}
return 0;
} /* do_pickle() */
string query_main_status(int hint) {
string place;
place = query_money_place();
return the_short() + " status:\n"
"\n$I$6= Number of uses : " + _num_uses + "\n";
} /* query_main_status() */
void init() {
commercial::init();
add_command("mail", "<string'to'>",
(: do_mail($4[0]) :));
add_command("mail", "[handle] [on] <direct:object> with <indirect:object>",
(: do_mail(0) :));
} /* init() */
/** @ignore yes */
mapping query_dynamic_auto_load() {
mapping map;
map = commercial::query_dynamic_auto_load();
add_auto_load_value(map, BOARD_TAG, "uses", _num_uses);
return map;
} /* query_dynamic_auto_load() */
/** @ignore yes */
void init_dynamic_arg(mapping map, object player) {
commercial::init_dynamic_arg(map, player);
_num_uses = query_auto_load_value(map, BOARD_TAG, "uses");
} /* init_dynamic_arg() */