]> granicus.if.org Git - nethack/commitdiff
Renamed instance_variables to global_variables and iv to g.
authorBart House <bart@barthouse.com>
Fri, 23 Nov 2018 17:27:10 +0000 (09:27 -0800)
committerBart House <bart@barthouse.com>
Fri, 23 Nov 2018 23:22:53 +0000 (15:22 -0800)
21 files changed:
include/decl.h
include/rm.h
src/apply.c
src/artifact.c
src/botl.c
src/decl.c
src/dog.c
src/eat.c
src/mon.c
src/muse.c
src/pickup.c
src/restore.c
src/save.c
src/trap.c
src/u_init.c
src/uhitm.c
src/weapon.c
src/zap.c
sys/share/pcmain.c
sys/share/random.c
win/win32/winhack.c

index e8a8dfab5a4426c553cc03b6a91a0c7824f29f5c..a097dcc17be387f52fc2dd8c75ee6f4ad5eac3c4 100644 (file)
@@ -438,13 +438,13 @@ struct early_opt {
     boolean valallowed;
 };
 
-/* instance_variables holds engine state that does not need to be
+/* instance_globals holds engine state that does not need to be
  * persisted upon game exit.  The initialization state is well defined
  * an set in decl.c during early early engine initialization.
  * 
- * unlike instance_flags, variables can be of any type. */
+ * unlike instance_flags, values in the structure can be of any type. */
 
-struct instance_variables {
+struct instance_globals {
     /* apply.c */
     int jumping_is_magic; /* current jump result of magic */
     int polearm_range_min;
@@ -485,9 +485,9 @@ struct instance_variables {
     unsigned long magic; /* validate that structure layout is preserved */
 };
 
-E struct instance_variables iv;
+E struct instance_globals g;
 
-E void instance_variable_init();
+E void instance_globals_init();
 
 
 #undef E
index b6cf36d54e494dab4220ee7a3b7a084806ecdc2d..d21180399292ffcea8069fe4fbba0ae517fc4e2f 100644 (file)
@@ -9,7 +9,7 @@
 /*
  * The dungeon presentation graphics code and data structures were rewritten
  * and generalized for NetHack's release 2 by Eric S. Raymond (eric@snark)
- * building on Don G. Kneller's MS-DOS implementation. See drawing.c for
+ * building on Don G Kneller's MS-DOS implementation.  See drawing.c for
  * the code that permits the user to set the contents of the symbol structure.
  *
  * The door representation was changed by Ari
index 710891283b8b2d11c6aa0fa136d9a41e92061285..63964f39853aa1b5a80b9d455a5221106bc2e337 100644 (file)
@@ -1606,7 +1606,7 @@ int x,y;
 {
     return (isok(x, y)
             && (ACCESSIBLE(levl[x][y].typ) || Passes_walls)
-            && is_valid_jump_pos(x, y, iv.jumping_is_magic, FALSE));
+            && is_valid_jump_pos(x, y, g.jumping_is_magic, FALSE));
 }
 
 void
@@ -1720,7 +1720,7 @@ int magic; /* 0=Physical, otherwise skill level */
     pline("Where do you want to jump?");
     cc.x = u.ux;
     cc.y = u.uy;
-    iv.jumping_is_magic = magic;
+    g.jumping_is_magic = magic;
     getpos_sethilite(display_jump_positions, get_valid_jump_position);
     if (getpos(&cc, TRUE, "the desired position") < 0)
         return 0; /* user pressed ESC */
@@ -2917,8 +2917,8 @@ get_valid_polearm_position(x, y)
 int x, y;
 {
     return (isok(x, y) && ACCESSIBLE(levl[x][y].typ)
-            && distu(x, y) >= iv.polearm_range_min
-            && distu(x, y) <= iv.polearm_range_max);
+            && distu(x, y) >= g.polearm_range_min
+            && distu(x, y) <= g.polearm_range_max);
 }
 
 void
@@ -2990,8 +2990,8 @@ struct obj *obj;
     else
         max_range = 8; /* (P_SKILL(typ) >= P_EXPERT) */
 
-    iv.polearm_range_min = min_range;
-    iv.polearm_range_max = max_range;
+    g.polearm_range_min = min_range;
+    g.polearm_range_max = max_range;
 
     /* Prompt for a location */
     pline(where_to_hit);
index 2bb4f5078212f3109997606999e6efb0000ca74d..455856601f7b740b5913376fdefec8360188bf91 100644 (file)
@@ -844,15 +844,15 @@ int tmp;
 
     if (!weap || (weap->attk.adtyp == AD_PHYS /* check for `NO_ATTK' */
                   && weap->attk.damn == 0 && weap->attk.damd == 0))
-        iv.spec_dbon_applies = FALSE;
+        g.spec_dbon_applies = FALSE;
     else if (otmp->oartifact == ART_GRIMTOOTH)
         /* Grimtooth has SPFX settings to warn against elves but we want its
            damage bonus to apply to all targets, so bypass spec_applies() */
-        iv.spec_dbon_applies = TRUE;
+        g.spec_dbon_applies = TRUE;
     else
-        iv.spec_dbon_applies = spec_applies(weap, mon);
+        g.spec_dbon_applies = spec_applies(weap, mon);
 
-    if (iv.spec_dbon_applies)
+    if (g.spec_dbon_applies)
         return weap->attk.damd ? rnd((int) weap->attk.damd) : max(tmp, 1);
     return 0;
 }
