Make lyncanthropy less crippling

Now, the were-creature instincts will keep the hero from
unintentionally changing shape while next to hostile creatures.
This commit is contained in:
Pasi Kallinen
2026-01-10 14:05:03 +02:00
parent e504d44de2
commit e93f0dedbf
2 changed files with 4 additions and 0 deletions

View File

@@ -1560,6 +1560,7 @@ monster elves shooting arrows weren't getting intended small to-hit and damage
safe armor enchantment limit is lowered by one for magical armor safe armor enchantment limit is lowered by one for magical armor
luck has a reduced effect on to-hit chance luck has a reduced effect on to-hit chance
monsters use wand of teleportation to move hero away from item pile monsters use wand of teleportation to move hero away from item pile
lycanthrope instincts keep hero from changing shape while next to hostiles
Fixes to 3.7.0-x General Problems Exposed Via git Repository Fixes to 3.7.0-x General Problems Exposed Via git Repository

View File

@@ -202,6 +202,8 @@ you_were(void)
an(mons[u.ulycn].pmnames[NEUTRAL] + 4)); an(mons[u.ulycn].pmnames[NEUTRAL] + 4));
if (!paranoid_query(ParanoidWerechange, qbuf)) if (!paranoid_query(ParanoidWerechange, qbuf))
return; return;
} else if (monster_nearby()) {
return;
} }
gw.were_changes++; gw.were_changes++;
(void) polymon(u.ulycn); (void) polymon(u.ulycn);
@@ -217,6 +219,7 @@ you_unwere(boolean purify)
set_ulycn(NON_PM); /* cure lycanthropy */ set_ulycn(NON_PM); /* cure lycanthropy */
} }
if (!Unchanging && is_were(gy.youmonst.data) if (!Unchanging && is_were(gy.youmonst.data)
&& !monster_nearby()
&& (!controllable_poly && (!controllable_poly
|| !paranoid_query(ParanoidWerechange, "Remain in beast form?"))) || !paranoid_query(ParanoidWerechange, "Remain in beast form?")))
rehumanize(); rehumanize();