OasisOLC Fix

From: Tseran (Tseran@SubDimension.com)
Date: 09/26/02


in Oasis.c, in the do_oasis ACMD, search for the following lines:

   } else if (!isdigit(*buf1)) {
     if (str_cmp("save", buf1) == 0) {
       save = TRUE;
       if (is_number(buf2)) {
         number = atoi(buf2);
       } else if (GET_OLC_ZONE(ch) >= 0) {
            zone_rnum zlok;
            if ((zlok = real_zone(GET_OLC_ZONE(ch))) == NOWHERE)
              number = -1;
            else
              number = genolc_zone_bottom(zlok); /* Or .top or in between. */
       }

While this seems to work, I personally don't like the way it handles
redit and zedit save commands.  If you just type "redit save" it doesn't
save the zone you are in, which is a bit silly in my opinion.  This is
what I changed it to, and I have notes why.

   } else if (!isdigit(*buf1)) {
     if (!str_cmp("save", buf1)) {
/* Most things in the MUD use this instead of == 0, so I just changed it
for conformity */
       save = TRUE;
       if (isdigit(*buf2)) {
/* For some reason, is_number will return positive when the string is
NULL, isdigit won't */
         number = atoi(buf2);
       } else if (subcmd == SCMD_OASIS_ZEDIT || subcmd ==
SCMD_OASIS_REDIT) {
         number = GET_ROOM_VNUM(IN_ROOM(ch));
/* This sets the number to be the room number you are in, that way you
don't have to type in a number */
       } else if (GET_OLC_ZONE(ch) >= 0) {
            zone_rnum zlok;
            if ((zlok = real_zone(GET_OLC_ZONE(ch))) == NOWHERE)
              number = -1;
            else
              number = genolc_zone_bottom(zlok); /* Or .top or in between. */
       }

Just a suggestion for the next version of Oasis.
--
Now with PGP Encryption!  Ask for your public key TODAY!

--
   +---------------------------------------------------------------+
   | 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