#include "angband.h"
#include "util.h"
+#include "main/sound-definitions-table.h"
-#include "cmd-dump.h"
+#include "io/write-diary.h"
+#include "cmd/cmd-dump.h"
+#include "cmd/cmd-save.h"
#include "trap.h"
#include "player-damage.h"
#include "player-move.h"
#include "feature.h"
#include "player-status.h"
#include "grid.h"
-#include "spells.h"
-#include "floor.h"
+#include "spell/spells-type.h"
+#include "effect/effect-characteristics.h"
#include "floor-save.h"
#include "init.h"
#include "files.h"
#include "dungeon.h"
#include "world.h"
+#include "spell/process-effect.h"
static s16b normal_traps[MAX_NORMAL_TRAPS];
take_hit(trapped_ptr, DAMAGE_NOESCAPE, dam, trap_name, -1);
}
+
/*!
* @brief ダーツ系トラップ(通常ダメージ)の判定とプレイヤーの被害処理
* @return ダーツが命中した場合TRUEを返す
}
}
+
/*!
-* @brief ダーツ系トラップ(通常ダメージ+状態異常)の判定とプレイヤーの被害処理
-* @param trap_message メッセージの補完文字列
-* @param resist 状態異常に抵抗する判定が出たならTRUE
-* @param set_status 状態異常を指定する関数ポインタ
-* @param turn_aux 状態異常の追加ターン量
-* @return なし
-*/
+ * @brief ダーツ系トラップ(通常ダメージ+状態異常)の判定とプレイヤーの被害処理
+ * @param trap_message メッセージの補完文字列
+ * @param resist 状態異常に抵抗する判定が出たならTRUE
+ * @param set_status 状態異常を指定する関数ポインタ
+ * @param turn_aux 状態異常の追加ターン量
+ * @return なし
+ */
static void hit_trap_set_abnormal_status_p(player_type *trapped_ptr, concptr trap_message, bool resist, bool(*set_status)(player_type *, IDX), IDX turn_aux)
{
msg_print(trap_message);
}
}
+
/*!
-* @brief プレイヤーへのトラップ作動処理メインルーチン /
-* Handle player hitting a real trap
-* @param break_trap 作動後のトラップ破壊が確定しているならばTRUE
-* @return なし
-*/
+ * todo cmd-save.h への依存あり。コールバックで何とかしたい
+ * @brief プレイヤーへのトラップ作動処理メインルーチン /
+ * Handle player hitting a real trap
+ * @param break_trap 作動後のトラップ破壊が確定しているならばTRUE
+ * @return なし
+ */
void hit_trap(player_type *trapped_ptr, bool break_trap)
{
int i, num, dam;
if (autosave_l && (trapped_ptr->chp >= 0))
do_cmd_save_game(trapped_ptr, TRUE);
- exe_write_diary(trapped_ptr, DIARY_DESCRIPTION, 0, _("落とし戸に落ちた", "You have fallen through a trap door!"));
+ exe_write_diary(trapped_ptr, DIARY_DESCRIPTION, 0, _("落とし戸に落ちた", "fell through a trap door!"));
prepare_change_floor_mode(trapped_ptr, CFM_SAVE_FLOORS | CFM_DOWN | CFM_RAND_PLACE | CFM_RAND_CONNECT);
trapped_ptr->leaving = TRUE;
}
}
}
}
+
break;
}