X-Git-Url: http://git.osdn.net/view?a=blobdiff_plain;f=src%2Fcmd4.c;h=bd977138b5687669e37249b44322ec4c0e320297;hb=9751a5949c847a3777da5ce04bc585a9da88af1b;hp=e7a4c52cdc8ad6feb0d8969b7b65c6d243993d17;hpb=9d5e2343df732562952d08fe1be0f5ba050872ff;p=hengband%2Fhengband.git diff --git a/src/cmd4.c b/src/cmd4.c index e7a4c52cd..bd977138b 100644 --- a/src/cmd4.c +++ b/src/cmd4.c @@ -41,6 +41,9 @@ #include "angband.h" #include "cmd-pet.h" +#include "world.h" +#include "player-status.h" +#include "sort.h" /* @@ -56,7 +59,7 @@ static char auto_dump_footer[] = "# ^^^^^^^== %s ==^^^^^^^"; * Variables for auto dump */ static FILE *auto_dump_stream; -static cptr auto_dump_mark; +static concptr auto_dump_mark; static int auto_dump_line_num; @@ -65,7 +68,7 @@ static int auto_dump_line_num; * Remove old lines automatically generated before. * @param orig_file 消去を行うファイル名 */ -static void remove_auto_dump(cptr orig_file) +static void remove_auto_dump(concptr orig_file) { FILE *tmp_fff, *orig_fff; @@ -227,9 +230,9 @@ static void remove_auto_dump(cptr orig_file) * Dump a formatted line, using "vstrnfmt()". * @param fmt 出力内容 */ -static void auto_dump_printf(cptr fmt, ...) +static void auto_dump_printf(concptr fmt, ...) { - cptr p; + concptr p; va_list vp; char buf[1024]; @@ -261,7 +264,7 @@ static void auto_dump_printf(cptr fmt, ...) * @param mark 出力するヘッダマーク * @return ファイルポインタを取得できたらTRUEを返す */ -static bool open_auto_dump(cptr buf, cptr mark) +static bool open_auto_dump(concptr buf, concptr mark) { char header_mark_str[80]; @@ -334,7 +337,7 @@ static void close_auto_dump(void) * @param num number * @return pointer of suffix string. */ -cptr get_ordinal_number_suffix(int num) +concptr get_ordinal_number_suffix(int num) { num = ABS(num) % 100; switch (num % 10) @@ -360,13 +363,13 @@ cptr get_ordinal_number_suffix(int num) * @param note 日記内容のIDに応じた文字列参照ポインタ * @return エラーID */ -errr do_cmd_write_nikki(int type, int num, cptr note) +errr do_cmd_write_nikki(int type, int num, concptr note) { int day, hour, min; FILE *fff = NULL; - char file_name[80]; + GAME_TEXT file_name[MAX_NLEN]; char buf[1024]; - cptr note_level = ""; + concptr note_level = ""; bool do_level = TRUE; char note_level_buf[40]; QUEST_IDX q_idx; @@ -490,7 +493,7 @@ errr do_cmd_write_nikki(int type, int num, cptr note) } case NIKKI_RAND_QUEST_C: { - char name[80]; + GAME_TEXT name[MAX_NLEN]; strcpy(name, r_name+r_info[quest[num].r_idx].name); fprintf(fff, _(" %2d:%02d %20s ランダムクエスト(%s)を達成した。\n", " %2d:%02d %20s completed random quest '%s'\n"), hour, min, note_level, name); @@ -498,7 +501,7 @@ errr do_cmd_write_nikki(int type, int num, cptr note) } case NIKKI_RAND_QUEST_F: { - char name[80]; + GAME_TEXT name[MAX_NLEN]; strcpy(name, r_name+r_info[quest[num].r_idx].name); fprintf(fff, _(" %2d:%02d %20s ランダムクエスト(%s)から逃げ出した。\n", " %2d:%02d %20s ran away from quest '%s'.\n"), hour, min, note_level, name); @@ -522,7 +525,7 @@ errr do_cmd_write_nikki(int type, int num, cptr note) } case NIKKI_STAIR: { - cptr to; + concptr to; if (q_idx && (is_fixed_quest_idx(q_idx) && !((q_idx == QUEST_OBERON) || (q_idx == QUEST_SERPENT)))) { @@ -596,7 +599,7 @@ errr do_cmd_write_nikki(int type, int num, cptr note) } case NIKKI_WIZ_TELE: { - cptr to; + concptr to; if (!dun_level) to = _("地上", "the surface"); else @@ -608,7 +611,7 @@ errr do_cmd_write_nikki(int type, int num, cptr note) } case NIKKI_PAT_TELE: { - cptr to; + concptr to; if (!dun_level) to = _("地上", "the surface"); else @@ -721,7 +724,7 @@ errr do_cmd_write_nikki(int type, int num, cptr note) static void do_cmd_disp_nikki(void) { char nikki_title[256]; - char file_name[80]; + GAME_TEXT file_name[MAX_NLEN]; char buf[1024]; char tmp[80]; #ifdef JP @@ -803,11 +806,9 @@ static void do_cmd_disp_nikki(void) else strcpy(tmp,subtitle[randint0(MAX_SUBTITLE-2)+1]); #ifdef JP - sprintf(nikki_title, "「%s%s%sの伝説 -%s-」", - ap_ptr->title, ap_ptr->no ? "の" : "", p_ptr->name, tmp); + sprintf(nikki_title, "「%s%s%sの伝説 -%s-」", ap_ptr->title, ap_ptr->no ? "の" : "", p_ptr->name, tmp); #else - sprintf(nikki_title, "Legend of %s %s '%s'", - ap_ptr->title, p_ptr->name, tmp); + sprintf(nikki_title, "Legend of %s %s '%s'", ap_ptr->title, p_ptr->name, tmp); #endif /* Display the file contents */ @@ -858,7 +859,7 @@ static void do_cmd_last_get(void) */ static void do_cmd_erase_nikki(void) { - char file_name[80]; + GAME_TEXT file_name[MAX_NLEN]; char buf[256]; FILE *fff = NULL; @@ -891,14 +892,11 @@ void do_cmd_nikki(void) /* File type is "TEXT" */ FILE_TYPE(FILE_TYPE_TEXT); - - /* Save the screen */ screen_save(); /* Interact until done */ while (1) { - /* Clear screen */ Term_clear(); /* Ask for a choice */ @@ -942,11 +940,8 @@ void do_cmd_nikki(void) bell(); } - /* Flush messages */ - msg_print(NULL); + msg_erase(); } - - /* Restore the screen */ screen_load(); } @@ -968,42 +963,27 @@ void do_cmd_nikki(void) void do_cmd_redraw(void) { int j; - term *old = Term; /* Hack -- react to changes */ Term_xtra(TERM_XTRA_REACT, 0); - /* Combine and Reorder the pack (later) */ - p_ptr->notice |= (PN_COMBINE | PN_REORDER); - - - /* Update torch */ + p_ptr->update |= (PU_COMBINE | PU_REORDER); p_ptr->update |= (PU_TORCH); - p_ptr->update |= (PU_BONUS | PU_HP | PU_MANA | PU_SPELLS); - - /* Forget lite/view */ p_ptr->update |= (PU_UN_VIEW | PU_UN_LITE); - - /* Update lite/view */ p_ptr->update |= (PU_VIEW | PU_LITE | PU_MON_LITE); - - /* Update monsters */ p_ptr->update |= (PU_MONSTERS); - /* Redraw everything */ p_ptr->redraw |= (PR_WIPE | PR_BASIC | PR_EXTRA | PR_MAP | PR_EQUIPPY); p_ptr->window |= (PW_INVEN | PW_EQUIP | PW_SPELL | PW_PLAYER); - p_ptr->window |= (PW_MESSAGE | PW_OVERHEAD | PW_DUNGEON | PW_MONSTER | PW_OBJECT); update_playtime(); - /* Hack -- update */ handle_stuff(); if (p_ptr->prace == RACE_ANDROID) calc_android_exp(); @@ -1018,11 +998,7 @@ void do_cmd_redraw(void) /* Activate */ Term_activate(angband_term[j]); Term_redraw(); - - /* Refresh */ Term_fresh(); - - /* Restore */ Term_activate(old); } } @@ -1041,8 +1017,6 @@ void do_cmd_change_name(void) char tmp[160]; - - /* Save the screen */ screen_save(); /* Forever */ @@ -1102,20 +1076,14 @@ void do_cmd_change_name(void) { mode++; } - else { bell(); } - /* Flush messages */ - msg_print(NULL); + msg_erase(); } - - /* Restore the screen */ screen_load(); - - /* Redraw everything */ p_ptr->redraw |= (PR_WIPE | PR_BASIC | PR_EXTRA | PR_MAP | PR_EQUIPPY); handle_stuff(); @@ -1162,7 +1130,7 @@ void do_cmd_messages(int num_now) char shower_str[81]; char finder_str[81]; char back_str[81]; - cptr shower = NULL; + concptr shower = NULL; int wid, hgt; int num_lines; @@ -1182,11 +1150,7 @@ void do_cmd_messages(int num_now) /* Start on first message */ i = 0; - - /* Save the screen */ screen_save(); - - /* Clear screen */ Term_clear(); /* Process requests until done */ @@ -1198,7 +1162,7 @@ void do_cmd_messages(int num_now) /* Dump up to 20 lines of messages */ for (j = 0; (j < num_lines) && (i + j < n); j++) { - cptr msg = message_str(i+j); + concptr msg = message_str(i+j); /* Dump the messages, bottom to top */ c_prt((i + j < num_now ? TERM_WHITE : TERM_SLATE), msg, num_lines + 1 - j, 0); @@ -1206,7 +1170,7 @@ void do_cmd_messages(int num_now) /* Hilite "shower" */ if (shower && shower[0]) { - cptr str = msg; + concptr str = msg; /* Display matches */ while ((str = my_strstr(str, shower)) != NULL) @@ -1237,7 +1201,6 @@ void do_cmd_messages(int num_now) prt(_("[ 'p' で更に古いもの, 'n' で更に新しいもの, '/' で検索, ESC で中断 ]", "[Press 'p' for older, 'n' for newer, ..., or ESCAPE]"), hgt - 1, 0); - /* Get a command */ skey = inkey_special(TRUE); /* Exit on Escape */ @@ -1292,7 +1255,7 @@ void do_cmd_messages(int num_now) /* Scan messages */ for (z = i + 1; z < n; z++) { - cptr msg = message_str(z); + concptr msg = message_str(z); /* Search for it */ if (my_strstr(msg, finder_str)) @@ -1367,8 +1330,6 @@ void do_cmd_messages(int num_now) /* Hack -- Error of some kind */ if (i == j) bell(); } - - /* Restore the screen */ screen_load(); } @@ -1379,13 +1340,11 @@ void do_cmd_messages(int num_now) * @param info 表示メッセージ * @return なし */ -static void do_cmd_options_cheat(cptr info) +static void do_cmd_options_cheat(concptr info) { char ch; int i, k = 0, n = CHEAT_MAX; char buf[80]; - - /* Clear screen */ Term_clear(); /* Interact with the player */ @@ -1529,14 +1488,12 @@ static s16b toggle_frequency(s16b current) * @param info 表示メッセージ * @return なし */ -static void do_cmd_options_autosave(cptr info) +static void do_cmd_options_autosave(concptr info) { char ch; int i, k = 0, n = 2; char buf[80]; - - /* Clear screen */ Term_clear(); /* Interact with the player */ @@ -1646,7 +1603,7 @@ static void do_cmd_options_autosave(cptr info) * @param info 表示メッセージ * @return なし */ -void do_cmd_options_aux(int page, cptr info) +void do_cmd_options_aux(int page, concptr info) { char ch; int i, k = 0, n = 0, l; @@ -1665,8 +1622,6 @@ void do_cmd_options_aux(int page, cptr info) /* Notice options on this "page" */ if (option_info[i].o_page == page) opt[n++] = i; } - - /* Clear screen */ Term_clear(); /* Interact with the player */ @@ -1811,8 +1766,6 @@ static void do_cmd_options_win(void) old_flag[j] = window_flag[j]; } - - /* Clear screen */ Term_clear(); /* Interact */ @@ -1826,7 +1779,7 @@ static void do_cmd_options_win(void) { byte a = TERM_WHITE; - cptr s = angband_term_name[j]; + concptr s = angband_term_name[j]; /* Use color */ if (j == x) a = TERM_L_BLUE; @@ -1840,7 +1793,7 @@ static void do_cmd_options_win(void) { byte a = TERM_WHITE; - cptr str = window_flag_desc[i]; + concptr str = window_flag_desc[i]; /* Use color */ if (i == y) a = TERM_L_BLUE; @@ -1953,14 +1906,8 @@ static void do_cmd_options_win(void) /* Activate */ Term_activate(angband_term[j]); - - /* Erase */ Term_clear(); - - /* Refresh */ Term_fresh(); - - /* Restore */ Term_activate(old); } } @@ -1972,7 +1919,7 @@ static void do_cmd_options_win(void) static struct opts { char key; - cptr name; + concptr name; int row; } option_fields[OPT_NUM] = @@ -2032,8 +1979,6 @@ void do_cmd_options(void) char k; int d, skey; TERM_LEN i, y = 0; - - /* Save the screen */ screen_save(); /* Interact */ @@ -2043,8 +1988,6 @@ void do_cmd_options(void) /* Does not list cheat option when cheat option is off */ if (!p_ptr->noscore && !allow_debug_opts) n--; - - /* Clear screen */ Term_clear(); /* Why are we here */ @@ -2303,12 +2246,9 @@ void do_cmd_options(void) } } - /* Flush messages */ - msg_print(NULL); + msg_erase(); } - - /* Restore the screen */ screen_load(); /* Hack - Redraw equippy chars */ @@ -2356,9 +2296,9 @@ void do_cmd_reload_autopick(void) * @param fname ファイル名 * @return なし */ -static errr macro_dump(cptr fname) +static errr macro_dump(concptr fname) { - static cptr mark = "Macro Dump"; + static concptr mark = "Macro Dump"; int i; @@ -2497,9 +2437,9 @@ static void do_cmd_macro_aux_keymap(char *buf) * @return エラーコード * @details */ -static errr keymap_dump(cptr fname) +static errr keymap_dump(concptr fname) { - static cptr mark = "Keymap Dump"; + static concptr mark = "Keymap Dump"; int i; char key[1024]; @@ -2535,7 +2475,7 @@ static errr keymap_dump(cptr fname) /* Dump them */ for (i = 0; i < 256; i++) { - cptr act; + concptr act; /* Loop up the keymap */ act = keymap_act[mode][i]; @@ -2601,15 +2541,12 @@ void do_cmd_macros(void) /* File type is "TEXT" */ FILE_TYPE(FILE_TYPE_TEXT); - - /* Save screen */ screen_save(); /* Process requests until done */ while (1) { - /* Clear screen */ Term_clear(); prt(_("[ マクロの設定 ]", "Interact with Macros"), 2, 0); @@ -2640,7 +2577,6 @@ void do_cmd_macros(void) /* Prompt */ prt(_("コマンド: ", "Command: "), 16, 0); - /* Get a command */ i = inkey(); /* Leave */ @@ -2829,7 +2765,7 @@ void do_cmd_macros(void) /* Query a keymap */ else if (i == '7') { - cptr act; + concptr act; /* Prompt */ prt(_("コマンド: キー配置の確認", "Command: Query a keymap"), 16, 0); @@ -2964,18 +2900,15 @@ void do_cmd_macros(void) bell(); } - /* Flush messages */ - msg_print(NULL); + msg_erase(); } - - /* Load screen */ screen_load(); } /*! * @brief キャラクタ色の明暗表現 */ -static cptr lighting_level_str[F_LIT_MAX] = +static concptr lighting_level_str[F_LIT_MAX] = { #ifdef JP "標準色", @@ -3025,7 +2958,7 @@ static bool cmd_visuals_aux(int i, IDX *num, IDX max) * @param choice_msg 選択メッセージ * @return なし */ -static void print_visuals_menu(cptr choice_msg) +static void print_visuals_menu(concptr choice_msg) { prt(_("[ 画面表示の設定 ]", "Interact with Visuals"), 1, 0); @@ -3063,20 +2996,17 @@ void do_cmd_visuals(void) char tmp[160]; char buf[1024]; bool need_redraw = FALSE; - const char *empty_symbol = "<< ? >>"; + concptr empty_symbol = "<< ? >>"; if (use_bigtile) empty_symbol = "<< ?? >>"; /* File type is "TEXT" */ FILE_TYPE(FILE_TYPE_TEXT); - - /* Save the screen */ screen_save(); /* Interact until done */ while (1) { - /* Clear screen */ Term_clear(); /* Ask for a choice */ @@ -3114,7 +3044,7 @@ void do_cmd_visuals(void) /* Dump monster attr/chars */ case '1': { - static cptr mark = "Monster attr/chars"; + static concptr mark = "Monster attr/chars"; /* Prompt */ prt(_("コマンド: モンスターの[色/文字]をファイルに書き出します", "Command: Dump monster attr/chars"), 15, 0); @@ -3164,7 +3094,7 @@ void do_cmd_visuals(void) /* Dump object attr/chars */ case '2': { - static cptr mark = "Object attr/chars"; + static concptr mark = "Object attr/chars"; KIND_OBJECT_IDX k_idx; /* Prompt */ @@ -3191,7 +3121,7 @@ void do_cmd_visuals(void) /* Dump objects */ for (k_idx = 0; k_idx < max_k_idx; k_idx++) { - char o_name[80]; + GAME_TEXT o_name[MAX_NLEN]; object_kind *k_ptr = &k_info[k_idx]; /* Skip non-entries */ @@ -3232,7 +3162,7 @@ void do_cmd_visuals(void) /* Dump feature attr/chars */ case '3': { - static cptr mark = "Feature attr/chars"; + static concptr mark = "Feature attr/chars"; /* Prompt */ prt(_("コマンド: 地形の[色/文字]をファイルに書き出します", "Command: Dump feature attr/chars"), 15, 0); @@ -3287,7 +3217,7 @@ void do_cmd_visuals(void) /* Modify monster attr/chars (numeric operation) */ case '4': { - static cptr choice_msg = _("モンスターの[色/文字]を変更します", "Change monster attr/chars"); + static concptr choice_msg = _("モンスターの[色/文字]を変更します", "Change monster attr/chars"); static IDX r = 0; prt(format(_("コマンド: %s", "Command: %s"), choice_msg), 15, 0); @@ -3326,7 +3256,6 @@ void do_cmd_visuals(void) Term_putstr(0, 22, -1, TERM_WHITE, _("コマンド (n/N/^N/a/A/^A/c/C/^C/v/V/^V): ", "Command (n/N/^N/a/A/^A/c/C/^C/v/V/^V): ")); - /* Get a command */ i = inkey(); /* All done */ @@ -3366,8 +3295,6 @@ void do_cmd_visuals(void) break; case 'v': do_cmd_knowledge_monsters(&need_redraw, TRUE, r); - - /* Clear screen */ Term_clear(); print_visuals_menu(choice_msg); break; @@ -3380,7 +3307,7 @@ void do_cmd_visuals(void) /* Modify object attr/chars (numeric operation) */ case '5': { - static cptr choice_msg = _("アイテムの[色/文字]を変更します", "Change object attr/chars"); + static concptr choice_msg = _("アイテムの[色/文字]を変更します", "Change object attr/chars"); static IDX k = 0; prt(format(_("コマンド: %s", "Command: %s"), choice_msg), 15, 0); @@ -3419,7 +3346,6 @@ void do_cmd_visuals(void) Term_putstr(0, 22, -1, TERM_WHITE, _("コマンド (n/N/^N/a/A/^A/c/C/^C/v/V/^V): ", "Command (n/N/^N/a/A/^A/c/C/^C/v/V/^V): ")); - /* Get a command */ i = inkey(); /* All done */ @@ -3459,8 +3385,6 @@ void do_cmd_visuals(void) break; case 'v': do_cmd_knowledge_objects(&need_redraw, TRUE, k); - - /* Clear screen */ Term_clear(); print_visuals_menu(choice_msg); break; @@ -3473,7 +3397,7 @@ void do_cmd_visuals(void) /* Modify feature attr/chars (numeric operation) */ case '6': { - static cptr choice_msg = _("地形の[色/文字]を変更します", "Change feature attr/chars"); + static concptr choice_msg = _("地形の[色/文字]を変更します", "Change feature attr/chars"); static IDX f = 0; static IDX lighting_level = F_LIT_STANDARD; prt(format(_("コマンド: %s", "Command: %s"), choice_msg), 15, 0); @@ -3524,7 +3448,6 @@ void do_cmd_visuals(void) "Command (n/N/^N/a/A/^A/c/C/^C/l/L/^L/d/D/^D/v/V/^V): "); #endif - /* Get a command */ i = inkey(); /* All done */ @@ -3571,8 +3494,6 @@ void do_cmd_visuals(void) break; case 'v': do_cmd_knowledge_features(&need_redraw, TRUE, f, &lighting_level); - - /* Clear screen */ Term_clear(); print_visuals_menu(choice_msg); break; @@ -3618,11 +3539,8 @@ void do_cmd_visuals(void) break; } - /* Flush messages */ - msg_print(NULL); + msg_erase(); } - - /* Restore the screen */ screen_load(); if (need_redraw) do_cmd_redraw(); @@ -3644,15 +3562,12 @@ void do_cmd_colors(void) /* File type is "TEXT" */ FILE_TYPE(FILE_TYPE_TEXT); - - /* Save the screen */ screen_save(); /* Interact until done */ while (1) { - /* Clear screen */ Term_clear(); /* Ask for a choice */ @@ -3703,7 +3618,7 @@ void do_cmd_colors(void) /* Dump colors */ else if (i == '2') { - static cptr mark = "Colors"; + static concptr mark = "Colors"; /* Prompt */ prt(_("コマンド: カラーの設定をファイルに書き出します", "Command: Dump colors"), 8, 0); @@ -3734,7 +3649,7 @@ void do_cmd_colors(void) int gv = angband_color_table[i][2]; int bv = angband_color_table[i][3]; - cptr name = _("未知", "unknown"); + concptr name = _("未知", "unknown"); /* Skip non-entries */ if (!kv && !rv && !gv && !bv) continue; @@ -3767,7 +3682,7 @@ void do_cmd_colors(void) /* Hack -- query until done */ while (1) { - cptr name; + concptr name; byte j; /* Clear */ @@ -3802,8 +3717,6 @@ void do_cmd_colors(void) Term_putstr(0, 14, -1, TERM_WHITE, _("コマンド (n/N/k/K/r/R/g/G/b/B): ", "Command (n/N/k/K/r/R/g/G/b/B): ")); - - /* Get a command */ i = inkey(); /* All done */ @@ -3837,12 +3750,9 @@ void do_cmd_colors(void) bell(); } - /* Flush messages */ - msg_print(NULL); + msg_erase(); } - - /* Restore the screen */ screen_load(); } @@ -3873,8 +3783,6 @@ void do_cmd_note(void) */ void do_cmd_version(void) { - /* Silly message */ - #if FAKE_VER_EXTRA > 0 msg_format(_("変愚蛮怒(Hengband) %d.%d.%d.%d", "You are playing Hengband %d.%d.%d.%d."), FAKE_VER_MAJOR-10, FAKE_VER_MINOR, FAKE_VER_PATCH, FAKE_VER_EXTRA); @@ -3889,7 +3797,7 @@ void do_cmd_version(void) /* * Array of feeling strings */ -static cptr do_cmd_feeling_text[11] = +static concptr do_cmd_feeling_text[11] = { _("この階の雰囲気を感じとれなかった...", "Looks like any other level."), _("この階には何か特別なものがあるような気がする。", "You feel there is something special about this level."), @@ -3904,7 +3812,7 @@ static cptr do_cmd_feeling_text[11] = _("なんて退屈なところだ...", "What a boring place...") }; -static cptr do_cmd_feeling_text_combat[11] = +static concptr do_cmd_feeling_text_combat[11] = { _("この階の雰囲気を感じとれなかった...", "Looks like any other level."), _("この階には何か特別なものがあるような気がする。", "You feel there is something special about this level."), @@ -3919,7 +3827,7 @@ static cptr do_cmd_feeling_text_combat[11] = _("なんて退屈なところだ...", "What a boring place...") }; -static cptr do_cmd_feeling_text_lucky[11] = +static concptr do_cmd_feeling_text_lucky[11] = { _("この階の雰囲気を感じとれなかった...", "Looks like any other level."), _("この階には何か特別なものがあるような気がする。", "You feel there is something special about this level."), @@ -3941,6 +3849,8 @@ static cptr do_cmd_feeling_text_lucky[11] = */ void do_cmd_feeling(void) { + if (p_ptr->wild_mode) return; + /* No useful feeling in quests */ if (p_ptr->inside_quest && !random_quest_number(dun_level)) { @@ -3985,7 +3895,7 @@ void do_cmd_feeling(void) /* * Description of each monster group. */ -static cptr monster_group_text[] = +static concptr monster_group_text[] = { #ifdef JP "ユニーク", /* "Uniques" */ @@ -4118,7 +4028,7 @@ static cptr monster_group_text[] = * Symbols of monsters in each group. Note the "Uniques" group * is handled differently. */ -static cptr monster_group_char[] = +static concptr monster_group_char[] = { (char *) -1L, (char *) -2L, @@ -4222,7 +4132,7 @@ static IDX collect_monsters(IDX grp_cur, IDX mon_idx[], BIT_FLAGS8 mode) int dummy_why; /* Get a list of x_char in this group */ - cptr group_char = monster_group_char[grp_cur]; + concptr group_char = monster_group_char[grp_cur]; /* XXX Hack -- Check if this is the "Uniques" group */ bool grp_unique = (monster_group_char[grp_cur] == (char *) -1L); @@ -4311,7 +4221,7 @@ static IDX collect_monsters(IDX grp_cur, IDX mon_idx[], BIT_FLAGS8 mode) /* * Description of each monster group. */ -static cptr object_group_text[] = +static concptr object_group_text[] = { #ifdef JP "キノコ", /* "Mushrooms" */ @@ -4532,7 +4442,7 @@ static int collect_objects(int grp_cur, IDX object_idx[], BIT_FLAGS8 mode) /* * Description of each feature group. */ -static cptr feature_group_text[] = +static concptr feature_group_text[] = { "terrains", NULL @@ -4632,18 +4542,14 @@ static char hack[17] = "dwsorgbuDWvyRGBU"; */ void do_cmd_load_screen(void) { - int i, y, x; - + int i; + TERM_LEN y, x; TERM_COLOR a = 0; - char c = ' '; - + SYMBOL_CODE c = ' '; bool okay = TRUE; - FILE *fff; - char buf[1024]; - - int wid, hgt; + TERM_LEN wid, hgt; Term_get_size(&wid, &hgt); @@ -4659,14 +4565,9 @@ void do_cmd_load_screen(void) return; } - - /* Save the screen */ screen_save(); - - /* Clear the screen */ Term_clear(); - /* Load the screen */ for (y = 0; okay; y++) { @@ -4723,25 +4624,21 @@ void do_cmd_load_screen(void) } } - /* Close it */ my_fclose(fff); - prt(_("ファイルに書き出された画面(記念撮影)をロードしました。", "Screen dump loaded."), 0, 0); flush(); inkey(); - - /* Restore the screen */ screen_load(); } -cptr inven_res_label = _(" 酸電火冷毒光闇破轟獄因沌劣 盲怖乱痺透命感消復浮", +concptr inven_res_label = _(" 酸電火冷毒光闇破轟獄因沌劣 盲怖乱痺透命感消復浮", " AcElFiCoPoLiDkShSoNtNxCaDi BlFeCfFaSeHlEpSdRgLv"); @@ -4764,7 +4661,7 @@ cptr inven_res_label = _(" 酸電火冷毒光闇 /* XTRA HACK RESLIST */ static void do_cmd_knowledge_inven_aux(FILE *fff, object_type *o_ptr, int *j, OBJECT_TYPE_VALUE tval, char *where) { - char o_name[MAX_NLEN]; + GAME_TEXT o_name[MAX_NLEN]; BIT_FLAGS flgs[TR_FLAG_SIZE]; if (!o_ptr->k_idx) return; @@ -4861,16 +4758,13 @@ static void do_cmd_knowledge_inven_aux(FILE *fff, object_type *o_ptr, int *j, OB static void do_cmd_knowledge_inven(void) { FILE *fff; - - char file_name[1024]; - + GAME_TEXT file_name[1024]; store_type *st_ptr; - OBJECT_TYPE_VALUE tval; int i = 0; int j = 0; - char where[32]; + char where[32]; /* Open a new file */ fff = my_fopen_temp(file_name, 1024); @@ -4908,8 +4802,6 @@ static void do_cmd_knowledge_inven(void) do_cmd_knowledge_inven_aux(fff, &st_ptr->stock[i], &j, tval, where); } } - - /* Close the file */ my_fclose(fff); /* Display the file contents */ @@ -4922,7 +4814,8 @@ static void do_cmd_knowledge_inven(void) void do_cmd_save_screen_html_aux(char *filename, int message) { - int y, x, i; + TERM_LEN y, x; + int i; TERM_COLOR a = 0, old_a = 0; char c = ' '; @@ -4931,25 +4824,25 @@ void do_cmd_save_screen_html_aux(char *filename, int message) char buf[2048]; int yomikomu = 0; - cptr tags[4] = { + concptr tags[4] = { "HEADER_START:", "HEADER_END:", "FOOTER_START:", "FOOTER_END:", }; - cptr html_head[] = { + concptr html_head[] = { "\n\n", "
",
 		0,
 	};
