From a3c6eec5c0f7da9101118df31a3dd1c96a23d297 Mon Sep 17 00:00:00 2001 From: PatR Date: Sat, 8 Mar 2025 13:16:27 -0800 Subject: [PATCH] enlightenment about bones "You have disabled loading of bones levels" (during play) and "You disabled loading of bones levels" (end of game disclosure) both clearly refer to the player rather than the hero. "You have never encountered a bones level" is accurate for current hero but not necessarily accurate for the player. Rephrase it. Also, if OPTIONS=!bones is set and the hero just died, extend "You disabled loading of bones levels" during disclosure to "You disabled loading and storing of bones levels" (even in the case where bones wouldn't be saved anyway). --- src/insight.c | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/src/insight.c b/src/insight.c index 815f1113d..f4d0c945f 100644 --- a/src/insight.c +++ b/src/insight.c @@ -156,7 +156,11 @@ enlght_line( /* format increased chance to hit or damage or defense (Protection) */ staticfn char * -enlght_combatinc(const char *inctyp, int incamt, int final, char *outbuf) +enlght_combatinc( + const char *inctyp, /* "to hit" or "damage" or "defense" */ + int incamt, /* amount of increment (negative if decrement) */ + int final, /* ENL_{GAMEINPROGRESS,GAMEOVERALIVE,GAMEOVERDEAD} */ + char *outbuf) { const char *modif, *bonus; boolean invrt; @@ -405,9 +409,13 @@ enlightenment( } if (!flags.bones) { - you_have_X("disabled loading of bones levels"); + /* mention not saving bones iff hero just died */ + Sprintf(buf, "disabled loading%s of bones levels", + (final == ENL_GAMEOVERDEAD) ? " and storing" : ""); + you_have_X(buf); } else if (!u.uroleplay.numbones) { - you_have_never("encountered a bones level"); + enl_msg(You_, "haven't encountered", "didn't encounter", + " any bones levels", ""); } else { Sprintf(buf, "encountered %ld bones level%s", u.uroleplay.numbones, plur(u.uroleplay.numbones));