Re: Specs from dead mobs

From: Welcor (welcor@dune.net)
Date: 02/03/02


----- Original Message -----
From: "Kras Kresh" <kras_kresh@HOTMAIL.COM>

> Under the new handle for extracting mobs, shouldn't there be a check for
> dead mobs not to call a spec? I chopped up a janitor spec'ed mob and then
on
> the next prompt it decided to pick up trash (its corpse). For some reason
it
> didn't pick up anything either. And yes there were no other items in the
> room except the board.

A quick fix in special() in interpreter.c (mailer code)

  /* special in mobile present? */
  for (k = world[IN_ROOM(ch)].people; k; k = k->next_in_room)
    if (GET_MOB_SPEC(k) != NULL)
+     if (!MOB_FLAGGED(k, MOB_NOTDEADYET))
        if (GET_MOB_SPEC(k) (ch, k, cmd, arg))
          return (1);

Also in fight.c the call to the fight-related procs need a check;

+ if !(MOB_FLAGGED(ch, MOB_NOTDEADYET))
    if (MOB_FLAGGED(ch, MOB_SPEC) && mob_index[GET_MOB_RNUM(ch)].func !=
NULL) {
      char actbuf[MAX_INPUT_LENGTH] = "";
      (mob_index[GET_MOB_RNUM(ch)].func) (ch, ch, 0, actbuf);
    }

Welcor

--
   +---------------------------------------------------------------+
   | 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