Re: Code

From: Lars (lars@temperedweaves.com)
Date: 04/05/02


SoulReaper Is here wrote:

> How do i change the autoexits so that it shows even closed doors but
> with a
> # in front of the exit?

Here's what I use... leave out the EXIT_BLOCKED if you don't have it...
this goes in act.informative.c:ACMD(do_exits)

it will print the name of the door when the door is closed when you type
'exit' but won't show in autoexits... but that wouldn't be too hard to
fix...

  for (door = 0; door < NUM_OF_DIRS; door++)
    if (EXIT(ch, door) && EXIT(ch, door)->to_room != NOWHERE &&
        !EXIT_FLAGGED(EXIT(ch, door), EX_CLOSED)) {
      if (GET_LEVEL(ch) >= LVL_IMMORT)
        sprintf(buf2, "%-5s - [%5d] %s\r\n", dirs[door],
                GET_ROOM_VNUM(EXIT(ch, door)->to_room),
                world[EXIT(ch, door)->to_room].name);
      else {
        sprintf(buf2, "%-5s - ", dirs[door]);
        if (IS_DARK(EXIT(ch, door)->to_room) && !CAN_SEE_IN_DARK(ch))
          strcat(buf2, "Too dark to tell\r\n");
        else if (EXIT_FLAGGED(EXIT(ch, door), EX_BLOCKED))
          strcat(buf2, "Blocked\r\n");
        else {
          strcat(buf2, world[EXIT(ch, door)->to_room].name);
          strcat(buf2, "\r\n");
        }
      }
      strcat(buf, CAP(buf2));
    } else if (EXIT(ch, door) && EXIT(ch, door)->to_room != NOWHERE &&
        EXIT_FLAGGED(EXIT(ch, door), EX_CLOSED)) {
      sprintf(buf2, "%-5s - The ", dirs[door]);
      strcat(buf2, fname(EXIT(ch, door)->keyword));
      strcat(buf2, "\r\n");
      strcat(buf, CAP(buf2));
    }
  send_to_char("Obvious exits:\r\n", ch);

--
   +---------------------------------------------------------------+
   | FAQ: http://qsilver.queensu.ca/~fletchra/Circle/list-faq.html |
   | Archives: http://post.queensu.ca/listserv/wwwarch/circle.html |
   | Newbie List:  http://groups.yahoo.com/group/circle-newbies/   |
   +---------------------------------------------------------------+



This archive was generated by hypermail 2b30 : 06/25/03 PDT