if (!is_floor_grid(g_ptr) || g_ptr->o_idx || g_ptr->m_idx) continue;
/* Avoid player location */
- if (player_bold(p_ptr, y, x)) continue;
+ if (player_bold(owner_ptr, y, x)) continue;
/* Check for "room" */
room = (floor_ptr->grid_array[y][x].info & CAVE_ROOM) ? TRUE : FALSE;
/*!
* @brief クエストに関わるモンスターの配置を行う / Place quest monsters
- * @param floor_ptr 配置するフロアの参照ポインタ
- * @param subject_ptr 近隣への即出現を避けるためのプレイヤークリーチャー参照ポインタ
+ * @param creature_ptr プレーヤーへの参照ポインタ
* @return 成功したならばTRUEを返す
*/
-bool place_quest_monsters(floor_type *floor_ptr, player_type *creature_ptr)
+bool place_quest_monsters(player_type *creature_ptr)
{
int i;
/* Handle the quest monster placements */
+ floor_type *floor_ptr = creature_ptr->current_floor_ptr;
for (i = 0; i < max_q_idx; i++)
{
monster_race *r_ptr;
}
/* Determine the character location */
- if (!new_player_spot(p_ptr)) return FALSE;
+ if (!new_player_spot(player_ptr)) return FALSE;
- if (!place_quest_monsters(floor_ptr, p_ptr)) return FALSE;
+ if (!place_quest_monsters(player_ptr)) return FALSE;
/* Basic "amount" */
k = (floor_ptr->dun_level / 3);
if (!(dungeon_ptr->flags1 & DF1_NO_CAVE)) alloc_object(player_ptr, ALLOC_SET_CORR, ALLOC_TYP_RUBBLE, randint1(k));
/* Mega Hack -- No object at first level of deeper dungeon */
- if (p_ptr->enter_dungeon && floor_ptr->dun_level > 1)
+ if (player_ptr->enter_dungeon && floor_ptr->dun_level > 1)
{
/* No stair scum! */
floor_ptr->object_level = 1;
* @brief モンスター闘技場への導入処理 / Town logic flow for generation of arena -KMW-
* @return なし
*/
-static void generate_gambling_arena(floor_type *floor_ptr, player_type *creature_ptr)
+static void generate_gambling_arena(player_type *creature_ptr)
{
POSITION y, x;
MONSTER_IDX i;
POSITION qx = 0;
/* Start with solid walls */
+ floor_type *floor_ptr = creature_ptr->current_floor_ptr;
for (y = 0; y < MAX_HGT; y++)
{
for (x = 0; x < MAX_WID; x++)
if (!monster_is_valid(m_ptr)) continue;
m_ptr->mflag2 |= (MFLAG2_MARK | MFLAG2_SHOW);
- update_monster(p_ptr, i, FALSE);
+ update_monster(creature_ptr, i, FALSE);
}
}
floor_ptr->object_level = floor_ptr->base_level;
floor_ptr->monster_level = floor_ptr->base_level;
- if (record_stair) exe_write_diary(p_ptr, NIKKI_TO_QUEST, floor_ptr->inside_quest, NULL);
+ if (record_stair) exe_write_diary(player_ptr, NIKKI_TO_QUEST, floor_ptr->inside_quest, NULL);
get_mon_num_prep(get_monster_hook(), NULL);
init_flags = INIT_CREATE_DUNGEON;
else if (player_ptr->phase_out)
{
- generate_gambling_arena(floor_ptr, player_ptr);
+ generate_gambling_arena(player_ptr);
}
else if (floor_ptr->inside_quest)