fog cloud and aquatic monsters
<Someone> pointed out the inappropriate appearance of the 3.4.2 message when fog clouds have you engulfed if you happen to be polymorphed into an aquatic creature. It does seem that a fog cloud should not cause added damage to amphibious creatures, which includes breathless (but non-flaming) monsters. I also thought another message was more appropriate for flaming creatures (see on_fire()), and added a special case for that. gulpum was missing symmetric code and I added it there too.
This commit is contained in:
@@ -29,6 +29,7 @@ accept wish for "grey spell book" not just "grey spellbook"
|
||||
do not double credit when putting gold into an unpaid container
|
||||
manes are nonliving
|
||||
poles and grappling hook worked thru walls when wearing Eyes of the Overworld
|
||||
more tweaks to fog cloud behavior
|
||||
|
||||
|
||||
Platform- and/or Interface-Specific Fixes
|
||||
|
||||
14
src/mhitu.c
14
src/mhitu.c
@@ -1687,11 +1687,15 @@ gulpmu(mtmp, mattk) /* monster swallows you, or damage if u.uswallow */
|
||||
}
|
||||
break;
|
||||
case AD_PHYS:
|
||||
if (mtmp->data == &mons[PM_FOG_CLOUD])
|
||||
You("are laden with moisture and can barely %s!",
|
||||
!breathless(youmonst.data) ? "breathe" :
|
||||
"stay conscious");
|
||||
else {
|
||||
if (mtmp->data == &mons[PM_FOG_CLOUD]) {
|
||||
You("are laden with moisture and %s",
|
||||
flaming(youmonst.data) ? "are smoldering out!" :
|
||||
Breathless ? "find it mildly uncomfortable." :
|
||||
amphibious(youmonst.data) ? "feel comforted." :
|
||||
"can barely breathe!");
|
||||
/* NB: Amphibious includes Breathless */
|
||||
if (Amphibious && !flaming(youmonst.data)) tmp = 0;
|
||||
} else {
|
||||
You("are pummeled with debris!");
|
||||
exercise(A_STR, FALSE);
|
||||
}
|
||||
|
||||
12
src/uhitm.c
12
src/uhitm.c
@@ -1827,7 +1827,17 @@ register struct attack *mattk;
|
||||
end_engulf();
|
||||
return(2);
|
||||
case AD_PHYS:
|
||||
pline("%s is pummeled with your debris!",Monnam(mdef));
|
||||
if (youmonst.data == &mons[PM_FOG_CLOUD]) {
|
||||
pline("%s is laden with your moisture.",
|
||||
Monnam(mdef));
|
||||
if (amphibious(mdef->data) &&
|
||||
!flaming(mdef->data)) {
|
||||
dam = 0;
|
||||
pline("%s seems unharmed.", Monnam(mdef));
|
||||
}
|
||||
} else
|
||||
pline("%s is pummeled with your debris!",
|
||||
Monnam(mdef));
|
||||
break;
|
||||
case AD_ACID:
|
||||
pline("%s is covered with your goo!", Monnam(mdef));
|
||||
|
||||
Reference in New Issue
Block a user