cure sickness feedback
A thread on Reddit mentions that successfully casting the cure sickness spell when not Sick doesn't provide any feedback. Change it to report |You are not ill. in that situation. Also, give "you are no longer ill" feedback when actually curing sickness after status gets updated.
This commit is contained in:
22
src/spell.c
22
src/spell.c
@@ -1,4 +1,4 @@
|
||||
/* NetHack 3.7 spell.c $NHDT-Date: 1762680996 2025/11/09 01:36:36 $ $NHDT-Branch: NetHack-3.7 $:$NHDT-Revision: 1.179 $ */
|
||||
/* NetHack 3.7 spell.c $NHDT-Date: 1769498874 2026/01/26 23:27:54 $ $NHDT-Branch: NetHack-3.7 $:$NHDT-Revision: 1.185 $ */
|
||||
/* Copyright (c) M. Stephenson 1988 */
|
||||
/* NetHack may be freely redistributed. See license for details. */
|
||||
|
||||
@@ -1549,13 +1549,23 @@ spelleffects(int spell_otyp, boolean atme, boolean force)
|
||||
case SPE_CURE_BLINDNESS:
|
||||
healup(0, 0, FALSE, TRUE);
|
||||
break;
|
||||
case SPE_CURE_SICKNESS:
|
||||
if (Sick)
|
||||
You("are no longer ill.");
|
||||
if (Slimed)
|
||||
make_slimed(0L, "The slime disappears!");
|
||||
case SPE_CURE_SICKNESS: {
|
||||
boolean was_sick = !!Sick, was_slimed = !!Slimed;
|
||||
|
||||
/* cure conditions (which updates status) before feedback */
|
||||
healup(0, 0, TRUE, FALSE);
|
||||
/*
|
||||
* Sick + !Slimed -- You are no longer ill.
|
||||
* !Sick + !Slimed -- You are not ill.
|
||||
* !Sick + Slimed -- The slime disappears.
|
||||
* Sick + Slimed -- You are no longer ill. The slime disappears.
|
||||
*/
|
||||
if (was_sick || !was_slimed)
|
||||
You("are %s ill.", was_sick ? "no longer" : "not");
|
||||
if (was_slimed)
|
||||
make_slimed(0L, "The slime disappears!");
|
||||
break;
|
||||
}
|
||||
case SPE_CREATE_FAMILIAR:
|
||||
(void) make_familiar((struct obj *) 0, u.ux, u.uy, FALSE);
|
||||
break;
|
||||
|
||||
Reference in New Issue
Block a user