github issue #1472 - elven monster bow bonus

Issue reported by Tomsod: monster elves were intended to get a small
bonus to to-hit and damage when shooting arrows with bows, but the
check for that tested the arrows for skill P_BOW which never matches.
It should be -P_BOW.

[Pretty minor: +1 to-hit for any bow, another +1 to-hit if elven bow;
+1 damage for elven arrow; against hero and against other monsters.]

Fixes #1472
This commit is contained in:
PatR
2025-12-23 23:28:58 -08:00
parent 45766db520
commit aae7778d66
2 changed files with 4 additions and 1 deletions
+2
View File
@@ -1555,6 +1555,8 @@ dumplogs include spells and skills
praying will not restore monster-form HP while polymorphed, unless you praying will not restore monster-form HP while polymorphed, unless you
have unchanging have unchanging
winter wolf cub was missing for monster to lycanthrope conversion winter wolf cub was missing for monster to lycanthrope conversion
monster elves shooting arrows weren't getting intended small to-hit and damage
bonuses
Fixes to 3.7.0-x General Problems Exposed Via git Repository Fixes to 3.7.0-x General Problems Exposed Via git Repository
+2 -1
View File
@@ -698,8 +698,9 @@ m_throw(
hitv = 3 - distmin(u.ux, u.uy, mon->mx, mon->my); hitv = 3 - distmin(u.ux, u.uy, mon->mx, mon->my);
if (hitv < -4) if (hitv < -4)
hitv = -4; hitv = -4;
/* [elves get a shooting bonus, orcs don't...] */
if (is_elf(mon->data) if (is_elf(mon->data)
&& objects[singleobj->otyp].oc_skill == P_BOW) { && objects[singleobj->otyp].oc_skill == -P_BOW) {
hitv++; hitv++;
if (MON_WEP(mon) && MON_WEP(mon)->otyp == ELVEN_BOW) if (MON_WEP(mon) && MON_WEP(mon)->otyp == ELVEN_BOW)
hitv++; hitv++;