OSDN Git Service

#37287 #37353 (2.2.0.89) idx型とhit_prob型を定義し、型の置換を継続中。 / Define typedef idx and hit_pr...
authorDeskull <desull@users.sourceforge.jp>
Sun, 17 Sep 2017 14:37:59 +0000 (23:37 +0900)
committerDeskull <desull@users.sourceforge.jp>
Sun, 17 Sep 2017 14:37:59 +0000 (23:37 +0900)
src/artifact.c
src/effects.c
src/externs.h
src/h-type.h
src/object2.c
src/spells1.c
src/types.h
src/xtra2.c

index 70c75e3..efc85c2 100644 (file)
@@ -1092,17 +1092,18 @@ static void random_misc(object_type * o_ptr)
                case 28:
                case 29:
                {
-                       int bonus_h, bonus_d;
+                       hit_prob bonus_h;
+                       hit_point bonus_d;
                        add_flag(o_ptr->art_flags, TR_SHOW_MODS);
-                       bonus_h = 4 + (randint1(11));
-                       bonus_d = 4 + (randint1(11));
+                       bonus_h = 4 + (hit_prob)(randint1(11));
+                       bonus_d = 4 + (hit_point)(randint1(11));
                        if ((o_ptr->tval != TV_SWORD) && (o_ptr->tval != TV_POLEARM) && (o_ptr->tval != TV_HAFTED) && (o_ptr->tval != TV_DIGGING) && (o_ptr->tval != TV_GLOVES) && (o_ptr->tval != TV_RING))
                        {
                                bonus_h /= 2;
                                bonus_d /= 2;
                        }
-                       o_ptr->to_h += (s16b)bonus_h;
-                       o_ptr->to_d += (s16b)bonus_d;
+                       o_ptr->to_h += bonus_h;
+                       o_ptr->to_d += bonus_d;
                        break;
                }
                case 30:
