SEDUCE=0
When SEDUCE is disabled, instead of swapping attacks in mons[] once, do it on the fly in getmattk() whenever needed. That allows mons[] to become readonly, although this doesn't declare it 'const' because doing so will require a zillion 'struct permonst *' updates to match. This seemed trickier than it should be, but that turned out to be because the old behavior was broken. Setting SEDUCE=0 in sysconf or user's own configuration file resulted in all succubus and incubus attacks being described as monster smiles engagingly or seductively rather than hitting (while dishing out physical damage). I didn't try rebuilding 3.4.3 to see whether this was already broken before being migrated to SYSCF.
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
/* NetHack 3.6 uhitm.c $NHDT-Date: 1545597432 2018/12/23 20:37:12 $ $NHDT-Branch: NetHack-3.6.2-beta01 $:$NHDT-Revision: 1.197 $ */
|
||||
/* NetHack 3.6 uhitm.c $NHDT-Date: 1547118630 2019/01/10 11:10:30 $ $NHDT-Branch: NetHack-3.6.2-beta01 $:$NHDT-Revision: 1.198 $ */
|
||||
/* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */
|
||||
/*-Copyright (c) Robert Patrick Rankin, 2012. */
|
||||
/* NetHack may be freely redistributed. See license for details. */
|
||||
@@ -1603,7 +1603,7 @@ register struct attack *mattk;
|
||||
case AD_WERE: /* no special effect on monsters */
|
||||
case AD_HEAL: /* likewise */
|
||||
case AD_PHYS:
|
||||
physical:
|
||||
physical:
|
||||
if (mattk->aatyp == AT_WEAP) {
|
||||
if (uwep)
|
||||
tmp = 0;
|
||||
@@ -1990,7 +1990,7 @@ register struct attack *mattk;
|
||||
goto common;
|
||||
case AD_ELEC:
|
||||
resistance = resists_elec(mdef);
|
||||
common:
|
||||
common:
|
||||
if (!resistance) {
|
||||
pline("%s gets blasted!", Monnam(mdef));
|
||||
mdef->mhp -= tmp;
|
||||
@@ -2289,7 +2289,7 @@ register struct monst *mon;
|
||||
weapon = 0;
|
||||
switch (mattk->aatyp) {
|
||||
case AT_WEAP:
|
||||
use_weapon:
|
||||
use_weapon:
|
||||
/* Certain monsters don't use weapons when encountered as enemies,
|
||||
* but players who polymorph into them have hands or claws and
|
||||
* thus should be able to use weapons. This shouldn't prohibit
|
||||
|
||||
Reference in New Issue
Block a user