OSDN Git Service

[Refactor] #38997 fire_ball_hide() に player_type * 引数を追加. / Add player_type * argumen...
authordeskull <deskull@users.sourceforge.jp>
Wed, 1 Jan 2020 12:43:30 +0000 (21:43 +0900)
committerdeskull <deskull@users.sourceforge.jp>
Wed, 1 Jan 2020 12:43:30 +0000 (21:43 +0900)
12 files changed:
src/cmd/cmd-mane.c
src/cmd/cmd-zapwand.c
src/mspells3.c
src/mspells4.c
src/racial.c
src/realm-daemon.c
src/realm-death.c
src/realm-life.c
src/spells-status.c
src/spells.h
src/spells2.c
src/trap.c

index 49dac74..c3fef4b 100644 (file)
@@ -525,31 +525,31 @@ static bool use_mane(player_type *caster_ptr, int spell)
                break;
        case MS_DRAIN_MANA:
                if (!get_aim_dir(&dir)) return FALSE;
-               fire_ball_hide(GF_DRAIN_MANA, dir, randint1(plev*3)+plev, 0);
+               fire_ball_hide(caster_ptr, GF_DRAIN_MANA, dir, randint1(plev*3)+plev, 0);
                break;
        case MS_MIND_BLAST:
                if (!get_aim_dir(&dir)) return FALSE;
-               fire_ball_hide(GF_MIND_BLAST, dir, damage, 0);
+               fire_ball_hide(caster_ptr, GF_MIND_BLAST, dir, damage, 0);
                break;
        case MS_BRAIN_SMASH:
                if (!get_aim_dir(&dir)) return FALSE;
-               fire_ball_hide(GF_BRAIN_SMASH, dir, damage, 0);
+               fire_ball_hide(caster_ptr, GF_BRAIN_SMASH, dir, damage, 0);
                break;
        case MS_CAUSE_1:
                if (!get_aim_dir(&dir)) return FALSE;
-               fire_ball_hide(GF_CAUSE_1, dir, damage, 0);
+               fire_ball_hide(caster_ptr, GF_CAUSE_1, dir, damage, 0);
                break;
        case MS_CAUSE_2:
                if (!get_aim_dir(&dir)) return FALSE;
-               fire_ball_hide(GF_CAUSE_2, dir, damage, 0);
+               fire_ball_hide(caster_ptr, GF_CAUSE_2, dir, damage, 0);
                break;
        case MS_CAUSE_3:
                if (!get_aim_dir(&dir)) return FALSE;
-               fire_ball_hide(GF_CAUSE_3, dir, damage, 0);
+               fire_ball_hide(caster_ptr, GF_CAUSE_3, dir, damage, 0);
                break;
        case MS_CAUSE_4:
                if (!get_aim_dir(&dir)) return FALSE;
-               fire_ball_hide(GF_CAUSE_4, dir, damage, 0);
+               fire_ball_hide(caster_ptr, GF_CAUSE_4, dir, damage, 0);
                break;
        case MS_BOLT_ACID:
                if (!get_aim_dir(&dir)) return FALSE;
@@ -649,7 +649,7 @@ static bool use_mane(player_type *caster_ptr, int spell)
                if (!get_aim_dir(&dir)) return FALSE;
                else msg_print(_("<破滅の手>を放った!", "You invoke the Hand of Doom!"));
 
-               fire_ball_hide(GF_HAND_DOOM, dir, 200, 0);
+               fire_ball_hide(caster_ptr, GF_HAND_DOOM, dir, 200, 0);
                break;
        }
        case MS_HEAL:
