potion of poison

<Someone> wrote:
> It is a little odd that, if you are poison resistant,
> potions of sickness can kill you if and only if they
> are blessed.
This commit is contained in:
nethack.allison
2004-06-05 22:16:00 +00:00
parent abe3d28a37
commit 93cdf2b7f7
2 changed files with 13 additions and 2 deletions

View File

@@ -680,8 +680,13 @@ peffects(otmp)
if (Role_if(PM_HEALER))
pline("Fortunately, you have been immunized.");
else {
char contaminant[BUFSZ];
int typ = rn2(A_MAX);
Sprintf(contaminant, "%s%s",
(Poison_resistance) ? "mildly " : "",
(otmp->fromsink) ? "contaminated tap water" :
"contaminated potion");
if (!Fixed_abil) {
poisontell(typ, FALSE);
(void) adjattrib(typ,
@@ -691,10 +696,14 @@ peffects(otmp)
if(!Poison_resistance) {
if (otmp->fromsink)
losehp(rnd(10)+5*!!(otmp->cursed),
"contaminated tap water", KILLED_BY);
contaminant, KILLED_BY);
else
losehp(rnd(10)+5*!!(otmp->cursed),
"contaminated potion", KILLED_BY_AN);
contaminant, KILLED_BY_AN);
} else {
/* rnd loss is so that unblessed poorer than blessed */
losehp(1 + rn2(2), contaminant,
(otmp->fromsink) ? KILLED_BY : KILLED_BY_AN);
}
exercise(A_CON, FALSE);
}