OSDN Git Service

[Refactor] #40236 Separated cmd-knowledge.c/h from cmd-dump.c/h
authorHourier <hourier@users.sourceforge.jp>
Fri, 24 Apr 2020 08:48:42 +0000 (17:48 +0900)
committerHourier <hourier@users.sourceforge.jp>
Fri, 24 Apr 2020 08:48:42 +0000 (17:48 +0900)
Hengband_vcs2017/Hengband/Hengband.vcxproj
Hengband_vcs2017/Hengband/Hengband.vcxproj.filters
src/Makefile.am
src/cmd/cmd-dump.c
src/cmd/cmd-dump.h
src/cmd/cmd-knowledge.c [new file with mode: 0644]
src/cmd/cmd-knowledge.h [new file with mode: 0644]
src/core.c
src/market/store.c

index 8fa05f9..ba9bee8 100644 (file)
     <ClCompile Include="..\..\src\autopick.c" />\r
     <ClCompile Include="..\..\src\avatar.c" />\r
     <ClCompile Include="..\..\src\birth.c" />\r
+    <ClCompile Include="..\..\src\cmd\cmd-knowledge.c" />\r
     <ClCompile Include="..\..\src\cmd\cmd-process-screen.c" />\r
     <ClCompile Include="..\..\src\cmd\dump-util.c" />\r
     <ClCompile Include="..\..\src\knowledge\knowledge-autopick.c" />\r
     <ClInclude Include="..\..\src\autopick.h" />\r
     <ClInclude Include="..\..\src\avatar.h" />\r
     <ClInclude Include="..\..\src\birth.h" />\r
+    <ClInclude Include="..\..\src\cmd\cmd-knowledge.h" />\r
     <ClInclude Include="..\..\src\cmd\cmd-process-screen.h" />\r
     <ClInclude Include="..\..\src\cmd\dump-util.h" />\r
     <ClInclude Include="..\..\src\knowledge\knowledge-autopick.h" />\r
index 2864f9c..0decc0d 100644 (file)
     <ClCompile Include="..\..\src\knowledge\knowledge-autopick.c">
       <Filter>knowledge</Filter>
     </ClCompile>
+    <ClCompile Include="..\..\src\cmd\cmd-knowledge.c">
+      <Filter>cmd</Filter>
+    </ClCompile>
   </ItemGroup>
   <ItemGroup>
     <ClInclude Include="..\..\src\gamevalue.h" />
     <ClInclude Include="..\..\src\knowledge\knowledge-autopick.h">
       <Filter>knowledge</Filter>
     </ClInclude>
+    <ClInclude Include="..\..\src\cmd\cmd-knowledge.h">
+      <Filter>cmd</Filter>
+    </ClInclude>
   </ItemGroup>
   <ItemGroup>
     <None Include="..\..\src\wall.bmp" />
index a3265fe..9b5d262 100644 (file)
@@ -168,6 +168,7 @@ hengband_SOURCES = \
        cmd/cmd-gameoption.c cmd/cmd-gameoption.h cmd/cmd-help.c cmd/cmd-help.h \
        cmd/cmd-hissatsu.c cmd/cmd-hissatsu.h cmd/cmd-inn.c cmd/cmd-inn.h \
        cmd/cmd-inventory.c cmd/cmd-inventory.h cmd/cmd-item.c cmd/cmd-item.h \
+       cmd/cmd-knowledge.c cmd/cmd-knowledge.h \
        cmd/lighting-level-table.c cmd/lighting-level-table.h \
        cmd/cmd-magiceat.c cmd/cmd-magiceat.h cmd/cmd-mane.c cmd/cmd-mane.h \
        cmd/cmd-macro.c cmd/cmd-macro.h cmd/cmd-pet.c cmd/cmd-pet.h \
index 3eb02ab..fb812de 100644 (file)
  */
 
 #include "angband.h"
-#include "cmd/cmd-draw.h"
 #include "cmd/cmd-dump.h"
-#include "cmd/cmd-inventory.h"
-#include "cmd/cmd-visuals.h"
 #include "cmd/dump-util.h"
 #include "gameterm.h"
 #include "core.h" // 暫定。後で消す.
 #include "io/read-pref-file.h"
 #include "io/interpret-pref-file.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 "world.h"
 #include "view/display-player.h" // 暫定。後で消す.
 #include "player-personality.h"
-#include "mutation.h"
 #include "quest.h"
-#include "market/store.h"
 #include "artifact.h"
 #include "floor-town.h"
 #include "cmd/feeling-table.h"
-#include "market/store-util.h"
 #include "english.h"
 
 #include "chuukei.h"
