struct attack *mattk, struct obj *mwep, int dieroll)
{
struct permonst *pa = magr->data, *pd = mdef->data;
- int armpro;
- /* this was moved downstream during a 2020 refactor */
- /* boolean cancelled; */
struct mhitm_data mhm;
mhm.damage = d((int) mattk->damn, (int) mattk->damd);
mhm.hitflags = MM_MISS;
}
}
- /* cancellation factor is the same as when attacking the hero */
- armpro = magic_negation(mdef);
- /* cancelled = magr->mcan || !(rn2(10) >= 3 * armpro); */
-
mhitm_adtyping(magr, mattk, mdef, &mhm);
if (mhm.done)
return mhm.hitflags;
hitmu(register struct monst *mtmp, register struct attack *mattk)
{
struct permonst *mdat = mtmp->data;
- /* int uncancelled; */
- int armpro;
struct permonst *olduasmon = g.youmonst.data;
int res;
struct mhitm_data mhm;
if ((is_undead(mdat) || is_vampshifter(mtmp)) && midnight())
mhm.damage += d((int) mattk->damn, (int) mattk->damd); /* extra damage */
- /* Next a cancellation factor.
- * Use uncancelled when cancellation factor takes into account certain
- * armor's special magic protection. Otherwise just use !mtmp->mcan.
- */
- armpro = magic_negation(&g.youmonst);
- /* this was moved downstream during a 2020 refactor */
- /* uncancelled = !mtmp->mcan && (rn2(10) >= 3 * armpro); */
-
mhitm_adtyping(mtmp, mattk, &g.youmonst, &mhm);
if (mhm.done)
return mhm.hitflags;