vampires now shapeshift [trunk only]
- can shift into fog clouds, vampire bats, and vampire lords into wolves - after being "killed" in shifted form, they transform back rather than get destroyed, and you must take them on in vampire form to defeat them - can deliberately shift into fog clouds to pass under closed doors
This commit is contained in:
@@ -1196,6 +1196,7 @@ E void NDECL(kill_genocided_monsters);
|
||||
E void FDECL(golemeffects, (struct monst *,int,int));
|
||||
E boolean FDECL(angry_guards, (BOOLEAN_P));
|
||||
E void NDECL(pacify_guards);
|
||||
E void FDECL(decide_to_shapeshift, (struct monst *,int));
|
||||
|
||||
/* ### mondata.c ### */
|
||||
|
||||
@@ -1209,6 +1210,7 @@ E boolean FDECL(resists_blnd, (struct monst *));
|
||||
E boolean FDECL(can_blnd, (struct monst *,struct monst *,UCHAR_P,struct obj *));
|
||||
E boolean FDECL(ranged_attk, (struct permonst *));
|
||||
E boolean FDECL(hates_silver, (struct permonst *));
|
||||
E boolean FDECL(mon_hates_silver, (struct monst *));
|
||||
E boolean FDECL(passes_bars, (struct permonst *));
|
||||
E boolean FDECL(can_blow, (struct monst *));
|
||||
E boolean FDECL(can_track, (struct permonst *));
|
||||
@@ -1247,6 +1249,7 @@ E boolean FDECL(closed_door, (int,int));
|
||||
E boolean FDECL(accessible, (int,int));
|
||||
E void FDECL(set_apparxy, (struct monst *));
|
||||
E boolean FDECL(can_ooze, (struct monst *));
|
||||
E boolean FDECL(can_fog, (struct monst *));
|
||||
#ifdef BARGETHROUGH
|
||||
E boolean FDECL(should_displace, (struct monst *,coord *,long *,int,
|
||||
XCHAR_P,XCHAR_P));
|
||||
@@ -1591,6 +1594,7 @@ E int NDECL(dospinweb);
|
||||
E int NDECL(dosummon);
|
||||
E int NDECL(dogaze);
|
||||
E int NDECL(dohide);
|
||||
E int NDECL(dopoly);
|
||||
E int NDECL(domindblast);
|
||||
E void FDECL(skinback, (BOOLEAN_P));
|
||||
E const char *FDECL(mbodypart, (struct monst *,int));
|
||||
|
||||
@@ -153,6 +153,10 @@ NEARDATA extern coord bhitpos; /* place where throw or zap hits or stops */
|
||||
#define CORPSTAT_INIT 0x01 /* pass init flag to mkcorpstat */
|
||||
#define CORPSTAT_BURIED 0x02 /* bury the corpse or statue */
|
||||
|
||||
/* flags for decide_to_shift() */
|
||||
#define SHIFT_SEENMSG 0x01 /* put out a message if in sight */
|
||||
#define SHIFT_MSG 0x02 /* always put out a message */
|
||||
|
||||
/* special mhpmax value when loading bones monster to flag as extinct or genocided */
|
||||
#define DEFUNCT_MONSTER (-100)
|
||||
|
||||
|
||||
@@ -176,5 +176,7 @@ struct monst {
|
||||
|
||||
#define DEADMONSTER(mon) ((mon)->mhp < 1)
|
||||
#define is_starting_pet(mon) ((mon)->m_id == context.startingpet_mid)
|
||||
|
||||
#define is_vampshifter(mon) ((mon)->cham == PM_VAMPIRE || \
|
||||
(mon)->cham == PM_VAMPIRE_LORD || \
|
||||
(mon)->cham == PM_VLAD_THE_IMPALER)
|
||||
#endif /* MONST_H */
|
||||
|
||||
Reference in New Issue
Block a user