@@ -976,14 +976,14 @@ char *hittee;              /* target's name: "you" or mon_nam(mdef) */
         scare_dieroll /= (1 << (mb->spe / 3));
     /* if target successfully resisted the artifact damage bonus,
        reduce overall likelihood of the assorted special effects */
-    if (!iv.spec_dbon_applies)
+    if (!g.spec_dbon_applies)
         dieroll += 1;
 
     /* might stun even when attempting a more severe effect, but
        in that case it will only happen if the other effect fails;
        extra damage will apply regardless; 3.4.1: sometimes might
        just probe even when it hasn't been enchanted */
-    do_stun = (max(mb->spe, 0) < rn2(iv.spec_dbon_applies ? 11 : 7));
+    do_stun = (max(mb->spe, 0) < rn2(g.spec_dbon_applies ? 11 : 7));
 
     /* the special effects also boost physical damage; increments are
        generally cumulative, but since the stun effect is based on a
@@ -1182,12 +1182,12 @@ int dieroll; /* needed for Magicbane and vorpal blades */
     if (attacks(AD_FIRE, otmp)) {
         if (realizes_damage)
             pline_The("fiery blade %s %s%c",
-                      !iv.spec_dbon_applies
+                      !g.spec_dbon_applies
                           ? "hits"
                           : (mdef->data == &mons[PM_WATER_ELEMENTAL])
                                 ? "vaporizes part of"
                                 : "burns",
-                      hittee, !iv.spec_dbon_applies ? '.' : '!');
+                      hittee, !g.spec_dbon_applies ? '.' : '!');
         if (!rn2(4))
             (void) destroy_mitem(mdef, POTION_CLASS, AD_FIRE);
         if (!rn2(4))
@@ -1201,8 +1201,8 @@ int dieroll; /* needed for Magicbane and vorpal blades */
     if (attacks(AD_COLD, otmp)) {
         if (realizes_damage)
             pline_The("ice-cold blade %s %s%c",
-                      !iv.spec_dbon_applies ? "hits" : "freezes", hittee,
-                      !iv.spec_dbon_applies ? '.' : '!');
+                      !g.spec_dbon_applies ? "hits" : "freezes", hittee,
+                      !g.spec_dbon_applies ? '.' : '!');
         if (!rn2(4))
             (void) destroy_mitem(mdef, POTION_CLASS, AD_COLD);
         return realizes_damage;
@@ -1210,9 +1210,9 @@ int dieroll; /* needed for Magicbane and vorpal blades */
     if (attacks(AD_ELEC, otmp)) {
         if (realizes_damage)
             pline_The("massive hammer hits%s %s%c",
-                      !iv.spec_dbon_applies ? "" : "!  Lightning strikes",
-                      hittee, !iv.spec_dbon_applies ? '.' : '!');
-        if (iv.spec_dbon_applies)
+                      !g.spec_dbon_applies ? "" : "!  Lightning strikes",
+                      hittee, !g.spec_dbon_applies ? '.' : '!');
+        if (g.spec_dbon_applies)
             wake_nearto(mdef->mx, mdef->my, 4 * 4);
         if (!rn2(5))
             (void) destroy_mitem(mdef, RING_CLASS, AD_ELEC);
@@ -1223,10 +1223,10 @@ int dieroll; /* needed for Magicbane and vorpal blades */
     if (attacks(AD_MAGM, otmp)) {
         if (realizes_damage)
             pline_The("imaginary widget hits%s %s%c",
-                      !iv.spec_dbon_applies
+                      !g.spec_dbon_applies
                           ? ""
                           : "!  A hail of magic missiles strikes",
-                      hittee, !iv.spec_dbon_applies ? '.' : '!');
+                      hittee, !g.spec_dbon_applies ? '.' : '!');
         return realizes_damage;
     }
 