index fd234d4..feb74d6 100644 (file)
@@ -3652,7 +3652,7 @@ bool set_food(int v)
  */
 bool inc_stat(int stat)
 {
-       int value, gain;
+       base_status value, gain;
 
        /* Then augment the current/max stat */
        value = p_ptr->stat_cur[stat];
index 0203bbc..094f6fd 100644 (file)
@@ -1047,7 +1047,7 @@ extern void apply_magic(object_type *o_ptr, int lev, u32b mode);
 extern bool make_object(object_type *j_ptr, u32b mode);
 extern void place_object(int y, int x, u32b mode);
 extern bool make_gold(object_type *j_ptr);
-extern void place_gold(int y, int x);
+extern void place_gold(position y, position x);
 extern s16b drop_near(object_type *o_ptr, int chance, int y, int x);
 extern void acquirement(int y1, int x1, int num, bool great, bool special, bool known);
 extern void amusement(int y1, int x1, int num, bool known);
@@ -1511,7 +1511,7 @@ extern void gain_level_reward(int chosen_reward);
 extern bool tgt_pt (int *x, int *y);
 extern void do_poly_wounds(void);
 extern void change_race(int new_race, cptr effect_msg);
-extern int mon_damage_mod(monster_type *m_ptr, int dam, bool is_psy_spear);
+extern hit_point mon_damage_mod(monster_type *m_ptr, hit_point dam, bool is_psy_spear);
 extern s16b gain_energy(void);
 extern s16b bow_energy(int sval);
 extern int bow_tmul(int sval);
index a46c90a..9d8b038 100644 (file)
@@ -104,8 +104,10 @@ typedef unsigned long u32b;
 #endif
 
 
+typedef s16b idx;                      /*!< ゲーム中のID型を定義 */
 typedef byte position;         /*!< ゲーム中の座標型を定義 */
 typedef s16b hit_point;                /*!< ゲーム中のHP/ダメージ型を定義 */
+typedef s16b hit_prob;         /*!< ゲーム中の命中修正値を定義 */
 typedef s16b base_status;      /*!< ゲーム中の基礎能力値型を定義 */
 
 
index 6ad80bc..b51a646 100644 (file)
@@ -2285,11 +2285,11 @@ static byte get_random_ego(byte slot, bool good)
  */
 static void a_m_aux_1(object_type *o_ptr, int level, int power)
 {
-       int tohit1 = randint1(5) + m_bonus(5, level);
-       int todam1 = randint1(5) + m_bonus(5, level);
+       hit_prob tohit1 = randint1(5) + m_bonus(5, level);
+       hit_point todam1 = randint1(5) + m_bonus(5, level);
 
-       int tohit2 = m_bonus(10, level);
-       int todam2 = m_bonus(10, level);
+       hit_prob tohit2 = m_bonus(10, level);
+       hit_point todam2 = m_bonus(10, level);
 
        if ((o_ptr->tval == TV_BOLT) || (o_ptr->tval == TV_ARROW) || (o_ptr->tval == TV_SHOT))
        {
@@ -4841,9 +4841,9 @@ bool make_object(object_type *j_ptr, u32b mode)
  * This routine uses "object_level" for the "generation level".\n
  * This routine requires a clean floor grid destination.\n
  */
-void place_object(int y, int x, u32b mode)
+void place_object(position y, position x, u32b mode)
 {
-       s16b o_idx;
+       idx o_idx;
 
        /* Acquire grid */
        cave_type *c_ptr = &cave[y][x];
@@ -4966,7 +4966,7 @@ bool make_gold(object_type *j_ptr)
  * @details
  * The location must be a legal, clean, floor grid.
  */
-void place_gold(int y, int x)
+void place_gold(position y, position x)
 {
        s16b o_idx;
 
index be3274f..b02889d 100644 (file)
@@ -1585,7 +1585,7 @@ static bool project_o(int who, int r, int y, int x, int dam, int typ)
  * "flg" was added.
  * </pre>
  */
-static bool project_m(int who, int r, int y, int x, int dam, int typ, int flg, bool see_s_msg)
+static bool project_m(int who, int r, int y, int x, hit_point dam, int typ, int flg, bool see_s_msg)
 {
        int tmp;
 
index 3601e6a..b5840e8 100644 (file)
@@ -518,10 +518,10 @@ typedef struct object_type object_type;
 
 struct object_type
 {
-       s16b k_idx;                     /* Kind index (zero if "dead") */
+       idx k_idx;                      /* Kind index (zero if "dead") */
 
-       byte iy;                        /* Y-position on map, or zero */
-       byte ix;                        /* X-position on map, or zero */
+       position iy;                    /* Y-position on map, or zero */
+       position ix;                    /* X-position on map, or zero */
 
        byte tval;                      /* Item type (from kind) */
        byte sval;                      /* Item sub-type (from kind) */
@@ -543,8 +543,8 @@ struct object_type
        s16b xtra4;                     /* Extra info fuel or captured monster's current HP */
        s16b xtra5;                     /* Extra info captured monster's max HP */
 
-       s16b to_h;                      /* Plusses to hit */
-       s16b to_d;                      /* Plusses to damage */
+       hit_prob to_h;                  /* Plusses to hit */
+       hit_point to_d;                 /* Plusses to damage */
        s16b to_a;                      /* Plusses to AC */
 
        s16b ac;                        /* Normal AC */
index 55a44ed..9191fe4 100644 (file)
@@ -1436,7 +1436,7 @@ void monster_death(int m_idx, bool drop_item)
  * "type" is not yet used and should be 0.
  * </pre>
  */
-int mon_damage_mod(monster_type *m_ptr, int dam, bool is_psy_spear)
+hit_point mon_damage_mod(monster_type *m_ptr, hit_point dam, bool is_psy_spear)
 {
        monster_race    *r_ptr = &r_info[m_ptr->r_idx];