#include "player-race.h"
#include "player-class.h"
+#define DO_SPELL_NONE 0
+#define DO_SPELL_BR_LITE 1
+#define DO_SPELL_BR_DISI 2
+#define DO_SPELL_BA_LITE 3
/*!
* @brief モンスターがプレイヤーの弱点をついた選択を取るかどうかの判定 /
u32b smart = 0L;
-
/* Too stupid to know anything */
if (r_ptr->flags2 & RF2_STUPID) return;
/*!
* @brief モンスターにとって所定の地点が召還に相応しい地点かどうかを返す。 /
* Determine if there is a space near the player in which a summoned creature can appear
+ * @param caster_ptr プレーヤーへの参照ポインタ
* @param y1 判定を行いたいマスのY座標
* @param x1 判定を行いたいマスのX座標
* @return 召還に相応しいならばTRUEを返す
/*!
* @brief モンスターにとって死者復活を行うべき状態かどうかを返す /
* Determine if there is a space near the player in which a summoned creature can appear
+ * @param caster_ptr プレーヤーへの参照ポインタ
* @param m_ptr 判定を行いたいモンスターの構造体参照ポインタ
* @return 死者復活が有効な状態ならばTRUEを返す。
*/
}
-
/*!
* @brief モンスターにとってボルト型魔法が有効な状態かを返す /
* Determine if a bolt spell will hit the player.
+ * @param caster_ptr プレーヤーへの参照ポインタ
* @param y1 ボルト魔法発射地点のY座標
* @param x1 ボルト魔法発射地点のX座標
* @param y2 ボルト魔法目標地点のY座標
return TRUE;
}
+
/*!
* @brief モンスターのボルト型魔法処理 /
* Cast a bolt at the player Stop if we hit a monster Affect monsters and the player
+ * @param caster_ptr プレーヤーへの参照ポインタ
* @param m_idx モンスターのID
* @param y 目標のY座標
* @param x 目標のX座標
(void)project(p_ptr, m_idx, 0, y, x, dam_hp, typ, flg, (learnable ? monspell : -1));
}
+
/*!
* @brief モンスターのビーム型魔法処理 /
+ * @param caster_ptr プレーヤーへの参照ポインタ
* @param m_idx モンスターのID
* @param y 目標のY座標
* @param x 目標のX座標
/*!
* @brief モンスターのボール型&ブレス型魔法処理 /
* Cast a breath (or ball) attack at the player Pass over any monsters that may be in the way Affect grids, objects, monsters, and the player
+ * @param caster_ptr プレーヤーへの参照ポインタ
* @param y 目標地点のY座標
* @param x 目標地点のX座標
* @param m_idx モンスターのID
}
-
-
/*!
* @brief ID値が正しいモンスター魔法IDかどうかを返す /
* Return TRUE if a spell is good for hurting the player (directly).
return FALSE;
}
+
/*!
* @brief ID値が妨害目的に適したモンスター魔法IDかどうかを返す /
* Return TRUE if a spell is good for annoying the player.
return FALSE;
}
+
/*!
* @brief ID値が召喚型のモンスター魔法IDかどうかを返す /
* Return TRUE if a spell is good for annoying the player.
return FALSE;
}
+
/*!
* @brief ID値が戦術的なモンスター魔法IDかどうかを返す /
* Return TRUE if a spell is good in a tactical situation.
return FALSE;
}
+
/*!
* @brief ID値が無敵化するモンスター魔法IDかどうかを返す /
* Return TRUE if a spell makes invulnerable.
return FALSE;
}
+
/*!
* @brief ID値が加速するモンスター魔法IDかどうかを返す /
* Return TRUE if a spell hastes.
/*!
* @brief ID値が特別効果のモンスター魔法IDかどうかを返す /
* Return TRUE if a spell special.
+ * @param caster_ptr プレーヤーへの参照ポインタ
* @param spell 判定対象のID
* @return 特別効果魔法のIDならばTRUEを返す。
*/
/*!
* @brief モンスターの魔法選択ルーチン
* Have a monster choose a spell from a list of "useful" spells.
+ * @param caster_ptr プレーヤーへの参照ポインタ
* @param m_idx モンスターの構造体配列ID
* @param spells 候補魔法IDをまとめた配列
* @param num spellsの長さ
}
/* Choose no spell */
- return (0);
+ return 0;
}
/*!
* @brief モンスターがプレイヤーにダメージを与えるための最適な座標を算出する /
+ * @param caster_ptr プレーヤーへの参照ポインタ
* @param m_ptr 技能を使用するモンスター構造体の参照ポインタ
* @param yp 最適な目標地点のY座標を返す参照ポインタ
* @param xp 最適な目標地点のX座標を返す参照ポインタ
return FALSE;
}
-#define DO_SPELL_NONE 0
-#define DO_SPELL_BR_LITE 1
-#define DO_SPELL_BR_DISI 2
-#define DO_SPELL_BA_LITE 3
/*!
+ * todo メインルーチンの割に長過ぎる。要分割
* @brief モンスターの特殊技能メインルーチン /
* Creatures can cast spells, shoot missiles, and breathe.
+ * @param caster_ptr プレーヤーへの参照ポインタ
* @param m_idx モンスター構造体配列のID
* @return 実際に特殊技能を利用したらTRUEを返す
* @details
}
}
-
/* Always take note of monsters that kill you */
if (target_ptr->is_dead && (r_ptr->r_deaths < MAX_SHORT) && !target_ptr->current_floor_ptr->inside_arena)
{