-#include "monster-floor/monster-summon.h"
+#include "monster-floor/monster-summon.h"
#include "dungeon/dungeon-flag-types.h"
#include "floor/geometry.h"
#include "floor/wild.h"
return false;
}
- if ((r_ptr->flags7 & RF7_CHAMELEON) && dungeons_info[floor.dungeon_idx].flags.has(DungeonFeatureType::CHAMELEON)) {
+ if (r_ptr->misc_flags.has(MonsterMiscType::CHAMELEON) && floor.get_dungeon_definition().flags.has(DungeonFeatureType::CHAMELEON)) {
return true;
}
get_mon_num_prep(player_ptr, summon_specific_okay, get_monster_hook2(player_ptr, y, x));
DEPTH dlev = get_dungeon_or_wilderness_level(player_ptr);
- MonsterRaceId r_idx = get_mon_num(player_ptr, 0, (dlev + lev) / 2 + 5, 0);
+ MonsterRaceId r_idx = get_mon_num(player_ptr, 0, (dlev + lev) / 2 + 5, mode);
if (!MonsterRace(r_idx).is_valid()) {
summon_specific_type = SUMMON_NONE;
return false;
mode |= PM_NO_KAGE;
}
- if (!place_monster_aux(player_ptr, who, y, x, r_idx, mode)) {
+ if (!place_specific_monster(player_ptr, who, y, x, r_idx, mode)) {
summon_specific_type = SUMMON_NONE;
return false;
}
return false;
}
- return place_monster_aux(player_ptr, who, y, x, r_idx, (mode | PM_NO_KAGE));
+ return place_specific_monster(player_ptr, who, y, x, r_idx, (mode | PM_NO_KAGE));
}