OSDN Git Service

[Refactor] #40534 Separated display-sub-window-items.c/h from flavor-describer.c
authorHourier <hourier@users.sourceforge.jp>
Fri, 10 Jul 2020 00:14:09 +0000 (09:14 +0900)
committerHourier <hourier@users.sourceforge.jp>
Fri, 10 Jul 2020 00:14:09 +0000 (09:14 +0900)
Hengband/Hengband/Hengband.vcxproj
Hengband/Hengband/Hengband.vcxproj.filters
src/Makefile.am
src/flavor/flavor-describer.c
src/view/display-sub-window-items.c [new file with mode: 0644]
src/view/display-sub-window-items.h [new file with mode: 0644]

index 5d6e76e..728c8ef 100644 (file)
     <ClCompile Include="..\..\src\status\temporary-resistance.c" />\r
     <ClCompile Include="..\..\src\view\display-inventory.c" />\r
     <ClCompile Include="..\..\src\view\display-map.c" />\r
+    <ClCompile Include="..\..\src\view\display-sub-window-items.c" />\r
     <ClCompile Include="..\..\src\view\display-sub-window-spells.c" />\r
     <ClCompile Include="..\..\src\view\display-sub-windows.c" />\r
     <ClCompile Include="..\..\src\view\main-window-left-frame.c" />\r
     <ClInclude Include="..\..\src\view\display-map.h" />\r
     <ClInclude Include="..\..\src\view\display-messages.h" />\r
     <ClInclude Include="..\..\src\view\display-monster-status.h" />\r
+    <ClInclude Include="..\..\src\view\display-sub-window-items.h" />\r
     <ClInclude Include="..\..\src\view\display-sub-window-spells.h" />\r
     <ClInclude Include="..\..\src\view\display-sub-windows.h" />\r
     <ClInclude Include="..\..\src\view\main-window-left-frame.h" />\r
index 9620e64..554986d 100644 (file)
     <ClCompile Include="..\..\src\flavor\named-item-describer.c">
       <Filter>flavor</Filter>
     </ClCompile>
+    <ClCompile Include="..\..\src\view\display-sub-window-items.c">
+      <Filter>view</Filter>
+    </ClCompile>
   </ItemGroup>
   <ItemGroup>
     <ClInclude Include="..\..\src\cmd\cmd-basic.h">
     <ClInclude Include="..\..\src\flavor\named-item-describer.h">
       <Filter>flavor</Filter>
     </ClInclude>
+    <ClInclude Include="..\..\src\view\display-sub-window-items.h">
+      <Filter>view</Filter>
+    </ClInclude>
   </ItemGroup>
   <ItemGroup>
     <None Include="..\..\src\wall.bmp" />
index 044baed..d27ebaf 100644 (file)
@@ -680,6 +680,7 @@ hengband_SOURCES = \
        view/display-player-misc-info.c view/display-player-misc-info.h \
        view/display-player-middle.c view/display-player-middle.h \
        view/display-player.c view/display-player.h \
+       view/display-sub-items.c view/display-sub-items.h \
        view/display-sub-window-spells.c view/display-sub-window-spells.h \
        view/display-sub-windows.c view/display-sub-windows.h \
        view/display-util.c view/display-util.h \
index bcb85de..c113120 100644 (file)
@@ -27,8 +27,8 @@
 #include "perception/object-perception.h"
 #include "sv-definition/sv-lite-types.h"
 #include "util/bit-flags-calculator.h"
-#include "util/quarks.h"
 #include "util/string-processor.h"
+#include "view/display-sub-window-items.h"
 
 static void describe_chest_trap(flavor_type *flavor_ptr)
 {
@@ -434,27 +434,6 @@ static void describe_remaining(flavor_type *flavor_ptr)
         flavor_ptr->t = object_desc_str(flavor_ptr->t, _("(充填中)", " (charging)"));
 }
 
