/
LIB3/
LIB3/D/ADMIN/
LIB3/D/ADMIN/OBJ/
LIB3/D/ADMIN/ROOM/W/
LIB3/D/HOME/
LIB3/D/HOME/CITY/ARENA/
LIB3/D/HOME/CITY/ITEMS/
LIB3/D/HOME/CITY/POSTOFFI/
LIB3/DOC/
LIB3/GLOBAL/SPECIAL/
LIB3/GLOBAL/VIRTUAL/
LIB3/NET/
LIB3/NET/CONFIG/
LIB3/NET/DAEMON/CHARS/
LIB3/NET/GOPHER/
LIB3/NET/INHERIT/
LIB3/NET/OBJ/
LIB3/NET/SAVE/
LIB3/NET/VIRTUAL/
LIB3/OBJ/B_DAY/
LIB3/OBJ/HANDLERS/TERM_TYP/
LIB3/PLAYERS/B/
LIB3/PLAYERS/N/
LIB3/ROOM/
LIB3/SAVE/
LIB3/SAVE/BOARDS/
LIB3/SAVE/ENVIRON/
LIB3/SAVE/POST/
LIB3/STD/COMMANDS/SHADOWS/
LIB3/STD/CREATOR/
LIB3/STD/DOM/
LIB3/STD/EFFECTS/
LIB3/STD/EFFECTS/HEALING/
LIB3/STD/EFFECTS/OTHER/
LIB3/STD/EFFECTS/POISONS/
LIB3/STD/ENVIRON/
LIB3/STD/GUILDS/
LIB3/STD/LIQUIDS/
LIB3/STD/ROOM/
LIB3/STD/TRIGGER/SHADOW/
LIB3/W/
LIB3/W/BANNOR/
LIB3/W/NEWSTYLE/
inherit "/failsafe/desc";
inherit "/failsafe/simul_efun";
/* this one also contians info on read_messages... */

static string read_mess;

void set_read_mess(string str) { 
  if (!read_mess && str)
    add_action("read", "read");
  read_mess = str; 
}

string query_read_mess() { return read_mess; }

void add_read_mess(string str) { 
  if (!read_mess) {
    add_action("read", "read");
    read_mess = "";
  }
  read_mess += str; 
}

init() {
  if (read_mess)
    add_action("read", "read");
}

int read(string str) {
  if (member_array(this_object(), find_match(str, environment())) == -1) {
    notify_fail("Usage: read <object>\n");
    return 0;
  }
  write(read_mess);
  return 1;
}

string long(string str) {
  if (read_mess)
    return ::long(str)+"It appears to have something written on it.\n";
  return ::long(str);
}