i was installing my own version of mob progs to allow builders access to specs. these specs are assigned as the mobs are parsed. I noticed that i forgot to include shops to be saved as a spec in the mob file. the mud started crashing after that. actually, the story is somewhat different, but it should produce the same results. so i took a look in shop.c SPECIAL(shop_keeper) and assign_the_shopkeepers(). i saw that on assigning, the shops save the previous spec and do a call to it in SPECIAL(shop_keeper). so now we have a recursive call to shop_keeper(). who knows, a newbie programmer might want to make a shop and do a spec assign to a shop in spec_assign.c. anyway, my change seems to have stopped the crashing - on the test mud haven't crashed it on the game port with the mob procs yet =) SPECIAL(shop_keeper) { char argm[MAX_INPUT_LENGTH]; struct char_data *keeper = (struct char_data *) me; int shop_nr; for (shop_nr = 0; shop_nr <= top_shop; shop_nr++) if (SHOP_KEEPER(shop_nr) == keeper->nr) break; if (shop_nr > top_shop) return (FALSE); if (SHOP_FUNC(shop_nr)) /* Check secondary function */ if ((SHOP_FUNC(shop_nr)) (ch, me, cmd, arg)) return (TRUE); i'm suggesting a change of to: if (SHOP_FUNC(shop_nr) && SHOP_FUNC(shop_nr) != *this) /* Check secondary function */ if ((SHOP_FUNC(shop_nr)) (ch, me, cmd, arg)) return (TRUE); _________________________________________________________________ MSN Photos is the easiest way to share and print your photos: http://photos.msn.com/support/worldwide.aspx -- +---------------------------------------------------------------+ | 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