After much screaming and hair-pulling I managed to get the mud to stop
crashing every 5 seconds. I'm not 100% sure it's really fixed, or if I
just drove the issue back underground though. *sigh*
I was fairly sure I'd removed my autoassist code in order to test the
effects that would have on the whole deal, but I either didn;t, did
something differently, or whatnot, because this time when I removed it, I
was able to fix the issue. The code USED to look like this:
for (k = ch->followers; k; k = k->next) {
if (PRF_FLAGGED(k->follower, PRF_AUTOASSIST) &&
(k->follower->in_room == ch->in_room))
do_assist(k->follower, GET_NAME(ch), 0, 0);
}
I then switched it to checking if the character HAD followers first.
if (ch->followers != NULL) {
for (k = ch->followers; k; k = k->next) {
if (PRF_FLAGGED(k->follower, PRF_AUTOASSIST) &&
(k->follower->in_room == ch->in_room))
do_assist(k->follower, GET_NAME(ch), 0, 0);
}
}
This code, of course, is in do_hit, where it puts the attacker in a
waitstate. It works properly, characters flagged autoassisting do jump to
the aid of their friends.
Now, could all of the issues I've had have simply been not checking for a
NULL? From what I've read it seems so . . . but I had this issue before,
and I didn't have autoassist code in that time (I think . . . god it's
hard to keep track of everything!)
At any rate, thanks a ton for the suggestions!
-Mathew
--
+---------------------------------------------------------------+
| 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