separate MAIL functionality from MAIL-related structure inclusion

With 3.7+ aspirations of improving savefile interoperability between 32-bit
and 64-bit builds, as well as between platforms, it is better to not have
the underlying struct/array content be conditional.

This splits off some of the MAIL code into MAIL_STRUCTURES code. In theory,
since MAIL_STRUCTURES is unconditionally included, the macro could
just go away and leave that code unconditional, but this commit doesn't
go that far.
This commit is contained in:
nhmall
2019-11-09 16:19:05 -05:00
parent e6bafb3f90
commit 75d22a2dbf
20 changed files with 41 additions and 29 deletions

View File

@@ -2038,7 +2038,7 @@ register struct monst *mtmp;
/* if it's a (possibly polymorphed) quest leader, mark him as dead */
if (mtmp->m_id == g.quest_status.leader_m_id)
g.quest_status.leader_is_dead = TRUE;
#ifdef MAIL
#ifdef MAIL_STRUCTURES
/* if the mail daemon dies, no more mail delivery. -3. */
if (tmp == PM_MAIL_DAEMON)
g.mvitals[tmp].mvflags |= G_GENOD;
@@ -2412,7 +2412,7 @@ int xkill_flags; /* 1: suppress message, 2: suppress corpse, 4: pacifist */
if (nocorpse || LEVEL_SPECIFIC_NOCORPSE(mdat))
goto cleanup;
#ifdef MAIL
#ifdef MAIL_STRUCTURES
if (mdat == &mons[PM_MAIL_DAEMON]) {
stackobj(mksobj_at(SCR_MAIL, x, y, FALSE, FALSE));
}