#include "angband.h"
-#ifdef MACINTOSH
+#if defined(MACINTOSH) || defined(MACH_O_CARBON)
#ifdef verify
#undef verify
#endif
case ACT_BA_COLD_1:
{
#ifdef JP
-return "¥³¡¼¥ë¥É¡¦¥Ü¡¼¥ë (48) : 400 ¥¿¡¼¥óËè";
+return "¥¢¥¤¥¹¡¦¥Ü¡¼¥ë (48) : 400 ¥¿¡¼¥óËè";
#else
return "ball of cold (48) every 400 turns";
#endif
case ACT_DRAIN_1:
{
#ifdef JP
-return "¥Ò¥Ã¥È¥Ý¥¤¥ó¥ÈµÛ¼ý (100) : 100+d100 ¥¿¡¼¥óËè";
+return "À¸Ì¿Îϵۼý (100) : 100+d100 ¥¿¡¼¥óËè";
#else
return "drain life (100) every 100+d100 turns";
#endif
case ACT_BA_COLD_2:
{
#ifdef JP
-return "¥³¡¼¥ë¥É¡¦¥Ü¡¼¥ë (100) : 300 ¥¿¡¼¥óËè";
+return "¥¢¥¤¥¹¡¦¥Ü¡¼¥ë (100) : 300 ¥¿¡¼¥óËè";
#else
return "ball of cold (100) every 300 turns";
#endif
case ACT_DRAIN_2:
{
#ifdef JP
-return "¥Ò¥Ã¥È¥Ý¥¤¥ó¥ÈµÛ¼ý(120) : 400 ¥¿¡¼¥óËè";
+return "À¸Ì¿Îϵۼý(120) : 400 ¥¿¡¼¥óËè";
#else
return "drain life (120) every 400 turns";
#endif
case ACT_BA_COLD_3:
{
#ifdef JP
-return "¥³¡¼¥ë¥É¡¦¥Ü¡¼¥ë (200) : 325+d325 ¥¿¡¼¥óËè";
+return "¥¢¥¤¥¹¡¦¥Ü¡¼¥ë (200) : 325+d325 ¥¿¡¼¥óËè";
#else
return "ball of cold (200) every 325+d325 turns";
#endif
case ACT_CALL_CHAOS:
{
#ifdef JP
-return "call chaos : 350 ¥¿¡¼¥óËè"; /*nuke me*/
+return "º®ÆÙ¾¤Íè : 350 ¥¿¡¼¥óËè"; /*nuke me*/
#else
return "call chaos every 350 turns";
#endif
case ACT_CHARM_UNDEAD:
{
#ifdef JP
-return "ÉԻཾ° : 333 ¥¿¡¼¥óËè";
+return "¥¢¥ó¥Ç¥Ã¥É½¾Â° : 333 ¥¿¡¼¥óËè";
#else
return "enslave undead every 333 turns";
#endif
case ACT_SUMMON_PHANTOM:
{
#ifdef JP
-return "»È¤¤Î´ : 200+d200 ¥¿¡¼¥óËè";
+return "¸¸Î´ : 200+d200 ¥¿¡¼¥óËè";
#else
return "summon phantasmal servant every 200+d200 turns";
#endif
case ACT_SUMMON_UNDEAD:
{
#ifdef JP
-return "ÉԻྤ´ : 666+d333 ¥¿¡¼¥óËè";
+return "¥¢¥ó¥Ç¥Ã¥É¾¤´ : 666+d333 ¥¿¡¼¥óËè";
#else
return "summon undead every 666+d333 turns";
#endif
case ACT_CURE_LW:
{
#ifdef JP
-return "ͦµ¤²óÉü & 30 hp ²óÉü : 10 ¥¿¡¼¥óËè";
+return "¶²Éݽüµî & 30 hp ²óÉü : 10 ¥¿¡¼¥óËè";
#else
return "remove fear & heal 30 hp every 10 turns";
#endif
case ACT_CURE_POISON:
{
#ifdef JP
-return "ͦµ¤²óÉü/ÆǾä· : 5 ¥¿¡¼¥óËè";
+return "¶²Éݽüµî/ÆǾä· : 5 ¥¿¡¼¥óËè";
#else
return "remove fear and cure poison every 5 turns";
#endif
case ACT_REST_ALL:
{
#ifdef JP
-return "Á´¥¹¥Æ¡¼¥¿¥¹¤È·Ð¸³ÃͲóÉü : 750 ¥¿¡¼¥óËè";
+return "Á´¥¹¥Æ¡¼¥¿¥¹¤È·Ð¸³ÃÍÉü³è : 750 ¥¿¡¼¥óËè";
#else
return "restore stats and life levels every 750 turns";
#endif
case ACT_ESP:
{
#ifdef JP
-return "°ì»þŪ¤Ê ESP (´ü´Ö 25+d30) : 200 ¥¿¡¼¥óËè";
+return "¥Æ¥ì¥Ñ¥·¡¼ (´ü´Ö 25+d30) : 200 ¥¿¡¼¥óËè";
#else
- return "temporary ESP (dur 25+d30) every 200 turns";
+ return "telepathy (dur 25+d30) every 200 turns";
#endif
}
case ACT_RESIST_ALL:
{
#ifdef JP
-return "±êÎä»ÀÅÅÆǤؤÎÂÑÀ (´ü´Ö 40+d40) : 200 ¥¿¡¼¥óËè";
+return "Á´ÂÑÀ (´ü´Ö 40+d40) : 200 ¥¿¡¼¥óËè";
#else
return "resist elements (dur 40+d40) every 200 turns";
#endif
case ACT_WRAITH:
{
#ifdef JP
-return "¥ì¥¤¥¹²½ (level/2 + d(level/2)) : 1000 ¥¿¡¼¥óËè";
+return "Í©Âβ½ (´ü´Ö level/2 + d(level/2)) : 1000 ¥¿¡¼¥óËè";
#else
- return "wraith form (level/2 + d(level/2)) every 1000 turns";
+ return "wraith form (dur level/2 + d(level/2)) every 1000 turns";
#endif
}
case ACT_INVULN:
{
#ifdef JP
-return "̵Ũ (´ü´Ö 8+d8) : 1000 ¥¿¡¼¥óËè";
+return "̵Ũ²½ (´ü´Ö 8+d8) : 1000 ¥¿¡¼¥óËè";
#else
return "invulnerability (dur 8+d8) every 1000 turns";
#endif
case ACT_RUNE_EXPLO:
{
#ifdef JP
-return "Çúȯ¥ë¡¼¥ó : 200 ¥¿¡¼¥óËè";
+return "Çúȯ¤Î¥ë¡¼¥ó : 200 ¥¿¡¼¥óËè";
#else
return "explosive rune every 200 turns";
#endif
case ACT_RECHARGE:
{
#ifdef JP
-return "ºÆ½¼Å¶ : 70 ¥¿¡¼¥óËè";
+return "ËâÎϽ¼Å¶ : 70 ¥¿¡¼¥óËè";
#else
return "recharging every 70 turns";
#endif
case ART_LOTHARANG:
{
#ifdef JP
-return "½ý¤Î¼£Ìþ(4d7) : 3+d3 ¥¿¡¼¥óËè";
+return "½ý¤Î¼£Ìþ(4d8) : 3+d3 ¥¿¡¼¥óËè";
#else
- return "cure wounds (4d7) every 3+d3 turns";
+ return "cure wounds (4d8) every 3+d3 turns";
#endif
}
#ifdef JP
return "¥¢¥¤¥¹¡¦¥Ü¡¼¥ë (100) : 200 ¥¿¡¼¥óËè";
#else
- return "Frost ball (100) every 200 turns";
+ return "frost ball (100) every 200 turns";
#endif
}
#ifdef JP
return "¥¹¥ê¡¼¥×(II) : 55 ¥¿¡¼¥óËè";
#else
- return "Sleep II every 55 turns";
+ return "sleep II every 55 turns";
#endif
}
#ifdef JP
return "ËâÎϽ¼Å¶ : 200 ¥¿¡¼¥óËè";
#else
- return "Recharge item every 200 turns";
+ return "recharge item every 200 turns";
#endif
}
case ART_MURAMASA:
{
#ifdef JP
-return "ÏÓÎϤξ徺 : ³ÎΨ50%¤Ç²õ¤ì¤ë¡£";
+return "ÏÓÎϤξ徺 : ³ÎΨ50%¤Ç²õ¤ì¤ë";
#else
- return "Increase STR (destroyed 50%)";
+ return "increase STR (destroyed 50%)";
#endif
}
case ART_FLY_STONE:
#ifdef JP
return "*²ò¼ö*¤ÈÄ´ºº: ¤¤¤Ä¤Ç¤â";
#else
- return "Dispel Curse and Probing every turn";
+ return "dispel curse and probing every turn";
#endif
}
#ifdef JP
return "ËâÎÏÉü³è: 777 ¥¿¡¼¥óËè";
#else
- return "Restore Mana every 777 turns";
+ return "restore mana every 777 turns";
#endif
}
#endif
case EGO_RING_COLD_BALL:
#ifdef JP
-return "¥³¡¼¥ë¥É¡¦¥Ü¡¼¥ë (100) : 80+d80 ¥¿¡¼¥óËè";
+return "¥¢¥¤¥¹¡¦¥Ü¡¼¥ë (100) : 80+d80 ¥¿¡¼¥óËè";
#else
return "cold ball (100) every 80+d80 turns";
#endif
case SV_RING_ICE:
#ifdef JP
-return "¥³¡¼¥ë¥É¡¦¥Ü¡¼¥ë (100) ¤ÈÎ䵤¤Ø¤ÎÂÑÀ : 50+d50 ¥¿¡¼¥óËè";
+return "¥¢¥¤¥¹¡¦¥Ü¡¼¥ë (100) ¤ÈÎ䵤¤Ø¤ÎÂÑÀ : 50+d50 ¥¿¡¼¥óËè";
#else
return "ball of cold (100) and resist cold every 50+d50 turns";
#endif
/*
* Describe a "fully identified" item
*/
-bool screen_object(object_type *o_ptr, bool real)
+bool screen_object(object_type *o_ptr, u32b mode)
{
int i = 0, j, k;
char temp[70 * 20];
roff_to_buf(o_ptr->name1 ? (a_text + a_info[o_ptr->name1].text) :
- (k_text + k_info[lookup_kind(o_ptr->tval, o_ptr->sval)].text),
+ (k_text + k_info[o_ptr->k_idx].text),
77 - 15, temp, sizeof(temp));
for (j = 0; temp[j]; j += 1 + strlen(&temp[j]))
{ info[i] = &temp[j]; i++;}
info[i++] = "It provides no light.";
#endif
- if (o_ptr->sval == SV_LITE_FEANOR ||
- o_ptr->sval == SV_LITE_LANTERN)
+ if (o_ptr->sval == SV_LITE_FEANOR)
+ {
+#ifdef JP
+ info[i++] = "¤½¤ì¤ÏÌÀ¤«¤ê¤ÎȾ·Â¤ò¶¹¤á¤ë(Ⱦ·Â¤Ë-3)¡£";
+#else
+ info[i++] = "It decreases radius of light source by 3.";
+#endif
+ }
+ else if (o_ptr->sval == SV_LITE_LANTERN)
{
#ifdef JP
- info[i++] = "¤½¤ì¤ÏÌÀ¤ê¤ÎȾ·Â¤ò¶¹¤á¤ë(Ⱦ·Â¤Ë-2)¡£";
+ info[i++] = "¤½¤ì¤ÏÌÀ¤«¤ê¤ÎȾ·Â¤ò¶¹¤á¤ë(Ⱦ·Â¤Ë-2)¡£";
#else
info[i++] = "It decreases radius of light source by 2.";
#endif
else
{
#ifdef JP
- info[i++] = "¤½¤ì¤ÏÌÀ¤ê¤ÎȾ·Â¤ò¶¹¤á¤ë(Ⱦ·Â¤Ë-1)¡£";
+ info[i++] = "¤½¤ì¤ÏÌÀ¤«¤ê¤ÎȾ·Â¤ò¶¹¤á¤ë(Ⱦ·Â¤Ë-1)¡£";
#else
info[i++] = "It decreases radius of light source by 1.";
#endif
if (have_flag(flgs, TR_STR))
{
#ifdef JP
-info[i++] = "¤½¤ì¤ÏÏÓÎϤ˱ƶÁ¤òµÚ¤Ü¤¹";
+info[i++] = "¤½¤ì¤ÏÏÓÎϤ˱ƶÁ¤òµÚ¤Ü¤¹¡£";
#else
info[i++] = "It affects your strength.";
#endif
if (have_flag(flgs, TR_INT))
{
#ifdef JP
-info[i++] = "¤½¤ì¤ÏÃÎǽ¤Ë±Æ¶Á¤òµÚ¤Ü¤¹";
+info[i++] = "¤½¤ì¤ÏÃÎǽ¤Ë±Æ¶Á¤òµÚ¤Ü¤¹¡£";
#else
info[i++] = "It affects your intelligence.";
#endif
if (have_flag(flgs, TR_WIS))
{
#ifdef JP
-info[i++] = "¤½¤ì¤Ï¸¤µ¤Ë±Æ¶Á¤òµÚ¤Ü¤¹";
+info[i++] = "¤½¤ì¤Ï¸¤µ¤Ë±Æ¶Á¤òµÚ¤Ü¤¹¡£";
#else
info[i++] = "It affects your wisdom.";
#endif
if (have_flag(flgs, TR_DEX))
{
#ifdef JP
-info[i++] = "¤½¤ì¤Ï´ïÍѤµ¤Ë±Æ¶Á¤òµÚ¤Ü¤¹";
+info[i++] = "¤½¤ì¤Ï´ïÍѤµ¤Ë±Æ¶Á¤òµÚ¤Ü¤¹¡£";
#else
info[i++] = "It affects your dexterity.";
#endif
if (have_flag(flgs, TR_CON))
{
#ifdef JP
-info[i++] = "¤½¤ì¤ÏÂѵ×ÎϤ˱ƶÁ¤òµÚ¤Ü¤¹";
+info[i++] = "¤½¤ì¤ÏÂѵ×ÎϤ˱ƶÁ¤òµÚ¤Ü¤¹¡£";
#else
info[i++] = "It affects your constitution.";
#endif
if (have_flag(flgs, TR_CHR))
{
#ifdef JP
-info[i++] = "¤½¤ì¤ÏÌ¥ÎϤ˱ƶÁ¤òµÚ¤Ü¤¹";
+info[i++] = "¤½¤ì¤ÏÌ¥ÎϤ˱ƶÁ¤òµÚ¤Ü¤¹¡£";
#else
info[i++] = "It affects your charisma.";
#endif
if (have_flag(flgs, TR_MAGIC_MASTERY))
{
#ifdef JP
-info[i++] = "¤½¤ì¤ÏËâË¡Æ»¶ñ»ÈÍÑǽÎϤ˱ƶÁ¤òµÚ¤Ü¤¹";
+info[i++] = "¤½¤ì¤ÏËâË¡Æ»¶ñ»ÈÍÑǽÎϤ˱ƶÁ¤òµÚ¤Ü¤¹¡£";
#else
info[i++] = "It affects your ability to use magic devices.";
#endif
if (have_flag(flgs, TR_STEALTH))
{
#ifdef JP
-info[i++] = "¤½¤ì¤Ï±£Ì©¹ÔưǽÎϤ˱ƶÁ¤òµÚ¤Ü¤¹";
+info[i++] = "¤½¤ì¤Ï±£Ì©¹ÔưǽÎϤ˱ƶÁ¤òµÚ¤Ü¤¹¡£";
#else
info[i++] = "It affects your stealth.";
#endif
if (have_flag(flgs, TR_SEARCH))
{
#ifdef JP
-info[i++] = "¤½¤ì¤Ïõº÷ǽÎϤ˱ƶÁ¤òµÚ¤Ü¤¹";
+info[i++] = "¤½¤ì¤Ïõº÷ǽÎϤ˱ƶÁ¤òµÚ¤Ü¤¹¡£";
#else
info[i++] = "It affects your searching.";
#endif
if (have_flag(flgs, TR_INFRA))
{
#ifdef JP
-info[i++] = "¤½¤ì¤ÏÀÖ³°Àþ»ëÎϤ˱ƶÁ¤òµÚ¤Ü¤¹";
+info[i++] = "¤½¤ì¤ÏÀÖ³°Àþ»ëÎϤ˱ƶÁ¤òµÚ¤Ü¤¹¡£";
#else
info[i++] = "It affects your infravision.";
#endif
if (have_flag(flgs, TR_TUNNEL))
{
#ifdef JP
-info[i++] = "¤½¤ì¤ÏºÎ·¡Ç½ÎϤ˱ƶÁ¤òµÚ¤Ü¤¹";
+info[i++] = "¤½¤ì¤ÏºÎ·¡Ç½ÎϤ˱ƶÁ¤òµÚ¤Ü¤¹¡£";
#else
info[i++] = "It affects your ability to tunnel.";
#endif
if (have_flag(flgs, TR_SPEED))
{
#ifdef JP
-info[i++] = "¤½¤ì¤Ï¥¹¥Ô¡¼¥É¤Ë±Æ¶Á¤òµÚ¤Ü¤¹";
+info[i++] = "¤½¤ì¤Ï¥¹¥Ô¡¼¥É¤Ë±Æ¶Á¤òµÚ¤Ü¤¹¡£";
#else
info[i++] = "It affects your speed.";
#endif
if (have_flag(flgs, TR_BLOWS))
{
#ifdef JP
-info[i++] = "¤½¤ì¤ÏÂÇ·â²ó¿ô¤Ë±Æ¶Á¤òµÚ¤Ü¤¹";
+info[i++] = "¤½¤ì¤ÏÂÇ·â²ó¿ô¤Ë±Æ¶Á¤òµÚ¤Ü¤¹¡£";
#else
info[i++] = "It affects your attack speed.";
#endif
if (have_flag(flgs, TR_BRAND_ACID))
{
#ifdef JP
-info[i++] = "¤½¤ì¤Ï»À¤Ë¤è¤Ã¤ÆÂ礤ʥÀ¥á¡¼¥¸¤òÍ¿¤¨¤ë";
+info[i++] = "¤½¤ì¤Ï»À¤Ë¤è¤Ã¤ÆÂ礤ʥÀ¥á¡¼¥¸¤òÍ¿¤¨¤ë¡£";
#else
info[i++] = "It does extra damage from acid.";
#endif
if (have_flag(flgs, TR_BRAND_ELEC))
{
#ifdef JP
-info[i++] = "¤½¤ì¤ÏÅÅ·â¤Ë¤è¤Ã¤ÆÂ礤ʥÀ¥á¡¼¥¸¤òÍ¿¤¨¤ë";
+info[i++] = "¤½¤ì¤ÏÅÅ·â¤Ë¤è¤Ã¤ÆÂ礤ʥÀ¥á¡¼¥¸¤òÍ¿¤¨¤ë¡£";
#else
info[i++] = "It does extra damage from electricity.";
#endif
if (have_flag(flgs, TR_BRAND_FIRE))
{
#ifdef JP
-info[i++] = "¤½¤ì¤Ï²Ð±ê¤Ë¤è¤Ã¤ÆÂ礤ʥÀ¥á¡¼¥¸¤òÍ¿¤¨¤ë";
+info[i++] = "¤½¤ì¤Ï²Ð±ê¤Ë¤è¤Ã¤ÆÂ礤ʥÀ¥á¡¼¥¸¤òÍ¿¤¨¤ë¡£";
#else
info[i++] = "It does extra damage from fire.";
#endif
if (have_flag(flgs, TR_BRAND_COLD))
{
#ifdef JP
-info[i++] = "¤½¤ì¤ÏÎ䵤¤Ë¤è¤Ã¤ÆÂ礤ʥÀ¥á¡¼¥¸¤òÍ¿¤¨¤ë";
+info[i++] = "¤½¤ì¤ÏÎ䵤¤Ë¤è¤Ã¤ÆÂ礤ʥÀ¥á¡¼¥¸¤òÍ¿¤¨¤ë¡£";
#else
info[i++] = "It does extra damage from frost.";
#endif
}
/* Describe about this kind of object instead of THIS fake object */
- if (!real)
+ if (mode & SCROBJ_FAKE_OBJECT)
{
switch (o_ptr->tval)
{
}
}
+ if (mode & SCROBJ_FORCE_DETAIL) trivial_info = 0;
+
/* No relevant informations */
if (i <= trivial_info) return (FALSE);
Term_get_size(&wid, &hgt);
/* Display Item name */
- if (real)
+ if (!(mode & SCROBJ_FAKE_OBJECT))
object_desc(o_name, o_ptr, 0);
else
object_desc(o_name, o_ptr, (OD_NAME_ONLY | OD_STORE));
monster_race *r_ptr = &r_info[o_ptr->pval];
int namelen = strlen(r_name + r_ptr->name);
prt(format("%s: '", r_name + r_ptr->name), 1, 15);
- c_prt(r_ptr->d_attr, format("%c", r_ptr->d_char), 1, 18+namelen);
- prt("'", 1, 19+namelen);
+ Term_queue_bigchar(18 + namelen, 1, r_ptr->x_attr, r_ptr->x_char, 0, 0);
+ prt("'", 1, (use_bigtile ? 20 : 19) + namelen);
}
else
#ifdef JP
if (!o_ptr->k_idx) return (FALSE);
/* Hack -- ignore "gold" */
- if (o_ptr->tval == TV_GOLD) return (FALSE);
+ if (o_ptr->tval == TV_GOLD)
+ {
+ /* See xtra2.c */
+ extern bool show_gold_on_floor;
+
+ if (!show_gold_on_floor) return (FALSE);
+ }
/* Check the tval */
if (item_tester_tval)
#endif /* ALLOW_EASY_FLOOR -- TNB */
+ /* Extract args */
+ if (mode & USE_EQUIP) equip = TRUE;
+ if (mode & USE_INVEN) inven = TRUE;
+ if (mode & USE_FLOOR) floor = TRUE;
+
#ifdef ALLOW_REPEAT
/* Get the item index */
if (repeat_pull(cp))
{
/* the_force */
- if (*cp == INVEN_FORCE)
+ if (select_the_force && (*cp == INVEN_FORCE))
{
item_tester_tval = 0;
item_tester_hook = NULL;
}
/* Floor item? */
- else if (*cp < 0)
+ else if (floor && (*cp < 0))
{
object_type *o_ptr;
}
}
- /* Verify the item */
- else if (get_item_okay(*cp))
+ else if ((inven && (*cp >= 0) && (*cp < INVEN_PACK)) ||
+ (equip && (*cp >= INVEN_RARM) && (*cp < INVEN_TOTAL)))
{
- /* Forget the item_tester_tval restriction */
- item_tester_tval = 0;
+ /* Verify the item */
+ if (get_item_okay(*cp))
+ {
+ /* Forget the item_tester_tval restriction */
+ item_tester_tval = 0;
- /* Forget the item_tester_hook restriction */
- item_tester_hook = NULL;
+ /* Forget the item_tester_hook restriction */
+ item_tester_hook = NULL;
- command_cmd = 0; /* Hack -- command_cmd is no longer effective */
+ command_cmd = 0; /* Hack -- command_cmd is no longer effective */
- /* Success */
- return (TRUE);
+ /* Success */
+ return (TRUE);
+ }
}
}
#endif /* ALLOW_REPEAT */
- /* Extract args */
- if (mode & (USE_EQUIP)) equip = TRUE;
- if (mode & (USE_INVEN)) inven = TRUE;
- if (mode & (USE_FLOOR)) floor = TRUE;
-
/* Paranoia XXX XXX XXX */
msg_print(NULL);
int wid, hgt;
char floor_label[52 + 1];
+ bool dont_need_to_show_weights = TRUE;
+
/* Get size */
Term_get_size(&wid, &hgt);
/* Be sure to account for the weight */
if (show_weights) l += 9;
+ if (o_ptr->tval != TV_GOLD) dont_need_to_show_weights = FALSE;
+
/* Maintain the maximum length */
if (l > len) len = l;
k++;
}
+ if (show_weights && dont_need_to_show_weights) len -= 9;
+
/* Save width */
*min_width = len;
c_put_str(out_color[j], out_desc[j], j + 1, col + 3);
/* Display the weight if needed */
- if (show_weights)
+ if (show_weights && (o_ptr->tval != TV_GOLD))
{
int wgt = o_ptr->weight * o_ptr->number;
#ifdef JP
bool oops = FALSE;
- bool equip = FALSE;
- bool inven = FALSE;
- bool floor = FALSE;
+ /* Extract args */
+ bool equip = (mode & USE_EQUIP) ? TRUE : FALSE;
+ bool inven = (mode & USE_INVEN) ? TRUE : FALSE;
+ bool floor = (mode & USE_FLOOR) ? TRUE : FALSE;
bool allow_equip = FALSE;
bool allow_inven = FALSE;
if (repeat_pull(cp))
{
/* the_force */
- if (*cp == INVEN_FORCE)
+ if (select_the_force && (*cp == INVEN_FORCE))
{
item_tester_tval = 0;
item_tester_hook = NULL;
}
/* Floor item? */
- else if (*cp < 0)
+ else if (floor && (*cp < 0))
{
object_type *o_ptr;
}
}
- /* Verify the item */
- else if (get_item_okay(*cp))
+ else if ((inven && (*cp >= 0) && (*cp < INVEN_PACK)) ||
+ (equip && (*cp >= INVEN_RARM) && (*cp < INVEN_TOTAL)))
{
- /* Forget the item_tester_tval restriction */
- item_tester_tval = 0;
+ /* Verify the item */
+ if (get_item_okay(*cp))
+ {
+ /* Forget the item_tester_tval restriction */
+ item_tester_tval = 0;
- /* Forget the item_tester_hook restriction */
- item_tester_hook = NULL;
+ /* Forget the item_tester_hook restriction */
+ item_tester_hook = NULL;
- command_cmd = 0; /* Hack -- command_cmd is no longer effective */
+ command_cmd = 0; /* Hack -- command_cmd is no longer effective */
- /* Success */
- return (TRUE);
+ /* Success */
+ return (TRUE);
+ }
}
}
#endif /* ALLOW_REPEAT */
- /* Extract args */
- if (mode & (USE_EQUIP)) equip = TRUE;
- if (mode & (USE_INVEN)) inven = TRUE;
- if (mode & (USE_FLOOR)) floor = TRUE;
-
/* Paranoia XXX XXX XXX */
msg_print(NULL);