diff options
author | j-p-e-g <j-p-e-g@c06c8d41-db1a-0410-9941-cceddc491573> | 2008-03-06 14:30:42 +0000 |
---|---|---|
committer | j-p-e-g <j-p-e-g@c06c8d41-db1a-0410-9941-cceddc491573> | 2008-03-06 14:30:42 +0000 |
commit | e87dea4ec73e18578f93d82434660af8d2135904 (patch) | |
tree | f88f2c49f847595b35b367f896ae07c0a0b1d650 /crawl-ref/source/output.cc | |
parent | d6170bf64951aecfdd93eed709c4c9491ee9ee4c (diff) | |
download | crawl-ref-e87dea4ec73e18578f93d82434660af8d2135904.tar.gz crawl-ref-e87dea4ec73e18578f93d82434660af8d2135904.zip |
Tweak Vampires, part I
Better stats and aptitudes as suggested in David's post "The plan"
Minor modifications to starving/hungry/full messages. Generally change
Hungry to Thirsty, and Engorged to Alive. For now, the rest remains as
for the other species. Yes, this is nowhere near as radical as David'd
suggestions as those are confusing me immenseley, and I just can't code
that way.
git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@3526 c06c8d41-db1a-0410-9941-cceddc491573
Diffstat (limited to 'crawl-ref/source/output.cc')
-rw-r--r-- | crawl-ref/source/output.cc | 49 |
1 files changed, 30 insertions, 19 deletions
diff --git a/crawl-ref/source/output.cc b/crawl-ref/source/output.cc index e446bbdb83..c9329fe18c 100644 --- a/crawl-ref/source/output.cc +++ b/crawl-ref/source/output.cc @@ -189,6 +189,32 @@ static int count_digits(int val) } #endif +static std::string describe_hunger() +{ + bool vamp = (you.species == SP_VAMPIRE); + + switch (you.hunger_state) + { + case HS_ENGORGED: + return (vamp? "Alive" : "Engorged"); + case HS_VERY_FULL: + return ("Very Full"); + case HS_FULL: + return ("Full"); + case HS_SATIATED: // normal + return (""); + case HS_HUNGRY: + return (vamp? "Thirsty" : "Hungry"); + case HS_VERY_HUNGRY: + return (vamp? "Very Thirsty" : "Very Hungry"); + case HS_NEAR_STARVING: + return ("Near Starving"); + case HS_STARVING: + default: + return ("Starving"); + } +} + void print_stats(void) { textcolor(LIGHTGREY); @@ -528,42 +554,27 @@ void print_stats(void) { case HS_ENGORGED: textcolor( LIGHTGREEN ); - cprintf( "Engorged" ); break; case HS_VERY_FULL: - textcolor( GREEN ); - cprintf( "Very Full" ); - break; - case HS_FULL: - textcolor( GREEN ); - cprintf( "Full" ); - break; - case HS_SATIATED: + textcolor( GREEN ); break; case HS_HUNGRY: - textcolor( YELLOW ); - cprintf( "Hungry" ); - break; - case HS_VERY_HUNGRY: - textcolor( YELLOW ); - cprintf( "Very Hungry" ); - break; - case HS_NEAR_STARVING: textcolor( YELLOW ); - cprintf( "Near Starving" ); break; case HS_STARVING: textcolor( RED ); - cprintf( "Starving" ); break; } + const std::string state = describe_hunger(); + if (!state.empty()) + cprintf(state.c_str()); textcolor( LIGHTGREY ); |