From: deskull Date: Tue, 29 Oct 2019 12:45:49 +0000 (+0900) Subject: [Refactor] #38997 place_quest_monsters() に floor_type * 引数を追加. / Add floor_type ... X-Git-Url: http://git.osdn.net/view?p=hengband%2Fhengband.git;a=commitdiff_plain;h=fe72308f5dcb94a532e80e550e64026413d39dfa [Refactor] #38997 place_quest_monsters() に floor_type * 引数を追加. / Add floor_type * argument to place_quest_monsters(). --- diff --git a/src/floor-generate.c b/src/floor-generate.c index b0404d62a..1257fbd48 100644 --- a/src/floor-generate.c +++ b/src/floor-generate.c @@ -394,7 +394,7 @@ static void alloc_object(floor_type *floor_ptr, int set, EFFECT_ID typ, int num) * @brief クエストに関わるモンスターの配置を行う / Place quest monsters * @return 成功したならばTRUEを返す */ -bool place_quest_monsters(void) +bool place_quest_monsters(floor_type *floor_ptr) { int i; @@ -408,7 +408,7 @@ bool place_quest_monsters(void) if (quest[i].status != QUEST_STATUS_TAKEN || (quest[i].type != QUEST_TYPE_KILL_LEVEL && quest[i].type != QUEST_TYPE_RANDOM) || - quest[i].level != p_ptr->current_floor_ptr->dun_level || + quest[i].level != floor_ptr->dun_level || p_ptr->dungeon_idx != quest[i].dungeon || (quest[i].flags & QUEST_FLAG_PRESET)) { @@ -442,10 +442,10 @@ bool place_quest_monsters(void) grid_type *g_ptr; feature_type *f_ptr; - y = randint0(p_ptr->current_floor_ptr->height); - x = randint0(p_ptr->current_floor_ptr->width); + y = randint0(floor_ptr->height); + x = randint0(floor_ptr->width); - g_ptr = &p_ptr->current_floor_ptr->grid_array[y][x]; + g_ptr = &floor_ptr->grid_array[y][x]; f_ptr = &f_info[g_ptr->feat]; if (!have_flag(f_ptr->flags, FF_MOVE) && !have_flag(f_ptr->flags, FF_CAN_FLY)) continue; @@ -913,7 +913,7 @@ static bool cave_gen(dungeon_type* dungeon_ptr, floor_type *floor_ptr) /* Determine the character location */ if (!new_player_spot()) return FALSE; - if (!place_quest_monsters()) return FALSE; + if (!place_quest_monsters(floor_ptr)) return FALSE; /* Basic "amount" */ k = (floor_ptr->dun_level / 3); diff --git a/src/floor-generate.h b/src/floor-generate.h index 1765ff59a..b826af62d 100644 --- a/src/floor-generate.h +++ b/src/floor-generate.h @@ -100,7 +100,7 @@ struct dun_data extern dun_data *dun; -extern bool place_quest_monsters(void); +extern bool place_quest_monsters(floor_type *floor_ptr); extern void wipe_generate_random_floor_flags(floor_type *floor_ptr); extern void clear_cave(floor_type *floor_ptr); extern void generate_random_floor(floor_type *floor_ptr); diff --git a/src/floor-save.c b/src/floor-save.c index a4db8aff5..a79c07d51 100644 --- a/src/floor-save.c +++ b/src/floor-save.c @@ -1268,7 +1268,7 @@ void change_floor(player_type *creature_ptr) } } - (void)place_quest_monsters(); + (void)place_quest_monsters(creature_ptr->current_floor_ptr); /* Place some random monsters */ alloc_times = absence_ticks / alloc_chance;