OSDN Git Service

[Refactor] 番号指定の必要のない列挙値を自動的に割り振る
authorHabu <habu1010+github@gmail.com>
Mon, 13 Sep 2021 13:12:16 +0000 (22:12 +0900)
committerHabu <habu1010+github@gmail.com>
Tue, 14 Sep 2021 20:56:04 +0000 (05:56 +0900)
SmithEffect::ATTACK/AC/SUSTAIN は、鍛冶師の銘付きアイテムにする
鍛冶ではないので、列挙値の番号を保存することがない。
SAVE_EFFECT_MAX の後ろに置き、明示的な番号の割り振りをしない
ようにすることで自動的に保存範囲外の番号が割り当てられるようにする。

src/object-enchant/smith-types.h

index 8d50e36..b692d0a 100644 (file)
@@ -126,11 +126,13 @@ enum class SmithEffect {
     RESISTANCE = 220, //!< 全耐性
     SLAY_GLOVE = 221, //!< 殺戮の小手
 
-    ATTACK = 250, //!< 命中/ダメージ強化
-    AC = 251, //!< AC強化
-    SUSTAIN = 252, //!< 装備保持
+    SAVE_EFFECT_MAX = 256, //!< 鍛冶師の銘付きアイテムに付与された鍛冶効果の保存領域が1バイトなので、この値未満を割り当てる必要あり
 
-    MAX = 256, //!< 鍛冶アイテムの保存領域が1バイトなので、この値未満を割り当てる必要あり
+    //! @note これ以降は鍛冶師の銘付きアイテムになる鍛冶効果ではないので、効果番号を保存しなくてよい。
+    //  鍛冶効果のリストを管理するためだけのものである。したがって SAVE_EFFECT_MAX 以降に自動的に番号の割り振りを行う
+    ATTACK, //!< 命中/ダメージ強化
+    AC, //!< AC強化
+    SUSTAIN, //!< 装備保持
 };
 
 /**