Re: NEWBIE: CircleMUD Modifications

From: Ground Zero Enterprises (zero@baker.cnw.com)
Date: 10/30/96


> 1) Have choice of race when starting up MUD
> 2) Have MUD give info about each class/race after choosing one, and
> giving people the choice to rechoose afterwards.
> I would be greatful for any assistance...

This is fairly self explanatory code, you of course need to copy the 
approriate constants and fucntiions made for classes over to a race 
version and adjust (i.e. make a clone of parse_class, class_menu etc. but 
for your races instead).  If you have any knowledge of C you should be 
able to understand the other small modifications needed to add this in
(i.e. declaring constants for race_help_menu and addind the new CON_X 
states).  If you do need more in depth help tho feel free to mail me.  
This code should just be dropped in below where sex is chosen in nanny() 
in interpreter.c.

    SEND_TO_Q(race_info, d);   /* explains what races in general affect */
    SEND_TO_Q(race_menu, d);   /* menu of races */
    SEND_TO_Q(" \r\nRace: ", d);
    STATE(d) = CON_QRACE;
    break;

  case CON_QRACE:
    load_result = parse_race(*arg);
    if (load_result == RACE_UNDEFINED) {
      SEND_TO_Q("\r\nThat's not a valid choice.\r\nRace: ", d);
      return;
    } else
      GET_RACE(d->character) = load_result;
    /* race_help_menu is an array of small paragraphs describing the races */ 
      SEND_TO_Q(race_help_menu[load_result], d); 
      SEND_TO_Q("\r\n\r\n\r\nDo you want to choose this race? (yes/no) [yes]", d);    
      STATE(d) = CON_CONFIRM_RACE;
      break;

  case CON_CONFIRM_RACE:
 /* if they type something other than no, knocks em back out to race menu */
     if(is_abbrev(arg, "no")) {
        SEND_TO_Q("\r\nOk, choose another.", d);
        SEND_TO_Q(race_menu, d);
        SEND_TO_Q("\r\nRace: ", d);
        STATE(d) = CON_QRACE;
        break;
     }

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