1 #include "action/action-limited.h"
2 #include "dungeon/dungeon-flag-types.h"
3 #include "dungeon/dungeon.h"
4 #include "game-option/disturbance-options.h"
6 #include "main/sound-definitions-table.h"
7 #include "main/sound-of-music.h"
8 #include "system/floor-type-definition.h"
9 #include "term/screen-processor.h"
10 #include "view/display-messages.h"
13 * @brief 魔法系コマンドが制限されているかを返す。
14 * @return 魔法系コマンドを使用可能ならFALSE、不可能ならば理由をメッセージ表示してTRUEを返す。
16 bool cmd_limit_cast(player_type *creature_ptr)
18 if (creature_ptr->current_floor_ptr->dun_level && (d_info[creature_ptr->dungeon_idx].flags1 & DF1_NO_MAGIC)) {
19 msg_print(_("ダンジョンが魔法を吸収した!", "The dungeon absorbs all attempted magic!"));
24 if (creature_ptr->anti_magic) {
25 msg_print(_("反魔法バリアが魔法を邪魔した!", "An anti-magic shell disrupts your magic!"));
29 if (creature_ptr->shero) {
30 msg_format(_("狂戦士化していて頭が回らない!", "You cannot think directly!"));
37 bool cmd_limit_confused(player_type *creature_ptr)
39 if (creature_ptr->confused) {
40 msg_print(_("混乱していてできない!", "You are too confused!"));
47 bool cmd_limit_image(player_type *creature_ptr)
49 if (creature_ptr->image) {
50 msg_print(_("幻覚が見えて集中できない!", "Your hallucinations prevent you from concentrating!"));
57 bool cmd_limit_stun(player_type *creature_ptr)
59 if (creature_ptr->stun) {
60 msg_print(_("頭が朦朧としていて集中できない!", "You are too stunned!"));
67 bool cmd_limit_arena(player_type *creature_ptr)
69 if (creature_ptr->current_floor_ptr->inside_arena) {
70 msg_print(_("アリーナが魔法を吸収した!", "The arena absorbs all attempted magic!"));
78 bool cmd_limit_blind(player_type *creature_ptr)
80 if (creature_ptr->blind) {
81 msg_print(_("目が見えない。", "You can't see anything."));
85 if (no_lite(creature_ptr)) {
86 msg_print(_("明かりがないので見えない。", "You have no light."));
93 bool cmd_limit_time_walk(player_type *creature_ptr)
95 if (creature_ptr->timewalk) {
99 msg_print(_("止まった時の中ではうまく働かないようだ。", "It shows no reaction."));