-void display_short_flavors(player_type *player_ptr, flavor_type *flavor_ptr)
-{
-    flavor_ptr->tmp_val2[0] = '\0';
-    if ((abbrev_extra || abbrev_all) && object_is_fully_known(flavor_ptr->o_ptr)) {
-        if (!flavor_ptr->o_ptr->inscription || !angband_strchr(quark_str(flavor_ptr->o_ptr->inscription), '%')) {
-            bool kanji = _(TRUE, FALSE);
-            get_ability_abbreviation(player_ptr, flavor_ptr->tmp_val2, flavor_ptr->o_ptr, kanji, abbrev_all);
-        }
-    }
-
-    if (flavor_ptr->o_ptr->inscription == 0)
-        return;
-
-    char buff[1024];
-    if (flavor_ptr->tmp_val2[0])
-        strcat(flavor_ptr->tmp_val2, ", ");
-
-    get_inscription(player_ptr, buff, flavor_ptr->o_ptr);
-    angband_strcat(flavor_ptr->tmp_val2, buff, sizeof(flavor_ptr->tmp_val2));
-}
-
 static void decide_item_feeling(flavor_type *flavor_ptr)
 {
     flavor_ptr->fake_insc_buf[0] = '\0';
@@ -484,46 +463,6 @@ static void decide_item_feeling(flavor_type *flavor_ptr)
         strcpy(flavor_ptr->fake_insc_buf, _("未判明", "tried"));
 }
 
