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