OSDN Git Service

[Refactor] #38997 *_monster() にplayer_type *引数を追加 / Added player_type * argument...
authorHourier <hourier@users.sourceforge.jp>
Thu, 9 Jan 2020 10:54:14 +0000 (19:54 +0900)
committerHourier <hourier@users.sourceforge.jp>
Thu, 9 Jan 2020 10:54:14 +0000 (19:54 +0900)
16 files changed:
src/cmd/cmd-activate.c
src/cmd/cmd-mane.c
src/cmd/cmd-zaprod.c
src/cmd/cmd-zapwand.c
src/mind.c
src/mspells3.c
src/racial.c
src/realm-chaos.c
src/realm-crusade.c
src/realm-daemon.c
src/realm-death.c
src/realm-sorcery.c
src/realm-trump.c
src/spells-status.c
src/spells-status.h
src/spells2.c

index fea231e..ecade71 100644 (file)
@@ -1074,7 +1074,7 @@ bool activate_artifact(player_type *user_ptr, object_type *o_ptr)
        {
                msg_print(_("様々な色の火花を発している...", "It glows in scintillating colours..."));
                if (!get_aim_dir(&dir)) return FALSE;
-               confuse_monster(dir, 20);
+               confuse_monster(user_ptr, dir, 20);
                break;
        }
 
index 111861e..190c593 100644 (file)
@@ -622,25 +622,25 @@ static bool use_mane(player_type *caster_ptr, int spell)
                if (!get_aim_dir(&dir)) return FALSE;
                else msg_print(_("恐ろしげな幻覚を作り出した。", "You cast a fearful illusion."));
                
-                       fear_monster(dir, plev+10);
+                       fear_monster(caster_ptr, dir, plev+10);
                break;
        case MS_BLIND:
                if (!get_aim_dir(&dir)) return FALSE;
-               confuse_monster(dir, plev * 2);
+               confuse_monster(caster_ptr, dir, plev * 2);
                break;
        case MS_CONF:
                if (!get_aim_dir(&dir)) return FALSE;
                else msg_print(_("誘惑的な幻覚をつくり出した。", "You cast a mesmerizing illusion."));
                
-                       confuse_monster(dir, plev * 2);
+                       confuse_monster(caster_ptr, dir, plev * 2);
                break;
        case MS_SLOW:
                if (!get_aim_dir(&dir)) return FALSE;
-               slow_monster(dir, plev);
+               slow_monster(caster_ptr, dir, plev);
                break;
        case MS_SLEEP:
                if (!get_aim_dir(&dir)) return FALSE;
-               sleep_monster(dir, plev);
+               sleep_monster(caster_ptr, dir, plev);
                break;
        case MS_SPEED:
                (void)set_fast(caster_ptr, randint1(20 + plev) + plev, FALSE);
