[CODE] autoloot

From: Ron Hensley (ron@CROSS.DMV.COM)
Date: 10/09/97


As im the one that origianlly wrote the autoloot way way back when, I felt
a need to jump into this. Ive used that code for 3 years with nary a crash.
Its changes made id think that are causing the crash, as hed stated,
putting in the multiple put/get code.

However the fix to the suggested possible problem:

At the top of:
void damage(struct char_data * ch, struct char_data * victim, int dam,
            int attacktype)

add:
  int mobflag;

Then down at the autoeq code, right before the call to die() add:

    if (IS_NPC(ch))
      mobflag = 1;
    else
      mobflag = 0;

Then after the die call, modify the autoloot line to:

    die(victim, ch);

    if (mobflag && !IS_NPC(ch) && PRF2_FLAGGED(ch, PRF2_AUTOLOOT)) {
     do_get(ch,"all corpse",0,0);
    }

This bypasses the potntial problem by checking if the victim is a mob
before the victim is killed off

    *******************************************************************
    *   Ron Hensley                     ron@dmv.com                   *
    *   Network Administrator           http://www.dmv.com/~ron       *
    *                                   PGP Key at WWW Page           *
    *   DelMarVa OnLine                 749-7898 Ext. 403             *
    *******************************************************************


     +------------------------------------------------------------+
     | Ensure that you have read the CircleMUD Mailing List FAQ:  |
     | http://democracy.queensu.ca/~fletcher/Circle/list-faq.html |
     +------------------------------------------------------------+



This archive was generated by hypermail 2b30 : 12/08/00 PST