diff --git a/include/decl.h b/include/decl.h index b41eab5df..83ed50095 100644 --- a/include/decl.h +++ b/include/decl.h @@ -464,11 +464,6 @@ struct instance_globals { /* pickup.c */ int oldcap; /* last encumberance */ - /* polyself.c */ - int sex_change_ok; /* controls whether taking on new form or becoming new - man can also change sex (ought to be an arg to - polymon() and newman() instead) */ - /* potion.c */ boolean notonhead; /* for long worms */ int potion_nothing; diff --git a/src/decl.c b/src/decl.c index d9db42982..8302d7804 100644 --- a/src/decl.c +++ b/src/decl.c @@ -348,9 +348,6 @@ const struct instance_globals g_init = { /* pickup.c */ 0, /* oldcap */ - /* polyself.c */ - 0, /* sex_change_ok */ - /* potion.c */ FALSE, /* notonhead */ UNDEFINED_VALUE, /* potion_nothing */ diff --git a/src/polyself.c b/src/polyself.c index 15fe3d3ce..e136d1898 100644 --- a/src/polyself.c +++ b/src/polyself.c @@ -33,6 +33,10 @@ STATIC_DCL void NDECL(polysense); STATIC_VAR const char no_longer_petrify_resistant[] = "No longer petrify-resistant, you"; +/* controls whether taking on new form or becoming new man can also + change sex (ought to be an arg to polymon() and newman() instead) */ +STATIC_VAR int sex_change_ok = 0; + /* update the youmonst.data structure pointer and intrinsics */ void set_uasmon() @@ -292,7 +296,7 @@ newman() u.ulevelmax = newlvl; u.ulevel = newlvl; - if (g.sex_change_ok && !rn2(10)) + if (sex_change_ok && !rn2(10)) change_sex(); adjabil(oldlvl, (int) u.ulevel); @@ -569,14 +573,14 @@ int psflags; /* The below polyok() fails either if everything is genocided, or if * we deliberately chose something illegal to force newman(). */ - g.sex_change_ok++; + sex_change_ok++; if (!polyok(&mons[mntmp]) || (!forcecontrol && !rn2(5)) || your_race(&mons[mntmp])) { newman(); } else { (void) polymon(mntmp); } - g.sex_change_ok--; /* reset */ + sex_change_ok--; /* reset */ made_change: new_light = emits_light(youmonst.data); @@ -646,7 +650,7 @@ int mntmp; if (!flags.female) dochange = TRUE; } else if (!is_neuter(&mons[mntmp]) && mntmp != u.ulycn) { - if (g.sex_change_ok && !rn2(10)) + if (sex_change_ok && !rn2(10)) dochange = TRUE; }