BIT_FLAGS flg = PROJECT_STOP | PROJECT_GRID | PROJECT_ITEM | PROJECT_KILL;
- if (typ == GF_CONTROL_LIVING) flg|= PROJECT_HIDE;
+ if (typ == GF_CHARM_LIVING) flg|= PROJECT_HIDE;
/* Use the given direction */
tx = p_ptr->x + 99 * ddx[dir];
ty = p_ptr->y + 99 * ddy[dir];
return (project(0, rad, ty, tx, dam, typ, flg, -1));
}
+/*!
+* @brief ブレス系スペルの発動 / Cast a breath spell
+* @param typ 効果属性
+* @param dir 方向(5ならばグローバル変数 target_col/target_row の座標を目標にする)
+* @param dam 威力
+* @param rad 半径
+* @return 作用が実際にあった場合TRUEを返す
+* @details
+* <pre>
+* Stop if we hit a monster, act as a "ball"
+* Allow "target" mode to pass over monsters
+* Affect grids, objects, and monsters
+* </pre>
+*/
+bool fire_breath(int typ, int dir, HIT_POINT dam, int rad)
+{
+ fire_ball(typ, dir, dam, -rad);
+}
/*!
}
/*!
- * @brief 吸血ボルト処理
+ * @brief 衰弱ボルト処理
* @param dir 方向(5ならばグローバル変数 target_col/target_row の座標を目標にする)
* @param dam 威力
* @return 作用が実際にあった場合TRUEを返す
*/
-bool drain_life(int dir, HIT_POINT dam)
+bool hypodynamic_bolt(int dir, HIT_POINT dam)
{
BIT_FLAGS flg = PROJECT_STOP | PROJECT_KILL | PROJECT_REFLECTABLE;
- return (project_hook(GF_OLD_DRAIN, dir, dam, flg));
+ return (project_hook(GF_HYPODYNAMIA, dir, dam, flg));
}
/*!
return (project_hook(GF_CONTROL_ANIMAL, dir, plev, flg));
}
-/*!
- * @brief 生物支配(1体)
- * @param dir 方向(5ならばグローバル変数 target_col/target_row の座標を目標にする)
- * @param plev パワー
- * @return 作用が実際にあった場合TRUEを返す
- */
-bool charm_living(int dir, int plev)
-{
- BIT_FLAGS flg = PROJECT_STOP | PROJECT_KILL;
- return (project_hook(GF_CONTROL_LIVING, dir, plev, flg));
-}
/*!
* @brief 変わり身処理