-void display_item_discount(flavor_type *flavor_ptr)
-{
-    if ((flavor_ptr->o_ptr->discount == 0) || (flavor_ptr->tmp_val2[0] && ((flavor_ptr->o_ptr->ident & IDENT_STORE) == 0)))
-        return;
-
-    char discount_num_buf[4];
-    if (flavor_ptr->fake_insc_buf[0])
-        strcat(flavor_ptr->fake_insc_buf, ", ");
-
-    (void)object_desc_num(discount_num_buf, flavor_ptr->o_ptr->discount);
-    strcat(flavor_ptr->fake_insc_buf, discount_num_buf);
-    strcat(flavor_ptr->fake_insc_buf, _("%引き", "% off"));
-}
-
-/*!
- * @brief 呪いの有無や割引率等を表示する
- * @param flavor_ptr アイテム表記への参照ポインタ
- * @return なし
- */
-void display_item_fake_inscription(flavor_type *flavor_ptr)
-{
-    if ((flavor_ptr->fake_insc_buf[0] == '\0') && (flavor_ptr->tmp_val2[0] == '\0'))
-        return;
-
-    flavor_ptr->t = object_desc_chr(flavor_ptr->t, ' ');
-    flavor_ptr->t = object_desc_chr(flavor_ptr->t, flavor_ptr->c1);
-    if (flavor_ptr->fake_insc_buf[0])
-        flavor_ptr->t = object_desc_str(flavor_ptr->t, flavor_ptr->fake_insc_buf);
-
-    if ((flavor_ptr->fake_insc_buf[0] != '\0') && (flavor_ptr->tmp_val2[0] != '\0')) {
-        flavor_ptr->t = object_desc_chr(flavor_ptr->t, ',');
-        flavor_ptr->t = object_desc_chr(flavor_ptr->t, ' ');
-    }
-
-    if (flavor_ptr->tmp_val2[0])
-        flavor_ptr->t = object_desc_str(flavor_ptr->t, flavor_ptr->tmp_val2);
-
-    flavor_ptr->t = object_desc_chr(flavor_ptr->t, flavor_ptr->c2);
-}
-
 /*!
  * @brief オブジェクトの各表記を返すメイン関数 / Creates a description of the item "o_ptr", and stores it in "out_val".
  * @param player_ptr プレーヤーへの参照ポインタ
diff --git a/src/view/display-sub-window-items.c b/src/view/display-sub-window-items.c
new file mode 100644 (file)
index 0000000..a51c8cc
--- /dev/null
@@ -0,0 +1,68 @@
+#include "view/display-sub-window-items.h"
+#include "flavor/flavor-util.h"
+#include "game-option/text-display-options.h"
+#include "object-enchant/special-object-flags.h"
+#include "perception/object-perception.h"
+#include "util/quarks.h"
+#include "util/string-processor.h"
+
+void display_short_flavors(player_type *player_ptr, flavor_type *flavor_ptr)
+{
+    flavor_ptr->tmp_val2[0] = '\0';
+    if ((abbrev_extra || abbrev_all) && object_is_fully_known(flavor_ptr->o_ptr)) {
+        if (!flavor_ptr->o_ptr->inscription || !angband_strchr(quark_str(flavor_ptr->o_ptr->inscription), '%')) {
+            bool kanji = _(TRUE, FALSE);
+            get_ability_abbreviation(player_ptr, flavor_ptr->tmp_val2, flavor_ptr->o_ptr, kanji, abbrev_all);
+        }
+    }
+
+    if (flavor_ptr->o_ptr->inscription == 0)
+        return;
+
+    char buff[1024];
+    if (flavor_ptr->tmp_val2[0])
+        strcat(flavor_ptr->tmp_val2, ", ");
+
+    get_inscription(player_ptr, buff, flavor_ptr->o_ptr);
+    angband_strcat(flavor_ptr->tmp_val2, buff, sizeof(flavor_ptr->tmp_val2));
+}
+
+void display_item_discount(flavor_type *flavor_ptr)
+{
+    if ((flavor_ptr->o_ptr->discount == 0) || (flavor_ptr->tmp_val2[0] && ((flavor_ptr->o_ptr->ident & IDENT_STORE) == 0)))
+        return;
+
+    char discount_num_buf[4];
+    if (flavor_ptr->fake_insc_buf[0])
+        strcat(flavor_ptr->fake_insc_buf, ", ");
+
+    (void)object_desc_num(discount_num_buf, flavor_ptr->o_ptr->discount);
+    strcat(flavor_ptr->fake_insc_buf, discount_num_buf);
+    strcat(flavor_ptr->fake_insc_buf, _("%引き", "% off"));
+}
+
+/*!
+ * @brief 呪いの有無や割引率等を表示する
+ * @param flavor_ptr アイテム表記への参照ポインタ
+ * @return なし
+ */
+void display_item_fake_inscription(flavor_type *flavor_ptr)
+{
+    if ((flavor_ptr->fake_insc_buf[0] == '\0') && (flavor_ptr->tmp_val2[0] == '\0'))
+        return;
+
+    flavor_ptr->t = object_desc_chr(flavor_ptr->t, ' ');
+    flavor_ptr->t = object_desc_chr(flavor_ptr->t, flavor_ptr->c1);
+    if (flavor_ptr->fake_insc_buf[0])
+        flavor_ptr->t = object_desc_str(flavor_ptr->t, flavor_ptr->fake_insc_buf);
+
+    if ((flavor_ptr->fake_insc_buf[0] != '\0') && (flavor_ptr->tmp_val2[0] != '\0')) {
+        flavor_ptr->t = object_desc_chr(flavor_ptr->t, ',');
+        flavor_ptr->t = object_desc_chr(flavor_ptr->t, ' ');
+    }
+
+    if (flavor_ptr->tmp_val2[0])
+        flavor_ptr->t = object_desc_str(flavor_ptr->t, flavor_ptr->tmp_val2);
+
+    flavor_ptr->t = object_desc_chr(flavor_ptr->t, flavor_ptr->c2);
+}
diff --git a/src/view/display-sub-window-items.h b/src/view/display-sub-window-items.h
new file mode 100644 (file)
index 0000000..2aeeb00
--- /dev/null
@@ -0,0 +1,8 @@
+#pragma once
+
+#include "system/angband.h"
+
+typedef struct flavor_type flavor_type;
+void display_short_flavors(player_type *player_ptr, flavor_type *flavor_ptr);
+void display_item_discount(flavor_type *flavor_ptr);
+void display_item_fake_inscription(flavor_type *flavor_ptr);