くなっていた. 他にもこういった2回以上アイテムを選ぶ作業がある場合に,
2回目以降のアイテム選択が最初のcommand_cmdに関係する銘で影響されてい
たので, get_item()/get_item_floor()でアイテムを選択できてTRUEを返す場
合はcommand_cmd = 0とするように変更.
/* Get the item index */
if (repeat_pull(cp))
{
/* Get the item index */
if (repeat_pull(cp))
{
- if (*cp == INVEN_FORCE) { /* the_force */
- item_tester_tval = 0;
- item_tester_hook = NULL;
- return (TRUE);
- } else
+ /* the_force */
+ if (*cp == INVEN_FORCE)
+ {
+ item_tester_tval = 0;
+ item_tester_hook = NULL;
+ command_cmd = 0; /* Hack -- command_cmd is no longer effective */
+ return (TRUE);
+ }
+
/* 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 */
+
/* Success */
return (TRUE);
}
/* Success */
return (TRUE);
}
/* 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 */
+
/* Success */
return (TRUE);
}
/* Success */
return (TRUE);
}
/* Warning if needed */
if (oops && str) msg_print(str);
/* Warning if needed */
if (oops && str) msg_print(str);
- if (item) repeat_push(*cp);
#endif /* ALLOW_REPEAT */
#endif /* ALLOW_REPEAT */
+ command_cmd = 0; /* Hack -- command_cmd is no longer effective */
+ }
+
/* Result */
return (item);
}
/* Result */
return (item);
}
/* Get the item index */
if (repeat_pull(cp))
{
/* Get the item index */
if (repeat_pull(cp))
{
- if (*cp == INVEN_FORCE) { /* the_force */
- item_tester_tval = 0;
- item_tester_hook = NULL;
- return (TRUE);
- } else
+ /* the_force */
+ if (*cp == INVEN_FORCE)
+ {
+ item_tester_tval = 0;
+ item_tester_hook = NULL;
+ command_cmd = 0; /* Hack -- command_cmd is no longer effective */
+ return (TRUE);
+ }
+
/* 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 */
+
/* Success */
return (TRUE);
}
/* Success */
return (TRUE);
}
/* 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 */
+
/* Success */
return (TRUE);
}
/* Success */
return (TRUE);
}
/* Warning if needed */
if (oops && str) msg_print(str);
/* Warning if needed */
if (oops && str) msg_print(str);
- if (item) repeat_push(*cp);
#endif /* ALLOW_REPEAT */
#endif /* ALLOW_REPEAT */
+ command_cmd = 0; /* Hack -- command_cmd is no longer effective */
+ }
+
/* Result */
return (item);
}
/* Result */
return (item);
}