from the mailing list and have come to a loss in thought.  I'm using
rdig because i already have a dig command to uncover buried objects.
#include "conf.h"
#include "sysdep.h"
#include "structs.h"
#include "utils.h"
#include "comm.h"
#include "interpreter.h"
#include "db.h"
#include "olc.h"
extern int top_of_zone_table;
extern struct zone_data *zone_table;
extern struct room_data *world;
extern int rev_dir[];
ACMD(rdig)
{
struct room_data *rm = &world[ch->in_room];
int r_from_room, r_to_room, vdir = 0;
char dir[1];
  two_arguments(argument, dir, buf);
  if (!*buf || !*dir) {
    send_to_char("Usage: rdig <dir> <to room>\r\n", ch);
    return;
  }
  r_from_room = rm->number;
  r_to_room = atoi(buf2);
  if (*dir == 'n') vdir = 0;
  else if (*dir == 'e') vdir = 1;
  else if (*dir == 's') vdir = 2;
  else if (*dir == 'w') vdir = 3;
  else if (*dir == 'u') vdir = 4;
  else if (*dir == 'd') vdir = 5;
  else {
    send_to_char("Invalid Direction.\r\n", ch);
    return;
  }
  /* validity checks */
  if ((GET_LEVEL(ch) < LVL_IMPL) &&
     (zone_table[OLC_ZNUM(ch->desc)].number != GET_OLC_ZONE(ch))) {
    send_to_char("You do not have permission to edit this zone.\r\n", ch);
    free((ch->desc)->olc);
    return;
  }
  /* r_* = real number, v_* = virtual number */
  world[r_from_room].dir_option[vdir]->to_room = v_to_room;
  world[r_to_room].dir_option[rev_dir(vdir)]->to_room = v_from_room;
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
I know this area is screwey.  What do I use to actually create the exit?
}
Any assistance would be greatly appreciated.
                                                Hydragon
                                                doogie@scf.NMSU.edu
+-----------------------------------------------------------+
| Ensure that you have read the CircleMUD Mailing List FAQ: |
|   http://cspo.queensu.ca/~fletcher/Circle/list_faq.html   |
+-----------------------------------------------------------+
This archive was generated by hypermail 2b30 : 12/18/00 PST