summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--crawl-ref/source/delay.cc11
-rw-r--r--crawl-ref/source/item_use.cc2
-rw-r--r--crawl-ref/source/shopping.cc11
3 files changed, 19 insertions, 5 deletions
diff --git a/crawl-ref/source/delay.cc b/crawl-ref/source/delay.cc
index d5e2809544..fd1f3eac7b 100644
--- a/crawl-ref/source/delay.cc
+++ b/crawl-ref/source/delay.cc
@@ -19,6 +19,7 @@
#include "command.h"
#include "database.h"
#include "delay.h"
+#include "describe.h"
#include "enum.h"
#include "food.h"
#include "invent.h"
@@ -1244,11 +1245,17 @@ static void _armour_wear_effects(const int item_slot)
{
item_def &arm = you.inv[item_slot];
+ const bool was_known = item_type_known(arm);
set_ident_flags(arm, ISFLAG_EQ_ARMOUR_MASK );
+ if (Options.autoinscribe_randarts && is_random_artefact( arm )
+ && !was_known)
+ {
+ add_autoinscription( arm, randart_auto_inscription(arm));
+ }
mprf("You finish putting on %s.", arm.name(DESC_NOCAP_YOUR).c_str());
- const equipment_type eq_slot = get_armour_slot(arm);
- const bool known_cursed = item_known_cursed(arm);
+ const equipment_type eq_slot = get_armour_slot(arm);
+ const bool known_cursed = item_known_cursed(arm);
if (eq_slot == EQ_BODY_ARMOUR)
{
diff --git a/crawl-ref/source/item_use.cc b/crawl-ref/source/item_use.cc
index 7b6c27254b..d19029aea2 100644
--- a/crawl-ref/source/item_use.cc
+++ b/crawl-ref/source/item_use.cc
@@ -552,6 +552,8 @@ void wield_effects(int item_wield_2, bool showMsgs)
{
i_dam = randart_wpn_property(item, RAP_BRAND);
use_randart(item_wield_2);
+ if (Options.autoinscribe_randarts && !was_known)
+ add_autoinscription( item, randart_auto_inscription(item));
}
else
{
diff --git a/crawl-ref/source/shopping.cc b/crawl-ref/source/shopping.cc
index 2a49378611..e66c31f602 100644
--- a/crawl-ref/source/shopping.cc
+++ b/crawl-ref/source/shopping.cc
@@ -58,7 +58,6 @@ static void _shop_more()
cgotoxy(65, 20, GOTO_CRT);
cprintf("-more-");
get_ch();
- return;
}
static std::string _hyphenated_suffix(char prev, char last)
@@ -177,7 +176,7 @@ static std::string _shop_print_stock( const std::vector<int>& stock,
// * yellow, if this item would be purchasable if you deselected
// something else.
- // Is this too complicated?
+ // Is this too complicated? (jpeg)
if (total_cost > you.gold && selected[i])
textcolor(LIGHTRED);
@@ -377,6 +376,12 @@ static void _in_a_shop( int shopidx )
take_note(Note(NOTE_BUY_ITEM, gp_value, 0,
item.name(DESC_NOCAP_A).c_str()));
+ // But take no further similar notes.
+ item.flags |= ISFLAG_NOTED_GET;
+
+ if (fully_identified(item))
+ item.flags |= ISFLAG_NOTED_ID;
+
quant = item.quantity;
num_items += quant;
@@ -881,7 +886,7 @@ unsigned int item_value( item_def item, bool ident )
// elf/dwarf
if (get_equip_race(item) == ISFLAG_ELVEN
- || get_equip_race(item) == ISFLAG_DWARVEN)
+ || get_equip_race(item) == ISFLAG_DWARVEN)
{
valued *= 12;
valued /= 10;