Large monster can knock back smaller ones

When a monster at least two sizes larger hits another one,
there's a chance the smaller defender will be knocked back.

This applies also to hero, attacking when polymorphed to
a large monster, or defending from a large monster.

Most of the monsters that can knock back are giants and dragons.

Idea and some of the code from EvilHack.
This commit is contained in:
Pasi Kallinen
2022-07-18 23:01:08 +03:00
parent 7bf02ade48
commit 0bca93be87
5 changed files with 103 additions and 2 deletions

View File

@@ -2919,6 +2919,8 @@ extern void do_stone_mon(struct monst *, struct attack *, struct monst *,
extern int damageum(struct monst *, struct attack *, int);
extern int explum(struct monst *, struct attack *);
extern void missum(struct monst *, struct attack *, boolean);
extern boolean mhitm_knockback(struct monst *, struct monst *,struct attack *,
int *, boolean);
extern int passive(struct monst *, struct obj *, boolean, boolean, uchar,
boolean);
extern void passive_obj(struct monst *, struct obj *, struct attack *);