From: Hourier Date: Fri, 24 Apr 2020 08:37:26 +0000 (+0900) Subject: [Refactor] #40236 Separated do_cmd_knowledge_autopick() and do_cmd_reload_autopick... X-Git-Tag: vmacos3.0.0-alpha52~1478 X-Git-Url: http://git.osdn.net/view?a=commitdiff_plain;h=5b6efd85fbbca8863f9898ff6a018f7f89feb03e;p=hengbandforosx%2Fhengbandosx.git [Refactor] #40236 Separated do_cmd_knowledge_autopick() and do_cmd_reload_autopick() from cmd-dump.c/h to knowledge-autopick.c/h --- diff --git a/Hengband_vcs2017/Hengband/Hengband.vcxproj b/Hengband_vcs2017/Hengband/Hengband.vcxproj index 6e006a791..8fa05f95f 100644 --- a/Hengband_vcs2017/Hengband/Hengband.vcxproj +++ b/Hengband_vcs2017/Hengband/Hengband.vcxproj @@ -154,6 +154,7 @@ + @@ -287,6 +288,7 @@ + diff --git a/Hengband_vcs2017/Hengband/Hengband.vcxproj.filters b/Hengband_vcs2017/Hengband/Hengband.vcxproj.filters index f7f594fab..2864f9c74 100644 --- a/Hengband_vcs2017/Hengband/Hengband.vcxproj.filters +++ b/Hengband_vcs2017/Hengband/Hengband.vcxproj.filters @@ -619,6 +619,9 @@ knowledge + + knowledge + @@ -1220,6 +1223,9 @@ knowledge + + knowledge + diff --git a/src/Makefile.am b/src/Makefile.am index 6da77490e..a3265febf 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -149,9 +149,10 @@ hengband_SOURCES = \ z-form.c z-form.h z-rand.c z-rand.h z-term.c z-term.h z-util.c z-util.h \ z-virt.c z-virt.h \ \ - knowledge/knowledge-items.c knowledge/knowledge-items.h \ + knowledge/knowledge-autopick.c knowledge/knowledge-autopick.h \ knowledge/knowledge-experiences.c knowledge/knowledge-experiences.h \ knowledge/knowledge-features.c knowledge/knowledge-features.h \ + knowledge/knowledge-items.c knowledge/knowledge-items.h \ knowledge/knowledge-monsters.c knowledge/knowledge-monsters.h \ knowledge/knowledge-uniques.c knowledge/knowledge-uniques.h \ knowledge/knowledge-self.c knowledge/knowledge-self.h \ diff --git a/src/cmd/cmd-dump.c b/src/cmd/cmd-dump.c index 435d206ae..66dab9a09 100644 --- a/src/cmd/cmd-dump.c +++ b/src/cmd/cmd-dump.c @@ -34,44 +34,34 @@ #include "cmd/cmd-draw.h" #include "cmd/cmd-dump.h" #include "cmd/cmd-inventory.h" -#include "cmd/lighting-level-table.h" #include "cmd/cmd-visuals.h" #include "cmd/dump-util.h" #include "gameterm.h" #include "core.h" // 暫定。後で消す. -#include "core/show-file.h" #include "io/read-pref-file.h" #include "io/interpret-pref-file.h" -#include "knowledge/knowledge-items.h" +#include "knowledge/knowledge-autopick.h" #include "knowledge/knowledge-experiences.h" #include "knowledge/knowledge-features.h" +#include "knowledge/knowledge-items.h" #include "knowledge/knowledge-monsters.h" #include "knowledge/knowledge-quests.h" #include "knowledge/knowledge-self.h" #include "knowledge/knowledge-uniques.h" -#include "autopick.h" -#include "dungeon.h" #include "world.h" #include "view/display-player.h" // 暫定。後で消す. #include "player-personality.h" -#include "sort.h" #include "mutation.h" #include "quest.h" #include "market/store.h" #include "artifact.h" -#include "object-flavor.h" -#include "object/object-kind.h" #include "floor-town.h" #include "cmd/feeling-table.h" -#include "cmd/object-group-table.h" #include "market/store-util.h" -#include "view-mainwindow.h" // 暫定。後で消す #include "english.h" -#include "diary-subtitle-table.h" -#include "io/write-diary.h" #include "chuukei.h" /*! @@ -212,20 +202,6 @@ void do_cmd_pref(player_type *creature_ptr) } -/*! - * @brief 自動拾い設定ファイルをロードするコマンドのメインルーチン / - * @param creature_ptr プレーヤーへの参照ポインタ - * @return なし - */ -void do_cmd_reload_autopick(player_type *creature_ptr) -{ - if (!get_check(_("自動拾い設定ファイルをロードしますか? ", "Reload auto-pick preference file? "))) - return; - - autopick_load_pref(creature_ptr, TRUE); -} - - /* * Interact with "colors" */ @@ -417,64 +393,6 @@ void do_cmd_feeling(player_type *creature_ptr) /* - * Check the status of "autopick" - */ -static void do_cmd_knowledge_autopick(player_type *creature_ptr) -{ - FILE *fff = NULL; - GAME_TEXT file_name[FILE_NAME_SIZE]; - if (!open_temporary_file(&fff, file_name)) return; - - if (!max_autopick) - { - fprintf(fff, _("自動破壊/拾いには何も登録されていません。", "No preference for auto picker/destroyer.")); - } - else - { - fprintf(fff, _(" 自動拾い/破壊には現在 %d行登録されています。\n\n", - " There are %d registered lines for auto picker/destroyer.\n\n"), max_autopick); - } - - for (int k = 0; k < max_autopick; k++) - { - concptr tmp; - byte act = autopick_list[k].action; - if (act & DONT_AUTOPICK) - { - tmp = _("放置", "Leave"); - } - else if (act & DO_AUTODESTROY) - { - tmp = _("破壊", "Destroy"); - } - else if (act & DO_AUTOPICK) - { - tmp = _("拾う", "Pickup"); - } - else - { - tmp = _("確認", "Query"); - } - - if (act & DO_DISPLAY) - fprintf(fff, "%11s", format("[%s]", tmp)); - else - fprintf(fff, "%11s", format("(%s)", tmp)); - - tmp = autopick_line_from_entry(&autopick_list[k]); - fprintf(fff, " %s", tmp); - string_free(tmp); - fprintf(fff, "\n"); - } - - my_fclose(fff); - - (void)show_file(creature_ptr, TRUE, file_name, _("自動拾い/破壊 設定リスト", "Auto-picker/Destroyer"), 0, 0); - fd_kill(file_name); -} - - -/* * Interact with "knowledge" */ void do_cmd_knowledge(player_type *creature_ptr) diff --git a/src/cmd/cmd-dump.h b/src/cmd/cmd-dump.h index 73af6cf79..068d1fe7c 100644 --- a/src/cmd/cmd-dump.h +++ b/src/cmd/cmd-dump.h @@ -1,7 +1,6 @@ #pragma once extern void do_cmd_pref(player_type *creature_ptr); -extern void do_cmd_reload_autopick(player_type *creature_ptr); extern void do_cmd_colors(player_type *creature_ptr); extern void do_cmd_note(void); extern void do_cmd_version(void); diff --git a/src/core.c b/src/core.c index 396a1d177..77eebf20d 100644 --- a/src/core.c +++ b/src/core.c @@ -58,6 +58,7 @@ #include "object-ego.h" #include "object-curse.h" #include "object-flavor.h" +#include "knowledge/knowledge-autopick.h" #include "market/store.h" #include "spells.h" #include "spells-summon.h" diff --git a/src/knowledge/knowledge-autopick.c b/src/knowledge/knowledge-autopick.c new file mode 100644 index 000000000..abc7db40c --- /dev/null +++ b/src/knowledge/knowledge-autopick.c @@ -0,0 +1,82 @@ +/*! + * @brief 自動拾いの登録状況を表示する + * @date 2020/04/23 + * @author Hourier + */ + +#include "angband.h" +#include "knowledge-autopick.h" +#include "cmd/dump-util.h" +#include "core/show-file.h" +#include "autopick.h" + + /*! + * @brief 自動拾い設定ファイルをロードするコマンドのメインルーチン / + * @param creature_ptr プレーヤーへの参照ポインタ + * @return なし + */ +void do_cmd_reload_autopick(player_type *creature_ptr) +{ + if (!get_check(_("自動拾い設定ファイルをロードしますか? ", "Reload auto-pick preference file? "))) + return; + + autopick_load_pref(creature_ptr, TRUE); +} + + +/* + * Check the status of "autopick" + */ +void do_cmd_knowledge_autopick(player_type *creature_ptr) +{ + FILE *fff = NULL; + GAME_TEXT file_name[FILE_NAME_SIZE]; + if (!open_temporary_file(&fff, file_name)) return; + + if (!max_autopick) + { + fprintf(fff, _("自動破壊/拾いには何も登録されていません。", "No preference for auto picker/destroyer.")); + } + else + { + fprintf(fff, _(" 自動拾い/破壊には現在 %d行登録されています。\n\n", + " There are %d registered lines for auto picker/destroyer.\n\n"), max_autopick); + } + + for (int k = 0; k < max_autopick; k++) + { + concptr tmp; + byte act = autopick_list[k].action; + if (act & DONT_AUTOPICK) + { + tmp = _("放置", "Leave"); + } + else if (act & DO_AUTODESTROY) + { + tmp = _("破壊", "Destroy"); + } + else if (act & DO_AUTOPICK) + { + tmp = _("拾う", "Pickup"); + } + else + { + tmp = _("確認", "Query"); + } + + if (act & DO_DISPLAY) + fprintf(fff, "%11s", format("[%s]", tmp)); + else + fprintf(fff, "%11s", format("(%s)", tmp)); + + tmp = autopick_line_from_entry(&autopick_list[k]); + fprintf(fff, " %s", tmp); + string_free(tmp); + fprintf(fff, "\n"); + } + + my_fclose(fff); + + (void)show_file(creature_ptr, TRUE, file_name, _("自動拾い/破壊 設定リスト", "Auto-picker/Destroyer"), 0, 0); + fd_kill(file_name); +} diff --git a/src/knowledge/knowledge-autopick.h b/src/knowledge/knowledge-autopick.h new file mode 100644 index 000000000..f7a01727f --- /dev/null +++ b/src/knowledge/knowledge-autopick.h @@ -0,0 +1,4 @@ +#pragma once + +void do_cmd_reload_autopick(player_type *creature_ptr); +void do_cmd_knowledge_autopick(player_type *creature_ptr);