diff options
author | j-p-e-g <j-p-e-g@c06c8d41-db1a-0410-9941-cceddc491573> | 2008-10-26 13:18:19 +0000 |
---|---|---|
committer | j-p-e-g <j-p-e-g@c06c8d41-db1a-0410-9941-cceddc491573> | 2008-10-26 13:18:19 +0000 |
commit | c96c36a0477909874c98bdbda3d13333ddb453e2 (patch) | |
tree | 0c2a18233a65c55086d640be41685824c12d782e /crawl-ref/source/output.cc | |
parent | a2c2fe61d7f40cb8f5fecd84fdacfdf47d28f16a (diff) | |
download | crawl-ref-c96c36a0477909874c98bdbda3d13333ddb453e2.tar.gz crawl-ref-c96c36a0477909874c98bdbda3d13333ddb453e2.zip |
Implement FR 1894211: All transformations will now cause your equipment
to meld into your body than rather than being removed, so that when
untransforming you don't have to put everything on again.
* Wielded stuff cannot be melded, and does not yet use the autoswap
function.
* As before, the low-level transformation spells refuse to work with
cursed equipment.
* The messages are unnecessarily spammy if you change forms while
already transformed (first everything is re-equipped, then unequipped
again). Conversely, on simply untransforming the lack of messages
might be confusing.
* Might be buggy, feedback welcome!
git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@7300 c06c8d41-db1a-0410-9941-cceddc491573
Diffstat (limited to 'crawl-ref/source/output.cc')
-rw-r--r-- | crawl-ref/source/output.cc | 38 |
1 files changed, 19 insertions, 19 deletions
diff --git a/crawl-ref/source/output.cc b/crawl-ref/source/output.cc index dab690ae97..59d4daf10e 100644 --- a/crawl-ref/source/output.cc +++ b/crawl-ref/source/output.cc @@ -1638,7 +1638,19 @@ static void _print_overview_screen_equip(column_composer& cols, // uncomment (and change 42 to 33) to bring back slot names // snprintf(slot, sizeof slot, "%-7s: ", equip_slot_to_name(eqslot); - if (you.equip[ e_order[i] ] != -1) + if (!you_can_wear(e_order[i], true)) + { + snprintf(buf, sizeof buf, + "%s<darkgrey>(%s unavailable)</darkgrey>", + slot, slot_name_lwr); + } + else if (!you_tran_can_wear(e_order[i], true)) + { + snprintf(buf, sizeof buf, + "%s<darkgrey>(%s currently unavailable)</darkgrey>", + slot, slot_name_lwr); + } + else if (you.equip[ e_order[i] ] != -1) { const int item_idx = you.equip[e_order[i]]; const item_def& item = you.inv[item_idx]; @@ -1654,6 +1666,12 @@ static void _print_overview_screen_equip(column_composer& cols, colname); equip_chars.push_back(equip_char); } + else if (!you_can_wear(e_order[i])) + { + snprintf(buf, sizeof buf, + "%s<lightgrey>(%s restricted)</lightgrey>", + slot, slot_name_lwr); + } else if (e_order[i] == EQ_WEAPON && you.attribute[ATTR_TRANSFORMATION] == TRAN_BLADE_HANDS) { @@ -1664,24 +1682,6 @@ static void _print_overview_screen_equip(column_composer& cols, { snprintf(buf, sizeof buf, "%s - Unarmed", slot); } - else if (!you_can_wear(e_order[i], true)) - { - snprintf(buf, sizeof buf, - "%s<darkgrey>(%s unavailable)</darkgrey>", - slot, slot_name_lwr); - } - else if (!you_tran_can_wear(e_order[i], true)) - { - snprintf(buf, sizeof buf, - "%s<darkgrey>(%s currently unavailable)</darkgrey>", - slot, slot_name_lwr); - } - else if (!you_can_wear(e_order[i])) - { - snprintf(buf, sizeof buf, - "%s<lightgrey>(%s restricted)</lightgrey>", - slot, slot_name_lwr); - } else { snprintf(buf, sizeof buf, |