From: Lars Juul Subject: Code for "smart" mobs MOB_IQ_FIGHT ============ Add the MOB_IQ_FIGHT flag in struch.h and constants.c - in fight.c in perform_violence add a vict and tch var and insert the following after the call for MOB_SPEC: if (MOB_FLAGGED(ch, MOB_IQ_FIGHT)) { /* LJ IQ fight */ vict = NULL; for (tch = world[ch->in_room].people; tch; tch = tch->next_in_room) if (FIGHTING(tch) == ch && !IS_NPC(tch)) if (vict == NULL || GET_HIT(tch) < GET_HIT(vict)) vict = tch; if (vict != NULL && FIGHTING(ch) != vict) { stop_fighting(ch); hit(ch, vict, TYPE_UNDEFINED); } }