Not sure why this wasn't done before, but I took out the castle.c file and of course, since I didn't take out the castle mobs, I got a dozen of these kind of errors: Sep 17 17:21:25 :: SYSERR: King Welmar (#15001): Attempting to call non-existing mob function. Now, I understand the need to have the MOB_SPEC flag, but I hate having to change the mob files each time. So I made some changes to allow for dynamic assignment. Basically, if you assign a spec to a mob, it adds the flag. To make sure no mobs had flags they shouldn't I also made a change to remove all flags just in case they were added and not the specs. In db.c right after this line in parse_mobile: SET_BIT(MOB_FLAGS(mob_proto + i), MOB_ISNPC); add this: REMOVE_BIT(MOB_FLAGS(mob_proto + i), MOB_SPEC); In spec_assign.c change ASSIGNMOB to this void ASSIGNMOB(mob_vnum mob, SPECIAL(fname)) { mob_rnum rnum; if ((rnum = real_mobile(mob)) != NOBODY) { mob_index[rnum].func = fname; SET_BIT(MOB_FLAGS(mob_proto + rnum), MOB_SPEC); } else if (!mini_mud) log("SYSERR: Attempt to assign spec to non-existant mob #%d", mob); } Any thoughts or ideas why it shouldn't be done? -- +---------------------------------------------------------------+ | 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