diff --git a/src/uhitm.c b/src/uhitm.c index 8b00bcdc0..1800d0e46 100644 --- a/src/uhitm.c +++ b/src/uhitm.c @@ -929,6 +929,13 @@ hmon_hitmon_weapon_melee( hmd->dmg = dmgval(obj, mon); /* a minimal hit doesn't exercise proficiency */ hmd->train_weapon_skill = (hmd->dmg > 1); + + /* Healer with anatomy knowledge */ + if (Role_if(PM_HEALER) && hmd->hand_to_hand + && obj->oclass == WEAPON_CLASS + && objects[obj->otyp].oc_skill == P_KNIFE) + hmd->dmg += min(3, svm.mvitals[monsndx(mon->data)].died / 6); + /* special attack actions */ if (!hmd->train_weapon_skill || mon == u.ustuck || u.twoweap /* Cleaver can hit up to three targets at once so don't diff --git a/src/weapon.c b/src/weapon.c index 9a12df652..bd21b93b2 100644 --- a/src/weapon.c +++ b/src/weapon.c @@ -319,10 +319,6 @@ dmgval(struct obj *otmp, struct monst *mon) } } - /* Healer with anatomy knowledge */ - if (Role_if(PM_HEALER) && objects[otmp->otyp].oc_skill == P_KNIFE) - tmp += min(3, svm.mvitals[monsndx(ptr)].died / 6); - /* Put weapon vs. monster type damage bonuses in below: */ if (Is_weapon || otmp->oclass == GEM_CLASS || otmp->oclass == BALL_CLASS || otmp->oclass == CHAIN_CLASS) {