Matthew Kuebbeler wrote: > > Im currently using circle30bpl17 with the Oasis patch for it. > I've recently attempted to add in the dig command found from the ftp site, > but as always, nothing ever seems to go in right the first time. > > Heres the snippet: > > ACMD(do_dig) > { > /* Only works if you have Oasis OLC */ > extern void olc_add_to_save_list(int zone, byte type); > > char buf2[10]; > char buf3[10]; > char buf[80]; > int iroom = 0, rroom = 0; > int dir = 0; > /* struct room_data *room; */ > > two_arguments(argument, buf2, buf3); > /* buf2 is the direction, buf3 is the room */ > > iroom = atoi(buf3); > > rroom = real_room(iroom); > > if (!*buf2) { > send_to_char("Format: dig <dir> <room number>\r\n", ch); > return; } > else if (!*buf3) { > send_to_char("Format: dig <dir> <room number>\r\n", ch); > return; } > if (rroom <= 0) { > > sprintf(buf, "There is no room with the number %d", iroom); > > send_to_char(buf, ch); > > return; } > /* Main stuff */ > switch (*buf2) { > case 'n': > case 'N': > dir = NORTH; > break; > case 'e': > case 'E': > dir = EAST; > break; > case 's': > case 'S': > dir = SOUTH; > break; > case 'w': > case 'W': > dir = WEST; > break; > case 'u': > case 'U': > dir = UP; > break; > case 'd': > case 'D': > dir = DOWN; > break; > case 'ne': > case 'NE': > dir = NORTHEAST; > break; > case 'nw': > case 'NW': > dir = NORTHWEST; > break; > case 'se': > case 'SE': > dir = SOUTHEAST; > break; > case 'sw': > case 'SW': > dir = SOUTHWEST; > break; > } > > CREATE(world[rroom].dir_option[rev_dir[dir]], struct room_direction_data,1); > world[rroom].dir_option[rev_dir[dir]]->general_description = NULL; > world[rroom].dir_option[rev_dir[dir]]->keyword = NULL; > world[rroom].dir_option[rev_dir[dir]]->to_room = ch->in_room; > > CREATE(world[ch->in_room].dir_option[dir], struct room_direction_data,1); > world[ch->in_room].dir_option[dir]->general_description = NULL; > world[ch->in_room].dir_option[dir]->keyword = NULL; > world[ch->in_room].dir_option[dir]->to_room = rroom; > > /* Only works if you have Oasis OLC */ > olc_add_to_save_list((iroom/100), OLC_SAVE_ROOM); > > sprintf(buf, "You make an exit %s to room %d.\r\n", buf2, iroom); > send_to_char(buf, ch); > } > > Now heres what the make has to say: > > make ../bin/circle > make[1]: Entering directory `/usr/circle/circle30bpl17/src' > gcc -g -O2 -Wall -c act.wizard.c -o act.wizard.o > act.wizard.c: In function `do_dig': > act.wizard.c:3044: warning: multi-character character constant > act.wizard.c:3044: warning: case value out of range > act.wizard.c:3045: warning: multi-character character constant > act.wizard.c:3045: warning: case value out of range > act.wizard.c:3048: warning: multi-character character constant > act.wizard.c:3048: warning: case value out of range > act.wizard.c:3049: warning: multi-character character constant > act.wizard.c:3049: warning: case value out of range > act.wizard.c:3052: warning: multi-character character constant > act.wizard.c:3052: warning: case value out of range > act.wizard.c:3053: warning: multi-character character constant > act.wizard.c:3053: warning: case value out of range > act.wizard.c:3056: warning: multi-character character constant > act.wizard.c:3056: warning: case value out of range > act.wizard.c:3057: warning: multi-character character constant > act.wizard.c:3057: warning: case value out of range > act.wizard.c:3073: `OLC_SAVE_ROOM' undeclared (first use this function) > act.wizard.c:3073: (Each undeclared identifier is reported only once > act.wizard.c:3073: for each function it appears in.) > make[1]: *** [act.wizard.o] Error 1 > make[1]: Leaving directory `/usr/circle/circle30bpl17/src' > make: *** [all] Error 2 > > Being new to coding (learning as I go) I dont understand all this. > Im not sure where or how to make the 'OLC_SAVE_ROOM' declared anywhere. > I also dont quite follow all the warnings being stated as well. > Any form of help will be appreciated. > > Matt I am Almost POSITIVE that include olc.h in the file will fix the OLC_SAVE_ROOM, as it did on mine, hope this helps Ryan +------------------------------------------------------------+ | 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/11/01 PDT