-	cptr html_foot[] = {
+	concptr html_foot[] = {
 		"
\n", "\n\n", 0, }; - int wid, hgt; + TERM_LEN wid, hgt; Term_get_size(&wid, &hgt); @@ -4967,10 +4860,7 @@ void do_cmd_save_screen_html_aux(char *filename, int message) return; } - - /* Save the screen */ - if (message) - screen_save(); + if (message) screen_save(); /* Build the filename */ path_build(buf, sizeof(buf), ANGBAND_DIR_USER, "htmldump.prf"); @@ -5005,7 +4895,7 @@ void do_cmd_save_screen_html_aux(char *filename, int message) for (x = 0; x < wid - 1; x++) { int rv, gv, bv; - cptr cc = NULL; + concptr cc = NULL; /* Get the attr/char */ (void)(Term_what(x, y, &a, &c)); @@ -5068,8 +4958,6 @@ void do_cmd_save_screen_html_aux(char *filename, int message) msg_print(_("画面(記念撮影)をファイルに書き出しました。", "Screen dump saved.")); msg_print(NULL); } - - /* Restore the screen */ if (message) screen_load(); } @@ -5133,11 +5021,7 @@ void do_cmd_save_screen(void) { use_graphics = FALSE; reset_visuals(); - - /* Redraw everything */ p_ptr->redraw |= (PR_WIPE | PR_BASIC | PR_EXTRA | PR_MAP | PR_EQUIPPY); - - /* Hack -- update */ handle_stuff(); } @@ -5155,13 +5039,10 @@ void do_cmd_save_screen(void) } else /* Dump the screen as text */ { - int y, x; - + TERM_LEN y, x; TERM_COLOR a = 0; - char c = ' '; - + SYMBOL_CODE c = ' '; FILE *fff; - char buf[1024]; /* Build the filename */ @@ -5180,8 +5061,6 @@ void do_cmd_save_screen(void) return; } - - /* Save the screen */ screen_save(); @@ -5232,14 +5111,11 @@ void do_cmd_save_screen(void) /* Skip a line */ fprintf(fff, "\n"); - /* Close it */ my_fclose(fff); msg_print(_("画面(記念撮影)をファイルに書き出しました。", "Screen dump saved.")); msg_print(NULL); - - /* Restore the screen */ screen_load(); } @@ -5247,11 +5123,7 @@ void do_cmd_save_screen(void) { use_graphics = TRUE; reset_visuals(); - - /* Redraw everything */ p_ptr->redraw |= (PR_WIPE | PR_BASIC | PR_EXTRA | PR_MAP | PR_EQUIPPY); - - /* Hack -- update */ handle_stuff(); } } @@ -5345,19 +5217,16 @@ static void ang_sort_art_swap(vptr u, vptr v, int a, int b) */ static void do_cmd_knowledge_artifacts(void) { - IDX i; - IDX k; + ARTIFACT_IDX i; + ARTIFACT_IDX k; POSITION x, y; int n = 0; - IDX z; + ARTIFACT_IDX z; u16b why = 3; - IDX *who; - + ARTIFACT_IDX *who; FILE *fff; - - char file_name[1024]; - - char base_name[MAX_NLEN]; + GAME_TEXT file_name[1024]; + GAME_TEXT base_name[MAX_NLEN]; bool *okay; @@ -5371,7 +5240,7 @@ static void do_cmd_knowledge_artifacts(void) } /* Allocate the "who" array */ - C_MAKE(who, max_a_idx, s16b); + C_MAKE(who, max_a_idx, ARTIFACT_IDX); /* Allocate the "okay" array */ C_MAKE(okay, max_a_idx, bool); @@ -5407,8 +5276,6 @@ static void do_cmd_knowledge_artifacts(void) for (this_o_idx = c_ptr->o_idx; this_o_idx; this_o_idx = next_o_idx) { object_type *o_ptr; - - /* Acquire object */ o_ptr = &o_list[this_o_idx]; /* Acquire next object */ @@ -5472,8 +5339,6 @@ static void do_cmd_knowledge_artifacts(void) { object_type forge; object_type *q_ptr; - - /* Get local object */ q_ptr = &forge; /* Create fake object */ @@ -5494,12 +5359,10 @@ static void do_cmd_knowledge_artifacts(void) } /* Free the "who" array */ - C_KILL(who, max_a_idx, s16b); + C_KILL(who, max_a_idx, ARTIFACT_IDX); /* Free the "okay" array */ C_KILL(okay, max_a_idx, bool); - - /* Close the file */ my_fclose(fff); /* Display the file contents */ @@ -5523,7 +5386,7 @@ static void do_cmd_knowledge_uniques(void) FILE *fff; - char file_name[1024]; + GAME_TEXT file_name[1024]; int n_alive[10]; int n_alive_surface = 0; @@ -5544,7 +5407,7 @@ static void do_cmd_knowledge_uniques(void) } /* Allocate the "who" array */ - C_MAKE(who, max_r_idx, s16b); + C_MAKE(who, max_r_idx, MONRACE_IDX); /* Scan the monsters */ for (i = 1; i < max_r_idx; i++) @@ -5625,8 +5488,6 @@ static void do_cmd_knowledge_uniques(void) /* Free the "who" array */ C_KILL(who, max_r_idx, s16b); - - /* Close the file */ my_fclose(fff); /* Display the file contents */ @@ -5647,7 +5508,7 @@ static void do_cmd_knowledge_weapon_exp(void) FILE *fff; - char file_name[1024]; + GAME_TEXT file_name[1024]; char tmp[30]; /* Open a new file */ @@ -5683,8 +5544,6 @@ static void do_cmd_knowledge_weapon_exp(void) } } } - - /* Close the file */ my_fclose(fff); /* Display the file contents */ @@ -5708,7 +5567,7 @@ static void do_cmd_knowledge_spell_exp(void) FILE *fff; const magic_type *s_ptr; - char file_name[1024]; + GAME_TEXT file_name[1024]; /* Open a new file */ fff = my_fopen_temp(file_name, 1024); @@ -5773,8 +5632,6 @@ static void do_cmd_knowledge_spell_exp(void) fprintf(fff, "\n"); } } - - /* Close the file */ my_fclose(fff); /* Display the file contents */ @@ -5797,9 +5654,13 @@ static void do_cmd_knowledge_skill_exp(void) FILE *fff; char file_name[1024]; - char skill_name[3][20]={_("マーシャルアーツ", "Martial Arts "), - _("二刀流 ", "Dual Wielding "), - _("乗馬 ", "Riding ")}; + char skill_name[GINOU_TEMPMAX][20] = + { + _("マーシャルアーツ", "Martial Arts "), + _("二刀流 ", "Dual Wielding "), + _("乗馬 ", "Riding "), + _("盾 ", "Shield ") + }; /* Open a new file */ fff = my_fopen_temp(file_name, 1024); @@ -5809,7 +5670,7 @@ static void do_cmd_knowledge_skill_exp(void) return; } - for (i = 0; i < 3; i++) + for (i = 0; i < GINOU_TEMPMAX; i++) { skill_exp = p_ptr->skill_exp[i]; fprintf(fff, "%-20s ", skill_name[i]); @@ -5819,8 +5680,6 @@ static void do_cmd_knowledge_skill_exp(void) if (cheat_xtra) fprintf(fff, " %d", skill_exp); fprintf(fff, "\n"); } - - /* Close the file */ my_fclose(fff); /* Display the file contents */ @@ -5858,10 +5717,10 @@ void plural_aux(char *Name) } else if (my_strstr(Name, " of ")) { - cptr aider = my_strstr(Name, " of "); + concptr aider = my_strstr(Name, " of "); char dummy[80]; int i = 0; - cptr ctr = Name; + concptr ctr = Name; while (ctr < aider) { @@ -5966,10 +5825,10 @@ static void do_cmd_knowledge_pets(void) int i; FILE *fff; monster_type *m_ptr; - char pet_name[80]; + GAME_TEXT pet_name[MAX_NLEN]; int t_friends = 0; int show_upkeep = 0; - char file_name[1024]; + GAME_TEXT file_name[1024]; /* Open a new file */ @@ -6003,16 +5862,12 @@ static void do_cmd_knowledge_pets(void) fprintf(fff, "----------------------------------------------\n"); #ifdef JP fprintf(fff, " 合計: %d 体のペット\n", t_friends); - fprintf(fff, " 維持コスト: %d%% MP\n", show_upkeep); #else - fprintf(fff, " Total: %d pet%s.\n", - t_friends, (t_friends == 1 ? "" : "s")); - fprintf(fff, " Upkeep: %d%% mana.\n", show_upkeep); + fprintf(fff, " Total: %d pet%s.\n", t_friends, (t_friends == 1 ? "" : "s")); #endif + fprintf(fff, _(" 維持コスト: %d%% MP\n", " Upkeep: %d%% mana.\n"), show_upkeep); - - /* Close the file */ my_fclose(fff); /* Display the file contents */ @@ -6031,14 +5886,12 @@ static void do_cmd_knowledge_pets(void) */ static void do_cmd_knowledge_kill_count(void) { - IDX i; + MONRACE_IDX i; int k, n = 0; u16b why = 2; - IDX *who; - + MONRACE_IDX *who; FILE *fff; - - char file_name[1024]; + GAME_TEXT file_name[1024]; s32b Total = 0; @@ -6047,13 +5900,13 @@ static void do_cmd_knowledge_kill_count(void) fff = my_fopen_temp(file_name, 1024); if (!fff) { - msg_format(_("一時ファイル %s を作成できませんでした。", "Failed to create temporary file %s."), file_name); - msg_print(NULL); - return; + msg_format(_("一時ファイル %s を作成できませんでした。", "Failed to create temporary file %s."), file_name); + msg_print(NULL); + return; } /* Allocate the "who" array */ - C_MAKE(who, max_r_idx, s16b); + C_MAKE(who, max_r_idx, MONRACE_IDX); { /* Monsters slain */ @@ -6175,8 +6028,6 @@ static void do_cmd_knowledge_kill_count(void) /* Free the "who" array */ C_KILL(who, max_r_idx, s16b); - - /* Close the file */ my_fclose(fff); /* Display the file contents */ @@ -6200,7 +6051,7 @@ static void do_cmd_knowledge_kill_count(void) * @param grp_top 現在の選択リスト最上部ID * @return なし */ -static void display_group_list(int col, int row, int wid, int per_page, IDX grp_idx[], cptr group_text[], int grp_cur, int grp_top) +static void display_group_list(int col, int row, int wid, int per_page, IDX grp_idx[], concptr group_text[], int grp_cur, int grp_top) { int i; @@ -6211,7 +6062,7 @@ static void display_group_list(int col, int row, int wid, int per_page, IDX grp_ int grp = grp_idx[grp_top + i]; /* Choose a color */ - byte attr = (grp_top + i == grp_cur) ? TERM_L_BLUE : TERM_WHITE; + TERM_COLOR attr = (grp_top + i == grp_cur) ? TERM_L_BLUE : TERM_WHITE; /* Erase the entire line */ Term_erase(col, row + i, wid); @@ -6420,10 +6271,10 @@ static byte char_idx_feat[F_LIT_MAX]; static bool visual_mode_command(char ch, bool *visual_list_ptr, int height, int width, TERM_COLOR *attr_top_ptr, byte *char_left_ptr, - TERM_COLOR *cur_attr_ptr, byte *cur_char_ptr, bool *need_redraw) + TERM_COLOR *cur_attr_ptr, SYMBOL_CODE *cur_char_ptr, bool *need_redraw) { static TERM_COLOR attr_old = 0; - static byte char_old = 0; + static SYMBOL_CODE char_old = 0; switch (ch) { @@ -6559,7 +6410,7 @@ static void display_monster_list(int col, int row, int per_page, s16b mon_idx[], /* Display lines until done */ for (i = 0; i < per_page && (mon_idx[mon_top + i] >= 0); i++) { - byte attr; + TERM_COLOR attr; /* Get the race index */ MONRACE_IDX r_idx = mon_idx[mon_top + i] ; @@ -6639,7 +6490,7 @@ static void do_cmd_knowledge_monsters(bool *need_redraw, bool visual_only, IDX d browser_rows = hgt - 8; /* Allocate the "mon_idx" array */ - C_MAKE(mon_idx, max_r_idx, s16b); + C_MAKE(mon_idx, max_r_idx, MONRACE_IDX); max = 0; grp_cnt = 0; @@ -6699,22 +6550,12 @@ static void do_cmd_knowledge_monsters(bool *need_redraw, bool visual_only, IDX d if (redraw) { clear_from(0); - -#ifdef JP - prt(format("%s - モンスター", !visual_only ? "知識" : "表示"), 2, 0); - if (direct_r_idx < 0) prt("グループ", 4, 0); - prt("名前", 4, max + 3); - if (p_ptr->wizard || visual_only) prt("Idx", 4, 62); - prt("文字", 4, 67); - if (!visual_only) prt("殺害数", 4, 72); -#else - prt(format("%s - monsters", !visual_only ? "Knowledge" : "Visuals"), 2, 0); - if (direct_r_idx < 0) prt("Group", 4, 0); - prt("Name", 4, max + 3); + prt(format(_("%s - モンスター", "%s - monsters"), !visual_only ? _("知識", "Knowledge") : _("表示", "Visuals")), 2, 0); + if (direct_r_idx < 0) prt(_("グループ", "Group"), 4, 0); + prt(_("名前", "Name"), 4, max + 3); if (p_ptr->wizard || visual_only) prt("Idx", 4, 62); - prt("Sym", 4, 68); - if (!visual_only) prt("Kills", 4, 73); -#endif + prt(_("文字", "Sym"), 4, 67); + if (!visual_only) prt(_("殺害数", "Kills"), 4, 72); for (i = 0; i < 78; i++) { @@ -6773,19 +6614,11 @@ static void do_cmd_knowledge_monsters(bool *need_redraw, bool visual_only, IDX d } /* Prompt */ -#ifdef JP - prt(format("<方向>%s%s%s, ESC", - (!visual_list && !visual_only) ? ", 'r'で思い出を見る" : "", - visual_list ? ", ENTERで決定" : ", 'v'でシンボル変更", - (attr_idx || char_idx) ? ", 'c', 'p'でペースト" : ", 'c'でコピー"), + prt(format(_("<方向>%s%s%s, ESC", "%s%s%s, ESC"), + (!visual_list && !visual_only) ? _(", 'r'で思い出を見る", ", 'r' to recall") : "", + visual_list ? _(", ENTERで決定", ", ENTER to accept") : _(", 'v'でシンボル変更", ", 'v' for visuals"), + (attr_idx || char_idx) ? _(", 'c', 'p'でペースト", ", 'c', 'p' to paste") : _(", 'c'でコピー", ", 'c' to copy")), hgt - 1, 0); -#else - prt(format("%s%s%s, ESC", - (!visual_list && !visual_only) ? ", 'r' to recall" : "", - visual_list ? ", ENTER to accept" : ", 'v' for visuals", - (attr_idx || char_idx) ? ", 'c', 'p' to paste" : ", 'c' to copy"), - hgt - 1, 0); -#endif /* Get the current monster */ r_ptr = &r_info[mon_idx[mon_cur]]; @@ -6794,8 +6627,6 @@ static void do_cmd_knowledge_monsters(bool *need_redraw, bool visual_only, IDX d { /* Mega Hack -- track this monster race */ if (mon_cnt) monster_race_track(mon_idx[mon_cur]); - - /* Hack -- handle stuff */ handle_stuff(); } @@ -6880,7 +6711,7 @@ static void display_object_list(int col, int row, int per_page, IDX object_idx[] /* Display lines until done */ for (i = 0; i < per_page && (object_idx[object_top + i] >= 0); i++) { - char o_name[80]; + GAME_TEXT o_name[MAX_NLEN]; TERM_COLOR a; byte c; object_kind *flavor_k_ptr; @@ -6892,7 +6723,7 @@ static void display_object_list(int col, int row, int per_page, IDX object_idx[] object_kind *k_ptr = &k_info[k_idx]; /* Choose a color */ - byte attr = ((k_ptr->aware || visual_only) ? TERM_WHITE : TERM_SLATE); + TERM_COLOR attr = ((k_ptr->aware || visual_only) ? TERM_WHITE : TERM_SLATE); byte cursor = ((k_ptr->aware || visual_only) ? TERM_L_BLUE : TERM_BLUE); @@ -6956,8 +6787,6 @@ static void desc_obj_fake(KIND_OBJECT_IDX k_idx) { object_type *o_ptr; object_type object_type_body; - - /* Get local object */ o_ptr = &object_type_body; object_wipe(o_ptr); @@ -6972,8 +6801,6 @@ static void desc_obj_fake(KIND_OBJECT_IDX k_idx) /* Hack - mark as fake */ /* term_obj_real = FALSE; */ - - /* Hack -- Handle stuff */ handle_stuff(); if (!screen_object(o_ptr, SCROBJ_FAKE_OBJECT | SCROBJ_FORCE_DETAIL)) @@ -7017,7 +6844,7 @@ static void do_cmd_knowledge_objects(bool *need_redraw, bool visual_only, IDX di browser_rows = hgt - 8; /* Allocate the "object_idx" array */ - C_MAKE(object_idx, max_k_idx, IDX); + C_MAKE(object_idx, max_k_idx, KIND_OBJECT_IDX); max = 0; grp_cnt = 0; @@ -7201,7 +7028,6 @@ static void do_cmd_knowledge_objects(bool *need_redraw, bool visual_only, IDX di /* The "current" object changed */ if (object_old != object_idx[object_cur]) { - /* Hack -- handle stuff */ handle_stuff(); /* Remember the "current" object */ @@ -7292,7 +7118,7 @@ static void display_feature_list(int col, int row, int per_page, FEAT_IDX *feat_ /* Display lines until done */ for (i = 0; i < per_page && (feat_idx[feat_top + i] >= 0); i++) { - byte attr; + TERM_COLOR attr; /* Get the index */ FEAT_IDX f_idx = feat_idx[feat_top + i]; @@ -7351,16 +7177,16 @@ static void display_feature_list(int col, int row, int per_page, FEAT_IDX *feat_ */ static void do_cmd_knowledge_features(bool *need_redraw, bool visual_only, IDX direct_f_idx, IDX *lighting_level) { - IDX i; + FEAT_IDX i; int len, max; - IDX grp_cur, grp_top, old_grp_cur; - IDX feat_cur, feat_top; + FEAT_IDX grp_cur, grp_top, old_grp_cur; + FEAT_IDX feat_cur, feat_top; int grp_cnt; - IDX grp_idx[100]; + FEAT_IDX grp_idx[100]; int feat_cnt; - IDX *feat_idx; + FEAT_IDX *feat_idx; - int column = 0; + TERM_LEN column = 0; bool flag; bool redraw; @@ -7368,13 +7194,13 @@ static void do_cmd_knowledge_features(bool *need_redraw, bool visual_only, IDX d TERM_COLOR attr_top = 0; byte char_left = 0; - int browser_rows; - int wid, hgt; + TERM_LEN browser_rows; + TERM_LEN wid, hgt; TERM_COLOR attr_old[F_LIT_MAX]; - byte char_old[F_LIT_MAX]; + SYMBOL_CODE char_old[F_LIT_MAX]; TERM_COLOR *cur_attr_ptr; - byte *cur_char_ptr; + SYMBOL_CODE *cur_char_ptr; (void)C_WIPE(attr_old, F_LIT_MAX, byte); (void)C_WIPE(char_old, F_LIT_MAX, byte); @@ -7384,7 +7210,7 @@ static void do_cmd_knowledge_features(bool *need_redraw, bool visual_only, IDX d browser_rows = hgt - 8; /* Allocate the "feat_idx" array */ - C_MAKE(feat_idx, max_f_idx, IDX); + C_MAKE(feat_idx, max_f_idx, FEAT_IDX); max = 0; grp_cnt = 0; @@ -7449,35 +7275,19 @@ static void do_cmd_knowledge_features(bool *need_redraw, bool visual_only, IDX d { clear_from(0); -#ifdef JP - prt("表示 - 地形", 2, 0); - if (direct_f_idx < 0) prt("グループ", 4, 0); - prt("名前", 4, max + 3); - if (use_bigtile) - { - if (p_ptr->wizard || visual_only) prt("Idx", 4, 62); - prt("文字 ( l/ d)", 4, 66); - } - else - { - if (p_ptr->wizard || visual_only) prt("Idx", 4, 64); - prt("文字 (l/d)", 4, 68); - } -#else - prt("Visuals - features", 2, 0); - if (direct_f_idx < 0) prt("Group", 4, 0); - prt("Name", 4, max + 3); + prt(_("表示 - 地形", "Visuals - features"), 2, 0); + if (direct_f_idx < 0) prt(_("グループ", "Group"), 4, 0); + prt(_("名前", "Name"), 4, max + 3); if (use_bigtile) { if (p_ptr->wizard || visual_only) prt("Idx", 4, 62); - prt("Sym ( l/ d)", 4, 67); + prt(_("文字 ( l/ d)", "Sym ( l/ d)"), 4, 66); } else { if (p_ptr->wizard || visual_only) prt("Idx", 4, 64); - prt("Sym (l/d)", 4, 69); + prt(_("文字 (l/d)", "Sym (l/d)"), 4, 68); } -#endif for (i = 0; i < 78; i++) { @@ -7536,17 +7346,10 @@ static void do_cmd_knowledge_features(bool *need_redraw, bool visual_only, IDX d } /* Prompt */ -#ifdef JP - prt(format("<方向>%s, 'd'で標準光源効果%s, ESC", - visual_list ? ", ENTERで決定, 'a'で対象明度変更" : ", 'v'でシンボル変更", - (attr_idx || char_idx) ? ", 'c', 'p'でペースト" : ", 'c'でコピー"), + prt(format(_("<方向>%s, 'd'で標準光源効果%s, ESC", "%s, 'd' for default lighting%s, ESC"), + visual_list ? _(", ENTERで決定, 'a'で対象明度変更", ", ENTER to accept, 'a' for lighting level") : _(", 'v'でシンボル変更", ", 'v' for visuals"), + (attr_idx || char_idx) ? _(", 'c', 'p'でペースト", ", 'c', 'p' to paste") : _(", 'c'でコピー", ", 'c' to copy")), hgt - 1, 0); -#else - prt(format("%s, 'd' for default lighting%s, ESC", - visual_list ? ", ENTER to accept, 'a' for lighting level" : ", 'v' for visuals", - (attr_idx || char_idx) ? ", 'c', 'p' to paste" : ", 'c' to copy"), - hgt - 1, 0); -#endif /* Get the current feature */ f_ptr = &f_info[feat_idx[feat_cur]]; @@ -7690,7 +7493,7 @@ static void do_cmd_knowledge_features(bool *need_redraw, bool visual_only, IDX d } /* Free the "feat_idx" array */ - C_KILL(feat_idx, max_f_idx, IDX); + C_KILL(feat_idx, max_f_idx, FEAT_IDX); } @@ -7702,7 +7505,7 @@ static void do_cmd_knowledge_kubi(void) int i; FILE *fff; - char file_name[1024]; + GAME_TEXT file_name[1024]; /* Open a new file */ @@ -7743,9 +7546,7 @@ static void do_cmd_knowledge_kubi(void) fprintf(fff,"\n%s\n", _("賞金首はもう残っていません。", "There is no more wanted monster.")); } } - - /* Close the file */ - my_fclose(fff); + my_fclose(fff); /* Display the file contents */ show_file(TRUE, file_name, _("賞金首の一覧", "Wanted monsters"), 0, 0); @@ -7759,11 +7560,9 @@ static void do_cmd_knowledge_kubi(void) */ static void do_cmd_knowledge_virtues(void) { - FILE *fff; - - char file_name[1024]; - - + FILE *fff; + GAME_TEXT file_name[1024]; + /* Open a new file */ fff = my_fopen_temp(file_name, 1024); if (!fff) { @@ -7777,9 +7576,7 @@ static void do_cmd_knowledge_virtues(void) fprintf(fff, _("現在の属性 : %s\n\n", "Your alighnment : %s\n\n"), your_alignment()); dump_virtues(fff); } - - /* Close the file */ - my_fclose(fff); + my_fclose(fff); /* Display the file contents */ show_file(TRUE, file_name, _("八つの徳", "Virtues"), 0, 0); @@ -7796,10 +7593,9 @@ static void do_cmd_knowledge_dungeon(void) { FILE *fff; - char file_name[1024]; + GAME_TEXT file_name[1024]; int i; - - + /* Open a new file */ fff = my_fopen_temp(file_name, 1024); if (!fff) { @@ -7825,9 +7621,7 @@ static void do_cmd_knowledge_dungeon(void) fprintf(fff, _("%c%-12s : %3d 階\n", "%c%-16s : level %3d\n"), seiha ? '!' : ' ', d_name + d_info[i].name, (int)max_dlv[i]); } } - - /* Close the file */ - my_fclose(fff); + my_fclose(fff); /* Display the file contents */ show_file(TRUE, file_name, _("今までに入ったダンジョン", "Dungeon"), 0, 0); @@ -7844,7 +7638,7 @@ static void do_cmd_knowledge_stat(void) { FILE *fff; - char file_name[1024]; + GAME_TEXT file_name[1024]; int percent, v_nr; /* Open a new file */ @@ -7870,7 +7664,7 @@ static void do_cmd_knowledge_stat(void) else fprintf(fff, "Your current Life Rating is ???.\n\n"); fprintf(fff, "Limits of maximum stats\n\n"); #endif - for (v_nr = 0; v_nr < 6; v_nr++) + for (v_nr = 0; v_nr < A_MAX; v_nr++) { if ((p_ptr->knowledge & KNOW_STAT) || p_ptr->stat_max[v_nr] == p_ptr->stat_max_max[v_nr]) fprintf(fff, "%s 18/%d\n", stat_names[v_nr], p_ptr->stat_max_max[v_nr]-18); else fprintf(fff, "%s ???\n", stat_names[v_nr]); @@ -7878,8 +7672,6 @@ static void do_cmd_knowledge_stat(void) } dump_yourself(fff); - - /* Close the file */ my_fclose(fff); /* Display the file contents */ @@ -7897,7 +7689,7 @@ static void do_cmd_knowledge_quests_current(FILE *fff) { char tmp_str[120]; char rand_tmp_str[120] = "\0"; - char name[80]; + GAME_TEXT name[MAX_NLEN]; monster_race *r_ptr; IDX i; int rand_level = 100; @@ -8235,7 +8027,7 @@ void ang_sort_swap_quest_num(vptr u, vptr v, int a, int b) static void do_cmd_knowledge_quests(void) { FILE *fff; - char file_name[1024]; + GAME_TEXT file_name[1024]; IDX *quest_num; int dummy; IDX i; @@ -8250,7 +8042,7 @@ static void do_cmd_knowledge_quests(void) } /* Allocate Memory */ - C_MAKE(quest_num, max_q_idx, IDX); + C_MAKE(quest_num, max_q_idx, QUEST_IDX); /* Sort by compete level */ for (i = 1; i < max_q_idx; i++) quest_num[i] = i; @@ -8269,8 +8061,6 @@ static void do_cmd_knowledge_quests(void) fputc('\n', fff); do_cmd_knowledge_quests_wiz_random(fff); } - - /* Close the file */ my_fclose(fff); /* Display the file contents */ @@ -8292,10 +8082,10 @@ static void do_cmd_knowledge_home(void) FILE *fff; int i; - char file_name[1024]; + GAME_TEXT file_name[1024]; store_type *st_ptr; - char o_name[MAX_NLEN]; - cptr paren = ")"; + GAME_TEXT o_name[MAX_NLEN]; + concptr paren = ")"; process_dungeon_file("w_info.txt", 0, 0, max_wild_y, max_wild_x); @@ -8353,8 +8143,6 @@ static void do_cmd_knowledge_home(void) fprintf(fff, "\n\n"); } } - - /* Close the file */ my_fclose(fff); /* Display the file contents */ @@ -8372,7 +8160,7 @@ static void do_cmd_knowledge_autopick(void) { int k; FILE *fff; - char file_name[1024]; + GAME_TEXT file_name[1024]; /* Open a new file */ fff = my_fopen_temp(file_name, 1024); @@ -8396,7 +8184,7 @@ static void do_cmd_knowledge_autopick(void) for (k = 0; k < max_autopick; k++) { - cptr tmp; + concptr tmp; byte act = autopick_list[k].action; if (act & DONT_AUTOPICK) { @@ -8425,7 +8213,6 @@ static void do_cmd_knowledge_autopick(void) string_free(tmp); fprintf(fff, "\n"); } - /* Close the file */ my_fclose(fff); /* Display the file contents */ show_file(TRUE, file_name, _("自動拾い/破壊 設定リスト", "Auto-picker/Destroyer"), 0, 0); @@ -8445,24 +8232,16 @@ void do_cmd_knowledge(void) /* File type is "TEXT" */ FILE_TYPE(FILE_TYPE_TEXT); - - /* Save the screen */ screen_save(); /* Interact until done */ while (1) { - /* Clear screen */ Term_clear(); /* Ask for a choice */ -#ifdef JP - prt(format("%d/2 ページ", (p+1)), 2, 65); - prt("現在の知識を確認する", 3, 0); -#else - prt(format("page %d/2", (p+1)), 2, 65); - prt("Display current knowledge", 3, 0); -#endif + prt(format(_("%d/2 ページ", "page %d/2"), (p+1)), 2, 65); + prt(_("現在の知識を確認する", "Display current knowledge"), 3, 0); /* Give some choices */ #ifdef JP @@ -8519,21 +8298,11 @@ void do_cmd_knowledge(void) } #endif /* Prompt */ -#ifdef JP - prt("-続く-", 17, 8); - prt("ESC) 抜ける", 21, 1); - prt("SPACE) 次ページ", 21, 30); + prt(_("-続く-", "-more-"), 17, 8); + prt(_("ESC) 抜ける", "ESC) Exit menu"), 21, 1); + prt(_("SPACE) 次ページ", "SPACE) Next page"), 21, 30); /*prt("-) 前ページ", 21, 60);*/ - prt("コマンド:", 20, 0); -#else - prt("-more-", 17, 8); - prt("ESC) Exit menu", 21, 1); - prt("SPACE) Next page", 21, 30); - /*prt("-) Previous page", 21, 60);*/ - prt("Command: ", 20, 0); -#endif - - /* Prompt */ + prt(_("コマンド:", "Command: "), 20, 0); i = inkey(); if (i == ESCAPE) break; @@ -8608,11 +8377,8 @@ void do_cmd_knowledge(void) bell(); } - /* Flush messages */ - msg_print(NULL); + msg_erase(); } - - /* Restore the screen */ screen_load(); if (need_redraw) do_cmd_redraw(); @@ -8626,14 +8392,10 @@ void do_cmd_checkquest(void) { /* File type is "TEXT" */ FILE_TYPE(FILE_TYPE_TEXT); - - /* Save the screen */ screen_save(); /* Quest info */ do_cmd_knowledge_quests(); - - /* Restore the screen */ screen_load(); } @@ -8740,7 +8502,5 @@ void do_cmd_time(void) } msg_print(desc); - - /* Close the file */ my_fclose(fff); }