The restof the code:
room->dir_option[DOWN] && room->dir_option[DOWN]->to_room != -1 ?
world[room->dir_option[DOWN]->to_room].number : -1,
grn, nrm, cyn,
room->dir_option[NORTHEAST] && room->dir_option[NORTHEAST]->to_room != -1
?
world[room->dir_option[NORTHEAST]->to_room].number : -1,
grn, nrm, cyn,
room->dir_option[NORTHWEST] && room->dir_option[NORTHWEST]->to_room != -1
?
world[room->dir_option[NORTHWEST]->to_room].number : -1,
grn, nrm, cyn,
room->dir_option[SOUTHEAST] && room->dir_option[SOUTHEAST]->to_room != -1
?
world[room->dir_option[SOUTHEAST]->to_room].number : -1,
grn, nrm, cyn,
room->dir_option[SOUTHWEST] && room->dir_option[SOUTHWEST]->to_room != -1
?
world[room->dir_option[SOUTHWEST]->to_room].number : -1,
grn, nrm, grn, nrm
);
Then insert the following into the case statements for REDIT_MAIN_MENU:
case 'b':
case 'B':
+ OLC_VAL(d) = NORTHEAST;
+ redit_disp_exit_menu(d);
+ break;
+ case 'c':
+ case 'C':
+ OLC_VAL(d) = NORTHWEST;
+ redit_disp_exit_menu(d);
+ break;
+ case 'd':
+ case 'D':
+ OLC_VAL(d) = SOUTHEAST;
+ redit_disp_exit_menu(d);
+ break;
+ case 'e':
+ case 'E':
+ OLC_VAL(d) = SOUTHWEST;
+ redit_disp_exit_menu(d);
+ break;
+ case 'f':
+ case 'F':
/*
* If the extra description doesn't exist.
*/
The last two characters are supposed to be northeast and
southwest.
So: To fix that add the following to constants.c:
const char *sdirs[] =
{
"n",
"e",
"s",
"w",
"u",
"d",
"ne",
"nw",
"se",
"sw",
" "
};
Add to constants.h:
extern const char *sdirs[];
and in act.informative.c in the look_at_room function:
change
slen += sprintf(buf + slen, "%c ", LOWER(*dirs[door]));
to:
slen += sprintf(buf+slen, "%s ", sdirs[door]);
That ought to fix it. Sorry about that :)
-Kkalun
[ Reply to this comment ]
+------------------------------------------------------------+
| Ensure that you have read the CircleMUD Mailing List FAQ: |
| http://qsilver.queensu.ca/~fletchra/Circle/list-faq.html |
+------------------------------------------------------------+
This archive was generated by hypermail 2b30 : 04/10/01 PDT