Merciful Mob Snippet [by Mulder]
Snippet Posted Wednesday, December 2nd @ 01:03:51 AM, by George Greer in the Mobiles dept.
Michael J. Fara writes: "This will implement a mercy flag for mobs. If a mob is mercy flagged, combat will end when the player/mob fighting the flagged mob is mortally wounded. What might this be useful for? Cleric interaction, more excitingn combat, rescue missions. You name it. If you are honest, you will give me some credit :P"
For all the "+" add the line.

In constants.c, search for "!BLIND"

  "!SLEEP",
  "!BASH",
  "!BLIND",
+ "MERCY",
   "\n"
};

In fight.c, search for "scrambles to"

      {
         GET_POS (ch) = POS_FIGHTING;
        act ("$n scrambles to $s feet!", TRUE, ch, 0, 0, TO_ROOM);
          }
+       if ((GET_POS (FIGHTING(ch)) == POS_MORTALLYW) &&
+         (MOB_FLAGGED(ch, MOB_MERCY))) {
+
+        stop_fighting(FIGHTING(ch));
+        stop_fighting(ch);
+          }
        }

In structs.h, search for "MOB_NOBLIND"

#define MOB_NOSUMMON     (1 << 14) /* Mob can't be summoned */ 
#define MOB_NOSLEEP      (1 << 15) /* Mob can't be slept */ 
#define MOB_NOBASH       (1 << 16) /* Mob can't be bashed (e.g. trees)  */ 
#define MOB_NOBLIND      (1 << 17) /* Mob can't be blinded */ 
+#define MOB_MERCY        (1 << 18) /* Mob won't kill you */

If you have OasisOLC, adjusted "NUM_MOB_FLAGS" in olc.h accordingly.
And that it is. Quite easy I suppose, hmm?

<< Score snippet [by Hellfire] | Reply | View as text | Threaded | do_say snippet [by Andrew] >>

 


Related Links
  Michael J. Fara
Related Articles
More by greerga
 
 

CircleMUD Snippets
 
Note: Not all of these snippets will work perfectly with your version of code, so be prepared to fix one or two bugs that may arise, and please let me know what you needed to do to fix it. Sending a corrected version is always welcome.
Finally, if you wish to use any of the snippets from this page, you are more than welcome, just mention the authors in your credits. If you wish to release any of these snippets to the public on another site, contact me FIRST.
 
 


email
by Ace (acem2@hotmail.com) on Saturday, December 9th @ 12:04:38 AM
http://
miiiiike heh what's your email addy?
[ Reply to this comment ]

Re: email
by Michael J. Fara (mfara@bellatlantic.net) on Monday, February 12th @ 12:30:05 PM
http://www.deltamud.net
Heh, hey Ace. Weird. How old is this response? New e-mail addy is mfara@bellatlantic.net
[ Reply to this comment ]

Re: email
by AceM2 (acem2@energyunited.net) on Thursday, April 5th @ 12:58:09 AM
http://www.strategy-guides.com/
few months lol
[ Reply to this comment ]