summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/player.cc
diff options
context:
space:
mode:
authorj-p-e-g <j-p-e-g@c06c8d41-db1a-0410-9941-cceddc491573>2009-09-13 16:04:24 +0000
committerj-p-e-g <j-p-e-g@c06c8d41-db1a-0410-9941-cceddc491573>2009-09-13 16:04:24 +0000
commit280d409759be7af8b54366f07ccba17348ea24f9 (patch)
tree99b931599c7a6544a9c9b3f4aeb7d9c99752b5d9 /crawl-ref/source/player.cc
parent8b4a043aa12cf1492ff94b0ef071afce5997dff2 (diff)
downloadcrawl-ref-280d409759be7af8b54366f07ccba17348ea24f9.tar.gz
crawl-ref-280d409759be7af8b54366f07ccba17348ea24f9.zip
Commit several patches:
* patch 2849505 by weyrava: make submerged monsters use the correct colour * patch 2857771 by caotto: another Feawn update * patch 2838771 by camedo: add potions of brilliance/agility * BR 2841651 by bookofjude: allow Merfolk to control-tele into deep water Now we need tiles for the new potions! git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@10669 c06c8d41-db1a-0410-9941-cceddc491573
Diffstat (limited to 'crawl-ref/source/player.cc')
-rw-r--r--crawl-ref/source/player.cc22
1 files changed, 21 insertions, 1 deletions
diff --git a/crawl-ref/source/player.cc b/crawl-ref/source/player.cc
index 37cf0f061c..8de920345c 100644
--- a/crawl-ref/source/player.cc
+++ b/crawl-ref/source/player.cc
@@ -118,7 +118,8 @@ bool move_player_to_grid( const coord_def& p, bool stepped, bool allow_shift,
// Better not be an unsubmerged monster either.
ASSERT(swapping && mgrd(p) != NON_MONSTER
|| !swapping && (mgrd(p) == NON_MONSTER
- || mons_is_submerged( &menv[ mgrd(p) ])));
+ || mons_is_submerged( &menv[ mgrd(p) ])
+ || feawn_passthrough(&menv[mgrd(p)])));
// Don't prompt if force is true.
if (!force)
@@ -2451,6 +2452,9 @@ int player_evasion()
if (dodge_bonus > 0) // always a bonus
ev += dodge_bonus;
+ if (you.duration[DUR_AGILITY])
+ ev += 5;
+
if (you.duration[DUR_PHASE_SHIFT])
ev += 8;
@@ -2621,6 +2625,9 @@ int player_mag_abil(bool is_weighted)
{
int ma = 0;
+ // Brilliance Potion
+ ma += 6 * (you.duration[DUR_BRILLIANCE] ? 1 : 0);
+
ma += 3 * player_equip(EQ_RINGS, RING_WIZARDRY);
// Staves
@@ -3740,6 +3747,9 @@ int check_stealth(void)
if ( you.duration[DUR_STEALTH] )
stealth += 80;
+ if (you.duration[DUR_AGILITY])
+ stealth += 50;
+
stealth += scan_artefacts( ARTP_STEALTH );
if (player_is_airborne())
@@ -4181,6 +4191,10 @@ void display_char_status()
if (you.duration[DUR_MIGHT])
mpr("You are mighty.");
+ if (you.duration[DUR_BRILLIANCE])
+ mpr("You are brilliant.");
+ if (you.duration[DUR_AGILITY])
+ mpr("You are agile.");
if (you.duration[DUR_DIVINE_VIGOUR])
mpr("You are divinely vigorous.");
@@ -5768,6 +5782,9 @@ static int _int_modifier()
{
int result = 0;
+ if (you.duration[DUR_BRILLIANCE])
+ result += 5;
+
if (you.duration[DUR_DIVINE_STAMINA])
result += you.attribute[ATTR_DIVINE_STAMINA];
@@ -5791,6 +5808,9 @@ static int _dex_modifier()
{
int result = 0;
+ if (you.duration[DUR_AGILITY])
+ result += 5;
+
if (you.duration[DUR_DIVINE_STAMINA])
result += you.attribute[ATTR_DIVINE_STAMINA];