diff options
author | Pekka Lampila <pekka.lampila@iki.fi> | 2013-06-07 01:17:12 +0300 |
---|---|---|
committer | Neil Moore <neil@s-z.org> | 2013-06-06 19:33:32 -0400 |
commit | e0bb6f7075ee525a3d28584a897f08090cac4a77 (patch) | |
tree | f2b624031a436eace87cd3782c78040c2dae7cce /crawl-ref/source/skills2.cc | |
parent | d28d70e7ab6c23aa07cbc7a57fa446b8c1a881d2 (diff) | |
download | crawl-ref-e0bb6f7075ee525a3d28584a897f08090cac4a77.tar.gz crawl-ref-e0bb6f7075ee525a3d28584a897f08090cac4a77.zip |
Always study all manuals in the inventory
Multiple manuals for different skills can be used at once. If there are
multiple manuals for the same skill, the one with least charges is used
up first.
Diffstat (limited to 'crawl-ref/source/skills2.cc')
-rw-r--r-- | crawl-ref/source/skills2.cc | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/crawl-ref/source/skills2.cc b/crawl-ref/source/skills2.cc index c881f95c96..98141fe4b2 100644 --- a/crawl-ref/source/skills2.cc +++ b/crawl-ref/source/skills2.cc @@ -18,6 +18,7 @@ #include "artefact.h" #include "describe.h" +#include "evoke.h" #include "externs.h" #include "godabil.h" #include "libutil.h" @@ -876,8 +877,7 @@ void skill_state::save() auto_training = you.auto_training; exp_available = you.exp_available; total_experience = you.total_experience; - if (!is_invalid_skill(you.manual_skill)) - manual_charges = you.inv[you.manual_index].plus2; + get_all_manual_charges(manual_charges); for (int i = 0; i < NUM_SKILLS; i++) { real_skills[i] = you.skill((skill_type)i, 10, true); @@ -894,8 +894,7 @@ void skill_state::restore_levels() you.skill_order = skill_order; you.exp_available = exp_available; you.total_experience = total_experience; - if (!is_invalid_skill(you.manual_skill)) - you.inv[you.manual_index].plus2 = manual_charges; + set_all_manual_charges(manual_charges); } void skill_state::restore_training() |