Attached Files |
fodig.patch [^] (3,244 bytes) 2014-02-01 17:01 [Show Content] [Hide Content]From 9e63dc47356cdf6d8bf6e87d16faba8191d3aa53 Mon Sep 17 00:00:00 2001
From: pubby <pubby8@gmail.com>
Date: Mon, 27 Jan 2014 10:49:46 -0600
Subject: [PATCH 1/2] Make Fo digging faster.
0.2 AUT makes it closer to the power of the old dig.
Additionally, the extra AUT was made independant of movement speed,
which means Chei Fo can dig at 2.2 rather than 2.4
---
crawl-ref/source/main.cc | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/crawl-ref/source/main.cc b/crawl-ref/source/main.cc
index 0146cd7..e113ec3 100644
--- a/crawl-ref/source/main.cc
+++ b/crawl-ref/source/main.cc
@@ -4370,6 +4370,8 @@ static void _move_player(coord_def move)
bool moving = true; // used to prevent eventual movement (swap)
bool swap = false;
+ int additional_time_taken = 0; // Extra time independant of movement speed
+
ASSERT(!in_bounds(you.pos()) || !cell_is_solid(you.pos())
|| you.wizmode_teleported_into_rock);
@@ -4678,7 +4680,7 @@ static void _move_player(coord_def move)
mprf("You dig through %s.", feature_description_at(targ, false,
DESC_THE, false).c_str());
nuke_wall(targ);
- you.time_taken = you.time_taken * 3 / 2;
+ additional_time_taken += BASELINE_DELAY / 5;
}
if (swap)
@@ -4705,6 +4707,7 @@ static void _move_player(coord_def move)
you.time_taken *= player_movement_speed();
you.time_taken = div_rand_round(you.time_taken, 10);
+ you.time_taken += additional_time_taken;
if (you.running && you.running.travel_speed)
{
--
1.8.5.3
From facb2e4ec441ccb10767fbedd2092ffd89cbfa91 Mon Sep 17 00:00:00 2001
From: pubby <pubby8@gmail.com>
Date: Mon, 27 Jan 2014 11:13:54 -0600
Subject: [PATCH 2/2] Give Fo dig noise and hunger cost.
The noise is necessary to prevent extremely easy stabbing and escapes.
The hunger cost prevents players from digging out entire levels, but
also cancels the behavior properly when trying to dig while starving.
---
crawl-ref/source/main.cc | 12 ++++++++++--
1 file changed, 10 insertions(+), 2 deletions(-)
diff --git a/crawl-ref/source/main.cc b/crawl-ref/source/main.cc
index e113ec3..618d881 100644
--- a/crawl-ref/source/main.cc
+++ b/crawl-ref/source/main.cc
@@ -4523,8 +4523,14 @@ static void _move_player(coord_def move)
if (you.digging)
{
- if (grd(targ) == DNGN_ROCK_WALL || grd(targ) == DNGN_CLEAR_ROCK_WALL
- || grd(targ) == DNGN_GRATE)
+ if (you.hunger_state == HS_STARVING && !you.is_undead)
+ {
+ you.digging = false;
+ canned_msg(MSG_TOO_HUNGRY);
+ }
+ else if (grd(targ) == DNGN_ROCK_WALL
+ || grd(targ) == DNGN_CLEAR_ROCK_WALL
+ || grd(targ) == DNGN_GRATE)
{
targ_pass = true;
}
@@ -4680,6 +4686,8 @@ static void _move_player(coord_def move)
mprf("You dig through %s.", feature_description_at(targ, false,
DESC_THE, false).c_str());
nuke_wall(targ);
+ noisy(6, you.pos());
+ make_hungry(50, true);
additional_time_taken += BASELINE_DELAY / 5;
}
--
1.8.5.3
|