@@ -1235,7 +1235,7 @@ int dieroll; /* needed for Magicbane and vorpal blades */
         return Mb_hit(magr, mdef, otmp, dmgptr, dieroll, vis, hittee);
     }
 
-    if (!iv.spec_dbon_applies) {
+    if (!g.spec_dbon_applies) {
         /* since damage bonus didn't apply, nothing more to do;
            no further attacks have side-effects on inventory */
         return FALSE;
index 76b8b6425760d81cec34d38a00a890eb3433b042..1c3ab92811c59dec8918d31a0cb8864f3badd546 100644 (file)
@@ -64,7 +64,7 @@ do_statusline1()
         Strcpy(nb = eos(nb), rank());
 
     Sprintf(nb = eos(nb), "  ");
-    i = iv.mrank_sz + 15;
+    i = g.mrank_sz + 15;
     j = (int) ((nb + 2) - newbot1); /* strlen(newbot1) but less computation */
     if ((i - j) > 0)
         Sprintf(nb = eos(nb), "%*s", i - j, " "); /* pad with spaces */
@@ -345,7 +345,7 @@ max_rank_sz()
         if (urole.rank[i].f && (r = strlen(urole.rank[i].f)) > maxr)
             maxr = r;
     }
-    iv.mrank_sz = maxr;
+    g.mrank_sz = maxr;
     return;
 }
 
index c517edaa50010ab72ab4bab50ccdae4c8e658469..a71d5539dab599d18f4d93a8cc3661341579e797 100644 (file)
@@ -329,7 +329,7 @@ decl_init()
 #define UNDEFINED_PTR NULL      /* move to hack.h if we are keeping */
 #define IVMAGIC 0xdeadbeef
 