index 8249086..eda2b5a 100644 (file)
@@ -298,7 +298,7 @@ bool wand_effect(player_type *creature_ptr, OBJECT_SUBTYPE_VALUE sval, DIRECTION
 
                case SV_WAND_GENOCIDE:
                {
-                       fire_ball_hide(GF_GENOCIDE, dir, magic ? lev + 50 : 250, 0);
+                       fire_ball_hide(creature_ptr, GF_GENOCIDE, dir, magic ? lev + 50 : 250, 0);
                        ident = TRUE;
                        break;
                }
index cc0a1f0..8082482 100644 (file)
@@ -1125,43 +1125,43 @@ static bool cast_learned_spell(int spell, bool success)
                if (!get_aim_dir(&dir)) return FALSE;
 
         damage = monspell_bluemage_damage((MS_DRAIN_MANA), plev, DAM_ROLL);
-        fire_ball_hide(GF_DRAIN_MANA, dir, damage, 0);
+        fire_ball_hide(p_ptr, GF_DRAIN_MANA, dir, damage, 0);
                break;
        case MS_MIND_BLAST:
                if (!get_aim_dir(&dir)) return FALSE;
 
         damage = monspell_bluemage_damage((MS_MIND_BLAST), plev, DAM_ROLL);
-               fire_ball_hide(GF_MIND_BLAST, dir, damage, 0);
+               fire_ball_hide(p_ptr, GF_MIND_BLAST, dir, damage, 0);
                break;
        case MS_BRAIN_SMASH:
         if (!get_aim_dir(&dir)) return FALSE;
 
         damage = monspell_bluemage_damage((MS_BRAIN_SMASH), plev, DAM_ROLL);
-               fire_ball_hide(GF_BRAIN_SMASH, dir, damage, 0);
+               fire_ball_hide(p_ptr, GF_BRAIN_SMASH, dir, damage, 0);
                break;
        case MS_CAUSE_1:
                if (!get_aim_dir(&dir)) return FALSE;
 
         damage = monspell_bluemage_damage((MS_CAUSE_1), plev, DAM_ROLL);
-               fire_ball_hide(GF_CAUSE_1, dir, damage, 0);
+               fire_ball_hide(p_ptr, GF_CAUSE_1, dir, damage, 0);
                break;
        case MS_CAUSE_2:
                if (!get_aim_dir(&dir)) return FALSE;
 
         damage = monspell_bluemage_damage((MS_CAUSE_2), plev, DAM_ROLL);
-               fire_ball_hide(GF_CAUSE_2, dir, damage, 0);
+               fire_ball_hide(p_ptr, GF_CAUSE_2, dir, damage, 0);
                break;
        case MS_CAUSE_3:
                if (!get_aim_dir(&dir)) return FALSE;
 
         damage = monspell_bluemage_damage((MS_CAUSE_3), plev, DAM_ROLL);
-               fire_ball_hide(GF_CAUSE_3, dir, damage, 0);
+               fire_ball_hide(p_ptr, GF_CAUSE_3, dir, damage, 0);
                break;
        case MS_CAUSE_4:
                if (!get_aim_dir(&dir)) return FALSE;
 
         damage = monspell_bluemage_damage((MS_CAUSE_4), plev, DAM_ROLL);
-               fire_ball_hide(GF_CAUSE_4, dir, damage, 0);
+               fire_ball_hide(p_ptr, GF_CAUSE_4, dir, damage, 0);
                break;
        case MS_BOLT_ACID:
                if (!get_aim_dir(&dir)) return FALSE;
@@ -1272,7 +1272,7 @@ static bool cast_learned_spell(int spell, bool success)
                if (!get_aim_dir(&dir)) return FALSE;
 
         msg_print(_("<破滅の手>を放った!", "You invoke the Hand of Doom!"));
-               fire_ball_hide(GF_HAND_DOOM, dir, plev * 3, 0);
+               fire_ball_hide(p_ptr, GF_HAND_DOOM, dir, plev * 3, 0);
                break;
        }
        case MS_HEAL:
index 1f56dfc..c2e3fac 100644 (file)
@@ -2592,7 +2592,7 @@ MONSTER_NUMBER summon_Guardian(POSITION y, POSITION x, int rlev, MONSTER_IDX m_i
                        TARGET_TYPE);
 
                if(mon_to_player)
-                       fire_ball_hide(GF_WATER_FLOW, 0, 3, 8);
+                       fire_ball_hide(p_ptr, GF_WATER_FLOW, 0, 3, 8);
                else if(mon_to_mon)
                        project(p_ptr, t_idx, 8, y, x, 3, GF_WATER_FLOW, PROJECT_GRID | PROJECT_HIDE, -1);
        }
