summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source
diff options
context:
space:
mode:
Diffstat (limited to 'crawl-ref/source')
-rw-r--r--crawl-ref/source/item_use.cc13
-rw-r--r--crawl-ref/source/spl-book.cc18
2 files changed, 14 insertions, 17 deletions
diff --git a/crawl-ref/source/item_use.cc b/crawl-ref/source/item_use.cc
index 691ffb0217..11c92d1fbe 100644
--- a/crawl-ref/source/item_use.cc
+++ b/crawl-ref/source/item_use.cc
@@ -517,6 +517,19 @@ void wield_effects(int item_wield_2, bool showMsgs)
// Right now that's always "uncursed". -- bwr
set_ident_flags(item, ISFLAG_KNOW_CURSE);
}
+ // Automatically identify rods; you can do this by wielding and then
+ // evoking them, so do it automatically instead. We don't need to give
+ // a message either, as the game will do that automatically. {due}
+ if (item_is_rod(item))
+ {
+ if (!item_type_known(item))
+ {
+ set_ident_type( OBJ_STAVES, item.sub_type, ID_KNOWN_TYPE );
+ set_ident_flags( item, ISFLAG_KNOW_TYPE );
+ }
+ if (!item_ident( item, ISFLAG_KNOW_PLUSES))
+ set_ident_flags( item, ISFLAG_KNOW_PLUSES );
+ }
break;
}
diff --git a/crawl-ref/source/spl-book.cc b/crawl-ref/source/spl-book.cc
index af1a551caa..66d9c9d194 100644
--- a/crawl-ref/source/spl-book.cc
+++ b/crawl-ref/source/spl-book.cc
@@ -1924,23 +1924,7 @@ int staff_spell( int staff )
return (-1);
}
- bool need_id = false;
- if (!item_type_known(istaff))
- {
- set_ident_type( OBJ_STAVES, istaff.sub_type, ID_KNOWN_TYPE );
- set_ident_flags( istaff, ISFLAG_KNOW_TYPE );
- need_id = true;
- }
- if (!item_ident( istaff, ISFLAG_KNOW_PLUSES))
- {
- set_ident_flags( istaff, ISFLAG_KNOW_PLUSES );
- need_id = true;
- }
- if (need_id)
- {
- mprf(MSGCH_EQUIPMENT, "%s", istaff.name(DESC_INVENTORY_EQUIP).c_str());
- you.wield_change = true;
- }
+ // ID code got moved to item_use::wield_effects. {due}
const int num_spells = count_staff_spells(istaff, false);