From: Rich 'Wolflord' Bradshaw > Now that I'm babbling, has anyone put any time into that "room > description based on entry/exit direction" thing we were talking about > awhile back? It seems like the most detailed way to do it would be to > have a possible maximum of TWELVE room descriptions, one for each entry > direction, and one for each exit direction, this sounds like suddenly > using quite a bit more memory, or am I mistaken? > > The cheesy alternative I've come up with in the meantime is a "day > description/name" "night description/name" for rooms based on time of day. Yeah, I've put something along those lines in... It lets you give a message to a player depending on which exit they use from a room. In merc.h struct exit_data { union { ROOM_INDEX_DATA * to_room; sh_int vnum; } u1; sh_int exit_info; sh_int key; char * keyword; char * description; char * message; <-- added this EXIT_DATA * next; int rs_flags; int orig_door; }; ---------- In act_move.c : void move_char( CHAR_DATA *ch, int door, bool follow ) /* * To have messages displayed to the character when moving between rooms. * -- Diarmuid */ if ( pexit->message && pexit->message[0] != '\0' ) { send_to_char("\n\r\n\r", ch ); send_to_char( pexit->message, ch ); send_to_char("\n\r", ch ); } just before the line: do_look( ch, "auto" ); I put all the extra lines in as it kinda got missed otherwise. I've put it in colour to help it stand out.. --------- In db.c : void load_room( FILE *fp ) when its reading in the doors, add: pexit->message = fread_string( fp ); --------- I use OLC, so converting all the areas was pretty simple. Added the code to the olc_save.c function for saving empty messages. Compiled, asave world, then shutdown. Add the code to the db.c, recompile, startup. Everything peachy ;-) Wouldn't envy anyone implementing it this way if they were going to do it by hand ;-) I'm sure there's a better and less wasteful way, I implemented this a while ago and kinda forgot about it for a bit. Cheerio, Rich