index 76f4583..ccaf21b 100644 (file)
@@ -515,7 +515,7 @@ static bool exe_racial_power(player_type *creature_ptr, s32b command)
                        if (command == -3)
                        {
                                if (!get_aim_dir(&dir)) return FALSE;
-                               (void)fire_ball_hide(GF_CHARM_LIVING, dir, creature_ptr->lev, 0);
+                               (void)fire_ball_hide(creature_ptr, GF_CHARM_LIVING, dir, creature_ptr->lev, 0);
                        }
                        else if (command == -4)
                        {
index 85419b4..94796ea 100644 (file)
@@ -366,7 +366,7 @@ concptr do_daemon_spell(player_type *caster_ptr, SPELL_IDX spell, BIT_FLAGS mode
                        if (cast)
                        {
                                fire_ball(caster_ptr, GF_FIRE, 0, dam, rad);
-                               fire_ball_hide(GF_LAVA_FLOW, 0, 2 + randint1(2), rad);
+                               fire_ball_hide(caster_ptr, GF_LAVA_FLOW, 0, 2 + randint1(2), rad);
                        }
                }
                break;
@@ -456,7 +456,7 @@ concptr do_daemon_spell(player_type *caster_ptr, SPELL_IDX spell, BIT_FLAGS mode
                                else
                                        msg_print(_("<破滅の手>を放った!", "You invoke the Hand of Doom!"));
 
-                               fire_ball_hide(GF_HAND_DOOM, dir, plev * 2, 0);
+                               fire_ball_hide(caster_ptr, GF_HAND_DOOM, dir, plev * 2, 0);
                        }
                }
                break;
@@ -568,7 +568,7 @@ concptr do_daemon_spell(player_type *caster_ptr, SPELL_IDX spell, BIT_FLAGS mode
                        {
                                if (!get_aim_dir(&dir)) return NULL;
 
-                               fire_ball_hide(GF_BLOOD_CURSE, dir, dam, rad);
+                               fire_ball_hide(caster_ptr, GF_BLOOD_CURSE, dir, dam, rad);
                                take_hit(caster_ptr, DAMAGE_USELIFE, 20 + randint1(30), _("血の呪い", "Blood curse"), -1);
                        }
                }
index 8b70a73..d5bdff3 100644 (file)
@@ -78,13 +78,13 @@ concptr do_death_spell(player_type *caster_ptr, SPELL_IDX spell, BIT_FLAGS mode)
                                        int effect = randint1(1000);
 
                                        if (effect == 666)
-                                               fire_ball_hide(GF_DEATH_RAY, dir, plev * 200, 0);
+                                               fire_ball_hide(caster_ptr, GF_DEATH_RAY, dir, plev * 200, 0);
                                        else if (effect < 500)
-                                               fire_ball_hide(GF_TURN_ALL, dir, plev, 0);
+                                               fire_ball_hide(caster_ptr, GF_TURN_ALL, dir, plev, 0);
                                        else if (effect < 800)
-                                               fire_ball_hide(GF_OLD_CONF, dir, plev, 0);
+                                               fire_ball_hide(caster_ptr, GF_OLD_CONF, dir, plev, 0);
                                        else
-                                               fire_ball_hide(GF_STUN, dir, plev, 0);
+                                               fire_ball_hide(caster_ptr, GF_STUN, dir, plev, 0);
                                }
                        }
                }
@@ -273,7 +273,7 @@ concptr do_death_spell(player_type *caster_ptr, SPELL_IDX spell, BIT_FLAGS mode)
                        {
                                if (!get_aim_dir(&dir)) return NULL;
 
-                               fire_ball_hide(GF_GENOCIDE, dir, power, 0);
+                               fire_ball_hide(caster_ptr, GF_GENOCIDE, dir, power, 0);
                        }
                }
                break;
index 09bd8ec..9bf2b0b 100644 (file)
@@ -64,7 +64,7 @@ concptr do_life_spell(player_type *caster_ptr, SPELL_IDX spell, BIT_FLAGS mode)
                        if (cast)
                        {
                                if (!get_aim_dir(&dir)) return NULL;
-                               fire_ball_hide(GF_WOUNDS, dir, damroll(dice, sides), 0);
+                               fire_ball_hide(caster_ptr, GF_WOUNDS, dir, damroll(dice, sides), 0);
                        }
                }
                break;
@@ -157,7 +157,7 @@ concptr do_life_spell(player_type *caster_ptr, SPELL_IDX spell, BIT_FLAGS mode)
                        if (cast)
                        {
                                if (!get_aim_dir(&dir)) return NULL;
-                               fire_ball_hide(GF_WOUNDS, dir, damroll(dice, sides), 0);
+                               fire_ball_hide(caster_ptr, GF_WOUNDS, dir, damroll(dice, sides), 0);
                        }
                }
                break;
@@ -310,7 +310,7 @@ concptr do_life_spell(player_type *caster_ptr, SPELL_IDX spell, BIT_FLAGS mode)
                        if (cast)
                        {
                                if (!get_aim_dir(&dir)) return NULL;
-                               fire_ball_hide(GF_WOUNDS, dir, damroll(dice, sides), 0);
+                               fire_ball_hide(caster_ptr, GF_WOUNDS, dir, damroll(dice, sides), 0);
                        }
                }
                break;
