OSDN Git Service

[Fix] ドラゴンピットの多色化(再修正) #574
authoriks <iks3@users.noreply.github.com>
Sat, 20 Mar 2021 15:13:22 +0000 (00:13 +0900)
committeriks <iks3@users.noreply.github.com>
Sat, 20 Mar 2021 15:13:22 +0000 (00:13 +0900)
src/monster-race/monster-race-hook.cpp

index 5cd3a1d..290853d 100644 (file)
@@ -636,10 +636,13 @@ bool vault_aux_dragon(player_type *player_ptr, MONRACE_IDX r_idx)
     if (none_bits(r_ptr->flags3, RF3_DRAGON))
         return FALSE;
 
-    if (!all_bits(r_ptr->flags4, vault_aux_dragon_mask4))
+    if (any_bits(r_ptr->flags3, RF3_UNDEAD))
         return FALSE;
 
-    if (any_bits(r_ptr->flags3, RF3_UNDEAD))
+    BIT_FLAGS flags = RF4_BREATH_MASK;
+    reset_bits(flags, vault_aux_dragon_mask4);
+
+    if (any_bits(r_ptr->flags4, flags) || !all_bits(r_ptr->flags4, vault_aux_dragon_mask4))
         return FALSE;
 
     return TRUE;