/* Hack -- auto-target if requested */
if (use_old_target && target_okay()) dir = 5;
-#ifdef ALLOW_REPEAT /* TNB */
-
if (repeat_pull(&code))
{
/* Confusion? */
}
*dp = (DIRECTION)code;
-#endif /* ALLOW_REPEAT -- TNB */
-
/* Ask until satisfied */
while (!dir)
{
/* Save direction */
(*dp) = dir;
-#ifdef ALLOW_REPEAT /* TNB */
-
/* repeat_push(dir); */
repeat_push((COMMAND_CODE)command_dir);
-#endif /* ALLOW_REPEAT -- TNB */
-
/* A "valid" direction was entered */
return (TRUE);
}
/* Global direction */
dir = command_dir;
-#ifdef ALLOW_REPEAT /* TNB */
-
if (repeat_pull(&code))
{
dir = (DIRECTION)code;
}
*dp = (DIRECTION)code;
-#endif /* ALLOW_REPEAT -- TNB */
-
if (allow_under)
{
prompt = _("方向 ('.'足元, ESCで中断)? ", "Direction ('.' at feet, Escape to cancel)? ");
/* Save direction */
(*dp) = dir;
-#ifdef ALLOW_REPEAT /* TNB */
-
/* repeat_push(dir); */
repeat_push((COMMAND_CODE)command_dir);
-#endif /* ALLOW_REPEAT -- TNB */
-
/* Success */
return (TRUE);
}
/* Global direction */
dir = command_dir;
-#ifdef ALLOW_REPEAT /* TNB */
-
if (repeat_pull(&code))
{
dir = (DIRECTION)code;
}
*dp = (DIRECTION)code;
-#endif /* ALLOW_REPEAT -- TNB */
-
if (under)
{
prompt = _("方向 ('.'足元, ESCで中断)? ", "Direction ('.' at feet, Escape to cancel)? ");
/* Save direction */
(*dp) = dir;
-#ifdef ALLOW_REPEAT /* TNB */
-
/* repeat_push(dir); */
repeat_push((COMMAND_CODE)command_dir);
-#endif /* ALLOW_REPEAT -- TNB */
-
/* Success */
return (TRUE);
}