Remove overview for wizmode regenerated map
The wizmakemap command throws away the current level, so don't keep the overview data for it around.
This commit is contained in:
@@ -607,6 +607,7 @@ E int NDECL(donamelevel);
|
|||||||
E int NDECL(dooverview);
|
E int NDECL(dooverview);
|
||||||
E void FDECL(show_overview, (int, int));
|
E void FDECL(show_overview, (int, int));
|
||||||
E void FDECL(forget_mapseen, (int));
|
E void FDECL(forget_mapseen, (int));
|
||||||
|
E void FDECL(rm_mapseen, (int));
|
||||||
E void FDECL(init_mapseen, (d_level *));
|
E void FDECL(init_mapseen, (d_level *));
|
||||||
E void NDECL(recalc_mapseen);
|
E void NDECL(recalc_mapseen);
|
||||||
E void FDECL(mapseen_temple, (struct monst *));
|
E void FDECL(mapseen_temple, (struct monst *));
|
||||||
|
|||||||
@@ -626,6 +626,7 @@ wiz_makemap(VOID_ARGS)
|
|||||||
if (wizard) {
|
if (wizard) {
|
||||||
struct monst *mtmp;
|
struct monst *mtmp;
|
||||||
|
|
||||||
|
rm_mapseen(ledger_no(&u.uz));
|
||||||
for (mtmp = fmon; mtmp; mtmp = mtmp->nmon)
|
for (mtmp = fmon; mtmp; mtmp = mtmp->nmon)
|
||||||
if (mtmp->isshk)
|
if (mtmp->isshk)
|
||||||
setpaid(mtmp);
|
setpaid(mtmp);
|
||||||
|
|||||||
@@ -2109,6 +2109,39 @@ int ledger_num;
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
rm_mapseen(ledger_num)
|
||||||
|
int ledger_num;
|
||||||
|
{
|
||||||
|
mapseen *mptr, *mprev = (mapseen *)0;
|
||||||
|
struct cemetery *bp, *bpnext;
|
||||||
|
|
||||||
|
for (mptr = mapseenchn; mptr; mprev = mptr, mptr = mptr->next)
|
||||||
|
if (dungeons[mptr->lev.dnum].ledger_start + mptr->lev.dlevel == ledger_num)
|
||||||
|
break;
|
||||||
|
|
||||||
|
if (!mptr)
|
||||||
|
return;
|
||||||
|
|
||||||
|
if (mptr->custom)
|
||||||
|
free((genericptr_t) mptr->custom);
|
||||||
|
|
||||||
|
bp = mptr->final_resting_place;
|
||||||
|
while (bp) {
|
||||||
|
bpnext = bp->next;
|
||||||
|
free(bp);
|
||||||
|
bp = bpnext;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (mprev) {
|
||||||
|
mprev->next = mptr->next;
|
||||||
|
free(mptr);
|
||||||
|
} else {
|
||||||
|
mapseenchn = mptr->next;
|
||||||
|
free(mptr);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
STATIC_OVL void
|
STATIC_OVL void
|
||||||
save_mapseen(fd, mptr)
|
save_mapseen(fd, mptr)
|
||||||
int fd;
|
int fd;
|
||||||
|
|||||||
Reference in New Issue
Block a user