-const struct instance_variables iv_init = {
+const struct instance_globals g_init = {
     /* apply.c */
     0,  /* jumping_is_magic */
     -1, /* polearm_range_min */
@@ -366,15 +366,15 @@ const struct instance_variables iv_init = {
     IVMAGIC  /* used to validate that structure layout has been preserved */
 };
 
-struct instance_variables iv;
+struct instance_globals g;
 
 void 
-instance_variable_init() 
+instance_globals_init() 
 {
-    iv = iv_init;
+    g = g_init;
 
-    nhassert(iv_init.magic == IVMAGIC);
-    nhassert(iv.havestate == TRUE);
+    nhassert(g_init.magic == IVMAGIC);
+    nhassert(g_init.havestate == TRUE);
 
     sfcap = default_sfinfo;
     sfrestinfo = default_sfinfo;
index a5dadde704d750e4c9dba5743b29e211996625a3..c18b04bf1c52cf21f020d8fc4aa076e8aa5bf3ef 100644 (file)
--- a/src/dog.c
+++ b/src/dog.c
@@ -197,7 +197,7 @@ makedog()
         put_saddle_on_mon(otmp, mtmp);
     }
 
-    if (!iv.petname_used++ && *petname)
+    if (!g.petname_used++ && *petname)
         mtmp = christen_monst(mtmp, petname);
 
     initedog(mtmp);
index 94a86568af280897eb26117244f89c8154d478e8..69077934bdeb134785545d0cbadeb7ddd041f539 100644 (file)
--- a/src/eat.c
+++ b/src/eat.c
@@ -101,7 +101,7 @@ register struct obj *obj;
                          || (obj->otyp == EGG));
 
     if (u.umonnum == PM_GELATINOUS_CUBE && is_organic(obj)
-        /* [g.cubes can eat containers and retain all contents
+        /* [g-cubes can eat containers and retain all contents
             as engulfed items, but poly'd player can't do that] */
         && !Has_contents(obj))
         return TRUE;
index 043b22e892217bf47316cec1da301e3e821a6a1a..2b1ef22c679ba95ac369a4a293ff955ebed824f4 100644 (file)
--- a/src/mon.c
+++ b/src/mon.c
@@ -921,7 +921,7 @@ struct monst *mtmp;
 
     /* eat organic objects, including cloth and wood, if present;
        engulf others, except huge rocks and metal attached to player
-       [despite comment at top, doesn't assume that eater is a g.cube] */
+       [despite comment at top, doesn't assume that eater is a g-cube] */
     for (otmp = level.objects[mtmp->mx][mtmp->my]; otmp; otmp = otmp2) {
         otmp2 = otmp->nexthere;
 
@@ -996,7 +996,7 @@ struct monst *mtmp;
                 register struct obj *otmp3;
 
                 /* contents of eaten containers become engulfed; this
-                   is arbitrary, but otherwise g.cubes are too powerful */
+                   is arbitrary, but otherwise g-cubes are too powerful */
                 while ((otmp3 = otmp->cobj) != 0) {
                     obj_extract_self(otmp3);
                     if (otmp->otyp == ICE_BOX && otmp3->otyp == CORPSE) {
index 493850a1f21a7936b78486b9a6b96c8a74ab34c7..394b6327ed8a8ee71bfb3c94ce1dbf620c49940b 100644 (file)
@@ -668,12 +668,12 @@ struct monst *mtmp;
         zap_oseen = oseen;
         mzapmsg(mtmp, otmp, FALSE);
         otmp->spe--;
-        iv.m_using = TRUE;
+        g.m_using = TRUE;
         mbhit(mtmp, rn1(8, 6), mbhitm, bhito, otmp);
         /* monster learns that teleportation isn't useful here */
         if (level.flags.noteleport)
             mtmp->mtrapseen |= (1 << (TELEP_TRAP - 1));
-        iv.m_using = FALSE;
+        g.m_using = FALSE;
         return 2;
     case MUSE_SCR_TELEPORTATION: {
         int obj_is_cursed = otmp->cursed;
@@ -1397,11 +1397,11 @@ struct monst *mtmp;
         otmp->spe--;
         if (oseen)
             makeknown(otmp->otyp);
-        iv.m_using = TRUE;
+        g.m_using = TRUE;
         buzz((int) (-30 - (otmp->otyp - WAN_MAGIC_MISSILE)),
              (otmp->otyp == WAN_MAGIC_MISSILE) ? 2 : 6, mtmp->mx, mtmp->my,
              sgn(mtmp->mux - mtmp->mx), sgn(mtmp->muy - mtmp->my));
-        iv.m_using = FALSE;
+        g.m_using = FALSE;
         return (DEADMONSTER(mtmp)) ? 1 : 2;
     case MUSE_FIRE_HORN:
     case MUSE_FROST_HORN:
@@ -1411,20 +1411,20 @@ struct monst *mtmp;
         } else
             You_hear("a horn being played.");
         otmp->spe--;
-        iv.m_using = TRUE;
+        g.m_using = TRUE;
         buzz(-30 - ((otmp->otyp == FROST_HORN) ? AD_COLD - 1 : AD_FIRE - 1),
              rn1(6, 6), mtmp->mx, mtmp->my, sgn(mtmp->mux - mtmp->mx),
              sgn(mtmp->muy - mtmp->my));
-        iv.m_using = FALSE;
+        g.m_using = FALSE;
         return (DEADMONSTER(mtmp)) ? 1 : 2;
     case MUSE_WAN_TELEPORTATION:
     case MUSE_WAN_STRIKING:
         zap_oseen = oseen;
         mzapmsg(mtmp, otmp, FALSE);
         otmp->spe--;
-        iv.m_using = TRUE;
+        g.m_using = TRUE;
         mbhit(mtmp, rn1(8, 6), mbhitm, bhito, otmp);
-        iv.m_using = FALSE;
+        g.m_using = FALSE;
         return 2;
     case MUSE_SCR_EARTH: {
         /* TODO: handle steeds */
index 42bc59256ca8f167275ddb27fb0df41df2e0f73f..b008b0f8f6d04f97f85cb70831be5da797db505b 100644 (file)
@@ -1558,7 +1558,7 @@ encumber_msg()
 {
     int newcap = near_capacity();
 
-    if (iv.oldcap < newcap) {
+    if (g.oldcap < newcap) {
         switch (newcap) {
         case 1:
             Your("movements are slowed slightly because of your load.");
@@ -1576,7 +1576,7 @@ encumber_msg()
             break;
         }
         context.botl = 1;
-    } else if (iv.oldcap > newcap) {
+    } else if (g.oldcap > newcap) {
         switch (newcap) {
         case 0:
             Your("movements are now unencumbered.");
@@ -1595,7 +1595,7 @@ encumber_msg()
         context.botl = 1;
     }
 
-    iv.oldcap = newcap;
+    g.oldcap = newcap;
     return newcap;
 }
 
index 35992d8e666545319713b0fca63340e5cf7f81ce..99b74d36d70c17d1497933ea4f3a2259fac64649 100644 (file)
@@ -899,7 +899,7 @@ register int fd;
 #ifdef MFLOPPY
     gameDiskPrompt();
 #endif
-    max_rank_sz(); /* to recompute iv.mrank_sz (botl.c) */
+    max_rank_sz(); /* to recompute g.mrank_sz (botl.c) */
     /* take care of iron ball & chain */
     for (otmp = fobj; otmp; otmp = otmp->nobj)
         if (otmp->owornmask)
index de2c99b744962ed77db20791045a041560e461fb..6528887b3bda4ca3cbbb7758f6eb78324828451c 100644 (file)
@@ -210,8 +210,8 @@ dosave0()
     store_version(fd);
     store_savefileinfo(fd);
     store_plname_in_file(fd);
-    iv.ustuck_id = (u.ustuck ? u.ustuck->m_id : 0);
-    iv.usteed_id = (u.usteed ? u.usteed->m_id : 0);
+    g.ustuck_id = (u.ustuck ? u.ustuck->m_id : 0);
+    g.usteed_id = (u.usteed ? u.usteed->m_id : 0);
     savelev(fd, ledger_no(&u.uz), WRITE_SAVE | FREE_SAVE);
     savegamestate(fd, WRITE_SAVE | FREE_SAVE);
 
@@ -333,10 +333,10 @@ register int fd, mode;
            sizeof(struct spell) * (MAXSPELL + 1));
     save_artifacts(fd);
     save_oracles(fd, mode);
-    if (iv.ustuck_id)
-        bwrite(fd, (genericptr_t) &iv.ustuck_id, sizeof iv.ustuck_id);
-    if (iv.usteed_id)
-        bwrite(fd, (genericptr_t) &iv.usteed_id, sizeof iv.usteed_id);
+    if (g.ustuck_id)
+        bwrite(fd, (genericptr_t) &g.ustuck_id, sizeof g.ustuck_id);
+    if (g.usteed_id)
+        bwrite(fd, (genericptr_t) &g.usteed_id, sizeof g.usteed_id);
     bwrite(fd, (genericptr_t) pl_character, sizeof pl_character);
     bwrite(fd, (genericptr_t) pl_fruit, sizeof pl_fruit);
     savefruitchn(fd, mode);
@@ -379,7 +379,7 @@ savestateinlock()
      * noop pid rewriting will take place on the first "checkpoint" after
      * the game is started or restored, if checkpointing is off.
      */
-    if (flags.ins_chkpt || iv.havestate) {
+    if (flags.ins_chkpt || g.havestate) {
         /* save the rest of the current game state in the lock file,
          * following the original int pid, the current level number,
          * and the current savefile name, which should not be subject
@@ -417,13 +417,13 @@ savestateinlock()
             store_savefileinfo(fd);
             store_plname_in_file(fd);
 
-            iv.ustuck_id = (u.ustuck ? u.ustuck->m_id : 0);
-            iv.usteed_id = (u.usteed ? u.usteed->m_id : 0);
+            g.ustuck_id = (u.ustuck ? u.ustuck->m_id : 0);
+            g.usteed_id = (u.usteed ? u.usteed->m_id : 0);
             savegamestate(fd, WRITE_SAVE);
         }
         bclose(fd);
     }
-    iv.havestate = flags.ins_chkpt;
+    g.havestate = flags.ins_chkpt;
 }
 #endif
 
index c6ba82ea0b5b9cdc45c08d0375e3aacc47103881..4df8411ee026affd1b09e13a8401bc69849c8920 100644 (file)
@@ -2160,7 +2160,7 @@ register struct monst *mtmp;
     } else {
         register int tt = trap->ttyp;
         boolean in_sight, tear_web, see_it,
-            inescapable = iv.force_mintrap || ((tt == HOLE || tt == PIT)
+            inescapable = g.force_mintrap || ((tt == HOLE || tt == PIT)
                                             && Sokoban && !trap->madeby_u);
         const char *fallverb;
 
@@ -2276,7 +2276,7 @@ register struct monst *mtmp;
                         || mptr == &mons[PM_BUGBEAR])
                         You_hear("the roaring of an angry bear!");
                 }
-            } else if (iv.force_mintrap) {
+            } else if (g.force_mintrap) {
                 if (in_sight) {
                     pline("%s evades %s bear trap!", Monnam(mtmp),
                           a_your[trap->madeby_u]);
@@ -2425,7 +2425,7 @@ register struct monst *mtmp;
             if (is_flyer(mptr) || is_floater(mptr)
                 || (mtmp->wormno && count_wsegs(mtmp) > 5)
                 || is_clinger(mptr)) {
-                if (iv.force_mintrap && !Sokoban) {
+                if (g.force_mintrap && !Sokoban) {
                     /* openfallingtrap; not inescapable here */
                     if (in_sight) {
                         seetrap(trap);
@@ -2462,7 +2462,7 @@ register struct monst *mtmp;
             if (is_flyer(mptr) || is_floater(mptr) || mptr == &mons[PM_WUMPUS]
                 || (mtmp->wormno && count_wsegs(mtmp) > 5)
                 || mptr->msize >= MZ_HUGE) {
-                if (iv.force_mintrap && !Sokoban) {
+                if (g.force_mintrap && !Sokoban) {
                     /* openfallingtrap; not inescapable here */
                     if (in_sight) {
                         seetrap(trap);
@@ -2551,7 +2551,7 @@ register struct monst *mtmp;
                           a_your[trap->madeby_u]);
                 deltrap(trap);
                 newsym(mtmp->mx, mtmp->my);
-            } else if (iv.force_mintrap && !mtmp->mtrapped) {
+            } else if (g.force_mintrap && !mtmp->mtrapped) {
                 if (in_sight) {
                     pline("%s avoids %s spider web!", Monnam(mtmp),
                           a_your[trap->madeby_u]);
@@ -4686,9 +4686,9 @@ boolean *noticed; /* set to true iff hero notices the effect; */
         /* dotrap calls mintrap when mounted hero encounters a web */
         if (u.usteed)
             dotrapflags |= NOWEBMSG;
-        ++iv.force_mintrap;
+        ++g.force_mintrap;
         dotrap(t, dotrapflags);
-        --iv.force_mintrap;
+        --g.force_mintrap;
         result = (u.utrap != 0);
     } else {
         if (mon->mtrapped)
@@ -4696,9 +4696,9 @@ boolean *noticed; /* set to true iff hero notices the effect; */
         /* you notice it if you see the trap close/tremble/whatever
            or if you sense the monster who becomes trapped */
         *noticed = cansee(t->tx, t->ty) || canspotmon(mon);
-        ++iv.force_mintrap;
+        ++g.force_mintrap;
         result = (mintrap(mon) != 0);
-        --iv.force_mintrap;
+        --g.force_mintrap;
     }
     return result;
 }
@@ -4739,9 +4739,9 @@ boolean *noticed; /* set to true iff hero notices the effect; */
         *noticed = cansee(t->tx, t->ty) || canspotmon(mon);
         /* monster will be angered; mintrap doesn't handle that */
         wakeup(mon, TRUE);
-        ++iv.force_mintrap;
+        ++g.force_mintrap;
         result = (mintrap(mon) != 0);
-        --iv.force_mintrap;
+        --g.force_mintrap;
         /* mon might now be on the migrating monsters list */
     }
     return result;
index a522ac0add72994c694ed539e60897194c43cf06..f18820d5af3fcc3c6bb7240848f44cc796b2c081 100644 (file)
@@ -991,9 +991,9 @@ register struct trobj *trop;
              */
             obj = mkobj(trop->trclass, FALSE);
             otyp = obj->otyp;
-            while (otyp == WAN_WISHING || otyp == iv.nocreate
-                   || otyp == iv.nocreate2 || otyp == iv.nocreate3
-                   || otyp == iv.nocreate4 || otyp == RIN_LEVITATION
+            while (otyp == WAN_WISHING || otyp == g.nocreate
+                   || otyp == g.nocreate2 || otyp == g.nocreate3
+                   || otyp == g.nocreate4 || otyp == RIN_LEVITATION
                    /* 'useless' items */
                    || otyp == POT_HALLUCINATION
                    || otyp == POT_ACID
@@ -1035,16 +1035,16 @@ register struct trobj *trop;
             case WAN_POLYMORPH:
             case RIN_POLYMORPH:
             case POT_POLYMORPH:
-                iv.nocreate = RIN_POLYMORPH_CONTROL;
+                g.nocreate = RIN_POLYMORPH_CONTROL;
                 break;
             case RIN_POLYMORPH_CONTROL:
-                iv.nocreate = RIN_POLYMORPH;
-                iv.nocreate2 = SPE_POLYMORPH;
-                iv.nocreate3 = POT_POLYMORPH;
+                g.nocreate = RIN_POLYMORPH;
+                g.nocreate2 = SPE_POLYMORPH;
+                g.nocreate3 = POT_POLYMORPH;
             }
             /* Don't have 2 of the same ring or spellbook */
             if (obj->oclass == RING_CLASS || obj->oclass == SPBOOK_CLASS)
-                iv.nocreate4 = otyp;
+                g.nocreate4 = otyp;
         }
 
         if (urace.malenum != PM_HUMAN) {
index 4328b00ec5d9958c49a74c5d088a8b2f1ee40cac..e434caacc1b2e0de8041ebffce3f600edcb0acac 100644 (file)
@@ -198,7 +198,7 @@ struct obj *wep; /* uwep for attack(), null for kick_monster() */
         && !Stunned) {
         /* Intelligent chaotic weapons (Stormbringer) want blood */
         if (wep && wep->oartifact == ART_STORMBRINGER) {
-            iv.override_confirmation = TRUE;
+            g.override_confirmation = TRUE;
             return FALSE;
         }
         if (canspotmon(mtmp)) {
@@ -367,7 +367,7 @@ register struct monst *mtmp;
 
     /* possibly set in attack_checks;
        examined in known_hitum, called via hitum or hmonas below */
-    iv.override_confirmation = FALSE;
+    g.override_confirmation = FALSE;
     /* attack_checks() used to use <u.ux+u.dx,u.uy+u.dy> directly, now
        it uses bhitpos instead; it might map an invisible monster there */
     bhitpos.x = u.ux + u.dx;
@@ -448,7 +448,7 @@ int dieroll;
 {
     register boolean malive = TRUE;
 
-    if (iv.override_confirmation) {
+    if (g.override_confirmation) {
         /* this may need to be generalized if weapons other than
            Stormbringer acquire similar anti-social behavior... */
         if (flags.verbose)
@@ -601,7 +601,7 @@ struct attack *uattk;
     /* second attack for two-weapon combat; won't occur if Stormbringer
        overrode confirmation (assumes Stormbringer is primary weapon)
        or if the monster was killed or knocked to different location */
-    if (u.twoweap && !iv.override_confirmation && malive && m_at(x, y) == mon) {
+    if (u.twoweap && !g.override_confirmation && malive && m_at(x, y) == mon) {
         tmp = find_roll_to_hit(mon, uattk->aatyp, uswapwep, &attknum,
                                &armorpenalty);
         dieroll = rnd(20);
index 2bdd2e549437ca7da8336f562c9891268c85e634..d72c18b9bdd54d27bc7c51b365899fc37cbb6202 100644 (file)
@@ -399,7 +399,7 @@ register struct monst *mtmp;
 
     char mlet = mtmp->data->mlet;
 
-    iv.propellor = &zeroobj;
+    g.propellor = &zeroobj;
     Oselect(EGG);      /* cockatrice egg */
     if (mlet == S_KOP) /* pies are first choice for Kops */
         Oselect(CREAM_PIE);
@@ -431,7 +431,7 @@ register struct monst *mtmp;
                     || !mon_hates_silver(mtmp))) {
                 if ((otmp = oselect(mtmp, pwep[i])) != 0
                     && (otmp == mwep || !mweponly)) {
-                    iv.propellor = otmp; /* force the monster to wield it */
+                    g.propellor = otmp; /* force the monster to wield it */
                     return otmp;
                 }
             }
@@ -452,41 +452,41 @@ register struct monst *mtmp;
             for (otmp = mtmp->minvent; otmp; otmp = otmp->nobj)
                 if (otmp->oclass == GEM_CLASS
                     && (otmp->otyp != LOADSTONE || !otmp->cursed)) {
-                    iv.propellor = m_carrying(mtmp, SLING);
+                    g.propellor = m_carrying(mtmp, SLING);
                     return otmp;
                 }
         }
 
         /* KMH -- This belongs here so darts will work */
-        iv.propellor = &zeroobj;
+        g.propellor = &zeroobj;
 
         prop = (objects[rwep[i]]).oc_skill;
         if (prop < 0) {
             switch (-prop) {
             case P_BOW:
-                iv.propellor = (oselect(mtmp, YUMI));
-                if (!iv.propellor)
-                    iv.propellor = (oselect(mtmp, ELVEN_BOW));
-                if (!iv.propellor)
-                    iv.propellor = (oselect(mtmp, BOW));
-                if (!iv.propellor)
-                    iv.propellor = (oselect(mtmp, ORCISH_BOW));
+                g.propellor = (oselect(mtmp, YUMI));
+                if (!g.propellor)
+                    g.propellor = (oselect(mtmp, ELVEN_BOW));
+                if (!g.propellor)
+                    g.propellor = (oselect(mtmp, BOW));
+                if (!g.propellor)
+                    g.propellor = (oselect(mtmp, ORCISH_BOW));
                 break;
             case P_SLING:
-                iv.propellor = (oselect(mtmp, SLING));
+                g.propellor = (oselect(mtmp, SLING));
                 break;
             case P_CROSSBOW:
-                iv.propellor = (oselect(mtmp, CROSSBOW));
+                g.propellor = (oselect(mtmp, CROSSBOW));
             }
-            if ((otmp = MON_WEP(mtmp)) && mwelded(otmp) && otmp != iv.propellor
+            if ((otmp = MON_WEP(mtmp)) && mwelded(otmp) && otmp != g.propellor
                 && mtmp->weapon_check == NO_WEAPON_WANTED)
-                iv.propellor = 0;
+                g.propellor = 0;
         }
         /* propellor = obj, propellor to use
          * propellor = &zeroobj, doesn't need a propellor
          * propellor = 0, needed one and didn't have one
          */
-        if (iv.propellor != 0) {
+        if (g.propellor != 0) {
             /* Note: cannot use m_carrying for loadstones, since it will
              * always select the first object of a type, and maybe the
              * monster is carrying two but only the first is unthrowable.
@@ -633,7 +633,7 @@ register struct monst *mon;
         break;
     case NEED_RANGED_WEAPON:
         (void) select_rwep(mon);
-        obj = iv.propellor;
+        obj = g.propellor;
         break;
     case NEED_PICK_AXE:
         obj = m_carrying(mon, PICK_AXE);
index f2c6f47dd12b082330d8bc6c7c3a361760d41a62..cf763280e04369099a263eaca399d0aa5ce50ee4 100644 (file)
--- a/src/zap.c
+++ b/src/zap.c
@@ -1360,13 +1360,13 @@ struct obj *obj;
     if (obj->otyp == SCR_MAIL)
         return;
 #endif
-    iv.obj_zapped = TRUE;
+    g.obj_zapped = TRUE;
 
-    if (iv.poly_zapped < 0) {
+    if (g.poly_zapped < 0) {
         /* some may metamorphosize */
         for (i = obj->quan; i; i--)
             if (!rn2(Luck + 45)) {
-                iv.poly_zapped = objects[obj->otyp].oc_material;
+                g.poly_zapped = objects[obj->otyp].oc_material;
                 break;
             }
     }
@@ -2065,7 +2065,7 @@ schar zz;
             learnwand(obj);
     }
 
-    iv.poly_zapped = -1;
+    g.poly_zapped = -1;
     for (otmp = level.objects[tx][ty]; otmp; otmp = next_obj) {
         next_obj = otmp->nexthere;
         /* for zap downwards, don't hit object poly'd hero is hiding under */
@@ -2075,8 +2075,8 @@ schar zz;
 
         hitanything += (*fhito)(otmp, obj);
     }
-    if (iv.poly_zapped >= 0)
-        create_polymon(level.objects[tx][ty], iv.poly_zapped);
+    if (g.poly_zapped >= 0)
+        create_polymon(level.objects[tx][ty], g.poly_zapped);
 
     return hitanything;
 }
@@ -2950,16 +2950,16 @@ struct obj *obj; /* wand or spell */
 void
 zapsetup()
 {
-    iv.obj_zapped = FALSE;
+    g.obj_zapped = FALSE;
 }
 
 void
 zapwrapup()
 {
     /* if do_osshock() set obj_zapped while polying, give a message now */
-    if (iv.obj_zapped)
+    if (g.obj_zapped)
         You_feel("shuddering vibrations.");
-    iv.obj_zapped = FALSE;
+    g.obj_zapped = FALSE;
 }
 
 /* called for various wand and spell effects - M. Stephenson */
@@ -5035,7 +5035,7 @@ int damage, tell;
     if (damage) {
         mtmp->mhp -= damage;
         if (DEADMONSTER(mtmp)) {
-            if (iv.m_using)
+            if (g.m_using)
                 monkilled(mtmp, "", AD_RBRE);
             else
                 killed(mtmp);
index bd7ee0a74f8463e7611e309708b4b0998e2a8649..ce95d3fdf47d1af12a0b57e77e22bcb7393f7714 100644 (file)
@@ -97,7 +97,7 @@ char *argv[];
 
     nethack_enter(argc, argv);
 
-    instance_variable_init();
+    instance_globals_init();
     sys_early_init();
 
 #if defined(WIN32) && defined(TTY_GRAPHICS)
index 6d3d5e45cc294c2fe0094a45477449ca524176f6..3ec33b0372226ac8dc41ea9bcf6bad7c0d27147b 100644 (file)
@@ -238,7 +238,7 @@ unsigned x;
 char *
 initstate(seed, arg_state, n)
 
-unsigned seed;   /* seed for R. N. G. */
+unsigned seed;   /* seed for RNG */
 char *arg_state; /* pointer to state array */
 int n;           /* # bytes of state info */
 {
index 466044ec2cab9733538b8be02e3d2963f103f1ae..43bca5a5dba538c78ef09574609bb4cfc904c560 100644 (file)
@@ -97,7 +97,7 @@ WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine,
 
     win10_init();
 
-    instance_variable_init();
+    instance_globals_init();
     sys_early_init();
 
     /* init applicatio structure */