OSDN Git Service

[Refactor] #40514 #40652 have_no_ac() を BIT_FLAGS 返り値持ちに仕様変更. / have_no_ac() was...
authordeskull <deskull@users.sourceforge.jp>
Mon, 24 Aug 2020 16:47:09 +0000 (01:47 +0900)
committerdeskull <deskull@users.sourceforge.jp>
Mon, 24 Aug 2020 16:47:09 +0000 (01:47 +0900)
src/player/player-status-flags.c
src/player/player-status-flags.h
src/player/player-status.c
src/player/player-status.h

index 5a63b79..e30e05c 100644 (file)
@@ -229,23 +229,11 @@ BIT_FLAGS have_down_saving(player_type *creature_ptr)
     return result;
 }
 
-void have_no_ac(player_type *creature_ptr)
+BIT_FLAGS have_no_ac(player_type *creature_ptr)
 {
-    object_type *o_ptr;
-    BIT_FLAGS flgs[TR_FLAG_SIZE];
-
-    creature_ptr->yoiyami = FALSE;
-
-    for (inventory_slot_type i = INVEN_RARM; i < INVEN_TOTAL; i++) {
-        o_ptr = &creature_ptr->inventory_list[i];
-        if (!o_ptr->k_idx)
-            continue;
-
-        object_flags(creature_ptr, o_ptr, flgs);
-
-        if (o_ptr->name2 == EGO_YOIYAMI)
-            creature_ptr->yoiyami = TRUE;
-    }
+    BIT_FLAGS result = 0L;
+    result |= check_equipment_flags(creature_ptr, TR_NO_AC);
+    return result;
 }
 
 void have_no_flowed(player_type *creature_ptr)
index 70107b9..bc7c9a7 100644 (file)
@@ -40,7 +40,7 @@ BIT_FLAGS have_esp_telepathy(player_type *creature_ptr);
 BIT_FLAGS have_bless_blade(player_type *creature_ptr);
 BIT_FLAGS have_easy2_weapon(player_type *creature_ptr);
 BIT_FLAGS have_down_saving(player_type *creature_ptr);
-void have_no_ac(player_type *creature_ptr);
+BIT_FLAGS have_no_ac(player_type *creature_ptr);
 void have_no_flowed(player_type *creature_ptr);
 BIT_FLAGS have_mighty_throw(player_type *creature_ptr);
 BIT_FLAGS have_dec_mana(player_type *creature_ptr);
index 43bb18c..833fc99 100644 (file)
@@ -338,7 +338,7 @@ void calc_bonuses(player_type *creature_ptr)
     creature_ptr->bless_blade = have_bless_blade(creature_ptr);
     creature_ptr->easy_2weapon = have_easy2_weapon(creature_ptr);
     creature_ptr->down_saving = have_down_saving(creature_ptr);
-    have_no_ac(creature_ptr);
+    creature_ptr->yoiyami = have_no_ac(creature_ptr);
     creature_ptr->mighty_throw = have_mighty_throw(creature_ptr);
     creature_ptr->dec_mana = have_dec_mana(creature_ptr);
     creature_ptr->reflect = have_reflect(creature_ptr);
index 938dddc..6cc8b28 100644 (file)
@@ -329,7 +329,7 @@ typedef struct player_type {
     bool riding_wield[2]; /* Riding weapon */
     bool riding_ryoute; /* Riding weapon */
     bool monlite;
-    bool yoiyami;
+    BIT_FLAGS yoiyami;
     BIT_FLAGS easy_2weapon;
     BIT_FLAGS down_saving;