From: Sean Hunt Date: Sat, 28 Feb 2015 00:05:01 +0000 (-0500) Subject: Make SEDUCE unconditional. X-Git-Tag: NetHack-3.6.0_RC01~662 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=6e9fa71b0523a8de55730dd85eb3742dc0fd0fe4;p=nethack Make SEDUCE unconditional. --- diff --git a/include/config.h b/include/config.h index 1af4b0560..3084be864 100644 --- a/include/config.h +++ b/include/config.h @@ -417,7 +417,6 @@ typedef unsigned char uchar; /* dungeon levels */ #define WALLIFIED_MAZE /* Fancy mazes - Jean-Christophe Collet */ /* monsters & objects */ -#define SEDUCE /* Succubi/incubi seduction, by KAA, suggested by IM */ /* I/O */ #define REDO /* support for redoing last command - DGK */ #if !defined(MAC) diff --git a/include/extern.h b/include/extern.h index 492718730..9f03e8151 100644 --- a/include/extern.h +++ b/include/extern.h @@ -1112,9 +1112,7 @@ E boolean NDECL(gulp_blnd_check); E int FDECL(gazemu, (struct monst *,struct attack *)); E void FDECL(mdamageu, (struct monst *,int)); E int FDECL(could_seduce, (struct monst *,struct monst *,struct attack *)); -#ifdef SEDUCE E int FDECL(doseduce, (struct monst *)); -#endif /* ### minion.c ### */ diff --git a/include/monattk.h b/include/monattk.h index 7c228c87d..1bd7ff616 100644 --- a/include/monattk.h +++ b/include/monattk.h @@ -72,7 +72,6 @@ #define AD_DISE 33 /* confers diseases */ #define AD_DCAY 34 /* decays organics (brown Pudding) */ #define AD_SSEX 35 /* Succubus seduction (extended) */ - /* If no SEDUCE then same as AD_SEDU */ #define AD_HALU 36 /* causes hallucination */ #define AD_DETH 37 /* for Death only */ #define AD_PEST 38 /* for Pestilence only */ diff --git a/include/sys.h b/include/sys.h index ac39239ee..713e33a55 100644 --- a/include/sys.h +++ b/include/sys.h @@ -35,11 +35,7 @@ struct sysopt { }; E struct sysopt sysopt; -#ifdef SEDUCE -# define SYSOPT_SEDUCE sysopt.seduce -#else -# define SYSOPT_SEDUCE 0 -#endif +#define SYSOPT_SEDUCE sysopt.seduce #endif /* SYS_H */ diff --git a/src/mhitm.c b/src/mhitm.c index 0e8bf7d1c..24e5c7f1c 100644 --- a/src/mhitm.c +++ b/src/mhitm.c @@ -1083,9 +1083,7 @@ mdamagem(magr, mdef, mattk) /* Automatic kill if drained past level 0 */ } break; -#ifdef SEDUCE case AD_SSEX: -#endif case AD_SITM: /* for now these are the same */ case AD_SEDU: if (magr->mcan) break; diff --git a/src/mhitu.c b/src/mhitu.c index 511513f39..6f298ff63 100644 --- a/src/mhitu.c +++ b/src/mhitu.c @@ -12,9 +12,7 @@ STATIC_DCL void FDECL(urustm, (struct monst *, struct obj *)); STATIC_DCL boolean FDECL(u_slip_free, (struct monst *,struct attack *)); STATIC_DCL int FDECL(passiveum, (struct permonst *,struct monst *,struct attack *)); -#ifdef SEDUCE STATIC_DCL void FDECL(mayberem, (struct obj *, const char *)); -#endif STATIC_DCL boolean FDECL(diseasemu, (struct permonst *)); STATIC_DCL int FDECL(hitmu, (struct monst *,struct attack *)); @@ -1256,7 +1254,6 @@ dopois: if(!mtmp->mcan) stealgold(mtmp); break; -#ifdef SEDUCE case AD_SSEX: if(SYSOPT_SEDUCE){ if(could_seduce(mtmp, &youmonst, mattk) == 1 @@ -1266,7 +1263,6 @@ dopois: break; } /* else FALLTHRU */ -#endif case AD_SITM: /* for now these are the same */ case AD_SEDU: if (is_animal(mtmp->data)) { @@ -1274,10 +1270,7 @@ dopois: if (mtmp->mcan) break; /* Continue below */ } else if (dmgtype(youmonst.data, AD_SEDU) -#ifdef SEDUCE - || (SYSOPT_SEDUCE && dmgtype(youmonst.data, AD_SSEX)) -#endif - ) { + || (SYSOPT_SEDUCE && dmgtype(youmonst.data, AD_SSEX))) { pline("%s %s.", Monnam(mtmp), mtmp->minvent ? "brags about the goods some dungeon explorer provided" : "makes some remarks about how difficult theft is lately"); @@ -2198,19 +2191,13 @@ struct attack *mattk; gendef = gender(mdef); } - if(agrinvis && !defperc -#ifdef SEDUCE - && (!SYSOPT_SEDUCE || ( mattk && mattk->adtyp != AD_SSEX)) -#endif - ) + if(agrinvis && !defperc && + (!SYSOPT_SEDUCE || ( mattk && mattk->adtyp != AD_SSEX))) return 0; if(pagr->mlet != S_NYMPH && ((pagr != &mons[PM_INCUBUS] && pagr != &mons[PM_SUCCUBUS]) -#ifdef SEDUCE - || (SYSOPT_SEDUCE && mattk && mattk->adtyp != AD_SSEX) -#endif - )) + || (SYSOPT_SEDUCE && mattk && mattk->adtyp != AD_SSEX))) return 0; if(genagr == 1 - gendef) @@ -2219,7 +2206,6 @@ struct attack *mattk; return (pagr->mlet == S_NYMPH) ? 2 : 0; } -#ifdef SEDUCE /* Returns 1 if monster teleported */ int doseduce(mon) @@ -2485,7 +2471,6 @@ const char *str; } remove_worn_item(obj, TRUE); } -#endif /* SEDUCE */ STATIC_OVL int passiveum(olduasmon,mtmp,mattk) diff --git a/src/monst.c b/src/monst.c index 420118eda..d6b843b6c 100644 --- a/src/monst.c +++ b/src/monst.c @@ -2554,14 +2554,9 @@ struct permonst _mons2[] = { #define SEDUCTION_ATTACKS_NO \ A(ATTK(AT_CLAW, AD_PHYS, 1, 3), ATTK(AT_CLAW, AD_PHYS, 1, 3), \ ATTK(AT_BITE, AD_DRLI, 2, 6), NO_ATTK, NO_ATTK, NO_ATTK) -#ifdef SEDUCE -# define SEDUCTION_ATTACKS SEDUCTION_ATTACKS_YES -#else -# define SEDUCTION_ATTACKS SEDUCTION_ATTACKS_NO -#endif MON("succubus", S_DEMON, LVL(6, 12, 0, 70, -9), (G_NOCORPSE|1), - SEDUCTION_ATTACKS, + SEDUCTION_ATTACKS_YES, SIZ(WT_HUMAN, 400, MS_SEDUCE, MZ_HUMAN), MR_FIRE|MR_POISON, 0, M1_HUMANOID|M1_FLY|M1_POIS, M2_DEMON|M2_STALK|M2_HOSTILE|M2_NASTY|M2_FEMALE, @@ -2577,12 +2572,11 @@ struct permonst _mons2[] = { CLR_BROWN), MON("incubus", S_DEMON, LVL(6, 12, 0, 70, -9), (G_NOCORPSE|1), - SEDUCTION_ATTACKS, + SEDUCTION_ATTACKS_YES, SIZ(WT_HUMAN, 400, MS_SEDUCE, MZ_HUMAN), MR_FIRE|MR_POISON, 0, M1_HUMANOID|M1_FLY|M1_POIS, M2_DEMON|M2_STALK|M2_HOSTILE|M2_NASTY|M2_MALE, M3_INFRAVISIBLE|M3_INFRAVISION, CLR_GRAY), -#undef SEDUCTION_ATTACKS /* Used by AD&D for a type of demon, originally one of the Furies */ /* and spelled this way */ MON("erinys", S_DEMON, diff --git a/src/sounds.c b/src/sounds.c index 593c3ecd6..d57904778 100644 --- a/src/sounds.c +++ b/src/sounds.c @@ -807,7 +807,6 @@ register struct monst *mtmp; case MS_SEDUCE: { int swval; -#ifdef SEDUCE if (SYSOPT_SEDUCE) { if (ptr->mlet != S_NYMPH && could_seduce(mtmp, &youmonst, (struct attack *)0) == 1) { @@ -816,7 +815,6 @@ register struct monst *mtmp; } swval = ((poly_gender() != (int) mtmp->female) ? rn2(3) : 0); } else -#endif swval = ((poly_gender() == 0) ? rn2(3) : 0); switch(swval){ case 2: diff --git a/src/sys.c b/src/sys.c index b559c1450..5f17a0a91 100644 --- a/src/sys.c +++ b/src/sys.c @@ -54,10 +54,8 @@ sys_early_init(){ # endif #endif -#ifdef SEDUCE sysopt.seduce = 1; /* if it's compiled in, default to on */ sysopt_seduce_set(sysopt.seduce); -#endif } diff --git a/src/uhitm.c b/src/uhitm.c index 04ec05c11..bbb3a7fb4 100644 --- a/src/uhitm.c +++ b/src/uhitm.c @@ -1452,9 +1452,7 @@ register struct attack *mattk; minstapetrify(mdef, TRUE); tmp = 0; break; -#ifdef SEDUCE case AD_SSEX: -#endif case AD_SEDU: case AD_SITM: steal_it(mdef, mattk); diff --git a/src/zap.c b/src/zap.c index 97fa65a15..cbc533041 100644 --- a/src/zap.c +++ b/src/zap.c @@ -584,9 +584,7 @@ coord *cc; /* most cancelled monsters return to normal, but some need to stay cancelled */ if (!dmgtype(mtmp2->data, AD_SEDU) -#ifdef SEDUCE && (!SYSOPT_SEDUCE || !dmgtype(mtmp2->data, AD_SSEX)) -#endif ) mtmp2->mcan = 0; mtmp2->mcansee = 1; /* set like in makemon */ mtmp2->mblinded = 0; diff --git a/util/makedefs.c b/util/makedefs.c index 9102945ce..32107d0ab 100644 --- a/util/makedefs.c +++ b/util/makedefs.c @@ -1298,9 +1298,6 @@ static const char *build_opts[] = { # endif # endif #endif -#ifdef SEDUCE - "seduction", -#endif #ifdef SHELL "shell command", #endif