OSDN Git Service

[Refactor] #2204 HIT_POINTエイリアスをintに揃えた
[hengbandforosx/hengbandosx.git] / src / object-enchant / object-ego.h
index ef02b8b..714f2a5 100644 (file)
@@ -226,13 +226,16 @@ struct ego_generate_type {
     int mul{}; //<! 確率分子
     int dev{}; //<! 確率分母
     std::vector<tr_type> tr_flags{};
-    std::vector<TRG> trg_flags{};
+    std::vector<ItemGenerationTraitType> trg_flags{};
 };
 
 /*
  * Information about "ego-items".
  */
+enum class RandomArtActType : short;
 struct ego_item_type {
+    EGO_IDX idx{};
+
     std::string name; //!< エゴの名前
     std::string text; //!< フレーバーテキスト
 
@@ -243,11 +246,11 @@ struct ego_item_type {
     RARITY rarity{}; //<! レアリティ
 
     HIT_PROB base_to_h{}; //!< ベース命中修正
-    HIT_POINT base_to_d{}; //!< べ^スダメージ修正
+    int base_to_d{}; //!< べ^スダメージ修正
     ARMOUR_CLASS base_to_a{}; //!< ベースAC修正
 
     HIT_PROB max_to_h{}; //!< 最大ボーナス命中修正
-    HIT_POINT max_to_d{}; //!< 最大ボーナスダメージ修正
+    int max_to_d{}; //!< 最大ボーナスダメージ修正
     ARMOUR_CLASS max_to_a{}; //!< 最大ボーナスAC修正
 
     PARAMETER_VALUE max_pval{}; //!< 最大pval
@@ -255,16 +258,15 @@ struct ego_item_type {
     PRICE cost{}; //!< コスト
 
     TrFlags flags{}; //!< 能力/耐性フラグ
-    EnumClassFlagGroup<TRG> gen_flags; //!< 生成時適用フラグ
+    EnumClassFlagGroup<ItemGenerationTraitType> gen_flags; //!< 生成時適用フラグ
     std::vector<ego_generate_type> xtra_flags{}; //!< 追加能力/耐性フラグ
 
-    IDX act_idx{}; //!< 発動番号 / Activative ability index
+    RandomArtActType act_idx{}; //!< 発動番号 / Activative ability index
 };
 
-extern EGO_IDX max_e_idx;
 extern std::vector<ego_item_type> e_info;
 
-struct object_type;;
-struct player_type;
+class ObjectType;
+class PlayerType;
 byte get_random_ego(byte slot, bool good);
-void apply_ego(object_type *o_ptr, DEPTH lev);
+void apply_ego(ObjectType *o_ptr, DEPTH lev);