index 5306a2b..404548f 100644 (file)
@@ -155,13 +155,13 @@ int rod_effect(player_type *creature_ptr, OBJECT_SUBTYPE_VALUE sval, DIRECTION d
 
        case SV_ROD_SLEEP_MONSTER:
        {
-               if (sleep_monster(dir, lev)) ident = TRUE;
+               if (sleep_monster(creature_ptr, dir, lev)) ident = TRUE;
                break;
        }
 
        case SV_ROD_SLOW_MONSTER:
        {
-               if (slow_monster(dir, lev)) ident = TRUE;
+               if (slow_monster(creature_ptr, dir, lev)) ident = TRUE;
                break;
        }
 
@@ -173,7 +173,7 @@ int rod_effect(player_type *creature_ptr, OBJECT_SUBTYPE_VALUE sval, DIRECTION d
 
        case SV_ROD_POLYMORPH:
        {
-               if (poly_monster(dir, lev)) ident = TRUE;
+               if (poly_monster(creature_ptr, dir, lev)) ident = TRUE;
                break;
        }
 
index 730fa95..d4caf7c 100644 (file)
@@ -59,19 +59,19 @@ bool wand_effect(player_type *creature_ptr, OBJECT_SUBTYPE_VALUE sval, DIRECTION
                case SV_WAND_HEAL_MONSTER:
                {
                        HIT_POINT dam = damroll((powerful ? 20 : 10), 10);
-                       if (heal_monster(dir, dam)) ident = TRUE;
+                       if (heal_monster(creature_ptr, dir, dam)) ident = TRUE;
                        break;
                }
 
                case SV_WAND_HASTE_MONSTER:
                {
-                       if (speed_monster(dir, lev)) ident = TRUE;
+                       if (speed_monster(creature_ptr, dir, lev)) ident = TRUE;
                        break;
                }
 
                case SV_WAND_CLONE_MONSTER:
                {
-                       if (clone_monster(dir)) ident = TRUE;
+                       if (clone_monster(creature_ptr, dir)) ident = TRUE;
                        break;
                }
 
@@ -114,25 +114,25 @@ bool wand_effect(player_type *creature_ptr, OBJECT_SUBTYPE_VALUE sval, DIRECTION
 
                case SV_WAND_SLEEP_MONSTER:
                {
-                       if (sleep_monster(dir, lev)) ident = TRUE;
+                       if (sleep_monster(creature_ptr, dir, lev)) ident = TRUE;
                        break;
                }
 
                case SV_WAND_SLOW_MONSTER:
                {
-                       if (slow_monster(dir, lev)) ident = TRUE;
+                       if (slow_monster(creature_ptr, dir, lev)) ident = TRUE;
                        break;
                }
 
                case SV_WAND_CONFUSE_MONSTER:
                {
-                       if (confuse_monster(dir, lev)) ident = TRUE;
+                       if (confuse_monster(creature_ptr, dir, lev)) ident = TRUE;
                        break;
                }
 
                case SV_WAND_FEAR_MONSTER:
                {
-                       if (fear_monster(dir, lev)) ident = TRUE;
+                       if (fear_monster(creature_ptr, dir, lev)) ident = TRUE;
                        break;
                }
 
@@ -144,7 +144,7 @@ bool wand_effect(player_type *creature_ptr, OBJECT_SUBTYPE_VALUE sval, DIRECTION
 
                case SV_WAND_POLYMORPH:
                {
-                       if (poly_monster(dir, lev)) ident = TRUE;
+                       if (poly_monster(creature_ptr, dir, lev)) ident = TRUE;
                        break;
                }
 
index 5ed1b55..8c087e5 100644 (file)
@@ -1595,7 +1595,7 @@ static bool cast_ninja_spell(player_type *caster_ptr, int spell)
        case 6:
        {
                if (!get_aim_dir(&dir)) return FALSE;
-               (void)stasis_monster(dir);
+               (void)stasis_monster(caster_ptr, dir);
                break;
        }
        case 7:
index a2bde22..d780b83 100644 (file)
@@ -1246,25 +1246,25 @@ static bool cast_learned_spell(player_type *caster_ptr, int spell, bool success)
                if (!get_aim_dir(&dir)) return FALSE;
 
         msg_print(_("恐ろしげな幻覚を作り出した。", "You cast a fearful illusion."));
-               fear_monster(dir, plev+10);
+               fear_monster(caster_ptr, dir, plev+10);
                break;
        case MS_BLIND:
                if (!get_aim_dir(&dir)) return FALSE;
-               confuse_monster(dir, plev * 2);
+               confuse_monster(caster_ptr, dir, plev * 2);
                break;
        case MS_CONF:
                if (!get_aim_dir(&dir)) return FALSE;
 
         msg_print(_("誘惑的な幻覚をつくり出した。", "You cast a mesmerizing illusion."));
-               confuse_monster(dir, plev * 2);
+               confuse_monster(caster_ptr, dir, plev * 2);
                break;
        case MS_SLOW:
                if (!get_aim_dir(&dir)) return FALSE;
-               slow_monster(dir, plev);
+               slow_monster(caster_ptr, dir, plev);
                break;
        case MS_SLEEP:
                if (!get_aim_dir(&dir)) return FALSE;
-               sleep_monster(dir, plev);
+               sleep_monster(caster_ptr, dir, plev);
                break;
        case MS_SPEED:
                (void)set_fast(caster_ptr, randint1(20 + plev) + plev, FALSE);
index 32e7fb6..faad55d 100644 (file)
@@ -720,7 +720,7 @@ static bool exe_racial_power(player_type *creature_ptr, s32b command)
                        if (!get_aim_dir(&dir)) return FALSE;
                        stop_mouth(creature_ptr);
                        msg_print(_("身の毛もよだつ叫び声を上げた!", "You make a horrible scream!"));
-                       (void)fear_monster(dir, plev);
+                       (void)fear_monster(creature_ptr, dir, plev);
                        break;
 
                case RACE_KLACKON:
@@ -792,7 +792,7 @@ static bool exe_racial_power(player_type *creature_ptr, s32b command)
                        if (!get_aim_dir(&dir)) return FALSE;
                        stop_mouth(creature_ptr);
                        msg_print(_("あなたはおどろおどろしい叫び声をあげた!", "You emit an eldritch howl!"));
-                       (void)fear_monster(dir, plev);
+                       (void)fear_monster(creature_ptr, dir, plev);
                        break;
 
                case RACE_SPRITE:
@@ -818,9 +818,11 @@ static bool exe_racial_power(player_type *creature_ptr, s32b command)
                        free_turn(creature_ptr);
        }
        }
+
        return TRUE;
 }
 
+
 /*!
  * @brief レイシャル・パワーコマンドのメインルーチン / Allow user to choose a power (racial / mutation) to activate
  * @return なし
index 6e85be8..d1982cf 100644 (file)
@@ -346,7 +346,7 @@ concptr do_chaos_spell(player_type *caster_ptr, SPELL_IDX spell, BIT_FLAGS mode)
                        {
                                if (!get_aim_dir(&dir)) return NULL;
 
-                               poly_monster(dir, plev);
+                               poly_monster(caster_ptr, dir, plev);
                        }
                }
                break;
index a63aef9..f2e96b3 100644 (file)
@@ -81,7 +81,7 @@ concptr do_crusade_spell(player_type *caster_ptr, SPELL_IDX spell, BIT_FLAGS mod
                        if (cast)
                        {
                                if (!get_aim_dir(&dir)) return NULL;
-                               fear_monster(dir, power);
+                               fear_monster(caster_ptr, dir, power);
                        }
                }
                break;
@@ -303,7 +303,7 @@ concptr do_crusade_spell(player_type *caster_ptr, SPELL_IDX spell, BIT_FLAGS mod
                        if (cast)
                        {
                                if (!get_aim_dir(&dir)) return NULL;
-                               stasis_evil(dir);
+                               stasis_evil(caster_ptr, dir);
                        }
                }
                break;
index 45e0680..fd13581 100644 (file)
@@ -115,8 +115,8 @@ concptr do_daemon_spell(player_type *caster_ptr, SPELL_IDX spell, BIT_FLAGS mode
                        {
                                if (!get_aim_dir(&dir)) return NULL;
 
-                               fear_monster(dir, power);
-                               stun_monster(dir, power);
+                               fear_monster(caster_ptr, dir, power);
+                               stun_monster(caster_ptr, dir, power);
                        }
                }
                break;
index 9223dd6..44e7271 100644 (file)
@@ -140,7 +140,7 @@ concptr do_death_spell(player_type *caster_ptr, SPELL_IDX spell, BIT_FLAGS mode)
                        {
                                if (!get_aim_dir(&dir)) return NULL;
 
-                               sleep_monster(dir, plev);
+                               sleep_monster(caster_ptr, dir, plev);
                        }
                }
                break;
@@ -175,8 +175,8 @@ concptr do_death_spell(player_type *caster_ptr, SPELL_IDX spell, BIT_FLAGS mode)
                        {
                                if (!get_aim_dir(&dir)) return NULL;
 
-                               fear_monster(dir, plev);
-                               stun_monster(dir, plev);
+                               fear_monster(caster_ptr, dir, plev);
+                               stun_monster(caster_ptr, dir, plev);
                        }
                }
                break;
index f675d15..f11fb86 100644 (file)
@@ -111,7 +111,7 @@ concptr do_sorcery_spell(player_type *caster_ptr, SPELL_IDX spell, BIT_FLAGS mod
                        {
                                if (!get_aim_dir(&dir)) return NULL;
 
-                               confuse_monster(dir, power);
+                               confuse_monster(caster_ptr, dir, power);
                        }
                }
                break;
@@ -145,7 +145,7 @@ concptr do_sorcery_spell(player_type *caster_ptr, SPELL_IDX spell, BIT_FLAGS mod
                        {
                                if (!get_aim_dir(&dir)) return NULL;
 
-                               sleep_monster(dir, plev);
+                               sleep_monster(caster_ptr, dir, plev);
                        }
                }
                break;
@@ -207,7 +207,7 @@ concptr do_sorcery_spell(player_type *caster_ptr, SPELL_IDX spell, BIT_FLAGS mod
                        {
                                if (!get_aim_dir(&dir)) return NULL;
 
-                               slow_monster(dir, plev);
+                               slow_monster(caster_ptr, dir, plev);
                        }
                }
                break;
index cafdb54..8b3eaf2 100644 (file)
@@ -260,7 +260,7 @@ concptr do_trump_spell(player_type *caster_ptr, SPELL_IDX spell, BIT_FLAGS mode)
 
                                if (!result) return NULL;
 
-                               speed_monster(dir, plev);
+                               speed_monster(caster_ptr, dir, plev);
                        }
                }
                break;
@@ -527,7 +527,7 @@ concptr do_trump_spell(player_type *caster_ptr, SPELL_IDX spell, BIT_FLAGS mode)
 
                                if (!result) return NULL;
 
-                               heal_monster(dir, heal);
+                               heal_monster(caster_ptr, dir, heal);
                        }
                }
                break;
index 5218c9a..f8b9233 100644 (file)
  * @param dam 威力
  * @return 作用が実際にあった場合TRUEを返す
  */
-bool heal_monster(DIRECTION dir, HIT_POINT dam)
+bool heal_monster(player_type *caster_ptr, DIRECTION dir, HIT_POINT dam)
 {
        BIT_FLAGS flg = PROJECT_STOP | PROJECT_KILL | PROJECT_REFLECTABLE;
-       return (project_hook(p_ptr, GF_OLD_HEAL, dir, dam, flg));
+       return (project_hook(caster_ptr, GF_OLD_HEAL, dir, dam, flg));
 }
 
+
 /*!
  * @brief モンスター加速処理
  * @param caster_ptr プレーヤーへの参照ポインタ
@@ -38,12 +39,13 @@ bool heal_monster(DIRECTION dir, HIT_POINT dam)
  * @param power 効力
  * @return 作用が実際にあった場合TRUEを返す
  */
-bool speed_monster(DIRECTION dir, int power)
+bool speed_monster(player_type *caster_ptr, DIRECTION dir, int power)
 {
        BIT_FLAGS flg = PROJECT_STOP | PROJECT_KILL | PROJECT_REFLECTABLE;
-       return (project_hook(p_ptr, GF_OLD_SPEED, dir, power, flg));
+       return (project_hook(caster_ptr, GF_OLD_SPEED, dir, power, flg));
 }
 
+
 /*!
  * @brief モンスター減速処理
  * @param caster_ptr プレーヤーへの参照ポインタ
@@ -51,12 +53,13 @@ bool speed_monster(DIRECTION dir, int power)
  * @param power 効力
  * @return 作用が実際にあった場合TRUEを返す
  */
-bool slow_monster(DIRECTION dir, int power)
+bool slow_monster(player_type *caster_ptr, DIRECTION dir, int power)
 {
        BIT_FLAGS flg = PROJECT_STOP | PROJECT_KILL | PROJECT_REFLECTABLE;
-       return (project_hook(p_ptr, GF_OLD_SLOW, dir, power, flg));
+       return (project_hook(caster_ptr, GF_OLD_SLOW, dir, power, flg));
 }
 
+
 /*!
  * @brief モンスター催眠処理
  * @param caster_ptr プレーヤーへの参照ポインタ
@@ -64,12 +67,13 @@ bool slow_monster(DIRECTION dir, int power)
  * @param power 効力
  * @return 作用が実際にあった場合TRUEを返す
  */
-bool sleep_monster(DIRECTION dir, int power)
+bool sleep_monster(player_type *caster_ptr, DIRECTION dir, int power)
 {
        BIT_FLAGS flg = PROJECT_STOP | PROJECT_KILL | PROJECT_REFLECTABLE;
-       return (project_hook(p_ptr, GF_OLD_SLEEP, dir, power, flg));
+       return (project_hook(caster_ptr, GF_OLD_SLEEP, dir, power, flg));
 }
 
+
 /*!
  * @brief モンスター拘束(STASIS)処理
  * @param caster_ptr プレーヤーへの参照ポインタ
@@ -77,11 +81,12 @@ bool sleep_monster(DIRECTION dir, int power)
  * @return 作用が実際にあった場合TRUEを返す
  * @details 威力はプレイヤーレベル*2に固定
  */
-bool stasis_monster(DIRECTION dir)
+bool stasis_monster(player_type *caster_ptr, DIRECTION dir)
 {
-       return (fire_ball_hide(p_ptr, GF_STASIS, dir, p_ptr->lev * 2, 0));
+       return (fire_ball_hide(caster_ptr, GF_STASIS, dir, caster_ptr->lev * 2, 0));
 }
 
+
 /*!
  * @brief 邪悪なモンスター拘束(STASIS)処理
  * @param caster_ptr プレーヤーへの参照ポインタ
@@ -89,11 +94,12 @@ bool stasis_monster(DIRECTION dir)
  * @return 作用が実際にあった場合TRUEを返す
  * @details 威力はプレイヤーレベル*2に固定
  */
-bool stasis_evil(DIRECTION dir)
+bool stasis_evil(player_type *caster_ptr, DIRECTION dir)
 {
-       return (fire_ball_hide(p_ptr, GF_STASIS_EVIL, dir, p_ptr->lev * 2, 0));
+       return (fire_ball_hide(caster_ptr, GF_STASIS_EVIL, dir, caster_ptr->lev * 2, 0));
 }
 
+
 /*!
  * @brief モンスター混乱処理
  * @param caster_ptr プレーヤーへの参照ポインタ
@@ -101,12 +107,13 @@ bool stasis_evil(DIRECTION dir)
  * @param plev プレイヤーレベル(=効力)
  * @return 作用が実際にあった場合TRUEを返す
  */
-bool confuse_monster(DIRECTION dir, PLAYER_LEVEL plev)
+bool confuse_monster(player_type *caster_ptr, DIRECTION dir, PLAYER_LEVEL plev)
 {
        BIT_FLAGS flg = PROJECT_STOP | PROJECT_KILL | PROJECT_REFLECTABLE;
-       return (project_hook(p_ptr, GF_OLD_CONF, dir, plev, flg));
+       return (project_hook(caster_ptr, GF_OLD_CONF, dir, plev, flg));
 }
 
+
 /*!
  * @brief モンスター朦朧処理
  * @param caster_ptr プレーヤーへの参照ポインタ
@@ -114,12 +121,13 @@ bool confuse_monster(DIRECTION dir, PLAYER_LEVEL plev)
  * @param plev プレイヤーレベル(=効力)
  * @return 作用が実際にあった場合TRUEを返す
  */
-bool stun_monster(DIRECTION dir, PLAYER_LEVEL plev)
+bool stun_monster(player_type *caster_ptr, DIRECTION dir, PLAYER_LEVEL plev)
 {
        BIT_FLAGS flg = PROJECT_STOP | PROJECT_KILL | PROJECT_REFLECTABLE;
-       return (project_hook(p_ptr, GF_STUN, dir, plev, flg));
+       return (project_hook(caster_ptr, GF_STUN, dir, plev, flg));
 }
 
+
 /*!
  * @brief チェンジモンスター処理
  * @param caster_ptr プレーヤーへの参照ポインタ
@@ -127,27 +135,29 @@ bool stun_monster(DIRECTION dir, PLAYER_LEVEL plev)
  * @param power 効力
  * @return 作用が実際にあった場合TRUEを返す
  */
-bool poly_monster(DIRECTION dir, int power)
+bool poly_monster(player_type *caster_ptr, DIRECTION dir, int power)
 {
        BIT_FLAGS flg = PROJECT_STOP | PROJECT_KILL | PROJECT_REFLECTABLE;
-       bool tester = (project_hook(p_ptr, GF_OLD_POLY, dir, power, flg));
+       bool tester = (project_hook(caster_ptr, GF_OLD_POLY, dir, power, flg));
        if (tester)
-               chg_virtue(p_ptr, V_CHANCE, 1);
+               chg_virtue(caster_ptr, V_CHANCE, 1);
        return(tester);
 }
 
+
 /*!
  * @brief クローンモンスター処理
  * @param caster_ptr プレーヤーへの参照ポインタ
  * @param dir 方向(5ならばグローバル変数 target_col/target_row の座標を目標にする)
  * @return 作用が実際にあった場合TRUEを返す
  */
-bool clone_monster(DIRECTION dir)
+bool clone_monster(player_type *caster_ptr, DIRECTION dir)
 {
        BIT_FLAGS flg = PROJECT_STOP | PROJECT_KILL | PROJECT_REFLECTABLE;
-       return (project_hook(p_ptr, GF_OLD_CLONE, dir, 0, flg));
+       return (project_hook(caster_ptr, GF_OLD_CLONE, dir, 0, flg));
 }
 
+
 /*!
  * @brief モンスター恐慌処理
  * @param caster_ptr プレーヤーへの参照ポインタ
@@ -155,12 +165,13 @@ bool clone_monster(DIRECTION dir)
  * @param plev プレイヤーレベル(=効力)
  * @return 作用が実際にあった場合TRUEを返す
  */
-bool fear_monster(DIRECTION dir, PLAYER_LEVEL plev)
+bool fear_monster(player_type *caster_ptr, DIRECTION dir, PLAYER_LEVEL plev)
 {
        BIT_FLAGS flg = PROJECT_STOP | PROJECT_KILL | PROJECT_REFLECTABLE;
-       return (project_hook(p_ptr, GF_TURN_ALL, dir, plev, flg));
+       return (project_hook(caster_ptr, GF_TURN_ALL, dir, plev, flg));
 }
 
+
 /*!
 * @brief 歌の停止を処理する / Stop singing if the player is a Bard
 * @return なし
@@ -192,6 +203,7 @@ void stop_singing(player_type *creature_ptr)
        creature_ptr->redraw |= (PR_STATUS);
 }
 
+
 bool time_walk(player_type *creature_ptr)
 {
        if (creature_ptr->timewalk)
@@ -212,6 +224,7 @@ bool time_walk(player_type *creature_ptr)
        return TRUE;
 }
 
+
 /*!
  * @brief プレイヤーのヒットダイスを振る / Role Hitpoints
  * @param options スペル共通オプション
@@ -276,6 +289,7 @@ void roll_hitdice(player_type *creature_ptr, SPOP_FLAGS options)
        }
 }
 
+
 bool_hack life_stream(player_type *creature_ptr, bool_hack message, bool_hack virtue_change)
 {
        if (virtue_change)
@@ -302,6 +316,7 @@ bool_hack life_stream(player_type *creature_ptr, bool_hack message, bool_hack vi
        return TRUE;
 }
 
+
 bool_hack heroism(player_type *creature_ptr, int base)
 {
        bool_hack ident = FALSE;
@@ -311,6 +326,7 @@ bool_hack heroism(player_type *creature_ptr, int base)
        return ident;
 }
 
+
 bool_hack berserk(player_type *creature_ptr, int base)
 {
        bool_hack ident = FALSE;
@@ -320,6 +336,7 @@ bool_hack berserk(player_type *creature_ptr, int base)
        return ident;
 }
 
+
 bool_hack cure_light_wounds(player_type *creature_ptr, DICE_NUMBER dice, DICE_SID sides)
 {
        bool_hack ident = FALSE;
@@ -330,6 +347,7 @@ bool_hack cure_light_wounds(player_type *creature_ptr, DICE_NUMBER dice, DICE_SI
        return ident;
 }
 
+
 bool_hack cure_serious_wounds(player_type *creature_ptr, DICE_NUMBER dice, DICE_SID sides)
 {
        bool_hack ident = FALSE;
@@ -341,6 +359,7 @@ bool_hack cure_serious_wounds(player_type *creature_ptr, DICE_NUMBER dice, DICE_
        return ident;
 }
 
+
 bool_hack cure_critical_wounds(player_type *creature_ptr, HIT_POINT pow)
 {
        bool_hack ident = FALSE;
@@ -354,6 +373,7 @@ bool_hack cure_critical_wounds(player_type *creature_ptr, HIT_POINT pow)
        return ident;
 }
 
+
 bool_hack true_healing(player_type *creature_ptr, HIT_POINT pow)
 {
        bool_hack ident = FALSE;
@@ -367,6 +387,7 @@ bool_hack true_healing(player_type *creature_ptr, HIT_POINT pow)
        return ident;
 }
 
+
 bool_hack restore_mana(player_type *creature_ptr, bool_hack magic_eater)
 {
        bool_hack ident = FALSE;
@@ -403,6 +424,7 @@ bool_hack restore_mana(player_type *creature_ptr, bool_hack magic_eater)
        return ident;
 }
 
+
 bool restore_all_status(player_type *creature_ptr)
 {
        bool ident = FALSE;
@@ -415,6 +437,7 @@ bool restore_all_status(player_type *creature_ptr)
        return ident;
 }
 
+
 bool fishing(player_type *creature_ptr)
 {
        DIRECTION dir;
index fb15429..5dd81f5 100644 (file)
@@ -1,15 +1,15 @@
 
-extern bool heal_monster(DIRECTION dir, HIT_POINT dam);
-extern bool speed_monster(DIRECTION dir, int power);
-extern bool slow_monster(DIRECTION dir, int power);
-extern bool sleep_monster(DIRECTION dir, int power);
-extern bool stasis_monster(DIRECTION dir);    /* Like sleep, affects undead as well */
-extern bool stasis_evil(DIRECTION dir);    /* Like sleep, affects undead as well */
-extern bool confuse_monster(DIRECTION dir, PLAYER_LEVEL plev);
-extern bool stun_monster(DIRECTION dir, PLAYER_LEVEL plev);
-extern bool fear_monster(DIRECTION dir, PLAYER_LEVEL plev);
-extern bool poly_monster(DIRECTION dir, int power);
-extern bool clone_monster(DIRECTION dir);
+extern bool heal_monster(player_type *caster_ptr, DIRECTION dir, HIT_POINT dam);
+extern bool speed_monster(player_type *caster_ptr, DIRECTION dir, int power);
+extern bool slow_monster(player_type *caster_ptr, DIRECTION dir, int power);
+extern bool sleep_monster(player_type *caster_ptr, DIRECTION dir, int power);
+extern bool stasis_monster(player_type *caster_ptr, DIRECTION dir);    /* Like sleep, affects undead as well */
+extern bool stasis_evil(player_type *caster_ptr, DIRECTION dir);    /* Like sleep, affects undead as well */
+extern bool confuse_monster(player_type *caster_ptr, DIRECTION dir, PLAYER_LEVEL plev);
+extern bool stun_monster(player_type *caster_ptr, DIRECTION dir, PLAYER_LEVEL plev);
+extern bool fear_monster(player_type *caster_ptr, DIRECTION dir, PLAYER_LEVEL plev);
+extern bool poly_monster(player_type *caster_ptr, DIRECTION dir, int power);
+extern bool clone_monster(player_type *caster_ptr, DIRECTION dir);
 extern void stop_singing(player_type *creature_ptr);
 extern bool time_walk(player_type *creature_ptr);
 extern void roll_hitdice(player_type *creature_ptr, SPOP_FLAGS options);
index 5779e28..77f354f 100644 (file)
@@ -3528,25 +3528,25 @@ void cast_wonder(player_type *caster_ptr, DIRECTION dir)
 
        if (die < 8)
        {
-               clone_monster(dir);
+               clone_monster(caster_ptr, dir);
                return;
        }
        
        if (die < 14)
        {
-               speed_monster(dir, plev);
+               speed_monster(caster_ptr, dir, plev);
                return;
        }
 
        if (die < 26)
        {
-               heal_monster(dir, damroll(4, 6));
+               heal_monster(caster_ptr, dir, damroll(4, 6));
                return;
        }
 
        if (die < 31)
        {
-               poly_monster(dir, plev);
+               poly_monster(caster_ptr, dir, plev);
                return;
        }
 
@@ -3559,7 +3559,7 @@ void cast_wonder(player_type *caster_ptr, DIRECTION dir)
 
        if (die < 41)
        {
-               confuse_monster(dir, plev);
+               confuse_monster(caster_ptr, dir, plev);
                return;
        }
        
@@ -3726,7 +3726,7 @@ void cast_invoke_spirits(player_type *caster_ptr, DIRECTION dir)
        }
        else if (die < 31)
        {
-               poly_monster(dir, plev);
+               poly_monster(caster_ptr, dir, plev);
        }
        else if (die < 36)
        {
@@ -3735,7 +3735,7 @@ void cast_invoke_spirits(player_type *caster_ptr, DIRECTION dir)
        }
        else if (die < 41)
        {
-               confuse_monster(dir, plev);
+               confuse_monster(caster_ptr, dir, plev);
        }
        else if (die < 46)
        {