From: nhmall Date: Wed, 29 May 2019 01:36:52 +0000 (-0400) Subject: Merge branch 'NetHack-3.6' X-Git-Tag: NetHack-3.7.0_WIP~395 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=57b5498238c6dfdd950854140c334067977c3cc1;p=nethack Merge branch 'NetHack-3.6' --- 57b5498238c6dfdd950854140c334067977c3cc1 diff --cc src/do.c index 629028c1d,9c887c037..6d6953f9d --- a/src/do.c +++ b/src/do.c @@@ -1421,9 -1438,10 +1431,10 @@@ boolean at_stairs, falling, portal oinit(); /* reassign level dependent obj probabilities */ } reglyph_darkroom(); + u.uinwater = 0; /* do this prior to level-change pline messages */ vision_reset(); /* clear old level's line-of-sight */ - vision_full_recalc = 0; /* don't let that reenable vision yet */ + g.vision_full_recalc = 0; /* don't let that reenable vision yet */ flush_screen(-1); /* ensure all map flushes are postponed */ if (portal && !In_endgame(&u.uz)) { diff --cc src/mkmaze.c index f835d5ca1,7bea6485e..afcff0027 --- a/src/mkmaze.c +++ b/src/mkmaze.c @@@ -464,14 -470,8 +464,8 @@@ fixup_special( struct mkroom *croom; boolean added_branch = FALSE; - if (g.was_waterlevel) { - g.was_waterlevel = FALSE; - u.uinwater = 0; - unsetup_waterlevel(); - } if (Is_waterlevel(&u.uz) || Is_airlevel(&u.uz)) { - level.flags.hero_memory = 0; + g.level.flags.hero_memory = 0; - g.was_waterlevel = TRUE; /* water level is an odd beast - it has to be set up before calling place_lregions etc. */ setup_waterlevel(); @@@ -1560,15 -1565,15 +1555,15 @@@ int fd, mode if (perform_bwrite(mode)) { int n = 0; - for (b = bbubbles; b; b = b->next) + for (b = g.bbubbles; b; b = b->next) ++n; - bwrite(fd, (genericptr_t) &n, sizeof(int)); - bwrite(fd, (genericptr_t) &g.xmin, sizeof(int)); - bwrite(fd, (genericptr_t) &g.ymin, sizeof(int)); - bwrite(fd, (genericptr_t) &g.xmax, sizeof(int)); - bwrite(fd, (genericptr_t) &g.ymax, sizeof(int)); + bwrite(fd, (genericptr_t) &n, sizeof n); - bwrite(fd, (genericptr_t) &xmin, sizeof xmin); - bwrite(fd, (genericptr_t) &ymin, sizeof ymin); - bwrite(fd, (genericptr_t) &xmax, sizeof xmax); - bwrite(fd, (genericptr_t) &ymax, sizeof ymax); - for (b = bbubbles; b; b = b->next) ++ bwrite(fd, (genericptr_t) &g.xmin, sizeof g.xmin); ++ bwrite(fd, (genericptr_t) &g.ymin, sizeof g.ymin); ++ bwrite(fd, (genericptr_t) &g.xmax, sizeof g.xmax); ++ bwrite(fd, (genericptr_t) &g.ymax, sizeof g.ymax); + for (b = g.bbubbles; b; b = b->next) - bwrite(fd, (genericptr_t) b, sizeof(struct bubble)); + bwrite(fd, (genericptr_t) b, sizeof *b); } if (release_data(mode)) unsetup_waterlevel(); @@@ -1585,16 -1590,16 +1580,16 @@@ int fd return; set_wportal(); - mread(fd, (genericptr_t) &n, sizeof(int)); - mread(fd, (genericptr_t) &g.xmin, sizeof(int)); - mread(fd, (genericptr_t) &g.ymin, sizeof(int)); - mread(fd, (genericptr_t) &g.xmax, sizeof(int)); - mread(fd, (genericptr_t) &g.ymax, sizeof(int)); + mread(fd, (genericptr_t) &n, sizeof n); - mread(fd, (genericptr_t) &xmin, sizeof xmin); - mread(fd, (genericptr_t) &ymin, sizeof ymin); - mread(fd, (genericptr_t) &xmax, sizeof xmax); - mread(fd, (genericptr_t) &ymax, sizeof ymax); ++ mread(fd, (genericptr_t) &g.xmin, sizeof g.xmin); ++ mread(fd, (genericptr_t) &g.ymin, sizeof g.ymin); ++ mread(fd, (genericptr_t) &g.xmax, sizeof g.xmax); ++ mread(fd, (genericptr_t) &g.ymax, sizeof g.ymax); for (i = 0; i < n; i++) { btmp = b; - b = (struct bubble *) alloc(sizeof(struct bubble)); - mread(fd, (genericptr_t) b, sizeof(struct bubble)); + b = (struct bubble *) alloc(sizeof *b); + mread(fd, (genericptr_t) b, sizeof *b); - if (bbubbles) { + if (g.bbubbles) { btmp->next = b; b->prev = btmp; } else { @@@ -1603,9 -1608,8 +1598,8 @@@ } mv_bubble(b, 0, 0, TRUE); } - ebubbles = b; + g.ebubbles = b; b->next = (struct bubble *) 0; - g.was_waterlevel = TRUE; } const char * @@@ -1728,24 -1732,24 +1722,24 @@@ int x, y, n if (bmask[n][1] > MAX_BMASK) { panic("bmask size is larger than MAX_BMASK"); } - b = (struct bubble *) alloc(sizeof(struct bubble)); + b = (struct bubble *) alloc(sizeof *b); - if ((x + (int) bmask[n][0] - 1) > bxmax) - x = bxmax - bmask[n][0] + 1; - if ((y + (int) bmask[n][1] - 1) > bymax) - y = bymax - bmask[n][1] + 1; + if ((x + (int) bmask[n][0] - 1) > gbxmax) + x = gbxmax - bmask[n][0] + 1; + if ((y + (int) bmask[n][1] - 1) > gbymax) + y = gbymax - bmask[n][1] + 1; b->x = x; b->y = y; b->dx = 1 - rn2(3); b->dy = 1 - rn2(3); /* y dimension is the length of bitmap data - see bmask above */ (void) memcpy((genericptr_t) b->bm, (genericptr_t) bmask[n], - (bmask[n][1] + 2) * sizeof(b->bm[0])); + (bmask[n][1] + 2) * sizeof (b->bm[0])); b->cons = 0; - if (!bbubbles) - bbubbles = b; - if (ebubbles) { - ebubbles->next = b; - b->prev = ebubbles; + if (!g.bbubbles) + g.bbubbles = b; + if (g.ebubbles) { + g.ebubbles->next = b; + b->prev = g.ebubbles; } else b->prev = (struct bubble *) 0; b->next = (struct bubble *) 0;