index 44563b9..b6cf56c 100644 (file)
@@ -74,7 +74,7 @@ bool sleep_monster(DIRECTION dir, int power)
  */
 bool stasis_monster(DIRECTION dir)
 {
-       return (fire_ball_hide(GF_STASIS, dir, p_ptr->lev * 2, 0));
+       return (fire_ball_hide(p_ptr, GF_STASIS, dir, p_ptr->lev * 2, 0));
 }
 
 /*!
@@ -85,7 +85,7 @@ bool stasis_monster(DIRECTION dir)
  */
 bool stasis_evil(DIRECTION dir)
 {
-       return (fire_ball_hide(GF_STASIS_EVIL, dir, p_ptr->lev * 2, 0));
+       return (fire_ball_hide(p_ptr, GF_STASIS_EVIL, dir, p_ptr->lev * 2, 0));
 }
 
 /*!
index 957f2b8..a8afaa1 100644 (file)
@@ -200,7 +200,7 @@ extern bool unlite_area(HIT_POINT dam, POSITION rad);
 extern bool fire_ball(player_type *caster_ptr, EFFECT_ID typ, DIRECTION dir, HIT_POINT dam, POSITION rad);
 extern bool fire_breath(player_type *caster_ptr, EFFECT_ID typ, DIRECTION dir, HIT_POINT dam, POSITION rad);
 extern bool fire_rocket(EFFECT_ID typ, DIRECTION dir, HIT_POINT dam, POSITION rad);
-extern bool fire_ball_hide(EFFECT_ID typ, DIRECTION dir, HIT_POINT dam, POSITION rad);
+extern bool fire_ball_hide(player_type *caster_ptr, EFFECT_ID typ, DIRECTION dir, HIT_POINT dam, POSITION rad);
 extern bool fire_meteor(MONSTER_IDX who, EFFECT_ID typ, POSITION x, POSITION y, HIT_POINT dam, POSITION rad);
 extern bool fire_bolt(player_type *caster_ptr, EFFECT_ID typ, DIRECTION dir, HIT_POINT dam);
 extern bool fire_blast(player_type *caster_ptr, EFFECT_ID typ, DIRECTION dir, DICE_NUMBER dd, DICE_SID ds, int num, int dev);
index 6cc88a5..09104ec 100644 (file)
@@ -2017,14 +2017,14 @@ bool fire_rocket(EFFECT_ID typ, DIRECTION dir, HIT_POINT dam, POSITION rad)
  * Affect grids, objects, and monsters
  * </pre>
  */
-bool fire_ball_hide(EFFECT_ID typ, DIRECTION dir, HIT_POINT dam, POSITION rad)
+bool fire_ball_hide(player_type *caster_ptr, EFFECT_ID typ, DIRECTION dir, HIT_POINT dam, POSITION rad)
 {
        POSITION tx, ty;
        BIT_FLAGS flg = PROJECT_STOP | PROJECT_GRID | PROJECT_ITEM | PROJECT_KILL | PROJECT_HIDE;
 
        /* Use the given direction */
-       tx = p_ptr->x + 99 * ddx[dir];
-       ty = p_ptr->y + 99 * ddy[dir];
+       tx = caster_ptr->x + 99 * ddx[dir];
+       ty = caster_ptr->y + 99 * ddy[dir];
 
        /* Hack -- Use an actual "target" */
        if ((dir == 5) && target_okay())
@@ -2035,7 +2035,7 @@ bool fire_ball_hide(EFFECT_ID typ, DIRECTION dir, HIT_POINT dam, POSITION rad)
        }
 
        /* Analyze the "dir" and the "target".  Hurt items on floor. */
-       return (project(p_ptr, 0, rad, ty, tx, dam, typ, flg, -1));
+       return (project(caster_ptr, 0, rad, ty, tx, dam, typ, flg, -1));
 }
 
 
index 308dd01..e0d756c 100644 (file)
@@ -653,7 +653,7 @@ void hit_trap(player_type *trapped_ptr, bool break_trap)
                msg_print(_("突然壁から水が溢れ出した!ピラニアがいる!", "Suddenly, the room is filled with water with piranhas!"));
 
                /* Water fills room */
-               fire_ball_hide(GF_WATER_FLOW, 0, 1, 10);
+               fire_ball_hide(p_ptr, GF_WATER_FLOW, 0, 1, 10);
 
                /* Summon Piranhas */
                num = 1 + trapped_ptr->current_floor_ptr->dun_level / 20;