diff options
author | elliptic <hyperelliptical@gmail.com> | 2013-04-25 23:44:06 -0400 |
---|---|---|
committer | elliptic <hyperelliptical@gmail.com> | 2013-04-25 23:47:39 -0400 |
commit | f24eba4eaa46a75a712f6f76c897bc678636e8c6 (patch) | |
tree | b9034280c5bfcf3ddebf8c662b7cf71610269459 /crawl-ref/source/player-stats.cc | |
parent | 51f303863fd56420693c3db431dfdf5bce54d519 (diff) | |
download | crawl-ref-f24eba4eaa46a75a712f6f76c897bc678636e8c6.tar.gz crawl-ref-f24eba4eaa46a75a712f6f76c897bc678636e8c6.zip |
Fix various breakages caused by body armour EVP rescaling.
Bardings gave -7 EV instead of -2, Ozo's armour didn't work on leather,
Jiyva stat action went crazy, etc.
Diffstat (limited to 'crawl-ref/source/player-stats.cc')
-rw-r--r-- | crawl-ref/source/player-stats.cc | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/crawl-ref/source/player-stats.cc b/crawl-ref/source/player-stats.cc index 2ce173831d..23c4efb712 100644 --- a/crawl-ref/source/player-stats.cc +++ b/crawl-ref/source/player-stats.cc @@ -159,7 +159,7 @@ void jiyva_stat_action() int current_capacity = carrying_capacity(BS_UNENCUMBERED); int carrying_strength = cur_stat[0] + (you.burden - current_capacity + 207)/208; int evp = you.unadjusted_body_armour_penalty(); - target_stat[0] = max(max(9, 2 + 3 * evp), 2 + carrying_strength); + target_stat[0] = max(max(9, evp), 2 + carrying_strength); target_stat[1] = 9; target_stat[2] = 9; int remaining = stat_total - 18 - target_stat[0]; @@ -186,12 +186,12 @@ void jiyva_stat_action() } // If you are in really heavy armour, then you already are getting a // lot of Str and more won't help much, so weight magic more. - other_weights = max(other_weights - (evp >= 5 ? 4 : 1) * magic_weights/2, 0); + other_weights = max(other_weights - (evp >= 15 ? 4 : 1) * magic_weights/2, 0); magic_weights = div_rand_round(remaining * magic_weights, magic_weights + other_weights); other_weights = remaining - magic_weights; target_stat[1] += magic_weights; // Choose Str or Dex based on how heavy your armour is. - target_stat[(evp >= 5) ? 0 : 2] += other_weights; + target_stat[(evp >= 15) ? 0 : 2] += other_weights; } // Add a little fuzz to the target. for (int x = 0; x < 3; ++x) |