diff options
-rw-r--r-- | crawl-ref/source/effects.cc | 9 | ||||
-rw-r--r-- | crawl-ref/source/spl-book.cc | 7 |
2 files changed, 6 insertions, 10 deletions
diff --git a/crawl-ref/source/effects.cc b/crawl-ref/source/effects.cc index 3c4e77a854..9220fb12b5 100644 --- a/crawl-ref/source/effects.cc +++ b/crawl-ref/source/effects.cc @@ -1319,8 +1319,7 @@ static int _spell_weight(spell_type spell) int disc = 1 << i; if (disciplines & disc) { - int skill = you.skills[spell_type2skill(disc)] - * 100 / species_skills(i, you.species); + int skill = you.skills[spell_type2skill(disc)]; weight += skill + 1; count++; @@ -1405,7 +1404,7 @@ static void _do_book_acquirement(item_def &book, int agent) if (is_invalid_skill(i)) continue; - int weight = you.skills[i] * 100 / species_skills(i, you.species); + int weight = you.skills[i]; // Anyone can get Spellcasting 1. Doesn't prove anything. if (i == SK_SPELLCASTING && weight >= 1) @@ -1497,9 +1496,7 @@ static void _do_book_acquirement(item_def &book, int agent) continue; } - int skill = you.skills[i] - * 100 / species_skills(i, you.species); - + int skill = you.skills[i]; int w = (skill < 12) ? skill + 3 : std::max(0, 25 - skill); diff --git a/crawl-ref/source/spl-book.cc b/crawl-ref/source/spl-book.cc index f35903dfdb..65052132b5 100644 --- a/crawl-ref/source/spl-book.cc +++ b/crawl-ref/source/spl-book.cc @@ -2098,11 +2098,10 @@ static bool _get_weighted_discs(bool completely_random, god_type god, for (int i = 0; i < num_discs; i++) { int skill = skills[i]; - int weight = you.skills[skill] - * 200 / species_skills(skill, you.species) + 1; + int weight = 2 * you.skills[skill] + 1; - if (spellcount[i] < 5) - weight -= 5 - spellcount[i]; + if (spellcount[i] < 3) + weight *= spellcount[i]/3; skill_weights[i] = std::max(0, weight); total_skills += skill_weights[i]; |