#include "trap.h"
#include "object-curse.h"
#include "player-damage.h"
+
+#include "monster.h"
+#include "monster-status.h"
+#include "spells-summon.h"
#include "monsterrace-hook.h"
+
#include "melee.h"
#include "world.h"
+#include "projection.h"
+#include "mutation.h"
+#include "rooms.h"
static int rakubadam_m; /*!< 振り落とされた際のダメージ量 */
* @param cury 現在の鏡のy座標
* @param curx 現在の鏡のx座標
*/
-static void next_mirror(int* next_y, int* next_x, int cury, int curx)
+static void next_mirror(POSITION* next_y, POSITION* next_x, POSITION cury, POSITION curx)
{
- int mirror_x[10], mirror_y[10]; /* 鏡はもっと少ない */
+ POSITION mirror_x[10], mirror_y[10]; /* 鏡はもっと少ない */
int mirror_num = 0; /* 鏡の数 */
POSITION x, y;
int num;
if (fuzzy) msg_print(_("何か湿ったもので攻撃された!", "You are hit by something wet!"));
if (!CHECK_MULTISHADOW())
{
- if (!p_ptr->resist_sound)
+ if (!p_ptr->resist_sound && !p_ptr->resist_water)
{
set_stun(p_ptr->stun + randint1(40));
}
- if (!p_ptr->resist_conf)
+ if (!p_ptr->resist_conf && !p_ptr->resist_water)
{
set_confused(p_ptr->confused + randint1(5) + 5);
}
- if (one_in_(5))
+ if (one_in_(5) && !p_ptr->resist_water)
{
inven_damage(set_cold_destroy, 3);
}
+
+ if (p_ptr->resist_water) get_damage /= 4;
}
get_damage = take_hit(DAMAGE_ATTACK, dam, killer, monspell);