Re: Problems (again) with stop_follower

From: Mathew Earle Reuther (graymere@zipcon.net)
Date: 10/07/02


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