OSDN Git Service

#37784 summon_specific()で特定種族を指定しない(type=0)時はPM_ALLOW_UNIQUEを指定しなくても、ユニークを候補に入れてしまう不具...
authorDeskull <desull@users.sourceforge.jp>
Thu, 15 Mar 2018 13:23:57 +0000 (22:23 +0900)
committerDeskull <desull@users.sourceforge.jp>
Thu, 15 Mar 2018 13:23:57 +0000 (22:23 +0900)
Fix summon_specific_okay() for summon_specific() at type=0 selects unique monsters regardless of no PM_ALLOW_UNIQUE.

src/monster2.c

index e6d20de..8c3fcb2 100644 (file)
@@ -3959,11 +3959,11 @@ static bool summon_specific_okay(MONRACE_IDX r_idx)
                }
        }
 
+       if (!summon_unique_okay && ((r_ptr->flags1 & RF1_UNIQUE) || (r_ptr->flags7 & RF7_NAZGUL))) return FALSE;
+
        /* Hack -- no specific type specified */
        if (!summon_specific_type) return (TRUE);
 
-       if (!summon_unique_okay && ((r_ptr->flags1 & RF1_UNIQUE) || (r_ptr->flags7 & RF7_NAZGUL))) return FALSE;
-
        if ((summon_specific_who < 0) &&
            ((r_ptr->flags1 & RF1_UNIQUE) || (r_ptr->flags7 & RF7_NAZGUL)) &&
            monster_has_hostile_align(NULL, 10, -10, r_ptr))