@@ -393,132 +378,6 @@ void do_cmd_feeling(player_type *creature_ptr)
 
 
 /*
- * Interact with "knowledge"
- */
-void do_cmd_knowledge(player_type *creature_ptr)
-{
-       int i, p = 0;
-       bool need_redraw = FALSE;
-       FILE_TYPE(FILE_TYPE_TEXT);
-       screen_save();
-       while (TRUE)
-       {
-               Term_clear();
-               prt(format(_("%d/2 ページ", "page %d/2"), (p + 1)), 2, 65);
-               prt(_("現在の知識を確認する", "Display current knowledge"), 3, 0);
-               if (p == 0)
-               {
-                       prt(_("(1) 既知の伝説のアイテム                 の一覧", "(1) Display known artifacts"), 6, 5);
-                       prt(_("(2) 既知のアイテム                       の一覧", "(2) Display known objects"), 7, 5);
-                       prt(_("(3) 既知の生きているユニーク・モンスター の一覧", "(3) Display remaining uniques"), 8, 5);
-                       prt(_("(4) 既知のモンスター                     の一覧", "(4) Display known monster"), 9, 5);
-                       prt(_("(5) 倒した敵の数                         の一覧", "(5) Display kill count"), 10, 5);
-                       if (!vanilla_town) prt(_("(6) 賞金首                               の一覧", "(6) Display wanted monsters"), 11, 5);
-                       prt(_("(7) 現在のペット                         の一覧", "(7) Display current pets"), 12, 5);
-                       prt(_("(8) 我が家のアイテム                     の一覧", "(8) Display home inventory"), 13, 5);
-                       prt(_("(9) *鑑定*済み装備の耐性                 の一覧", "(9) Display *identified* equip."), 14, 5);
-                       prt(_("(0) 地形の表示文字/タイル                の一覧", "(0) Display terrain symbols."), 15, 5);
-               }
-               else
-               {
-                       prt(_("(a) 自分に関する情報                     の一覧", "(a) Display about yourself"), 6, 5);
-                       prt(_("(b) 突然変異                             の一覧", "(b) Display mutations"), 7, 5);
-                       prt(_("(c) 武器の経験値                         の一覧", "(c) Display weapon proficiency"), 8, 5);
-                       prt(_("(d) 魔法の経験値                         の一覧", "(d) Display spell proficiency"), 9, 5);
-                       prt(_("(e) 技能の経験値                         の一覧", "(e) Display misc. proficiency"), 10, 5);
-                       prt(_("(f) プレイヤーの徳                       の一覧", "(f) Display virtues"), 11, 5);
-                       prt(_("(g) 入ったダンジョン                     の一覧", "(g) Display dungeons"), 12, 5);
-                       prt(_("(h) 実行中のクエスト                     の一覧", "(h) Display current quests"), 13, 5);
-                       prt(_("(i) 現在の自動拾い/破壊設定              の一覧", "(i) Display auto pick/destroy"), 14, 5);
-               }
-
-               prt(_("-続く-", "-more-"), 17, 8);
-               prt(_("ESC) 抜ける", "ESC) Exit menu"), 21, 1);
-               prt(_("SPACE) 次ページ", "SPACE) Next page"), 21, 30);
-               prt(_("コマンド:", "Command: "), 20, 0);
-               i = inkey();
-
-               if (i == ESCAPE) break;
-               switch (i)
-               {
-               case ' ': /* Page change */
-               case '-':
-                       p = 1 - p;
-                       break;
-               case '1': /* Artifacts */
-                       do_cmd_knowledge_artifacts(creature_ptr);
-                       break;
-               case '2': /* Objects */
-                       do_cmd_knowledge_objects(creature_ptr, &need_redraw, FALSE, -1);
-                       break;
-               case '3': /* Uniques */
-                       do_cmd_knowledge_uniques(creature_ptr);
-                       break;
-               case '4': /* Monsters */
-                       do_cmd_knowledge_monsters(creature_ptr, &need_redraw, FALSE, -1);
-                       break;
-               case '5': /* Kill count  */
-                       do_cmd_knowledge_kill_count(creature_ptr);
-                       break;
-               case '6': /* wanted */
-                       if (!vanilla_town) do_cmd_knowledge_bounty(creature_ptr);
-                       break;
-               case '7': /* Pets */
-                       do_cmd_knowledge_pets(creature_ptr);
-                       break;
-               case '8': /* Home */
-                       do_cmd_knowledge_home(creature_ptr);
-                       break;
-               case '9': /* Resist list */
-                       do_cmd_knowledge_inventory(creature_ptr);
-                       break;
-               case '0': /* Feature list */
-               {
-                       IDX lighting_level = F_LIT_STANDARD;
-                       do_cmd_knowledge_features(&need_redraw, FALSE, -1, &lighting_level);
-               }
-               break;
-               /* Next page */
-               case 'a': /* Max stat */
-                       do_cmd_knowledge_stat(creature_ptr);
-                       break;
-               case 'b': /* Mutations */
-                       do_cmd_knowledge_mutations(creature_ptr);
-                       break;
-               case 'c': /* weapon-exp */
-                       do_cmd_knowledge_weapon_exp(creature_ptr);
-                       break;
-               case 'd': /* spell-exp */
-                       do_cmd_knowledge_spell_exp(creature_ptr);
-                       break;
-               case 'e': /* skill-exp */
-                       do_cmd_knowledge_skill_exp(creature_ptr);
-                       break;
-               case 'f': /* Virtues */
-                       do_cmd_knowledge_virtues(creature_ptr);
-                       break;
-               case 'g': /* Dungeon */
-                       do_cmd_knowledge_dungeon(creature_ptr);
-                       break;
-               case 'h': /* Quests */
-                       do_cmd_knowledge_quests(creature_ptr);
-                       break;
-               case 'i': /* Autopick */
-                       do_cmd_knowledge_autopick(creature_ptr);
-                       break;
-               default: /* Unknown option */
-                       bell();
-               }
-
-               msg_erase();
-       }
-
-       screen_load();
-       if (need_redraw) do_cmd_redraw(creature_ptr);
-}
-
-
-/*
  * Display the time and date
  * @param creature_ptr プレーヤーへの参照ポインタ
  * @return なし
index c53238a..17e2937 100644 (file)
@@ -5,7 +5,6 @@ extern void do_cmd_colors(player_type *creature_ptr);
 extern void do_cmd_note(void);
 extern void do_cmd_version(void);
 extern void do_cmd_feeling(player_type *creature_ptr);
-extern void do_cmd_knowledge(player_type *creature_ptr);
 extern void do_cmd_time(player_type *creature_ptr);
 
 /*
diff --git a/src/cmd/cmd-knowledge.c b/src/cmd/cmd-knowledge.c
new file mode 100644 (file)
index 0000000..fdfbe5e
--- /dev/null
@@ -0,0 +1,138 @@
+#include "angband.h"
+#include "cmd/cmd-knowledge.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 "cmd/cmd-inventory.h" // 暫定、後で移す.
+#include "mutation.h" // 暫定、後で移す.
+#include "cmd/cmd-draw.h"
+
+/*
+ * Interact with "knowledge"
+ */
+void do_cmd_knowledge(player_type *creature_ptr)
+{
+       int i, p = 0;
+       bool need_redraw = FALSE;
+       FILE_TYPE(FILE_TYPE_TEXT);
+       screen_save();
+       while (TRUE)
+       {
+               Term_clear();
+               prt(format(_("%d/2 ページ", "page %d/2"), (p + 1)), 2, 65);
+               prt(_("現在の知識を確認する", "Display current knowledge"), 3, 0);
+               if (p == 0)
+               {
+                       prt(_("(1) 既知の伝説のアイテム                 の一覧", "(1) Display known artifacts"), 6, 5);
+                       prt(_("(2) 既知のアイテム                       の一覧", "(2) Display known objects"), 7, 5);
+                       prt(_("(3) 既知の生きているユニーク・モンスター の一覧", "(3) Display remaining uniques"), 8, 5);
+                       prt(_("(4) 既知のモンスター                     の一覧", "(4) Display known monster"), 9, 5);
+                       prt(_("(5) 倒した敵の数                         の一覧", "(5) Display kill count"), 10, 5);
+                       if (!vanilla_town) prt(_("(6) 賞金首                               の一覧", "(6) Display wanted monsters"), 11, 5);
+                       prt(_("(7) 現在のペット                         の一覧", "(7) Display current pets"), 12, 5);
+                       prt(_("(8) 我が家のアイテム                     の一覧", "(8) Display home inventory"), 13, 5);
+                       prt(_("(9) *鑑定*済み装備の耐性                 の一覧", "(9) Display *identified* equip."), 14, 5);
+                       prt(_("(0) 地形の表示文字/タイル                の一覧", "(0) Display terrain symbols."), 15, 5);
+               }
+               else
+               {
+                       prt(_("(a) 自分に関する情報                     の一覧", "(a) Display about yourself"), 6, 5);
+                       prt(_("(b) 突然変異                             の一覧", "(b) Display mutations"), 7, 5);
+                       prt(_("(c) 武器の経験値                         の一覧", "(c) Display weapon proficiency"), 8, 5);
+                       prt(_("(d) 魔法の経験値                         の一覧", "(d) Display spell proficiency"), 9, 5);
+                       prt(_("(e) 技能の経験値                         の一覧", "(e) Display misc. proficiency"), 10, 5);
+                       prt(_("(f) プレイヤーの徳                       の一覧", "(f) Display virtues"), 11, 5);
+                       prt(_("(g) 入ったダンジョン                     の一覧", "(g) Display dungeons"), 12, 5);
+                       prt(_("(h) 実行中のクエスト                     の一覧", "(h) Display current quests"), 13, 5);
+                       prt(_("(i) 現在の自動拾い/破壊設定              の一覧", "(i) Display auto pick/destroy"), 14, 5);
+               }
+
+               prt(_("-続く-", "-more-"), 17, 8);
+               prt(_("ESC) 抜ける", "ESC) Exit menu"), 21, 1);
+               prt(_("SPACE) 次ページ", "SPACE) Next page"), 21, 30);
+               prt(_("コマンド:", "Command: "), 20, 0);
+               i = inkey();
+
+               if (i == ESCAPE) break;
+               switch (i)
+               {
+               case ' ': /* Page change */
+               case '-':
+                       p = 1 - p;
+                       break;
+               case '1': /* Artifacts */
+                       do_cmd_knowledge_artifacts(creature_ptr);
+                       break;
+               case '2': /* Objects */
+                       do_cmd_knowledge_objects(creature_ptr, &need_redraw, FALSE, -1);
+                       break;
+               case '3': /* Uniques */
+                       do_cmd_knowledge_uniques(creature_ptr);
+                       break;
+               case '4': /* Monsters */
+                       do_cmd_knowledge_monsters(creature_ptr, &need_redraw, FALSE, -1);
+                       break;
+               case '5': /* Kill count  */
+                       do_cmd_knowledge_kill_count(creature_ptr);
+                       break;
+               case '6': /* wanted */
+                       if (!vanilla_town) do_cmd_knowledge_bounty(creature_ptr);
+                       break;
+               case '7': /* Pets */
+                       do_cmd_knowledge_pets(creature_ptr);
+                       break;
+               case '8': /* Home */
+                       do_cmd_knowledge_home(creature_ptr);
+                       break;
+               case '9': /* Resist list */
+                       do_cmd_knowledge_inventory(creature_ptr);
+                       break;
+               case '0': /* Feature list */
+               {
+                       IDX lighting_level = F_LIT_STANDARD;
+                       do_cmd_knowledge_features(&need_redraw, FALSE, -1, &lighting_level);
+               }
+               break;
+               /* Next page */
+               case 'a': /* Max stat */
+                       do_cmd_knowledge_stat(creature_ptr);
+                       break;
+               case 'b': /* Mutations */
+                       do_cmd_knowledge_mutations(creature_ptr);
+                       break;
+               case 'c': /* weapon-exp */
+                       do_cmd_knowledge_weapon_exp(creature_ptr);
+                       break;
+               case 'd': /* spell-exp */
+                       do_cmd_knowledge_spell_exp(creature_ptr);
+                       break;
+               case 'e': /* skill-exp */
+                       do_cmd_knowledge_skill_exp(creature_ptr);
+                       break;
+               case 'f': /* Virtues */
+                       do_cmd_knowledge_virtues(creature_ptr);
+                       break;
+               case 'g': /* Dungeon */
+                       do_cmd_knowledge_dungeon(creature_ptr);
+                       break;
+               case 'h': /* Quests */
+                       do_cmd_knowledge_quests(creature_ptr);
+                       break;
+               case 'i': /* Autopick */
+                       do_cmd_knowledge_autopick(creature_ptr);
+                       break;
+               default: /* Unknown option */
+                       bell();
+               }
+
+               msg_erase();
+       }
+
+       screen_load();
+       if (need_redraw) do_cmd_redraw(creature_ptr);
+}
diff --git a/src/cmd/cmd-knowledge.h b/src/cmd/cmd-knowledge.h
new file mode 100644 (file)
index 0000000..9e5774b
--- /dev/null
@@ -0,0 +1,3 @@
+#pragma once
+
+void do_cmd_knowledge(player_type *creature_ptr);
index 3ee64a9..14683fb 100644 (file)
@@ -34,6 +34,7 @@
 #include "cmd/cmd-help.h"
 #include "cmd/cmd-hissatsu.h"
 #include "cmd/cmd-item.h"
+#include "cmd/cmd-knowledge.h"
 #include "cmd/cmd-magiceat.h"
 #include "cmd/cmd-mane.h"
 #include "cmd/cmd-macro.h"
index 808e6db..4745392 100644 (file)
@@ -29,6 +29,7 @@
 #include "cmd/cmd-diary.h"
 #include "cmd/cmd-draw.h"
 #include "cmd/cmd-dump.h"
+#include "cmd/cmd-knowledge.h"
 #include "cmd/cmd-help.h"
 #include "cmd/cmd-item.h"
 #include "cmd/cmd-macro.h"