OSDN Git Service

[Refactor] #2204 HIT_POINTエイリアスをintに揃えた
[hengbandforosx/hengbandosx.git] / src / spell-realm / spells-chaos.cpp
index f4fbf2b..8d64d83 100644 (file)
@@ -3,6 +3,7 @@
 #include "core/player-update-types.h"
 #include "core/window-redrawer.h"
 #include "dungeon/quest.h"
+#include "effect/attribute-types.h"
 #include "effect/effect-characteristics.h"
 #include "effect/effect-processor.h"
 #include "floor/cave.h"
@@ -16,7 +17,6 @@
 #include "player/player-damage.h"
 #include "spell-kind/spells-floor.h"
 #include "spell-kind/spells-launcher.h"
-#include "effect/attribute-types.h"
 #include "system/floor-type-definition.h"
 #include "system/grid-type-definition.h"
 #include "system/monster-type-definition.h"
  * @details
  * Sorry, it becomes not (void)...
  */
-void call_the_void(player_type *player_ptr)
+void call_the_void(PlayerType *player_ptr)
 {
     bool do_call = true;
     auto *floor_ptr = player_ptr->current_floor_ptr;
     for (int i = 0; i < 9; i++) {
         auto *g_ptr = &floor_ptr->grid_array[player_ptr->y + ddy_ddd[i]][player_ptr->x + ddx_ddd[i]];
 
-        if (!g_ptr->cave_has_flag(FF::PROJECT)) {
-            if (!g_ptr->mimic || f_info[g_ptr->mimic].flags.has_not(FF::PROJECT) || !permanent_wall(&f_info[g_ptr->feat])) {
+        if (!g_ptr->cave_has_flag(FloorFeatureType::PROJECT)) {
+            if (!g_ptr->mimic || f_info[g_ptr->mimic].flags.has_not(FloorFeatureType::PROJECT) || !permanent_wall(&f_info[g_ptr->feat])) {
                 do_call = false;
                 break;
             }
@@ -65,7 +65,7 @@ void call_the_void(player_type *player_ptr)
         return;
     }
 
-    bool is_special_fllor = floor_ptr->inside_quest && quest_type::is_fixed(floor_ptr->inside_quest);
+    bool is_special_fllor = inside_quest(floor_ptr->quest_number) && quest_type::is_fixed(floor_ptr->quest_number);
     is_special_fllor |= floor_ptr->dun_level > 0;
     if (is_special_fllor) {
         msg_print(_("地面が揺れた。", "The ground trembles."));
@@ -101,11 +101,11 @@ void call_the_void(player_type *player_ptr)
  * @param player_ptr 術者の参照ポインタ
  * @return 実際に処理が反映された場合TRUE
  */
-bool vanish_dungeon(player_type *player_ptr)
+bool vanish_dungeon(PlayerType *player_ptr)
 {
     auto *floor_ptr = player_ptr->current_floor_ptr;
-    bool is_special_floor = floor_ptr->inside_quest && quest_type::is_fixed(floor_ptr->inside_quest);
-    is_special_floor |= floor_ptr->dun_level > 0;
+    bool is_special_floor = inside_quest(floor_ptr->quest_number) && quest_type::is_fixed(floor_ptr->quest_number);
+    is_special_floor |= (floor_ptr->dun_level == 0);
     if (is_special_floor)
         return false;
 
@@ -125,8 +125,8 @@ bool vanish_dungeon(player_type *player_ptr)
                 }
             }
 
-            if (f_ptr->flags.has(FF::HURT_DISI))
-                cave_alter_feat(player_ptr, y, x, FF::HURT_DISI);
+            if (f_ptr->flags.has(FloorFeatureType::HURT_DISI))
+                cave_alter_feat(player_ptr, y, x, FloorFeatureType::HURT_DISI);
         }
     }
 
@@ -135,9 +135,9 @@ bool vanish_dungeon(player_type *player_ptr)
         auto *f_ptr = &f_info[g_ptr->mimic];
         g_ptr->info &= ~(CAVE_ROOM | CAVE_ICKY);
 
-        if (g_ptr->mimic && f_ptr->flags.has(FF::HURT_DISI)) {
-            g_ptr->mimic = feat_state(floor_ptr, g_ptr->mimic, FF::HURT_DISI);
-            if (f_info[g_ptr->mimic].flags.has_not(FF::REMEMBER))
+        if (g_ptr->mimic && f_ptr->flags.has(FloorFeatureType::HURT_DISI)) {
+            g_ptr->mimic = feat_state(floor_ptr, g_ptr->mimic, FloorFeatureType::HURT_DISI);
+            if (f_info[g_ptr->mimic].flags.has_not(FloorFeatureType::REMEMBER))
                 g_ptr->info &= ~(CAVE_MARK);
         }
 
@@ -145,9 +145,9 @@ bool vanish_dungeon(player_type *player_ptr)
         f_ptr = &f_info[g_ptr->mimic];
         g_ptr->info &= ~(CAVE_ROOM | CAVE_ICKY);
 
-        if (g_ptr->mimic && f_ptr->flags.has(FF::HURT_DISI)) {
-            g_ptr->mimic = feat_state(floor_ptr, g_ptr->mimic, FF::HURT_DISI);
-            if (f_info[g_ptr->mimic].flags.has_not(FF::REMEMBER))
+        if (g_ptr->mimic && f_ptr->flags.has(FloorFeatureType::HURT_DISI)) {
+            g_ptr->mimic = feat_state(floor_ptr, g_ptr->mimic, FloorFeatureType::HURT_DISI);
+            if (f_info[g_ptr->mimic].flags.has_not(FloorFeatureType::REMEMBER))
                 g_ptr->info &= ~(CAVE_MARK);
         }
     }
@@ -158,9 +158,9 @@ bool vanish_dungeon(player_type *player_ptr)
         auto *f_ptr = &f_info[g_ptr->mimic];
         g_ptr->info &= ~(CAVE_ROOM | CAVE_ICKY);
 
-        if (g_ptr->mimic && f_ptr->flags.has(FF::HURT_DISI)) {
-            g_ptr->mimic = feat_state(floor_ptr, g_ptr->mimic, FF::HURT_DISI);
-            if (f_info[g_ptr->mimic].flags.has_not(FF::REMEMBER))
+        if (g_ptr->mimic && f_ptr->flags.has(FloorFeatureType::HURT_DISI)) {
+            g_ptr->mimic = feat_state(floor_ptr, g_ptr->mimic, FloorFeatureType::HURT_DISI);
+            if (f_info[g_ptr->mimic].flags.has_not(FloorFeatureType::REMEMBER))
                 g_ptr->info &= ~(CAVE_MARK);
         }
 
@@ -168,9 +168,9 @@ bool vanish_dungeon(player_type *player_ptr)
         f_ptr = &f_info[g_ptr->mimic];
         g_ptr->info &= ~(CAVE_ROOM | CAVE_ICKY);
 
-        if (g_ptr->mimic && f_ptr->flags.has(FF::HURT_DISI)) {
-            g_ptr->mimic = feat_state(floor_ptr, g_ptr->mimic, FF::HURT_DISI);
-            if (f_info[g_ptr->mimic].flags.has_not(FF::REMEMBER))
+        if (g_ptr->mimic && f_ptr->flags.has(FloorFeatureType::HURT_DISI)) {
+            g_ptr->mimic = feat_state(floor_ptr, g_ptr->mimic, FloorFeatureType::HURT_DISI);
+            if (f_info[g_ptr->mimic].flags.has_not(FloorFeatureType::REMEMBER))
                 g_ptr->info &= ~(CAVE_MARK);
         }
     }
@@ -189,7 +189,7 @@ bool vanish_dungeon(player_type *player_ptr)
  * @param rad 効力の半径
  * @details このファイルにいるのは、spells-trump.c と比べて行数が少なかったため。それ以上の意図はない
  */
-void cast_meteor(player_type *player_ptr, HIT_POINT dam, POSITION rad)
+void cast_meteor(PlayerType *player_ptr, int dam, POSITION rad)
 {
     int b = 10 + randint1(10);
     for (int i = 0; i < b; i++) {
@@ -208,9 +208,8 @@ void cast_meteor(player_type *player_ptr, HIT_POINT dam, POSITION rad)
             if (d >= 9)
                 continue;
 
-            floor_type *floor_ptr = player_ptr->current_floor_ptr;
-            if (!in_bounds(floor_ptr, y, x) || !projectable(player_ptr, player_ptr->y, player_ptr->x, y, x)
-                || !cave_has_flag_bold(floor_ptr, y, x, FF::PROJECT))
+            auto *floor_ptr = player_ptr->current_floor_ptr;
+            if (!in_bounds(floor_ptr, y, x) || !projectable(player_ptr, player_ptr->y, player_ptr->x, y, x) || !cave_has_flag_bold(floor_ptr, y, x, FloorFeatureType::PROJECT))
                 continue;
 
             break;