beauty no longer in eye of the beholder

There was a complaint that despite charisma of 13 being above average,
the character was described as "ugly".  The cut-off was actually >14
for "beautiful" or "handsome" vs <=14 for "ugly".  This adds several
more grades of appearance.
This commit is contained in:
PatR
2020-01-28 12:49:38 -08:00
parent 9f06c0139e
commit 2f0676c1b8
2 changed files with 21 additions and 9 deletions

View File

@@ -1,4 +1,4 @@
$NHDT-Branch: NetHack-3.7 $:$NHDT-Revision: 1.76 $ $NHDT-Date: 1580043420 2020/01/26 12:57:00 $
$NHDT-Branch: NetHack-3.7 $:$NHDT-Revision: 1.78 $ $NHDT-Date: 1580244571 2020/01/28 20:49:31 $
General Fixes and Modified Features
-----------------------------------
@@ -95,12 +95,12 @@ savefile: add support to deconstruct internal data structures down into their
individual fields and save those fields instead of the entire struct
savefile: use little-endian format for fields where that makes a difference
replace build-time level compiler and dungeon compiler with run-time loading of
the dungeon and level descriptions and interpreting them via LUA
the dungeon and level descriptions and interpreting them via Lua
split off some of the functionality that was in makedefs (compiled-in options
build date/time, etc) so that it can be built by a cross-compiler
and accessed on the target platform
replace quest.txt and associated conversion to quest.dat via makedefs with
lua quest texts loaded at runtime
Lua quest texts loaded at runtime
some altars are displayed in different colors (for tty and curses at least)
add 'quick_farsight' option to provide some control over random clairvoyance
where pausing to be able to browse temporarily visible aspects of the
@@ -122,6 +122,7 @@ tiny chance for randomly created spellbooks to be Discworld novels instead
wearing a wet towel confers "half damage from poison gas" attribute
for end of game disclosure and dumplog, show 'achievements' (previously only
available as an encoded value in xlogfile) along with 'conduct'
more grades of self-appearance than beautiful or handsome vs ugly
Platform- and/or Interface-Specific New Features

View File

@@ -1,4 +1,4 @@
/* NetHack 3.6 apply.c $NHDT-Date: 1578187332 2020/01/05 01:22:12 $ $NHDT-Branch: NetHack-3.7 $:$NHDT-Revision: 1.310 $ */
/* NetHack 3.6 apply.c $NHDT-Date: 1580244571 2020/01/28 20:49:31 $ $NHDT-Branch: NetHack-3.7 $:$NHDT-Revision: 1.314 $ */
/* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */
/*-Copyright (c) Robert Patrick Rankin, 2012. */
/* NetHack may be freely redistributed. See license for details. */
@@ -815,14 +815,25 @@ register xchar x, y;
}
}
/* charisma is supposed to include qualities like leadership and personal
magnetism rather than just appearance, but it has devolved to this... */
const char *
beautiful()
{
return ((ACURR(A_CHA) > 14)
? ((poly_gender() == 1)
? "beautiful"
: "handsome")
: "ugly");
const char *res;
int cha = ACURR(A_CHA);
/* don't bother complaining about the sexism; nethack is not real life */
res = ((cha >= 25) ? "sublime" /* 25 is the maximum possible */
: (cha >= 19) ? "splendorous" /* note: not "splendiferous" */
: (cha >= 16) ? ((poly_gender() == 1) ? "beautiful" : "handsome")
: (cha >= 14) ? ((poly_gender() == 1) ? "winsome" : "amiable")
: (cha >= 11) ? "cute"
: (cha >= 9) ? "plain"
: (cha >= 6) ? "homely"
: (cha >= 4) ? "ugly"
: "hideous"); /* 3 is the minimum possible */
return res;
}
static const char look_str[] = "look %s.";