OSDN Git Service

薬等に対するサイコメトリーは無価値の薬を{壊れている}と判定する効果はあったので、
authormogami <mogami@0568b783-4c39-0410-ac80-bf13821ea2a2>
Tue, 20 Aug 2002 11:23:56 +0000 (11:23 +0000)
committermogami <mogami@0568b783-4c39-0410-ac80-bf13821ea2a2>
Tue, 20 Aug 2002 11:23:56 +0000 (11:23 +0000)
効果を無くすのはやめて再修正。
薬等については直後の自動破壊だけを無効にするようにした。

src/dungeon.c

index 4f1b900..3971956 100644 (file)
@@ -1202,37 +1202,8 @@ s = "Ĵ
                o_ptr = &o_list[0 - item];
        }
 
-        /* Valid "tval" codes */
-        switch (o_ptr->tval)
-        {
-        case TV_SHOT:
-        case TV_ARROW:
-        case TV_BOLT:
-        case TV_BOW:
-        case TV_DIGGING:
-        case TV_HAFTED:
-        case TV_POLEARM:
-        case TV_SWORD:
-        case TV_BOOTS:
-        case TV_GLOVES:
-        case TV_HELM:
-        case TV_CROWN:
-        case TV_SHIELD:
-        case TV_CLOAK:
-        case TV_SOFT_ARMOR:
-        case TV_HARD_ARMOR:
-        case TV_DRAG_ARMOR:
-        case TV_CARD:
-        case TV_RING:
-        case TV_AMULET:
-        case TV_LITE:
-        case TV_FIGURINE:
-                okay = TRUE;
-                break;
-        }
-
        /* It is fully known, no information needed */
-       if (!okay || object_known_p(o_ptr))
+       if (object_known_p(o_ptr))
        {
 #ifdef JP
 msg_print("²¿¤â¿·¤·¤¤¤³¤È¤ÏȽ¤é¤Ê¤«¤Ã¤¿¡£");
@@ -1283,10 +1254,39 @@ msg_format("%s
        /* Window stuff */
        p_ptr->window |= (PW_INVEN | PW_EQUIP | PW_PLAYER);
 
+        /* Valid "tval" codes */
+        switch (o_ptr->tval)
+        {
+        case TV_SHOT:
+        case TV_ARROW:
+        case TV_BOLT:
+        case TV_BOW:
+        case TV_DIGGING:
+        case TV_HAFTED:
+        case TV_POLEARM:
+        case TV_SWORD:
+        case TV_BOOTS:
+        case TV_GLOVES:
+        case TV_HELM:
+        case TV_CROWN:
+        case TV_SHIELD:
+        case TV_CLOAK:
+        case TV_SOFT_ARMOR:
+        case TV_HARD_ARMOR:
+        case TV_DRAG_ARMOR:
+        case TV_CARD:
+        case TV_RING:
+        case TV_AMULET:
+        case TV_LITE:
+        case TV_FIGURINE:
+                okay = TRUE;
+                break;
+        }
+
        /* Auto-inscription/destroy */
        idx = is_autopick(o_ptr);
        auto_inscribe_item(item, idx);
-       if (destroy_feeling)
+       if (okay && destroy_feeling)
                 auto_destroy_item(item, idx, FALSE);
 
        /* Something happened */