make attack result macros more distinguishable from makemon macros

Use the MM_ prefix only for the makemon macros, and change these five as follows:

 MM_MISS 0x0     -> M_ATTK_MISS      /* aggressor missed */
 MM_HIT 0x1      -> M_ATTK_HIT       /* aggressor hit defender */
 MM_DEF_DIED 0x2 -> M_ATTK_DEF_DIED  /* defender died */
 MM_AGR_DIED 0x4 -> M_ATTK_AGR_DIED  /* aggressor died */
 MM_AGR_DONE 0x8 -> M_ATTK_AGR_DONE  /* aggressor is done with their turn */

include/hack.h:#define NO_MM_FLAGS     0x000000L /* use this rather than plain 0 */
include/hack.h:#define MM_NOWAIT       0x000002L /* don't set STRAT_WAITMASK flags */
include/hack.h:#define MM_NOCOUNTBIRTH 0x000004L /* don't increment born count (for revival) */
include/hack.h:#define MM_IGNOREWATER  0x000008L /* ignore water when positioning */
include/hack.h:#define MM_ADJACENTOK   0x000010L /* acceptable to use adjacent coordinates */
include/hack.h:#define MM_ANGRY        0x000020L /* monster is created angry */
include/hack.h:#define MM_NONAME       0x000040L /* monster is not christened */
include/hack.h:#define MM_EGD          0x000100L /* add egd structure */
include/hack.h:#define MM_EPRI         0x000200L /* add epri structure */
include/hack.h:#define MM_ESHK         0x000400L /* add eshk structure */
include/hack.h:#define MM_EMIN         0x000800L /* add emin structure */
include/hack.h:#define MM_EDOG         0x001000L /* add edog structure */
include/hack.h:#define MM_ASLEEP       0x002000L /* monsters should be generated asleep */
include/hack.h:#define MM_NOGRP        0x004000L /* suppress creation of monster groups */
include/hack.h:#define MM_NOTAIL       0x008000L /* if a long worm, don't give it a tail */
include/hack.h:#define MM_MALE         0x010000L /* male variation */
include/hack.h:#define MM_FEMALE       0x020000L /* female variation */
include/hack.h:#define MM_NOMSG        0x040000L /* no appear message */

include/hack.h:#define MM_NOEXCLAM     0x400000L /* more sedate "<mon> appears." mesg for ^G */
include/hack.h:#define MM_IGNORELAVA   0x800000L /* ignore lava when positioning */
This commit is contained in:
nhmall
2023-03-19 12:19:34 -04:00
parent e29bfcab54
commit 5f69dc6228
10 changed files with 227 additions and 227 deletions

View File

