OSDN Git Service

#37287 #37353 (2.2.0.89) 型の置換を継続中。 / Ongoing type replacement.
[hengband/hengband.git] / src / spells2.c
index 3d644ae..1c7715e 100644 (file)
@@ -109,52 +109,52 @@ void self_knowledge(void)
        info[i++] = buf[1];
        for (v_nr = 0; v_nr < 8; v_nr++)
        {
-               char v_name [20];
+               char vir_name [20];
                char vir_desc[80];
                int tester = p_ptr->virtues[v_nr];
        
-               strcpy(v_name, virtue[(p_ptr->vir_types[v_nr])-1]);
+               strcpy(vir_name, virtue[(p_ptr->vir_types[v_nr])-1]);
  
-               sprintf(vir_desc, _("おっと。%sの情報なし。", "Oops. No info about %s."), v_name);
+               sprintf(vir_desc, _("おっと。%sの情報なし。", "Oops. No info about %s."), vir_name);
                if (tester < -100)
                        sprintf(vir_desc, _("[%s]の対極 (%d)", "You are the polar opposite of %s (%d)."),
-                               v_name, tester);
+                               vir_name, tester);
                else if (tester < -80)
                        sprintf(vir_desc, _("[%s]の大敵 (%d)", "You are an arch-enemy of %s (%d)."),
-                               v_name, tester);
+                               vir_name, tester);
                else if (tester < -60)
                        sprintf(vir_desc, _("[%s]の強敵 (%d)", "You are a bitter enemy of %s (%d)."),
-                               v_name, tester);
+                               vir_name, tester);
                else if (tester < -40)
                        sprintf(vir_desc, _("[%s]の敵 (%d)", "You are an enemy of %s (%d)."),
-                               v_name, tester);
+                               vir_name, tester);
                else if (tester < -20)
                        sprintf(vir_desc, _("[%s]の罪者 (%d)", "You have sinned against %s (%d)."),
-                               v_name, tester);
+                               vir_name, tester);
                else if (tester < 0)
                        sprintf(vir_desc, _("[%s]の迷道者 (%d)", "You have strayed from the path of %s (%d)."),
-                               v_name, tester);
+                               vir_name, tester);
                else if (tester == 0)
                        sprintf(vir_desc, _("[%s]の中立者 (%d)", "You are neutral to %s (%d)."),
-                               v_name, tester);
+                               vir_name, tester);
                else if (tester < 20)
                        sprintf(vir_desc, _("[%s]の小徳者 (%d)", "You are somewhat virtuous in %s (%d)."),
-                               v_name, tester);
+                               vir_name, tester);
                else if (tester < 40)
                        sprintf(vir_desc, _("[%s]の中徳者 (%d)", "You are virtuous in %s (%d)."),
-                               v_name, tester);
+                               vir_name, tester);
                else if (tester < 60)
                        sprintf(vir_desc, _("[%s]の高徳者 (%d)", "You are very virtuous in %s (%d)."),
-                               v_name, tester);
+                               vir_name, tester);
                else if (tester < 80)
                        sprintf(vir_desc, _("[%s]の覇者 (%d)", "You are a champion of %s (%d)."),
-                               v_name, tester);
+                               vir_name, tester);
                else if (tester < 100)
                        sprintf(vir_desc, _("[%s]の偉大な覇者 (%d)", "You are a great champion of %s (%d)."),
-                               v_name, tester);
+                               vir_name, tester);
                else
                        sprintf(vir_desc, _("[%s]の具現者 (%d)", "You are the living embodiment of %s (%d)."),
-               v_name, tester);
+                               vir_name, tester);
        
                strcpy(v_string[v_nr], vir_desc);
        
@@ -1821,7 +1821,7 @@ void report_magics(void)
  * @param known 地形から危険フラグを外すならTRUE
  * @return 効力があった場合TRUEを返す
  */
