/*
* ACT bits for mobs.
* Used in #MOBILES.
*/
#define ACT_IS_NPC BV00 /* Auto set for mobs */
#define ACT_SENTINEL BV01 /* Stays in one room */
#define ACT_SCAVENGER BV02 /* Picks up objects */
#define ACT_NOFLEE BV03 /* Mobs don't flee. -T */
#define ACT_AGGRESSIVE BV05 /* Attacks PC's */
#define ACT_STAY_AREA BV06 /* Won't leave area */
#define ACT_WIMPY BV07 /* Flees when hurt */
#define ACT_PET BV08 /* Auto set for pets */
#define ACT_TRAIN BV09 /* Can train PC's */
#define ACT_PRACTICE BV10 /* Can practice PC's */
#define ACT_IMMORTAL BV11 /* Cannot be killed */
#define ACT_DEADLY BV12 /* Has a deadly poison */
#define ACT_POLYSELF BV13
#define ACT_META_AGGR BV14 /* Extremely aggressive */
#define ACT_GUARDIAN BV15 /* Protects master */
#define ACT_RUNNING BV16 /* Hunts quickly */
#define ACT_NOWANDER BV17 /* Doesn't wander */
#define ACT_MOUNTABLE BV18 /* Can be mounted */
#define ACT_MOUNTED BV19 /* Is mounted */
#define ACT_SCHOLAR BV20 /* Can teach languages */
#define ACT_SECRETIVE BV21 /* actions aren't seen */
#define ACT_POLYMORPHED BV22 /* Mob is a ch */
#define ACT_MOBINVIS BV23 /* Like wizinvis */
#define ACT_NOASSIST BV24 /* Doesn't assist mobs */
#define ACT_NOKILL BV25 /* Mob can't die */
#define ACT_DROID BV26 /* mob is a droid */
#define ACT_NOCORPSE BV27
#define ACT_PUEBLO BV28 /* This is the pueblo flag */
#define ACT_PROTOTYPE BV30 /* A prototype mob */
typedef enum
{
ACT_IS_NPC, /* Auto set for mobs */
ACT_SENTINEL, /* Stays in one room */
ACT_SCAVENGER, /* Picks up objects */
ACT_NOFLEE, /* Mobs don't flee. -T */
ACT_AGGRESSIVE, /* Attacks PC's */
ACT_STAY_AREA, /* Won't leave area */
ACT_WIMPY, /* Flees when hurt */
ACT_PET, /* Auto set for pets */
ACT_TRAIN, /* Can train PC's */
ACT_PRACTICE, /* Can practice PC's */
ACT_IMMORTAL, /* Cannot be killed */
ACT_DEADLY, /* Has a deadly poison */
ACT_POLYSELF,
ACT_META_AGGR, /* Extremely aggressive */
ACT_GUARDIAN, /* Protects master */
ACT_RUNNING, /* Hunts quickly */
ACT_NOWANDER, /* Doesn't wander */
ACT_MOUNTABLE, /* Can be mounted */
ACT_MOUNTED, /* Is mounted */
ACT_SCHOLAR, /* Can teach languages */
ACT_SECRETIVE, /* actions aren't seen */
ACT_POLYMORPHED, /* Mob is a ch */
ACT_MOBINVIS, /* Like wizinvis */
ACT_NOASSIST, /* Doesn't assist mobs */
ACT_NOKILL, /* Mob can't die */
ACT_DROID, /* mob is a droid */
ACT_NOCORPSE,
ACT_PUEBLO, /* This is the pueblo flag */
ACT_PROTOTYPE, /* A prototype mob */
MAX_ACT_FLAG
}
mob_flags;
#define ACT_IS_NPC 0
#define ACT_SENTINEL 1
…
code->act = 1 | 2 | 3;
enum {
ACT_FOO = (1 << 0),
ACT_BAR = (1 << 1),
ACT_PFFT = (1 << 2)
}