OSDN Git Service

[Refactor] すべてのサブウィンドウ更新フラグを立てる処理
authorHabu <habu1010+github@gmail.com>
Sat, 10 Jun 2023 14:18:58 +0000 (23:18 +0900)
committerHabu <habu1010+github@gmail.com>
Sat, 10 Jun 2023 14:19:24 +0000 (23:19 +0900)
欠番が埋まったのでALL_SUB_WINDOW_FLAGSをEnumRangeで置き換える。

src/system/redrawing-flags-updater.cpp
src/system/redrawing-flags-updater.h

index f17d781..d4a8f13 100644 (file)
@@ -115,7 +115,8 @@ void RedrawingFlagsUpdater::reset_flags(const EnumClassFlagGroup<StatusRecalcula
 
 void RedrawingFlagsUpdater::fill_up_sub_flags()
 {
-    this->sub_window_flags.set(ALL_SUB_WINDOW_FLAGS);
+    constexpr auto all_sub_window_flags = EnumRange(SubWindowRedrawingFlag::INVENTORY, SubWindowRedrawingFlag::FOUND_ITEMS);
+    this->sub_window_flags.set(all_sub_window_flags);
 }
 
 EnumClassFlagGroup<SubWindowRedrawingFlag> RedrawingFlagsUpdater::get_sub_intersection(const EnumClassFlagGroup<SubWindowRedrawingFlag> &flags)
index b1e090e..fcded72 100644 (file)
@@ -50,27 +50,6 @@ enum class SubWindowRedrawingFlag {
     MAX = 16,
 };
 
-/*!
- * @details 欠番があるためEnumRageをそのまま作るのが困難であり、代替として定義する.
- * 欠番が埋まったら不要となるので削除すること。
- */
-inline constexpr auto ALL_SUB_WINDOW_FLAGS = {
-    SubWindowRedrawingFlag::INVENTORY,
-    SubWindowRedrawingFlag::EQUIPMENT,
-    SubWindowRedrawingFlag::SPELL,
-    SubWindowRedrawingFlag::PLAYER,
-    SubWindowRedrawingFlag::SIGHT_MONSTERS,
-    SubWindowRedrawingFlag::PETS,
-    SubWindowRedrawingFlag::MESSAGE,
-    SubWindowRedrawingFlag::OVERHEAD,
-    SubWindowRedrawingFlag::MONSTER_LORE,
-    SubWindowRedrawingFlag::ITEM_KNOWLEDGE,
-    SubWindowRedrawingFlag::DUNGEON,
-    SubWindowRedrawingFlag::SNAPSHOT,
-    SubWindowRedrawingFlag::FLOOR_ITEMS,
-    SubWindowRedrawingFlag::FOUND_ITEMS,
-};
-
 enum class StatusRecalculatingFlag {
     BONUS, /*!< 能力値修正 */
     TORCH, /*!< 光源半径 */