On Sat, 11 May 1996, David E. Case wrote: > Date: Sat, 11 May 1996 11:56:04 -0400 (EDT) > From: David E. Case <dcase@adams.berk.net> > To: circle@pvv.unit.no > Subject: Non-cardinal directions. > > Hi. One last little thing with northeast, etc. I've changed many many things > and they seem to work great. The ex command shows them fine, "l southeast" > does what it's supposed to. But when I try to move in any of the new > directions it brings me to vnum #0. Any idea why? This could be for more than one reason. - Did you update the NUM_OF_DIRS variable to 10. - Does the room actually lead to somewhere viable.. - in do_move all it does to see what direction you are going is subtract 1 from the cmd number which called it. if you didnt add your movement commands right at the beginning of the cmd_info list then that would make some direction like 200 .. which doesnt exist. this is the part of the code im referring to: ACMD(do_move) { /* [comment snipped] */ perform_move(ch, cmd-1, 0); } > > And this is a little morre complicated. How do I tell it that ne is > northeast, without going through and adding more keywords and such? Is there > an easy way to change the abbreviation method? Thanks. > -- > dcase@bcn.net - http://www.bcn.net/~dcase - Greenfield, MA > "Jesus, save me from your followers..." > to solve this problem i added 4 more commands before the "northeast", "northwest", (right after "down") commands, and they were "ne" , "nw" , "se" and "sw" (same as their respective commands) but you also need to update the do_move command to look like this, if you do so: ACMD(do_move) { /* [comment snipped] */ if (cmd > 10) perform_move(ch, cmd-5, 0); else perform_move(ch, cmd-1, 0); } Michael Scott aka Manx! FLAMES == scottm@workcomm.net
This archive was generated by hypermail 2b30 : 12/18/00 PST