@@ -2088,7 +2088,7 @@ mhitm_ad_rust(struct monst *magr, struct attack *mattk, struct monst *mdef,
pline("%s %s to pieces!", Monnam(mdef),
!mlifesaver(mdef) ? "falls" : "starts to fall");
xkilled(mdef, XKILL_NOMSG);
mhm->hitflags |= MM_DEF_DIED;
mhm->hitflags |= M_ATTK_DEF_DIED;
}
erode_armor(mdef, ERODE_RUST);
mhm->damage = 0; /* damageum(), int tmp */
@@ -2115,12 +2115,12 @@ mhitm_ad_rust(struct monst *magr, struct attack *mattk, struct monst *mdef,
!mlifesaver(mdef) ? "falls" : "starts to fall");
monkilled(mdef, (char *) 0, AD_RUST);
if (!DEADMONSTER(mdef)) {
mhm->hitflags = MM_MISS;
mhm->hitflags = M_ATTK_MISS;
mhm->done = TRUE;
return;
}
mhm->hitflags = (MM_DEF_DIED | (grow_up(magr, mdef) ? 0
: MM_AGR_DIED));
mhm->hitflags = (M_ATTK_DEF_DIED | (grow_up(magr, mdef) ? 0
: M_ATTK_AGR_DIED));
mhm->done = TRUE;
return;
}
@@ -2194,12 +2194,12 @@ mhitm_ad_dcay(struct monst *magr, struct attack *mattk, struct monst *mdef,
monkilled(mdef, (char *) 0, AD_DCAY);
if (!DEADMONSTER(mdef)) {
mhm->done = TRUE;
mhm->hitflags = MM_MISS;
mhm->hitflags = M_ATTK_MISS;
return;
}
mhm->done = TRUE;
mhm->hitflags = (MM_DEF_DIED
| (grow_up(magr, mdef) ? 0 : MM_AGR_DIED));
mhm->hitflags = (M_ATTK_DEF_DIED
| (grow_up(magr, mdef) ? 0 : M_ATTK_AGR_DIED));
return;
}
erode_armor(mdef, ERODE_ROT);
@@ -2398,12 +2398,12 @@ mhitm_ad_fire(
: "is totally engulfed in flames");
monkilled(mdef, (char *) 0, AD_FIRE);
if (!DEADMONSTER(mdef)) {
mhm->hitflags = MM_MISS;
mhm->hitflags = M_ATTK_MISS;
mhm->done = TRUE;
return;
}
mhm->hitflags = (MM_DEF_DIED
| (grow_up(magr, mdef) ? 0 : MM_AGR_DIED));
mhm->hitflags = (M_ATTK_DEF_DIED
| (grow_up(magr, mdef) ? 0 : M_ATTK_AGR_DIED));
mhm->done = TRUE;
return;
}
@@ -2867,14 +2867,14 @@ mhitm_ad_curs(struct monst *magr, struct attack *mattk, struct monst *mdef,
}
mondied(mdef);
if (!DEADMONSTER(mdef)) {
mhm->hitflags = MM_MISS;
mhm->hitflags = M_ATTK_MISS;
mhm->done = TRUE;
return;
} else if (mdef->mtame && !gv.vis) {
You(brief_feeling, "strangely sad");
}
mhm->hitflags = (MM_DEF_DIED
| (grow_up(magr, mdef) ? 0 : MM_AGR_DIED));
mhm->hitflags = (M_ATTK_DEF_DIED
| (grow_up(magr, mdef) ? 0 : M_ATTK_AGR_DIED));
mhm->done = TRUE;
return;
}
@@ -3017,7 +3017,7 @@ mhitm_ad_drin(
regardless of current shape) or is noncorporeal
(can't happen here; no one can poly into a ghost
or shade) so this check for missing is academic */
if (eat_brains(magr, mdef, TRUE, (int *) 0) == MM_MISS)
if (eat_brains(magr, mdef, TRUE, (int *) 0) == M_ATTK_MISS)
return;
}
/* adjattrib gives dunce cap message when appropriate */
@@ -3273,7 +3273,7 @@ mhitm_ad_slim(
}
/* munslime attempt could have been fatal */
if (DEADMONSTER(mdef)) {
mhm->hitflags = MM_DEF_DIED; /* skip death message */
mhm->hitflags = M_ATTK_DEF_DIED; /* skip death message */
mhm->done = TRUE;
return;
}
@@ -3314,14 +3314,14 @@ mhitm_ad_slim(
if (newcham(mdef, &mons[PM_GREEN_SLIME], ncflags))
pd = mdef->data;
mdef->mstrategy &= ~STRAT_WAITFORU;
mhm->hitflags = MM_HIT;
mhm->hitflags = M_ATTK_HIT;
}
/* munslime attempt could have been fatal,
potentially to multiple monsters (SCR_FIRE) */
if (DEADMONSTER(magr))
mhm->hitflags |= MM_AGR_DIED;
mhm->hitflags |= M_ATTK_AGR_DIED;
if (DEADMONSTER(mdef))
mhm->hitflags |= MM_DEF_DIED;
mhm->hitflags |= M_ATTK_DEF_DIED;
mhm->damage = 0;
}
}
@@ -3667,14 +3667,14 @@ do_stone_mon(struct monst *magr, struct attack *mattk UNUSED,
monstone(mdef);
post_stone:
if (!DEADMONSTER(mdef)) {
mhm->hitflags = MM_MISS;
mhm->hitflags = M_ATTK_MISS;
mhm->done = TRUE;
return;
} else if (mdef->mtame && !gv.vis) {
You(brief_feeling, "peculiarly sad");
}
mhm->hitflags = (MM_DEF_DIED
| (grow_up(magr, mdef) ? 0 : MM_AGR_DIED));
mhm->hitflags = (M_ATTK_DEF_DIED
| (grow_up(magr, mdef) ? 0 : M_ATTK_AGR_DIED));
mhm->done = TRUE;
return;
}
@@ -3728,11 +3728,11 @@ mhitm_ad_phys(
if (!u.ustuck && rn2(2)) {
if (u_slip_free(magr, mattk)) {
mhm->damage = 0;
mhm->hitflags |= MM_MISS;
mhm->hitflags |= M_ATTK_MISS;
} else {
set_ustuck(magr);
pline("%s grabs you!", Monnam(magr));
mhm->hitflags |= MM_HIT;
mhm->hitflags |= M_ATTK_HIT;
}
} else if (u.ustuck == magr) {
exercise(A_STR, FALSE);
@@ -3753,7 +3753,7 @@ mhitm_ad_phys(
mons[otmp->corpsenm].pmnames[NEUTRAL]);
if (!Stoned) {
if (do_stone_u(magr)) {
mhm->hitflags = MM_HIT;
mhm->hitflags = M_ATTK_HIT;
mhm->done = 1;
return;
}
@@ -3769,7 +3769,7 @@ mhitm_ad_phys(
|| !artifact_hit(magr, mdef, otmp, &mhm->damage,
gm.mhitu_dieroll)) {
hitmsg(magr, mattk);
mhm->hitflags |= MM_HIT;
mhm->hitflags |= M_ATTK_HIT;
}
if (!mhm->damage)
return;
@@ -3805,7 +3805,7 @@ mhitm_ad_phys(
} else if (mattk->aatyp != AT_TUCH || mhm->damage != 0
|| magr != u.ustuck) {
hitmsg(magr, mattk);
mhm->hitflags |= MM_HIT;
mhm->hitflags |= M_ATTK_HIT;
}
}
} else {
@@ -3849,14 +3849,14 @@ mhitm_ad_phys(
if (gv.vis)
pline("%s hits %s.", Monnam(magr),
mon_nam_too(mdef, magr));
mhm->hitflags |= MM_HIT;
mhm->hitflags |= M_ATTK_HIT;
}
/* artifact_hit updates 'tmp' but doesn't inflict any
damage; however, it might cause carried items to be
destroyed and they might do so */
if (DEADMONSTER(mdef)) {
mhm->hitflags = (MM_DEF_DIED | (grow_up(magr, mdef) ? 0
: MM_AGR_DIED));
mhm->hitflags = (M_ATTK_DEF_DIED | (grow_up(magr, mdef) ? 0
: M_ATTK_AGR_DIED));
mhm->done = TRUE;
return;
}
@@ -3919,7 +3919,7 @@ mhitm_ad_ston(
*/
if (!rn2(10) || flags.moonphase == NEW_MOON) {
if (do_stone_u(magr)) {
mhm->hitflags = MM_HIT;
mhm->hitflags = M_ATTK_HIT;
mhm->done = TRUE;
return;
}
@@ -4028,14 +4028,14 @@ mhitm_ad_heal(struct monst *magr, struct attack *mattk, struct monst *mdef,
if (goaway) {
mongone(magr);
mhm->done = TRUE;
mhm->hitflags = MM_DEF_DIED; /* return 2??? */
mhm->hitflags = M_ATTK_DEF_DIED; /* return 2??? */
return;
} else if (!rn2(33)) {
if (!tele_restrict(magr))
(void) rloc(magr, RLOC_MSG);
monflee(magr, d(3, 6), TRUE, FALSE);
mhm->done = TRUE;
mhm->hitflags = MM_HIT | MM_DEF_DIED; /* return 3??? */
mhm->hitflags = M_ATTK_HIT | M_ATTK_DEF_DIED; /* return 3??? */
return;
}
mhm->damage = 0;
@@ -4187,12 +4187,12 @@ mhitm_ad_dgst(struct monst *magr, struct attack *mattk UNUSED,
: "vomits violently and drops dead");
mondied(magr);
if (!DEADMONSTER(magr)) {
mhm->hitflags = MM_MISS; /* lifesaved */
mhm->hitflags = M_ATTK_MISS; /* lifesaved */
mhm->done = TRUE;
return;
} else if (magr->mtame && !gv.vis)
You(brief_feeling, "queasy");
mhm->hitflags = MM_AGR_DIED;
mhm->hitflags = M_ATTK_AGR_DIED;
mhm->done = TRUE;
return;
}
@@ -4318,7 +4318,7 @@ mhitm_ad_sedu(
: "makes some remarks about how difficult theft is lately");
if (!tele_restrict(magr))
(void) rloc(magr, RLOC_MSG);
mhm->hitflags = MM_AGR_DONE; /* return 3??? */
mhm->hitflags = M_ATTK_AGR_DONE; /* return 3??? */
mhm->done = TRUE;
return;
} else if (magr->mcan) {
@@ -4330,7 +4330,7 @@ mhitm_ad_sedu(
if (rn2(3)) {
if (!tele_restrict(magr))
(void) rloc(magr, RLOC_MSG);
mhm->hitflags = MM_AGR_DONE; /* return 3??? */
mhm->hitflags = M_ATTK_AGR_DONE; /* return 3??? */
mhm->done = TRUE;
return;
}
@@ -4339,7 +4339,7 @@ mhitm_ad_sedu(
buf[0] = '\0';
switch (steal(magr, buf)) {
case -1:
mhm->hitflags = MM_AGR_DIED; /* return 2??? */
mhm->hitflags = M_ATTK_AGR_DIED; /* return 2??? */
mhm->done = TRUE;
return;
case 0:
@@ -4353,7 +4353,7 @@ mhitm_ad_sedu(
locomotion(magr->data, "run"), buf);
}
monflee(magr, 0, FALSE, FALSE);
mhm->hitflags = MM_AGR_DONE; /* return 3??? */
mhm->hitflags = M_ATTK_AGR_DONE; /* return 3??? */
mhm->done = TRUE;
return;
}
@@ -4393,8 +4393,8 @@ mhitm_ad_sedu(
mdef->mstrategy &= ~STRAT_WAITFORU;
mselftouch(mdef, (const char *) 0, FALSE);
if (DEADMONSTER(mdef)) {
mhm->hitflags = (MM_DEF_DIED
| (grow_up(magr, mdef) ? 0 : MM_AGR_DIED));
mhm->hitflags = (M_ATTK_DEF_DIED
| (grow_up(magr, mdef) ? 0 : M_ATTK_AGR_DIED));
mhm->done = TRUE;
return;
}
@@ -4425,7 +4425,7 @@ mhitm_ad_ssex(struct monst *magr, struct attack *mattk, struct monst *mdef,
if (SYSOPT_SEDUCE) {
if (could_seduce(magr, mdef, mattk) == 1 && !magr->mcan)
if (doseduce(magr)) {
mhm->hitflags = MM_AGR_DONE;
mhm->hitflags = M_ATTK_AGR_DONE;
mhm->done = TRUE;
return;
}
@@ -4504,7 +4504,7 @@ damageum(
struct mhitm_data mhm;
mhm.damage = d((int) mattk->damn, (int) mattk->damd);
mhm.hitflags = MM_MISS;
mhm.hitflags = M_ATTK_MISS;
mhm.permdmg = 0;
mhm.specialdmg = specialdmg;
mhm.done = FALSE;
@@ -4512,7 +4512,7 @@ damageum(
if (is_demon(gy.youmonst.data) && !rn2(13) && !uwep
&& u.umonnum != PM_AMOROUS_DEMON && u.umonnum != PM_BALROG) {
demonpet();
return MM_MISS;
return M_ATTK_MISS;
}
mhitm_adtyping(&gy.youmonst, mattk, mdef, &mhm);
@@ -4542,9 +4542,9 @@ damageum(
killed(mdef); /* regular "you kill <mdef>" message */
}
gm.mkcorpstat_norevive = FALSE;
return MM_DEF_DIED;
return M_ATTK_DEF_DIED;
}
return MM_HIT;
return M_ATTK_HIT;
}
/* Hero, as a monster which is capable of an exploding attack mattk, is
@@ -4581,14 +4581,14 @@ explum(struct monst *mdef, struct attack *mattk)
if (mdef && DEADMONSTER(mdef)) {
/* Other monsters may have died too, but return this if the actual
target died. */
return MM_DEF_DIED;
return M_ATTK_DEF_DIED;
}
break;
default:
break;
}
wake_nearto(u.ux, u.uy, 7 * 7); /* same radius as exploding monster */
return MM_HIT;
return M_ATTK_HIT;
}
static void
@@ -4642,7 +4642,7 @@ gulpum(struct monst *mdef, struct attack *mattk)
*/
if (!engulf_target(&gy.youmonst, mdef))
return MM_MISS;
return M_ATTK_MISS;
if (!(u_digest && u.uhunger >= 1500) && !u.uswallow) {
if (!flaming(gy.youmonst.data)) {
@@ -4668,7 +4668,7 @@ gulpum(struct monst *mdef, struct attack *mattk)
} else {
map_invisible(mdef->mx, mdef->my);
}
return MM_HIT;
return M_ATTK_HIT;
}
/* engulfing a cockatrice or digesting a Rider or Medusa */
@@ -4705,7 +4705,7 @@ gulpum(struct monst *mdef, struct attack *mattk)
pmname(pd, Mgender(mdef)));
gk.killer.format = NO_KILLER_PREFIX;
done(DIED);
return MM_MISS; /* lifesaved */
return M_ATTK_MISS; /* lifesaved */
}
if (Slow_digestion) {
@@ -4765,7 +4765,7 @@ gulpum(struct monst *mdef, struct attack *mattk)
exercise(A_CON, TRUE);
}
end_engulf();
return MM_DEF_DIED;
return M_ATTK_DEF_DIED;
case AD_PHYS:
if (gy.youmonst.data == &mons[PM_FOG_CLOUD]) {
pline("%s is laden with your moisture.", Monnam(mdef));
@@ -4844,7 +4844,7 @@ gulpum(struct monst *mdef, struct attack *mattk)
if (DEADMONSTER(mdef)) {
killed(mdef);
if (DEADMONSTER(mdef)) /* not lifesaved */
return MM_DEF_DIED;
return M_ATTK_DEF_DIED;
}
You("%s %s!", expel_verb, mon_nam(mdef));
if ((Slow_digestion || is_animal(gy.youmonst.data)) && u_digest) {
@@ -4853,7 +4853,7 @@ gulpum(struct monst *mdef, struct attack *mattk)
}
}
}
return MM_MISS;
return M_ATTK_MISS;
}
void
@@ -4960,7 +4960,7 @@ mhitm_knockback(
/* the attack must have hit */
/* mon-vs-mon code path doesn't set up hitflags */
if ((u_agr || u_def) && !(*hitflags & MM_HIT))
if ((u_agr || u_def) && !(*hitflags & M_ATTK_HIT))
return FALSE;
/* steadfast defender cannot be pushed around */
@@ -5028,7 +5028,7 @@ mhitm_knockback(
mhurtle(mdef, dx, dy, knockdistance);
if (DEADMONSTER(mdef)) {
if (!was_u)
*hitflags |= MM_DEF_DIED;
*hitflags |= M_ATTK_DEF_DIED;
} else if (!rn2(4)) {
mdef->mstun = 1;
/* if steed and hero were knocked back, update attacker's idea
@@ -5039,7 +5039,7 @@ mhitm_knockback(
}
if (!u_agr) {
if (DEADMONSTER(magr))
*hitflags |= MM_AGR_DIED;
*hitflags |= M_ATTK_AGR_DIED;
}
return TRUE;
@@ -5063,7 +5063,7 @@ hmonas(struct monst *mon)
with more than one, alternate right and left when checking
whether silver ring causes successful hit */
for (i = 0; i < NATTK; i++) {
sum[i] = MM_MISS;
sum[i] = M_ATTK_MISS;
mattk = getmattk(&gy.youmonst, mon, i, sum, &alt_attk);
if (mattk->aatyp == AT_WEAP
|| mattk->aatyp == AT_CLAW || mattk->aatyp == AT_TUCH)
@@ -5074,7 +5074,7 @@ hmonas(struct monst *mon)
gs.skipdrin = FALSE; /* [see mattackm(mhitm.c)] */
for (i = 0; i < NATTK; i++) {
/* sum[i] = MM_MISS; -- now done above */
/* sum[i] = M_ATTK_MISS; -- now done above */
mattk = getmattk(&gy.youmonst, mon, i, sum, &alt_attk);
if (gs.skipdrin && mattk->aatyp == AT_TENT && mattk->adtyp == AD_DRIN)
continue;
@@ -5088,7 +5088,7 @@ hmonas(struct monst *mon)
get to make another weapon attack (note: monsters who
use weapons do not have this restriction, but they also
never have the opportunity to use two weapons) */
if (weapon_used && (sum[i - 1] > MM_MISS)
if (weapon_used && (sum[i - 1] > M_ATTK_MISS)
&& uwep && bimanual(uwep))
continue;
/* Certain monsters don't use weapons when encountered as enemies,
@@ -5144,10 +5144,10 @@ hmonas(struct monst *mon)
weapon = *originalweapon; /* might receive passive erosion */
if (!monster_survived) {
/* enemy dead, before any special abilities used */
sum[i] = MM_DEF_DIED;
sum[i] = M_ATTK_DEF_DIED;
break;
} else
sum[i] = dhit ? MM_HIT : MM_MISS;
sum[i] = dhit ? M_ATTK_HIT : M_ATTK_MISS;
/* might be a worm that gets cut in half; if so, early return */
if (m_at(u.ux + u.dx, u.uy + u.dy) != mon) {
i = NATTK; /* skip additional attacks */
@@ -5342,8 +5342,8 @@ hmonas(struct monst *mon)
if (silverhit && Verbose(4, hmonas3))
silver_sears(&gy.youmonst, mon, silverhit);
sum[i] = damageum(mon, mattk, specialdmg);
} else if (i >= 2 && (sum[i - 1] > MM_MISS)
&& (sum[i - 2] > MM_MISS)) {
} else if (i >= 2 && (sum[i - 1] > M_ATTK_MISS)
&& (sum[i - 2] > M_ATTK_MISS)) {
/* in case we're hugging a new target while already
holding something else; yields feedback
"<u.ustuck> is no longer in your clutches" */
@@ -5375,7 +5375,7 @@ hmonas(struct monst *mon)
Your("attempt to surround %s is harmless.", mon_nam(mon));
} else {
sum[i] = gulpum(mon, mattk);
if (sum[i] == MM_DEF_DIED && (mon->data->mlet == S_ZOMBIE
if (sum[i] == M_ATTK_DEF_DIED && (mon->data->mlet == S_ZOMBIE
|| mon->data->mlet == S_MUMMY)
&& rn2(5) && !Sick_resistance) {
You_feel("%ssick.", (Sick) ? "very " : "");
@@ -5415,11 +5415,11 @@ hmonas(struct monst *mon)
u.mh = -1; /* dead in the current form */
rehumanize();
}
if (sum[i] == MM_DEF_DIED) {
if (sum[i] == M_ATTK_DEF_DIED) {
/* defender dead */
(void) passive(mon, weapon, 1, 0, mattk->aatyp, FALSE);
} else {
(void) passive(mon, weapon, (sum[i] != MM_MISS), 1,
(void) passive(mon, weapon, (sum[i] != M_ATTK_MISS), 1,
mattk->aatyp, FALSE);
}
@@ -5463,8 +5463,8 @@ passive(struct monst *mon,
{
register struct permonst *ptr = mon->data;
register int i, tmp;
int mhit = mhitb ? MM_HIT : MM_MISS;
int malive = maliveb ? MM_HIT : MM_MISS;
int mhit = mhitb ? M_ATTK_HIT : M_ATTK_MISS;
int malive = maliveb ? M_ATTK_HIT : M_ATTK_MISS;
for (i = 0;; i++) {
if (i >= NATTK)
@@ -5539,7 +5539,7 @@ passive(struct monst *mon,
&& !(poly_when_stoned(gy.youmonst.data)
&& polymon(PM_STONE_GOLEM))) {
done_in_by(mon, STONING); /* "You turn to stone..." */
return MM_DEF_DIED;
return M_ATTK_DEF_DIED;
}
}
}