summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source
diff options
context:
space:
mode:
authorCharles Otto <ottochar@gmail.com>2009-11-14 22:01:26 -0500
committerCharles Otto <ottochar@gmail.com>2009-11-15 23:46:17 -0500
commit1328286a0d96bac32791e88078276d5973071895 (patch)
treecb178777b1647092ba40ff9f4bd0c46966521b5f /crawl-ref/source
parent3edb0b71f57aa058c6d20904dd7c875f67e222b6 (diff)
downloadcrawl-ref-1328286a0d96bac32791e88078276d5973071895.tar.gz
crawl-ref-1328286a0d96bac32791e88078276d5973071895.zip
Make the gourmand effect proportional to delay not perceived turns
Add time_taken to DUR_GOURMAND instead of adding 1 each time decrement_duration is called, along with that adjust the baseline and max values used in gourmand calculations.
Diffstat (limited to 'crawl-ref/source')
-rw-r--r--crawl-ref/source/defines.h5
-rw-r--r--crawl-ref/source/main.cc3
2 files changed, 5 insertions, 3 deletions
diff --git a/crawl-ref/source/defines.h b/crawl-ref/source/defines.h
index 382eacb187..80bdff2ca0 100644
--- a/crawl-ref/source/defines.h
+++ b/crawl-ref/source/defines.h
@@ -151,8 +151,9 @@ const int MONSTER_LOS_RANGE = LOS_RADIUS;
const int MAX_ROD_CHARGE = 17;
const int ROD_CHARGE_MULT = 100;
-const int GOURMAND_MAX = 200;
-const int GOURMAND_NUTRITION_BASE = 10;
+const int BASELINE_DELAY = 10;
+const int GOURMAND_MAX = 200 * BASELINE_DELAY;
+const int GOURMAND_NUTRITION_BASE = 10 * BASELINE_DELAY;
const int CHUNK_BASE_NUTRITION = 1000;
diff --git a/crawl-ref/source/main.cc b/crawl-ref/source/main.cc
index 2b32824db3..4401208e15 100644
--- a/crawl-ref/source/main.cc
+++ b/crawl-ref/source/main.cc
@@ -2158,10 +2158,11 @@ static bool _decrement_a_duration(duration_type dur, const char* endmsg = NULL,
// objects) which get installed at some point.
static void _decrement_durations()
{
+ int delay = you.time_taken;
if (wearing_amulet(AMU_THE_GOURMAND))
{
if (you.duration[DUR_GOURMAND] < GOURMAND_MAX && coinflip())
- you.duration[DUR_GOURMAND]++;
+ you.duration[DUR_GOURMAND] += delay;
}
else
you.duration[DUR_GOURMAND] = 0;