Okidoki i have finally figgered out how to like code :>. (barely) at any rate I am trying to get it so that during the void_do_start in class.c it will do a hcontrol build 6600 w GET_NAME(ch) for now. Later i will add a structure for what house is built blah blah. But for a test i wanted to basically turn 6600 into a house for the next puppy that logged in. Well it works fine. I mean it gives it the HOUSE flag.... well first here is the code. void do_start(struct char_data * ch) { void advance_level(struct char_data * ch); extern struct room_data *world; struct house_control_rec house_control[MAX_HOUSES]; sh_int virt_house, real_house, real_atrium, virt_atrium, exit_num; long owner; struct house_control_rec temp_house; int num_of_houses = 0; GET_LEVEL(ch) = 1; GET_EXP(ch) = 1; ... blah blah down a little GET_COND(ch, THIRST) = 24; GET_COND(ch, FULL) = 24; GET_COND(ch, DRUNK) = 0; virt_house=6600; // make a randomizing thinger here real_house=real_room(virt_house); exit_num=3; // exit west real_atrium = TOROOM(real_house, exit_num); virt_atrium = world[real_atrium].number; owner = get_id_by_name(GET_NAME(ch)); temp_house.mode = HOUSE_PRIVATE; temp_house.vnum = virt_house; temp_house.atrium = virt_atrium; temp_house.exit_num = exit_num; temp_house.built_on = time(0); temp_house.last_payment = 0; temp_house.owner = owner; temp_house.num_of_guests = 0; house_control[num_of_houses++] = temp_house; SET_BIT(ROOM_FLAGS(real_house), ROOM_HOUSE | ROOM_PRIVATE); SET_BIT(ROOM_FLAGS(real_atrium), ROOM_ATRIUM); House_crashsave(virt_house); House_save_control(); ch->player.time.played = 0; ch->player.time.logon = time(0); } ok there it is. Now my queustion lies in that it creats the ROOM_HOUSE, ROOM_PRIVATE, and ROOM_ATRIUM flags on 6600 and 6601 *the atrium* fine! but when i do a hcontrol show it doesnt list 6600 in there and when i compiled this is the error i got: (only one.. amazing huh?) class.c: In function Do_start': class.c:879: warning: implicit declaration of function House_save_control' Now for anyone wanting to implement this or a variant for the newbi-ish ppl you need to add house.h to the class.o in the Makefile and also #include house.h at the top of class.c also another more realistic thing to do (i dunno why it was in there) is get rid of the double-sided door to an atrium check in house.c and get rid of the entire atrium check for guest list in act.movement.c ... its more realistic that way i think. Anyway anyone willing to help please do so! If you want more info and so forth please let me know. Im stumped. wart *-=-=-=-=-=-=-=* w0nderful *-=-* w0rld *-=-* 0f *-=-* wart *-=-=-=-=-* hartman@kuntrynet.com wart@trilidun.kuntrynet.com http://trilidun.kuntrynet.com Eudaemonia Mud: 207.40.85.11 Port 4000 +-----------------------------------------------------------+ | 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