<ClInclude Include="..\..\src\mind\mind-blue-mage.h" />\r
<ClInclude Include="..\..\src\mspell\monster-power-table.h" />\r
<ClInclude Include="..\..\src\mspell\mspell-mask-definitions.h" />\r
+ <ClInclude Include="..\..\src\mspell\mspells1.h" />\r
+ <ClInclude Include="..\..\src\mspell\mspells2.h" />\r
+ <ClInclude Include="..\..\src\mspell\mspells3.h" />\r
<ClInclude Include="..\..\src\system\alloc-entries.h" />\r
<ClInclude Include="..\..\src\term\screen-processor.h" />\r
<ClInclude Include="..\..\src\util\bit-flags-calculator.h" />\r
<ClInclude Include="..\..\src\io\load.h" />\r
<ClInclude Include="..\..\src\mind\mind.h" />\r
<ClInclude Include="..\..\src\monster\monster-processor.h" />\r
- <ClInclude Include="..\..\src\mspell\monster-spell.h" />\r
<ClInclude Include="..\..\src\monster\monster-status.h" />\r
<ClInclude Include="..\..\src\system\monster-type-definition.h" />\r
<ClInclude Include="..\..\src\monster-race\monster-race-hook.h" />\r
<ClInclude Include="..\..\src\core\scores.h">
<Filter>core</Filter>
</ClInclude>
- <ClInclude Include="..\..\src\mspell\monster-spell.h">
- <Filter>mspell</Filter>
- </ClInclude>
<ClInclude Include="..\..\src\mspell\mspell-bolt.h">
<Filter>mspell</Filter>
</ClInclude>
<ClInclude Include="..\..\src\mspell\monster-power-table.h">
<Filter>mspell</Filter>
</ClInclude>
+ <ClInclude Include="..\..\src\mspell\mspells1.h">
+ <Filter>mspell</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\mspell\mspells2.h">
+ <Filter>mspell</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\src\mspell\mspells3.h">
+ <Filter>mspell</Filter>
+ </ClInclude>
</ItemGroup>
<ItemGroup>
<None Include="..\..\src\wall.bmp" />
monster-race/race-indice-types.h \
\
mspell/assign-monster-spell.c mspell/assign-monster-spell.h \
- mspell/monster-power-table.c mspell/monster-spell.h \
- mspell/mspells1.c mspell/mspells2.c mspell/mspells3.c \
+ mspell/monster-power-table.c mspell/monster-power-table..h \
+ mspell/mspells1.c mspell/mspells1.h \
+ mspell/mspells2.c mspell/mspells2.h \
+ mspell/mspells3.c mspell/mspells3.h \
mspell/mspell-summon.c mspell/mspell-summon.h \
mspell/mspell-util.c mspell/mspell-util.h \
mspell/mspell-curse.c mspell/mspell-curse.h \
#include "monster/monster-info.h"
#include "monster-floor/monster-move.h"
#include "monster/monster-update.h"
-#include "mspell/monster-spell.h"
#include "object-enchant/artifact.h"
#include "object-enchant/tr-types.h"
#include "object/object-broken.h"
#include "monster/monster-describer.h"
#include "monster/monster-status.h"
#include "monster/monster-info.h"
-#include "mspell/monster-spell.h"
#include "mspell/mspell-mask-definitions.h"
#include "player/player-effects.h"
#include "view/display-messages.h"
#include "effect/effect-player-curse.h"
#include "mind/mind-mirror-master.h"
#include "monster-race/race-indice-types.h"
-#include "mspell/monster-spell.h"
+#include "mspell/mspells3.h"
#include "object-enchant/object-curse.h"
#include "player/player-damage.h"
#include "player/player-effects.h"
#include "inventory/inventory-damage.h"
#include "mind/mind-mirror-master.h"
#include "monster-race/race-indice-types.h"
-#include "mspell/monster-spell.h"
+#include "mspell/mspells3.h"
#include "mutation/mutation.h"
#include "object/object-broken.h"
#include "player/player-damage.h"
#include "effect/effect-player-spirit.h"
#include "mind/mind-mirror-master.h"
-#include "mspell/monster-spell.h"
+#include "mspell/mspells3.h"
#include "player/player-damage.h"
#include "player/player-effects.h"
#include "view/display-messages.h"
#include "effect/effect-player-spirit.h"
#include "inventory/inventory-damage.h"
#include "mind/mind-mirror-master.h"
-#include "mspell/monster-spell.h"
+#include "mspell/mspells3.h"
#include "object-enchant/object-curse.h"
#include "object/object-broken.h"
#include "player/mimic-info-table.h"
#include "cmd-item/cmd-smith.h"
#include "mind/mind-blue-mage.h"
#include "mspell/monster-power-table.h"
-#include "mspell/monster-spell.h"
+#include "mspell/mspells3.h"
#include "object/object-kind-hook.h"
#include "object/object-kind.h"
#include "mind/mind.h" // do_cmd_mind_browse() がある。後で移設する.
#include "mind/racial.h" // do_cmd_racial_power() がある。ファイル名変更?.
#include "mind/snipe-types.h"
-#include "mspell/monster-spell.h" // do_cmd_cast_learned() がある。後で移設する.
+#include "mspell/mspells3.h" // do_cmd_cast_learned() がある。後で移設する.
#include "player/player-effects.h"
#include "player/player-move.h" // do_cmd_travel() がある。後で移設する.
#include "spell/spells-object.h"
#include "game-option/cheat-options.h"
#include "monster-race/monster-race.h"
#include "monster-race/race-flags1.h"
-#include "mspell/monster-spell.h"
#include "mspell/mspell-damage-calculator.h"
/*!
#include "monster-floor/monster-move.h"
#include "monster-floor/monster-remover.h"
#include "monster/monster-status.h"
-#include "mspell/monster-spell.h"
#include "pet/pet-fall-off.h"
#include "player/player-class.h"
#include "player/player-move.h"
#include "monster-race/monster-race.h"
#include "monster/monster-flag-types.h"
#include "monster/monster-info.h"
-#include "mspell/monster-spell.h"
+#include "mspell/mspells1.h"
/*!
* @brief モンスターが逃げ込める地点を走査する
#include "monster-floor/monster-safety-hiding.h"
#include "monster/monster-status.h"
#include "mspell/mspell-mask-definitions.h"
-#include "mspell/monster-spell.h"
/*!
* @brief モンスターがプレイヤーから逃走するかどうかを返す /
#include "monster-floor/quantum-effect.h"
#include "floor/floor.h"
+#include "monster-floor/monster-death.h"
+#include "monster-floor/monster-remover.h"
#include "monster-race/monster-race.h"
#include "monster-race/race-flags1.h"
#include "monster-race/race-flags2.h"
-#include "monster-floor/monster-death.h"
#include "monster/monster-describer.h"
#include "monster/monster-info.h"
-#include "monster-floor/monster-remover.h"
#include "monster/smart-learn-types.h"
#include "mspell/assign-monster-spell.h"
-#include "mspell/monster-spell.h"
#include "spell-kind/spells-teleport.h"
#include "view/display-messages.h"
#include "monster-race/race-indice-types.h"
#include "monster/monster-list.h"
#include "monster/monster-util.h"
-#include "mspell/monster-spell.h"
#include "mspell/mspell-mask-definitions.h"
#include "util/string-processor.h"
#include "monster/monster-status.h"
#include "monster/monster-update.h"
#include "monster/monster-util.h"
-#include "mspell/monster-spell.h"
+#include "mspell/mspells1.h"
+#include "mspell/mspells2.h"
#include "object-enchant/trc-types.h"
#include "pet/pet-fall-off.h"
#include "player/avatar.h"
#include "monster/monster-update.h"
#include "monster/monster-util.h"
#include "monster/smart-learn-types.h"
-#include "mspell/monster-spell.h"
#include "mspell/mspell-mask-definitions.h"
#include "object-enchant/object-curse.h"
#include "player/avatar.h"
#include "monster-race/race-flags7.h"
#include "monster-race/monster-race-hook.h"
#include "monster-race/race-indice-types.h"
-#include "mspell/monster-spell.h"
#include "mspell/mspell-mask-definitions.h"
#include "spell/spells-summon.h"
#include "system/alloc-entries.h"
*/
#include "mspell/assign-monster-spell.h"
-#include "mspell/monster-spell.h"
#include "mspell/mspell-ball.h"
#include "mspell/mspell-bolt.h"
#include "mspell/mspell-breath.h"
+++ /dev/null
-#pragma once
-
-#include "system/monster-type-definition.h"
-
-/* mspells1.c */
-extern bool clean_shot(player_type *target_ptr, POSITION y1, POSITION x1, POSITION y2, POSITION x2, bool is_friend);
-extern bool summon_possible(player_type *target_ptr, POSITION y1, POSITION x1);
-extern bool raise_possible(player_type *target_ptr, monster_type *m_ptr);
-extern bool dispel_check(player_type *creature_ptr, MONSTER_IDX m_idx);
-extern bool spell_is_inate(SPELL_IDX spell);
-extern bool make_attack_spell(MONSTER_IDX m_idx, player_type *target_ptr);
-extern void beam(player_type *target_ptr, MONSTER_IDX m_idx, POSITION y, POSITION x, EFFECT_ID typ, int dam_hp, int monspell, int target_type);
-extern void bolt(player_type *target_ptr, MONSTER_IDX m_idx, POSITION y, POSITION x, EFFECT_ID typ, int dam_hp, int monspell, int target_type);
-extern void breath(player_type *target_ptr, POSITION y, POSITION x, MONSTER_IDX m_idx, EFFECT_ID typ, int dam_hp, POSITION rad, bool breath, int monspell, int target_type);
-
-/* mspells2.c */
-extern void get_project_point(player_type *target_ptr, POSITION sy, POSITION sx, POSITION *ty, POSITION *tx, BIT_FLAGS flg);
-extern bool monst_spell_monst(player_type *target_ptr, MONSTER_IDX m_idx);
-
-/* mspells3.c */
-extern bool do_cmd_cast_learned(player_type *caster_ptr);
-extern void learn_spell(player_type *learner_ptr, int monspell);
-extern void set_rf_masks(BIT_FLAGS *f4, BIT_FLAGS *f5, BIT_FLAGS *f6, BIT_FLAGS mode);
#include "monster/monster-info.h"
#include "monster/monster-status.h"
#include "monster/monster-update.h"
-#include "mspell/monster-spell.h"
+#include "mspell/mspells1.h"
#include "mspell/mspell-damage-calculator.h"
#include "mspell/mspell-type.h"
#include "mspell/mspell-util.h"
#include "mind/drs-types.h"
#include "monster/monster-info.h"
#include "monster/monster-update.h"
-#include "mspell/monster-spell.h"
#include "mspell/mspell-damage-calculator.h"
#include "mspell/mspell-type.h"
#include "mspell/mspell-util.h"
+#include "mspell/mspells1.h"
#include "spell/spell-types.h"
/*!
#include "monster-race/race-indice-types.h"
#include "monster/monster-info.h"
#include "monster/monster-update.h"
-#include "mspell/monster-spell.h"
#include "mspell/mspell-damage-calculator.h"
#include "mspell/mspell-util.h"
+#include "mspell/mspells1.h"
#include "player/player-move.h"
#include "spell/spell-types.h"
#include "view/display-messages.h"
#include "mspell/mspell-curse.h"
#include "monster/monster-info.h"
#include "monster/monster-list.h"
-#include "mspell/monster-spell.h"
#include "mspell/mspell-damage-calculator.h"
#include "mspell/mspell-type.h"
#include "mspell/mspell-util.h"
+#include "mspell/mspells1.h"
#include "player/player-move.h"
#include "spell/spell-types.h"
#include "view/display-messages.h"
#include "monster-race/monster-race.h"
#include "monster-race/race-flags2.h"
#include "monster/monster-status.h"
-#include "mspell/monster-spell.h"
/*!
* @brief モンスターの使う呪文の威力を決定する /
#include "monster/monster-info.h"
#include "monster/monster-status.h"
#include "monster/monster-update.h"
-#include "mspell/monster-spell.h"
#include "mspell/mspell-status.h"
#include "mspell/mspell-type.h"
#include "mspell/mspell-util.h"
+#include "mspell/mspells3.h"
#include "player/player-move.h"
#include "player/player-personalities-types.h"
#include "spell/process-effect.h"
* Performing special spells that take damage, not bolts, balls or breaths
* @date 2020/05/16
* @author Hourier
- * @details 肥大化しやすいファイル名なので、関数の追加時は共通部分を別ファイルに抜き出せるか検討すること /
+ * @details 肥大化しやすいファイル名なので、関数の追加時は共通部分を別ファイルに抜き出せるか検討すること /
* This is a filename that tends to be bloated.
* So when adding a function, please consider whether you can extract the common part to another file.
*/
#include "mspell/mspell-particularity.h"
#include "mind/drs-types.h"
#include "monster/monster-update.h"
+#include "mspell/mspell-damage-calculator.h"
#include "mspell/mspell-type.h"
-#include "mspell/monster-spell.h"
-#include "spell/spell-types.h"
#include "mspell/mspell-util.h"
-#include "mspell/mspell-damage-calculator.h"
+#include "mspell/mspells1.h"
+#include "spell/spell-types.h"
/*!
* @brief RF4_ROCKETの処理。ロケット。 /
* @param TARGET_TYPE プレイヤーを対象とする場合MONSTER_TO_PLAYER、モンスターを対象とする場合MONSTER_TO_MONSTER
* @return ダメージ量を返す。
*/
-HIT_POINT spell_RF4_ROCKET(player_type* target_ptr, POSITION y, POSITION x, MONSTER_IDX m_idx, MONSTER_IDX t_idx, int TARGET_TYPE)
+HIT_POINT spell_RF4_ROCKET(player_type *target_ptr, POSITION y, POSITION x, MONSTER_IDX m_idx, MONSTER_IDX t_idx, int TARGET_TYPE)
{
HIT_POINT dam;
- monspell_message(target_ptr, m_idx, t_idx,
- _("%^sが何かを射った。", "%^s shoots something."),
- _("%^sがロケットを発射した。", "%^s fires a rocket."),
- _("%^sが%sにロケットを発射した。", "%^s fires a rocket at %s."),
- TARGET_TYPE);
+ monspell_message(target_ptr, m_idx, t_idx, _("%^sが何かを射った。", "%^s shoots something."), _("%^sがロケットを発射した。", "%^s fires a rocket."),
+ _("%^sが%sにロケットを発射した。", "%^s fires a rocket at %s."), TARGET_TYPE);
dam = monspell_damage(target_ptr, (MS_ROCKET), m_idx, DAM_ROLL);
breath(target_ptr, y, x, m_idx, GF_ROCKET, dam, 2, FALSE, MS_ROCKET, TARGET_TYPE);
* @param TARGET_TYPE プレイヤーを対象とする場合MONSTER_TO_PLAYER、モンスターを対象とする場合MONSTER_TO_MONSTER
* @return ダメージ量を返す。
*/
-HIT_POINT spell_RF6_HAND_DOOM(player_type* target_ptr, POSITION y, POSITION x, MONSTER_IDX m_idx, MONSTER_IDX t_idx, int TARGET_TYPE)
+HIT_POINT spell_RF6_HAND_DOOM(player_type *target_ptr, POSITION y, POSITION x, MONSTER_IDX m_idx, MONSTER_IDX t_idx, int TARGET_TYPE)
{
- simple_monspell_message(target_ptr, m_idx, t_idx,
- _("%^sが<破滅の手>を放った!", "%^s invokes the Hand of Doom!"),
- _("%^sが%sに<破滅の手>を放った!", "%^s invokes the Hand of Doom upon %s!"),
- TARGET_TYPE);
+ simple_monspell_message(target_ptr, m_idx, t_idx, _("%^sが<破滅の手>を放った!", "%^s invokes the Hand of Doom!"),
+ _("%^sが%sに<破滅の手>を放った!", "%^s invokes the Hand of Doom upon %s!"), TARGET_TYPE);
HIT_POINT dam = 0;
if (TARGET_TYPE == MONSTER_TO_PLAYER) {
* @param TARGET_TYPE プレイヤーを対象とする場合MONSTER_TO_PLAYER、モンスターを対象とする場合MONSTER_TO_MONSTER
* @return ダメージ量を返す。
*/
-HIT_POINT spell_RF6_PSY_SPEAR(player_type* target_ptr, POSITION y, POSITION x, MONSTER_IDX m_idx, MONSTER_IDX t_idx, int TARGET_TYPE)
+HIT_POINT spell_RF6_PSY_SPEAR(player_type *target_ptr, POSITION y, POSITION x, MONSTER_IDX m_idx, MONSTER_IDX t_idx, int TARGET_TYPE)
{
- monspell_message(target_ptr, m_idx, t_idx,
- _("%^sが何かをつぶやいた。", "%^s mumbles."),
- _("%^sが光の剣を放った。", "%^s throw a Psycho-Spear."),
- _("%^sが%sに向かって光の剣を放った。", "%^s throw a Psycho-spear at %s."),
- TARGET_TYPE);
+ monspell_message(target_ptr, m_idx, t_idx, _("%^sが何かをつぶやいた。", "%^s mumbles."), _("%^sが光の剣を放った。", "%^s throw a Psycho-Spear."),
+ _("%^sが%sに向かって光の剣を放った。", "%^s throw a Psycho-spear at %s."), TARGET_TYPE);
HIT_POINT dam = monspell_damage(target_ptr, (MS_PSY_SPEAR), m_idx, DAM_ROLL);
beam(target_ptr, m_idx, y, x, GF_PSY_SPEAR, dam, MS_PSY_SPEAR, MONSTER_TO_PLAYER);
#include "monster/monster-description-types.h"
#include "monster/monster-info.h"
#include "monster/monster-util.h"
-#include "mspell/monster-spell.h"
#include "mspell/mspell-util.h"
+#include "mspell/mspells1.h"
#include "player/player-damage.h"
#include "player/player-effects.h"
#include "player/player-move.h"
#include "monster/monster-info.h"
#include "monster/monster-status.h"
#include "monster/monster-update.h"
-#include "mspell/monster-spell.h"
#include "mspell/mspell-damage-calculator.h"
#include "mspell/mspell-util.h"
+#include "mspell/mspells1.h"
+#include "mspell/mspells3.h"
#include "player/player-effects.h"
#include "player/player-move.h"
#include "player/player-personalities-types.h"
#include "monster/monster-description-types.h"
#include "monster/monster-info.h"
#include "monster/monster-status.h"
-#include "mspell/monster-spell.h"
#include "mspell/mspell-util.h"
+#include "mspell/mspells1.h"
#include "player/player-move.h"
#include "spell-kind/spells-launcher.h"
#include "spell/process-effect.h"
#include "mspell/mspell-util.h"
#include "monster/monster-info.h"
-#include "mspell/monster-spell.h"
#include "player/player-move.h"
#include "view/display-messages.h"
* 2014 Deskull rearranged comment for Doxygen.
*/
-#include "system/angband.h"
+#include "mspell/mspells1.h"
#include "dungeon/dungeon.h"
#include "dungeon/quest.h"
#include "effect/effect-characteristics.h"
#include "game-option/birth-options.h"
#include "grid/grid.h"
+#include "monster-floor/monster-move.h"
#include "monster-race/monster-race.h"
#include "monster-race/race-flags-ability1.h"
#include "monster-race/race-flags-ability2.h"
#include "monster/monster-description-types.h"
#include "monster/monster-flag-types.h"
#include "monster/monster-info.h"
-#include "monster-floor/monster-move.h"
#include "monster/monster-status.h"
#include "monster/smart-learn-types.h"
#include "mspell/assign-monster-spell.h"
-#include "mspell/monster-spell.h"
#include "mspell/mspell-learn-checker.h"
#include "mspell/mspell-mask-definitions.h"
#include "mspell/mspell-util.h"
+#include "mspell/mspells2.h"
+#include "mspell/mspells3.h"
#include "object-enchant/object-curse.h"
#include "player/player-class.h"
#include "player/player-move.h"
--- /dev/null
+#pragma once
+
+#include "system/angband.h"
+#include "system/monster-type-definition.h"
+
+bool clean_shot(player_type *target_ptr, POSITION y1, POSITION x1, POSITION y2, POSITION x2, bool is_friend);
+bool summon_possible(player_type *target_ptr, POSITION y1, POSITION x1);
+bool raise_possible(player_type *target_ptr, monster_type *m_ptr);
+bool dispel_check(player_type *creature_ptr, MONSTER_IDX m_idx);
+bool spell_is_inate(SPELL_IDX spell);
+bool make_attack_spell(MONSTER_IDX m_idx, player_type *target_ptr);
+void beam(player_type *target_ptr, MONSTER_IDX m_idx, POSITION y, POSITION x, EFFECT_ID typ, int dam_hp, int monspell, int target_type);
+void bolt(player_type *target_ptr, MONSTER_IDX m_idx, POSITION y, POSITION x, EFFECT_ID typ, int dam_hp, int monspell, int target_type);
+void breath(
+ player_type *target_ptr, POSITION y, POSITION x, MONSTER_IDX m_idx, EFFECT_ID typ, int dam_hp, POSITION rad, bool breath, int monspell, int target_type);
* 2014 Deskull rearranged comment for Doxygen.
*/
-#include "system/angband.h"
+#include "mspell/mspells2.h"
#include "dungeon/dungeon.h"
#include "dungeon/quest.h"
#include "effect/effect-characteristics.h"
#include "floor/floor.h"
#include "grid/grid.h"
#include "main/sound-definitions-table.h"
+#include "monster-floor/monster-move.h"
#include "monster-race/monster-race.h"
#include "monster-race/race-flags-ability1.h"
#include "monster-race/race-flags-ability2.h"
#include "monster/monster-describer.h"
#include "monster/monster-description-types.h"
#include "monster/monster-info.h"
-#include "monster-floor/monster-move.h"
#include "monster/monster-status.h"
#include "mspell/assign-monster-spell.h"
-#include "mspell/monster-spell.h"
#include "mspell/mspell-mask-definitions.h"
#include "mspell/mspell-util.h"
+#include "mspell/mspells1.h"
#include "pet/pet-util.h"
#include "player/player-class.h"
#include "player/player-move.h"
--- /dev/null
+#pragma once
+
+#include "system/angband.h"
+
+void get_project_point(player_type *target_ptr, POSITION sy, POSITION sx, POSITION *ty, POSITION *tx, BIT_FLAGS flg);
+bool monst_spell_monst(player_type *target_ptr, MONSTER_IDX m_idx);
* 2014 Deskull rearranged comment for Doxygen.
*/
-#include "system/angband.h"
+#include "mspell/mspells3.h"
#include "cmd-action/cmd-spell.h"
#include "cmd/cmd-basic.h"
#include "core/asking-player.h"
#include "monster/monster-info.h"
#include "monster/monster-status.h"
#include "mspell/monster-power-table.h"
-#include "mspell/monster-spell.h"
#include "mspell/mspell-damage-calculator.h"
#include "mspell/mspell-mask-definitions.h"
#include "mspell/mspell-type.h"
#include "spell-kind/spells-neighbor.h"
#include "spell-kind/spells-sight.h"
#include "spell-kind/spells-teleport.h"
+#include "spell/spell-types.h"
#include "spell/spells-status.h"
#include "spell/spells-summon.h"
-#include "spell/spell-types.h"
#include "spell/spells3.h"
#include "term/screen-processor.h"
#include "util/int-char-converter.h"
--- /dev/null
+#pragma once
+
+#include "system/angband.h"
+
+bool do_cmd_cast_learned(player_type *caster_ptr);
+void learn_spell(player_type *learner_ptr, int monspell);
+void set_rf_masks(BIT_FLAGS *f4, BIT_FLAGS *f5, BIT_FLAGS *f6, BIT_FLAGS mode);
#include "monster-race/race-indice-types.h"
#include "monster/monster-info.h"
#include "monster/monster-status.h"
-#include "mspell/monster-spell.h"
#include "mspell/mspell-damage-calculator.h"
#include "mspell/mspell-type.h"
#include "object-enchant/tr-types.h"
#include "main/sound-of-music.h"
#include "market/arena-info-table.h"
#include "mind/mind-mirror-master.h"
-#include "monster/monster-describer.h"
#include "monster-race/monster-race.h"
#include "monster-race/race-flags2.h"
#include "monster-race/race-flags3.h"
+#include "monster/monster-describer.h"
#include "monster/monster-description-types.h"
#include "monster/monster-info.h"
-#include "mspell/monster-spell.h"
+#include "mspell/mspells3.h"
#include "object-enchant/tr-types.h"
#include "object/object-broken.h"
#include "object/object-flags.h"
#include "locale/vowel-checker.h"
#include "mind/mind-sniper.h"
#include "monster/monster-status.h"
-#include "mspell/monster-spell.h"
#include "mutation/mutation.h"
#include "object-enchant/artifact.h"
#include "object-enchant/item-feeling.h"
#include "monster/monster-info.h"
#include "monster/monster-status.h"
#include "monster/monster-update.h"
-#include "mspell/monster-spell.h"
#include "object-enchant/special-object-flags.h"
#include "object/object-flavor.h"
#include "object/object-hook.h"
#include "monster/monster-status.h"
#include "monster/monster-update.h"
#include "monster/monster-util.h"
-#include "mspell/monster-spell.h"
#include "object-enchant/artifact.h"
#include "object-enchant/item-feeling.h"
#include "object-enchant/object-boost.h"
#include "monster/monster-info.h"
#include "monster/monster-status.h"
#include "monster/smart-learn-types.h"
-#include "mspell/monster-spell.h"
+#include "mspell/mspells3.h"
#include "mutation/mutation.h"
#include "object-enchant/apply-magic.h"
#include "object-enchant/artifact.h"