-/* File: util.c */
+/* File: util.c */
/*
* Copyright (c) 1997 Ben Harrison, James E. Wilson, Robert A. Koeneke
/* Paranoia -- No excessive sleeping */
#ifdef JP
- if (usecs > 4000000L) core("ÉÔÅö¤Ê usleep() ¸Æ¤Ó½Ð¤·");
+ if (usecs > 4000000L) core("不当な usleep() 呼び出し");
#else
if (usecs > 4000000L) core("Illegal usleep() call");
#endif
buf[i++] = *s;
}
- /* Ⱦ³Ñ¤«¤Ê¤ËÂбþ */
+ /* 半角かなに対応 */
else if (iskana(*s))
{
buf[i++] = *s;
}
for(i = 0; i < max_quests; i++)
- { // TODO ¥Þ¥¯¥í¤ÇÎà»÷¾ò·ï¤òÅý¹ç¤¹¤ë¤³¤È
+ { // TODO マクロで類似条件を統合すること
if(quest[i].status == QUEST_STATUS_TAKEN &&
(quest[i].type == QUEST_TYPE_KILL_LEVEL || quest[i].type == QUEST_TYPE_RANDOM) &&
quest[i].level == dun_level && dungeon_type == quest[i].dungeon)
char *buf = inkey_macro_trigger_string;
- /* Hack : ¥¡¼ÆþÎÏÂÔ¤Á¤Ç»ß¤Þ¤Ã¤Æ¤¤¤ë¤Î¤Ç¡¢Î®¤ì¤¿¹Ô¤Îµ²±¤ÏÉÔÍס£ */
+ /* Hack : キー入力待ちで止まっているので、流れた行の記憶は不要。 */
num_more = 0;
if (parse_macro)
t++;
n++;
}
- if (n == 81) n = 79; /* ºÇ¸å¤Îʸ»ú¤¬´Á»úȾʬ */
+ if (n == 81) n = 79; /* 最後の文字が漢字半分 */
#else
for (n = 80; n > 60; n--)
if (str[n] == ' ') break;
}
else
{
- num_more++;/*ή¤ì¤¿¹Ô¤Î¿ô¤ò¿ô¤¨¤Æ¤ª¤¯ */
+ num_more++;/*流れた行の数を数えておく */
now_message++;
}
{
/* Pause for response */
#ifdef JP
- Term_putstr(x, 0, -1, a, "-³¤¯-");
+ Term_putstr(x, 0, -1, a, "-続く-");
#else
Term_putstr(x, 0, -1, a, "-more-");
#endif
{
int cmd = inkey();
if (cmd == ESCAPE) {
- num_more = -9999; /*auto_more¤Î¤È¤¡¢Á´¤Æή¤¹¡£ */
+ num_more = -9999; /*auto_moreのとき、全て流す。 */
break;
} else if (cmd == ' ') {
- num_more = 0; /*£±²èÌ̤À¤±Î®¤¹¡£ */
+ num_more = 0; /*1画面だけ流す。 */
break;
} else if ((cmd == '\n') || (cmd == '\r')) {
- num_more--; /*£±¹Ô¤À¤±Î®¤¹¡£ */
+ num_more--; /*1行だけ流す。 */
break;
}
if (quick_messages) break;
if (x < w)
#ifdef JP
{
- /* ¸½ºß¤¬È¾³Ñʸ»ú¤Î¾ì¹ç */
+ /* 現在が半角文字の場合 */
if( !k_flag )
#endif
{
#ifdef JP
else
{
- /* ¸½ºß¤¬Á´³Ñʸ»ú¤Î¤È¤ */
- /* ʸƬ¤¬¡Ö¡£¡×¡Ö¡¢¡×Åù¤Ë¤Ê¤ë¤È¤¤Ï¡¢¤½¤Î£±¤ÄÁ°¤Î¸ì¤Ç²þ¹Ô */
- if (strncmp(s, "¡£", 2) == 0 || strncmp(s, "¡¢", 2) == 0
-#if 0 /* °ìÈÌŪ¤Ë¤Ï¡Ö¥£¡×¡Ö¡¼¡×¤Ï¶Ø§¤ÎÂоݳ° */
- || strncmp(s, "¥£", 2) == 0 || strncmp(s, "¡¼", 2) == 0
+ /* 現在が全角文字のとき */
+ /* 文頭が「。」「、」等になるときは、その1つ前の語で改行 */
+ if (strncmp(s, "。", 2) == 0 || strncmp(s, "、", 2) == 0
+#if 0 /* 一般的には「ィ」「ー」は禁則の対象外 */
+ || strncmp(s, "ã\82£", 2) == 0 || strncmp(s, "ã\83¼", 2) == 0
#endif
){
Term_what(x , y, &av[x ], &cv[x ]);
{
/* Build a prompt */
#ifdef JP
- sprintf(tmp, "¤¤¤¯¤Ä¤Ç¤¹¤« (1-%d): ", max);
+ sprintf(tmp, "いくつですか (1-%d): ", max);
#else
sprintf(tmp, "Quantity (1-%d): ", max);
#endif
{
prt("", row, 0);
#ifdef JP
- put_str("[ ²¿¤«¥¡¼¤ò²¡¤·¤Æ²¼¤µ¤¤ ]", row, 26);
+ put_str("[ 何かキーを押して下さい ]", row, 26);
#else
put_str("[Press any key to continue]", row, 23);
#endif
menu_naiyou menu_info[10][10] =
{
{
- {"ËâË¡/ÆüìǽÎÏ", 1, FALSE},
- {"¹ÔÆ°", 2, FALSE},
- {"Æ»¶ñ(»ÈÍÑ)", 3, FALSE},
- {"Æ»¶ñ(¤½¤Î¾)", 4, FALSE},
- {"ÁõÈ÷", 5, FALSE},
- {"Èâ/È¢", 6, FALSE},
- {"¾ðÊó", 7, FALSE},
- {"ÀßÄê", 8, FALSE},
- {"¤½¤Î¾", 9, FALSE},
+ {"魔法/特殊能力", 1, FALSE},
+ {"行動", 2, FALSE},
+ {"道具(使用)", 3, FALSE},
+ {"道具(その他)", 4, FALSE},
+ {"装備", 5, FALSE},
+ {"扉/箱", 6, FALSE},
+ {"情報", 7, FALSE},
+ {"設定", 8, FALSE},
+ {"その他", 9, FALSE},
{"", 0, FALSE},
},
{
- {"»È¤¦(m)", 'm', TRUE},
- {"Ä´¤Ù¤ë(b/P)", 'b', TRUE},
- {"³Ð¤¨¤ë(G)", 'G', TRUE},
- {"ÆüìǽÎϤò»È¤¦(U/O)", 'U', TRUE},
+ {"使う(m)", 'm', TRUE},
+ {"調べる(b/P)", 'b', TRUE},
+ {"覚える(G)", 'G', TRUE},
+ {"特殊能力を使う(U/O)", 'U', TRUE},
{"", 0, FALSE},
{"", 0, FALSE},
{"", 0, FALSE},
},
{
- {"µÙ©¤¹¤ë(R)", 'R', TRUE},
- {"¥È¥é¥Ã¥×²ò½ü(D)", 'D', TRUE},
- {"õ¤¹(s)", 's', TRUE},
- {"¼þ¤ê¤òÄ´¤Ù¤ë(l/x)", 'l', TRUE},
- {"¥¿¡¼¥²¥Ã¥È»ØÄê(*)", '*', TRUE},
- {"·ê¤ò·¡¤ë(T/^t)", 'T', TRUE},
- {"³¬Ãʤò¾å¤ë(<)", '<', TRUE},
- {"³¬Ãʤò²¼¤ê¤ë(>)", '>', TRUE},
- {"¥Ú¥Ã¥È¤ËÌ¿Î᤹¤ë(p)", 'p', TRUE},
- {"õº÷¥â¡¼¥É¤ÎON/OFF(S/#)", 'S', TRUE}
+ {"休息する(R)", 'R', TRUE},
+ {"トラップ解除(D)", 'D', TRUE},
+ {"探す(s)", 's', TRUE},
+ {"周りを調べる(l/x)", 'l', TRUE},
+ {"ターゲット指定(*)", '*', TRUE},
+ {"穴を掘る(T/^t)", 'T', TRUE},
+ {"階段を上る(<)", '<', TRUE},
+ {"階段を下りる(>)", '>', TRUE},
+ {"ペットに命令する(p)", 'p', TRUE},
+ {"探索モードのON/OFF(S/#)", 'S', TRUE}
},
{
- {"Æɤà(r)", 'r', TRUE},
- {"°û¤à(q)", 'q', TRUE},
- {"¾ó¤ò»È¤¦(u/Z)", 'u', TRUE},
- {"ËâË¡ËÀ¤ÇÁÀ¤¦(a/z)", 'a', TRUE},
- {"¥í¥Ã¥É¤ò¿¶¤ë(z/a)", 'z', TRUE},
- {"»ÏÆ°¤¹¤ë(A)", 'A', TRUE},
- {"¿©¤Ù¤ë(E)", 'E', TRUE},
- {"Èô¤ÓÆ»¶ñ¤Ç·â¤Ä(f/t)", 'f', TRUE},
- {"Åꤲ¤ë(v)", 'v', TRUE},
+ {"読む(r)", 'r', TRUE},
+ {"飲む(q)", 'q', TRUE},
+ {"杖を使う(u/Z)", 'u', TRUE},
+ {"魔法棒で狙う(a/z)", 'a', TRUE},
+ {"ロッドを振る(z/a)", 'z', TRUE},
+ {"始動する(A)", 'A', TRUE},
+ {"食べる(E)", 'E', TRUE},
+ {"飛び道具で撃つ(f/t)", 'f', TRUE},
+ {"投げる(v)", 'v', TRUE},
{"", 0, FALSE}
},
{
- {"½¦¤¦(g)", 'g', TRUE},
- {"Íî¤È¤¹(d)", 'd', TRUE},
- {"²õ¤¹(k/^d)", 'k', TRUE},
- {"Ìäò¹ï¤à({)", '{', TRUE},
- {"Ìäò¾Ã¤¹(})", '}', TRUE},
- {"Ä´ºº(I)", 'I', TRUE},
- {"¥¢¥¤¥Æ¥à°ìÍ÷(i)", 'i', TRUE},
+ {"拾う(g)", 'g', TRUE},
+ {"落とす(d)", 'd', TRUE},
+ {"壊す(k/^d)", 'k', TRUE},
+ {"銘を刻む({)", '{', TRUE},
+ {"銘を消す(})", '}', TRUE},
+ {"調査(I)", 'I', TRUE},
+ {"アイテム一覧(i)", 'i', TRUE},
{"", 0, FALSE},
{"", 0, FALSE},
{"", 0, FALSE}
},
{
- {"ÁõÈ÷¤¹¤ë(w)", 'w', TRUE},
- {"ÁõÈ÷¤ò³°¤¹(t/T)", 't', TRUE},
- {"dzÎÁ¤òÊäµë(F)", 'F', TRUE},
- {"ÁõÈ÷°ìÍ÷(e)", 'e', TRUE},
+ {"装備する(w)", 'w', TRUE},
+ {"装備を外す(t/T)", 't', TRUE},
+ {"燃料を補給(F)", 'F', TRUE},
+ {"装備一覧(e)", 'e', TRUE},
{"", 0, FALSE},
{"", 0, FALSE},
{"", 0, FALSE},
},
{
- {"³«¤±¤ë(o)", 'o', TRUE},
- {"ÊĤ¸¤ë(c)", 'c', TRUE},
- {"ÂÎÅö¤¿¤ê¤¹¤ë(B/f)", 'B', TRUE},
- {"¤¯¤µ¤Ó¤òÂǤÄ(j/S)", 'j', TRUE},
+ {"開ける(o)", 'o', TRUE},
+ {"閉じる(c)", 'c', TRUE},
+ {"体当たりする(B/f)", 'B', TRUE},
+ {"くさびを打つ(j/S)", 'j', TRUE},
{"", 0, FALSE},
{"", 0, FALSE},
{"", 0, FALSE},
},
{
- {"¥À¥ó¥¸¥ç¥ó¤ÎÁ´ÂοÞ(M)", 'M', TRUE},
- {"°ÌÃÖ¤ò³Îǧ(L/W)", 'L', TRUE},
- {"³¬¤ÎÊ·°Ïµ¤(^f)", KTRL('F'), TRUE},
- {"¥¹¥Æ¡¼¥¿¥¹(C)", 'C', TRUE},
- {"ʸ»ú¤ÎÀâÌÀ(/)", '/', TRUE},
- {"¥á¥Ã¥»¡¼¥¸ÍúÎò(^p)", KTRL('P'), TRUE},
- {"¸½ºß¤Î»þ¹ï(^t/')", KTRL('T'), TRUE},
- {"¸½ºß¤ÎÃμ±(~)", '~', TRUE},
- {"¥×¥ì¥¤µÏ¿(|)", '|', TRUE},
+ {"ダンジョンの全体図(M)", 'M', TRUE},
+ {"位置を確認(L/W)", 'L', TRUE},
+ {"階の雰囲気(^f)", KTRL('F'), TRUE},
+ {"ã\82¹ã\83\86ã\83¼ã\82¿ã\82¹(C)", 'C', TRUE},
+ {"文字の説明(/)", '/', TRUE},
+ {"メッセージ履歴(^p)", KTRL('P'), TRUE},
+ {"現在の時刻(^t/')", KTRL('T'), TRUE},
+ {"現在の知識(~)", '~', TRUE},
+ {"プレイ記録(|)", '|', TRUE},
{"", 0, FALSE}
},
{
- {"¥ª¥×¥·¥ç¥ó(=)", '=', TRUE},
- {"¥Þ¥¯¥í(@)", '@', TRUE},
- {"²èÌÌɽ¼¨(%)", '%', TRUE},
- {"¥«¥é¡¼(&)", '&', TRUE},
- {"ÀßÄêÊѹ¹¥³¥Þ¥ó¥É(\")", '\"', TRUE},
- {"¼«Æ°½¦¤¤¤ò¥í¡¼¥É($)", '$', TRUE},
- {"¥·¥¹¥Æ¥à(!)", '!', TRUE},
+ {"オプション(=)", '=', TRUE},
+ {"マクロ(@)", '@', TRUE},
+ {"画面表示(%)", '%', TRUE},
+ {"ã\82«ã\83©ã\83¼(&)", '&', TRUE},
+ {"設定変更コマンド(\")", '\"', TRUE},
+ {"自動拾いをロード($)", '$', TRUE},
+ {"システム(!)", '!', TRUE},
{"", 0, FALSE},
{"", 0, FALSE},
{"", 0, FALSE}
},
{
- {"¥»¡¼¥Ö&ÃæÃÇ(^x)", KTRL('X'), TRUE},
- {"¥»¡¼¥Ö(^s)", KTRL('S'), TRUE},
- {"¥Ø¥ë¥×(?)", '?', TRUE},
- {"ºÆÉÁ²è(^r)", KTRL('R'), TRUE},
- {"¥á¥â(:)", ':', TRUE},
- {"µÇ°»£±Æ())", ')', TRUE},
- {"µÇ°»£±Æ¤Îɽ¼¨(()", '(', TRUE},
- {"¥Ð¡¼¥¸¥ç¥ó¾ðÊó(V)", 'V', TRUE},
- {"°úÂह¤ë(Q)", 'Q', TRUE},
+ {"セーブ&中断(^x)", KTRL('X'), TRUE},
+ {"セーブ(^s)", KTRL('S'), TRUE},
+ {"ヘルプ(?)", '?', TRUE},
+ {"再描画(^r)", KTRL('R'), TRUE},
+ {"メモ(:)", ':', TRUE},
+ {"記念撮影())", ')', TRUE},
+ {"記念撮影の表示(()", '(', TRUE},
+ {"バージョン情報(V)", 'V', TRUE},
+ {"引退する(Q)", 'Q', TRUE},
{"", 0, FALSE}
},
};
#ifdef JP
special_menu_naiyou special_menu_info[] =
{
- {"ĶǽÎÏ/ÆüìǽÎÏ", 0, 0, MENU_CLASS, CLASS_MINDCRAFTER},
- {"¤â¤Î¤Þ¤Í/ÆüìǽÎÏ", 0, 0, MENU_CLASS, CLASS_IMITATOR},
- {"²Î/ÆüìǽÎÏ", 0, 0, MENU_CLASS, CLASS_BARD},
- {"ɬ»¦µ»/ÆüìǽÎÏ", 0, 0, MENU_CLASS, CLASS_SAMURAI},
- {"Îýµ¤½Ñ/ËâË¡/ÆüìǽÎÏ", 0, 0, MENU_CLASS, CLASS_FORCETRAINER},
- {"µ»/ÆüìǽÎÏ", 0, 0, MENU_CLASS, CLASS_BERSERKER},
- {"µ»½Ñ/ÆüìǽÎÏ", 0, 0, MENU_CLASS, CLASS_SMITH},
- {"¶ÀËâË¡/ÆüìǽÎÏ", 0, 0, MENU_CLASS, CLASS_MIRROR_MASTER},
- {"Ǧ½Ñ/ÆüìǽÎÏ", 0, 0, MENU_CLASS, CLASS_NINJA},
- {"¹°è¥Þ¥Ã¥×(<)", 2, 6, MENU_WILD, FALSE},
- {"Ä̾ï¥Þ¥Ã¥×(>)", 2, 7, MENU_WILD, TRUE},
+ {"超能力/特殊能力", 0, 0, MENU_CLASS, CLASS_MINDCRAFTER},
+ {"ものまね/特殊能力", 0, 0, MENU_CLASS, CLASS_IMITATOR},
+ {"歌/特殊能力", 0, 0, MENU_CLASS, CLASS_BARD},
+ {"必殺技/特殊能力", 0, 0, MENU_CLASS, CLASS_SAMURAI},
+ {"練気術/魔法/特殊能力", 0, 0, MENU_CLASS, CLASS_FORCETRAINER},
+ {"技/特殊能力", 0, 0, MENU_CLASS, CLASS_BERSERKER},
+ {"技術/特殊能力", 0, 0, MENU_CLASS, CLASS_SMITH},
+ {"鏡魔法/特殊能力", 0, 0, MENU_CLASS, CLASS_MIRROR_MASTER},
+ {"忍術/特殊能力", 0, 0, MENU_CLASS, CLASS_NINJA},
+ {"広域マップ(<)", 2, 6, MENU_WILD, FALSE},
+ {"通常マップ(>)", 2, 7, MENU_WILD, TRUE},
{"", 0, 0, 0, 0},
};
#else
max_num = i;
kisuu = max_num % 2;
#ifdef JP
- put_str("¡Õ",basey + 1 + num / 2, basex + 2 + (num % 2) * 24);
+ put_str("》",basey + 1 + num / 2, basex + 2 + (num % 2) * 24);
#else
put_str("> ",basey + 1 + num / 2, basex + 2 + (num % 2) * 24);
#endif
/* Begin the input */
#ifdef JP
- prt("²ó¿ô: ", 0, 0);
+ prt("回数: ", 0, 0);
#else
prt("Count: ", 0, 0);
#endif
/* Show current count */
#ifdef JP
- prt(format("²ó¿ô: %d", command_arg), 0, 0);
+ prt(format("回数: %d", command_arg), 0, 0);
#else
prt(format("Count: %d", command_arg), 0, 0);
#endif
/* Show current count */
#ifdef JP
- prt(format("²ó¿ô: %d", command_arg), 0, 0);
+ prt(format("回数: %d", command_arg), 0, 0);
#else
prt(format("Count: %d", command_arg), 0, 0);
#endif
/* Show current count */
#ifdef JP
- prt(format("²ó¿ô: %d", command_arg), 0, 0);
+ prt(format("回数: %d", command_arg), 0, 0);
#else
prt(format("Count: %d", command_arg), 0, 0);
#endif
/* Show current count */
#ifdef JP
-prt(format("²ó¿ô: %d", command_arg), 0, 0);
+prt(format("回数: %d", command_arg), 0, 0);
#else
prt(format("Count: %d", command_arg), 0, 0);
#endif
{
/* Get a real command */
#ifdef JP
- if (!get_com("¥³¥Þ¥ó¥É: ", (char *)&cmd, FALSE))
+ if (!get_com("コマンド: ", (char *)&cmd, FALSE))
#else
if (!get_com("Command: ", (char *)&cmd, FALSE))
#endif
{
/* Get a real command */
#ifdef JP
- (void)get_com("¥³¥Þ¥ó¥É: ", (char *)&cmd, FALSE);
+ (void)get_com("コマンド: ", (char *)&cmd, FALSE);
#else
(void)get_com("Command: ", (char *)&cmd, FALSE);
#endif
{
/* Hack -- Verify command */
#ifdef JP
- if (!get_check("ËÜÅö¤Ç¤¹¤«? "))
+ if (!get_check("本当ですか? "))
#else
if (!get_check("Are you sure? "))
#endif
ch[1] = str[read_pt+1];
ch_len = 2;
- if (strcmp(ch, "¡£") == 0 ||
- strcmp(ch, "¡¢") == 0 ||
- strcmp(ch, "¥£") == 0 ||
- strcmp(ch, "¡¼") == 0)
+ if (strcmp(ch, "。") == 0 ||
+ strcmp(ch, "、") == 0 ||
+ strcmp(ch, "ã\82£") == 0 ||
+ strcmp(ch, "ã\83¼") == 0)
kinsoku = TRUE;
}
else if (!isprint(ch[0]))