-static bool detect_feat_flag(int range, int flag, bool known)
+static bool detect_feat_flag(POSITION range, int flag, bool known)
 {
        int       x, y;
        bool      detect = FALSE;
@@ -1884,7 +1884,7 @@ static bool detect_feat_flag(int range, int flag, bool known)
  * @param known 感知外範囲を超える警告フラグを立てる場合TRUEを返す
  * @return 効力があった場合TRUEを返す
  */
-bool detect_traps(int range, bool known)
+bool detect_traps(POSITION range, bool known)
 {
        bool detect = detect_feat_flag(range, FF_TRAP, known);
 
@@ -1908,7 +1908,7 @@ bool detect_traps(int range, bool known)
  * @param range 効果範囲
  * @return 効力があった場合TRUEを返す
  */
-bool detect_doors(int range)
+bool detect_doors(POSITION range)
 {
        bool detect = detect_feat_flag(range, FF_DOOR, TRUE);
 
@@ -1930,7 +1930,7 @@ bool detect_doors(int range)
  * @param range 効果範囲
  * @return 効力があった場合TRUEを返す
  */
-bool detect_stairs(int range)
+bool detect_stairs(POSITION range)
 {
        bool detect = detect_feat_flag(range, FF_STAIRS, TRUE);
 
@@ -1952,7 +1952,7 @@ bool detect_stairs(int range)
  * @param range 効果範囲
  * @return 効力があった場合TRUEを返す
  */
-bool detect_treasure(int range)
+bool detect_treasure(POSITION range)
 {
        bool detect = detect_feat_flag(range, FF_HAS_GOLD, TRUE);
 
@@ -1974,10 +1974,10 @@ bool detect_treasure(int range)
  * @param range 効果範囲
  * @return 効力があった場合TRUEを返す
  */
-bool detect_objects_gold(int range)
+bool detect_objects_gold(POSITION range)
 {
        int i, y, x;
-       int range2 = range;
+       POSITION range2 = range;
 
        bool detect = FALSE;
 
@@ -2038,10 +2038,10 @@ bool detect_objects_gold(int range)
  * @param range 効果範囲
  * @return 効力があった場合TRUEを返す
  */
-bool detect_objects_normal(int range)
+bool detect_objects_normal(POSITION range)
 {
        int i, y, x;
-       int range2 = range;
+       POSITION range2 = range;
 
        bool detect = FALSE;
 
@@ -2110,7 +2110,7 @@ bool detect_objects_normal(int range)
  * It can probably be argued that this function is now too powerful.
  * </pre>
  */
-bool detect_objects_magic(int range)
+bool detect_objects_magic(POSITION range)
 {
        int i, y, x, tv;
 
@@ -2192,9 +2192,10 @@ bool detect_objects_magic(int range)
  * @param range 効果範囲
  * @return 効力があった場合TRUEを返す
  */
-bool detect_monsters_normal(int range)
+bool detect_monsters_normal(POSITION range)
 {
-       int i, y, x;
+       MONSTER_IDX i;
+       POSITION y, x;
 
        bool flag = FALSE;
 
@@ -2252,9 +2253,10 @@ bool detect_monsters_normal(int range)
  * @param range 効果範囲
  * @return 効力があった場合TRUEを返す
  */
-bool detect_monsters_invis(int range)
+bool detect_monsters_invis(POSITION range)
 {
-       int i, y, x;
+       MONSTER_IDX i;
+       POSITION y, x;
        bool flag = FALSE;
 
        if (d_info[dungeon_type].flags1 & DF1_DARKNESS) range /= 3;
@@ -2317,9 +2319,10 @@ bool detect_monsters_invis(int range)
  * @param range 効果範囲
  * @return 効力があった場合TRUEを返す
  */
-bool detect_monsters_evil(int range)
+bool detect_monsters_evil(POSITION range)
 {
-       int i, y, x;
+       MONSTER_IDX i;
+       POSITION y, x;
        bool flag = FALSE;
 
        if (d_info[dungeon_type].flags1 & DF1_DARKNESS) range /= 3;
@@ -2386,10 +2389,11 @@ bool detect_monsters_evil(int range)
  * @param range 効果範囲
  * @return 効力があった場合TRUEを返す
  */
-bool detect_monsters_nonliving(int range)
+bool detect_monsters_nonliving(POSITION range)
 {
-       int     i, y, x;
-       bool    flag = FALSE;
+       MONSTER_IDX i;
+       POSITION y, x;
+       bool flag = FALSE;
 
        if (d_info[dungeon_type].flags1 & DF1_DARKNESS) range /= 3;
 
@@ -2449,9 +2453,10 @@ bool detect_monsters_nonliving(int range)
  * @param range 効果範囲
  * @return 効力があった場合TRUEを返す
  */
-bool detect_monsters_mind(int range)
+bool detect_monsters_mind(POSITION range)
 {
-       int     i, y, x;
+       MONSTER_IDX i;
+       POSITION y, x;
        bool    flag = FALSE;
 
        if (d_info[dungeon_type].flags1 & DF1_DARKNESS) range /= 3;
@@ -2514,9 +2519,10 @@ bool detect_monsters_mind(int range)
  * @param Match 対応シンボルの混じったモンスター文字列(複数指定化)
  * @return 効力があった場合TRUEを返す
  */
-bool detect_monsters_string(int range, cptr Match)
+bool detect_monsters_string(POSITION range, cptr Match)
 {
-       int i, y, x;
+       MONSTER_IDX i;
+       POSITION y, x;
        bool flag = FALSE;
 
        if (d_info[dungeon_type].flags1 & DF1_DARKNESS) range /= 3;
@@ -2580,9 +2586,10 @@ bool detect_monsters_string(int range, cptr Match)
  * @param match_flag 感知フラグ
  * @return 効力があった場合TRUEを返す
  */
-bool detect_monsters_xxx(int range, u32b match_flag)
+bool detect_monsters_xxx(POSITION range, u32b match_flag)
 {
-       int  i, y, x;
+       MONSTER_IDX i;
+       POSITION y, x;
        bool flag = FALSE;
        cptr desc_monsters = _("変なモンスター", "weird monsters");
 
@@ -2662,7 +2669,7 @@ bool detect_monsters_xxx(int range, u32b match_flag)
  * @param range 効果範囲
  * @return 効力があった場合TRUEを返す
  */
-bool detect_all(int range)
+bool detect_all(POSITION range)
 {
        bool detect = FALSE;
 
@@ -2697,7 +2704,7 @@ bool detect_all(int range)
  * this is done in two passes. -- JDL
  * </pre>
  */
-bool project_hack(int typ, int dam)
+bool project_hack(int typ, HIT_POINT dam)
 {
        int     i, x, y;
        int     flg = PROJECT_JUMP | PROJECT_KILL | PROJECT_HIDE;
@@ -2799,7 +2806,7 @@ bool turn_undead(void)
  * @brief 視界内のアンデッド・モンスターにダメージを与える処理 / Dispel undead monsters
  * @return 効力があった場合TRUEを返す
  */
-bool dispel_undead(int dam)
+bool dispel_undead(HIT_POINT dam)
 {
        bool tester = (project_hack(GF_DISP_UNDEAD, dam));
        if (tester)
@@ -2811,7 +2818,7 @@ bool dispel_undead(int dam)
  * @brief 視界内の邪悪なモンスターにダメージを与える処理 / Dispel evil monsters
  * @return 効力があった場合TRUEを返す
  */
-bool dispel_evil(int dam)
+bool dispel_evil(HIT_POINT dam)
 {
        return (project_hack(GF_DISP_EVIL, dam));
 }
@@ -2820,7 +2827,7 @@ bool dispel_evil(int dam)
  * @brief 視界内の善良なモンスターにダメージを与える処理 / Dispel good monsters
  * @return 効力があった場合TRUEを返す
  */
-bool dispel_good(int dam)
+bool dispel_good(HIT_POINT dam)
 {
        return (project_hack(GF_DISP_GOOD, dam));
 }
@@ -2829,7 +2836,7 @@ bool dispel_good(int dam)
  * @brief 視界内のあらゆるモンスターにダメージを与える処理 / Dispel all monsters
  * @return 効力があった場合TRUEを返す
  */
-bool dispel_monsters(int dam)
+bool dispel_monsters(HIT_POINT dam)
 {
        return (project_hack(GF_DISP_ALL, dam));
 }
@@ -2838,7 +2845,7 @@ bool dispel_monsters(int dam)
  * @brief 視界内の生命のあるモンスターにダメージを与える処理 / Dispel 'living' monsters
  * @return 効力があった場合TRUEを返す
  */
-bool dispel_living(int dam)
+bool dispel_living(HIT_POINT dam)
 {
        return (project_hack(GF_DISP_LIVING, dam));
 }
@@ -2847,7 +2854,7 @@ bool dispel_living(int dam)
  * @brief 視界内の悪魔系モンスターにダメージを与える処理 / Dispel 'living' monsters
  * @return 効力があった場合TRUEを返す
  */
-bool dispel_demons(int dam)
+bool dispel_demons(HIT_POINT dam)
 {
        return (project_hack(GF_DISP_DEMON, dam));
 }
@@ -2866,9 +2873,9 @@ bool crusade(void)
  * @param who 怒らせる原因を起こしたモンスター(0ならばプレイヤー)
  * @return なし
  */
-void aggravate_monsters(int who)
+void aggravate_monsters(MONSTER_IDX who)
 {
-       int     i;
+       MONSTER_IDX i;
        bool    sleep = FALSE;
        bool    speed = FALSE;
 
@@ -2929,7 +2936,7 @@ void aggravate_monsters(int who)
  * @param spell_name 抹殺効果を起こした魔法の名前
  * @return 効力があった場合TRUEを返す
  */
-bool genocide_aux(int m_idx, int power, bool player_cast, int dam_side, cptr spell_name)
+bool genocide_aux(MONSTER_IDX m_idx, int power, bool player_cast, int dam_side, cptr spell_name)
 {
        int          msec = delay_factor * delay_factor * delay_factor;
        monster_type *m_ptr = &m_list[m_idx];
@@ -3030,7 +3037,7 @@ bool genocide_aux(int m_idx, int power, bool player_cast, int dam_side, cptr spe
  */
 bool symbol_genocide(int power, bool player_cast)
 {
-       int  i;
+       MONSTER_IDX i;
        char typ;
        bool result = FALSE;
 
@@ -3077,7 +3084,7 @@ bool symbol_genocide(int power, bool player_cast)
  */
 bool mass_genocide(int power, bool player_cast)
 {
-       int  i;
+       MONSTER_IDX i;
        bool result = FALSE;
 
        /* Prevent mass genocide in quest levels */
@@ -3119,7 +3126,7 @@ bool mass_genocide(int power, bool player_cast)
  */
 bool mass_genocide_undead(int power, bool player_cast)
 {
-       int  i;
+       MONSTER_IDX i;
        bool result = FALSE;
 
        /* Prevent mass genocide in quest levels */
@@ -3233,11 +3240,9 @@ bool probing(void)
 #endif
 
                        /* Describe the monster */
-#ifdef JP
-sprintf(buf,"%s ... 属性:%s HP:%d/%d AC:%d 速度:%s%d 経験:", m_name, align, m_ptr->hp, m_ptr->maxhp, r_ptr->ac, (speed > 0) ? "+" : "", speed);
-#else
-sprintf(buf, "%s ... align:%s HP:%d/%d AC:%d speed:%s%d exp:", m_name, align, m_ptr->hp, m_ptr->maxhp, r_ptr->ac, (speed > 0) ? "+" : "", speed);
-#endif
+                       sprintf(buf,_("%s ... 属性:%s HP:%d/%d AC:%d 速度:%s%d 経験:", "%s ... align:%s HP:%d/%d AC:%d speed:%s%d exp:"),
+                               m_name, align, (int)m_ptr->hp, (int)m_ptr->maxhp, r_ptr->ac, (speed > 0) ? "+" : "", speed);
+
                        if (r_ptr->next_r_idx)
                        {
                                strcat(buf, format("%d/%d ", m_ptr->exp, r_ptr->next_exp));
@@ -3276,8 +3281,6 @@ sprintf(buf, "%s ... align:%s HP:%d/%d AC:%d speed:%s%d exp:", m_name, align, m_
                        /* Learn everything about this monster */
                        if (lore_do_probe(m_ptr->r_idx))
                        {
-                               char buf[80];
-
                                /* Get base name of monster */
                                strcpy(buf, (r_name + r_ptr->name));
 
@@ -3628,11 +3631,12 @@ bool destroy_area(int y1, int x1, int r, bool in_generate)
  * This has allowed massive simplification of the "monster" code.
  * </pre>
  */
-bool earthquake_aux(int cy, int cx, int r, int m_idx)
+bool earthquake_aux(int cy, int cx, int r, MONSTER_IDX m_idx)
 {
        int             i, t, y, x, yy, xx, dy, dx;
        int             damage = 0;
-       int             sn = 0, sy = 0, sx = 0;
+       int             sn = 0;
+       POSITION        sy = 0, sx = 0;
        bool            hurt = FALSE;
        cave_type       *c_ptr;
        bool            map[32][32];
@@ -3930,13 +3934,13 @@ bool earthquake_aux(int cy, int cx, int r, int m_idx)
                                        /* Hack -- Escape from the rock */
                                        if (sn)
                                        {
-                                               int m_idx = cave[yy][xx].m_idx;
+                                               IDX m_idx_aux = cave[yy][xx].m_idx;
 
                                                /* Update the old location */
                                                cave[yy][xx].m_idx = 0;
 
                                                /* Update the new location */
-                                               cave[sy][sx].m_idx = m_idx;
+                                               cave[sy][sx].m_idx = m_idx_aux;
 
                                                /* Move the monster */
                                                m_ptr->fy = sy;
@@ -4102,7 +4106,7 @@ bool earthquake(int cy, int cx, int r)
  */
 void discharge_minion(void)
 {
-       int i;
+       MONSTER_IDX i;
        bool okay = TRUE;
 
        for (i = 1; i < m_max; i++)
@@ -4118,7 +4122,7 @@ void discharge_minion(void)
        }
        for (i = 1; i < m_max; i++)
        {
-               int dam;
+               HIT_POINT dam;
                monster_type *m_ptr = &m_list[i];
                monster_race *r_ptr;
 
@@ -4588,7 +4592,7 @@ void unlite_room(int y1, int x1)
  * @param rad 効果半径
  * @return 作用が実際にあった場合TRUEを返す
  */
-bool lite_area(int dam, int rad)
+bool lite_area(HIT_POINT dam, int rad)
 {
        int flg = PROJECT_GRID | PROJECT_KILL;
 
@@ -4621,7 +4625,7 @@ bool lite_area(int dam, int rad)
  * @param rad 効果半径
  * @return 作用が実際にあった場合TRUEを返す
  */
-bool unlite_area(int dam, int rad)
+bool unlite_area(HIT_POINT dam, int rad)
 {
        int flg = PROJECT_GRID | PROJECT_KILL;
 
@@ -4657,7 +4661,7 @@ bool unlite_area(int dam, int rad)
  * Affect grids, objects, and monsters
  * </pre>
  */
-bool fire_ball(int typ, int dir, int dam, int rad)
+bool fire_ball(int typ, int dir, HIT_POINT dam, int rad)
 {
        int tx, ty;
 
@@ -4696,7 +4700,7 @@ bool fire_ball(int typ, int dir, int dam, int rad)
  * Affect grids, objects, and monsters
  * </pre>
  */
-bool fire_rocket(int typ, int dir, int dam, int rad)
+bool fire_rocket(int typ, int dir, HIT_POINT dam, int rad)
 {
        int tx, ty;
 
@@ -4732,7 +4736,7 @@ bool fire_rocket(int typ, int dir, int dam, int rad)
  * Affect grids, objects, and monsters
  * </pre>
  */
-bool fire_ball_hide(int typ, int dir, int dam, int rad)
+bool fire_ball_hide(int typ, int dir, HIT_POINT dam, int rad)
 {
        int tx, ty;
 
@@ -4773,7 +4777,7 @@ bool fire_ball_hide(int typ, int dir, int dam, int rad)
  * Option to hurt the player.
  * </pre>
  */
-bool fire_meteor(int who, int typ, int y, int x, int dam, int rad)
+bool fire_meteor(int who, int typ, int y, int x, HIT_POINT dam, int rad)
 {
        int flg = PROJECT_STOP | PROJECT_GRID | PROJECT_ITEM | PROJECT_KILL;
 
@@ -4924,7 +4928,7 @@ bool teleport_swap(int dir)
  * @param flg フラグ
  * @return 作用が実際にあった場合TRUEを返す
  */
-bool project_hook(int typ, int dir, int dam, int flg)
+bool project_hook(int typ, int dir, HIT_POINT dam, int flg)
 {
        int tx, ty;
 
@@ -4959,7 +4963,7 @@ bool project_hook(int typ, int dir, int dam, int flg)
  * Affect monsters and grids (not objects).
  * </pre>
  */
-bool fire_bolt(int typ, int dir, int dam)
+bool fire_bolt(int typ, int dir, HIT_POINT dam)
 {
        int flg = PROJECT_STOP | PROJECT_KILL | PROJECT_GRID;
        if (typ != GF_ARROW) flg |= PROJECT_REFLECTABLE;
@@ -4979,7 +4983,7 @@ bool fire_bolt(int typ, int dir, int dam)
  * Affect monsters, grids and objects.
  * </pre>
  */
-bool fire_beam(int typ, int dir, int dam)
+bool fire_beam(int typ, int dir, HIT_POINT dam)
 {
        int flg = PROJECT_BEAM | PROJECT_KILL | PROJECT_GRID | PROJECT_ITEM;
        return (project_hook(typ, dir, dam, flg));
@@ -4999,7 +5003,7 @@ bool fire_beam(int typ, int dir, int dam)
  * Affect monsters, grids and objects.
  * </pre>
  */
-bool fire_bolt_or_beam(int prob, int typ, int dir, int dam)
+bool fire_bolt_or_beam(int prob, int typ, int dir, HIT_POINT dam)
 {
        if (randint0(100) < prob)
        {
@@ -5017,7 +5021,7 @@ bool fire_bolt_or_beam(int prob, int typ, int dir, int dam)
  * @param dam 威力
  * @return 作用が実際にあった場合TRUEを返す
  */
-bool lite_line(int dir, int dam)
+bool lite_line(int dir, HIT_POINT dam)
 {
        int flg = PROJECT_BEAM | PROJECT_GRID | PROJECT_KILL;
        return (project_hook(GF_LITE_WEAK, dir, dam, flg));
@@ -5029,7 +5033,7 @@ bool lite_line(int dir, int dam)
  * @param dam 威力
  * @return 作用が実際にあった場合TRUEを返す
  */
-bool drain_life(int dir, int dam)
+bool drain_life(int dir, HIT_POINT dam)
 {
        int flg = PROJECT_STOP | PROJECT_KILL | PROJECT_REFLECTABLE;
        return (project_hook(GF_OLD_DRAIN, dir, dam, flg));
@@ -5041,7 +5045,7 @@ bool drain_life(int dir, int dam)
  * @param dam 威力
  * @return 作用が実際にあった場合TRUEを返す
  */
-bool wall_to_mud(int dir, int dam)
+bool wall_to_mud(int dir, HIT_POINT dam)
 {
        int flg = PROJECT_BEAM | PROJECT_GRID | PROJECT_ITEM | PROJECT_KILL;
        return (project_hook(GF_KILL_WALL, dir, dam, flg));
@@ -5086,7 +5090,7 @@ bool disarm_trap(int dir)
  * @param dam 威力
  * @return 作用が実際にあった場合TRUEを返す
  */
-bool heal_monster(int dir, int dam)
+bool heal_monster(int dir, HIT_POINT dam)
 {
        int flg = PROJECT_STOP | PROJECT_KILL | PROJECT_REFLECTABLE;
        return (project_hook(GF_OLD_HEAL, dir, dam, flg));
@@ -5335,7 +5339,7 @@ bool sleep_monsters_touch(void)
  * @param x 起点X座標
  * @return 作用が実際にあった場合TRUEを返す
  */
-bool animate_dead(int who, int y, int x)
+bool animate_dead(MONSTER_IDX who, POSITION y, POSITION x)
 {
        int flg = PROJECT_ITEM | PROJECT_HIDE;
        return (project(who, 5, y, x, 0, GF_ANIM_DEAD, flg, -1));
@@ -5356,7 +5360,7 @@ void call_chaos(void)
                GF_ELEC,      GF_POIS,    GF_ACID,    GF_COLD,
                GF_FIRE,      GF_MISSILE, GF_ARROW,   GF_PLASMA,
                GF_HOLY_FIRE, GF_WATER,   GF_LITE,    GF_DARK,
-               GF_FORCE,     GF_INERTIA, GF_MANA,    GF_METEOR,
+               GF_FORCE,     GF_INERTIAL, GF_MANA,    GF_METEOR,
                GF_ICE,       GF_CHAOS,   GF_NETHER,  GF_DISENCHANT,
                GF_SHARDS,    GF_SOUND,   GF_NEXUS,   GF_CONFUSION,
                GF_TIME,      GF_GRAVITY, GF_ROCKET,  GF_NUKE,
@@ -5424,7 +5428,7 @@ bool activate_ty_curse(bool stop_ty, int *count)
                case 30: case 31:
                        if (!(*count))
                        {
-                               int dam = damroll(10, 10);
+                               HIT_POINT dam = damroll(10, 10);
                                msg_print(_("純粋な魔力の次元への扉が開いた!", "A portal opens to a plane of raw mana!"));
                                project(0, 8, p_ptr->y, p_ptr->x, dam, GF_MANA, flg, -1);
                                take_hit(DAMAGE_NOESCAPE, dam, _("純粋な魔力の解放", "released pure mana"), -1);
@@ -5518,11 +5522,11 @@ bool activate_ty_curse(bool stop_ty, int *count)
  * @param can_pet プレイヤーのペットとなる可能性があるならばTRUEにする
  * @return 作用が実際にあった場合TRUEを返す
  */
-int activate_hi_summon(int y, int x, bool can_pet)
+int activate_hi_summon(POSITION y, POSITION x, bool can_pet)
 {
        int i;
        int count = 0;
-       int summon_lev;
+       DEPTH summon_lev;
        u32b mode = PM_ALLOW_GROUP;
        bool pet = FALSE;
 
@@ -5607,7 +5611,7 @@ int activate_hi_summon(int y, int x, bool can_pet)
  * @param x 召喚位置X座標
  * @return 作用が実際にあった場合TRUEを返す
  */
-int summon_cyber(int who, int y, int x)
+int summon_cyber(MONSTER_IDX who, POSITION y, POSITION x)
 {
        int i;
        int max_cyber = (easy_band ? 1 : (dun_level / 50) + randint1(2));
@@ -5638,7 +5642,7 @@ int summon_cyber(int who, int y, int x)
 void wall_breaker(void)
 {
        int i;
-       int y = 0, x = 0;
+       POSITION y = 0, x = 0;
        int attempts = 1000;
 
        if (randint1(80 + p_ptr->lev) < 70)
@@ -5684,7 +5688,7 @@ void wall_breaker(void)
  * @param dam 効力
  * @return 作用が実際にあった場合TRUEを返す
  */
-bool confuse_monsters(int dam)
+bool confuse_monsters(HIT_POINT dam)
 {
        return (project_hack(GF_OLD_CONF, dam));
 }
@@ -5695,7 +5699,7 @@ bool confuse_monsters(int dam)
  * @param dam 効力
  * @return 作用が実際にあった場合TRUEを返す
  */
-bool charm_monsters(int dam)
+bool charm_monsters(HIT_POINT dam)
 {
        return (project_hack(GF_CHARM, dam));
 }
@@ -5706,7 +5710,7 @@ bool charm_monsters(int dam)
  * @param dam 効力
  * @return 作用が実際にあった場合TRUEを返す
  */
-bool charm_animals(int dam)
+bool charm_animals(HIT_POINT dam)
 {
        return (project_hack(GF_CONTROL_ANIMAL, dam));
 }
@@ -5717,7 +5721,7 @@ bool charm_animals(int dam)
  * @param dam 効力
  * @return 作用が実際にあった場合TRUEを返す
  */
-bool stun_monsters(int dam)
+bool stun_monsters(HIT_POINT dam)
 {
        return (project_hack(GF_STUN, dam));
 }
@@ -5728,7 +5732,7 @@ bool stun_monsters(int dam)
  * @param dam 効力
  * @return 作用が実際にあった場合TRUEを返す
  */
-bool stasis_monsters(int dam)
+bool stasis_monsters(HIT_POINT dam)
 {
        return (project_hack(GF_STASIS, dam));
 }
@@ -5739,7 +5743,7 @@ bool stasis_monsters(int dam)
  * @param dam 効力
  * @return 作用が実際にあった場合TRUEを返す
  */
-bool mindblast_monsters(int dam)
+bool mindblast_monsters(HIT_POINT dam)
 {
        return (project_hack(GF_PSI, dam));
 }
@@ -5761,7 +5765,7 @@ bool banish_monsters(int dist)
  * @param dam 効力
  * @return 作用が実際にあった場合TRUEを返す
  */
-bool turn_evil(int dam)
+bool turn_evil(HIT_POINT dam)
 {
        return (project_hack(GF_TURN_EVIL, dam));
 }
@@ -5772,7 +5776,7 @@ bool turn_evil(int dam)
  * @param dam 効力
  * @return 作用が実際にあった場合TRUEを返す
  */
-bool turn_monsters(int dam)
+bool turn_monsters(HIT_POINT dam)
 {
        return (project_hack(GF_TURN_ALL, dam));
 }