}\r
}\r
\r
- /* Update the monsters */\r
p_ptr->update |= (PU_MONSTERS | PU_MON_LITE);\r
-\r
- /* Redraw map */\r
p_ptr->redraw |= (PR_MAP);\r
-\r
- /* Window stuff */\r
p_ptr->window |= (PW_OVERHEAD | PW_DUNGEON);\r
\r
if (p_ptr->special_defense & NINJA_S_STEALTH)\r
}\r
}\r
\r
- /* Update the monsters */\r
p_ptr->update |= (PU_MONSTERS | PU_MON_LITE);\r
-\r
- /* Redraw map */\r
p_ptr->redraw |= (PR_MAP);\r
-\r
- /* Window stuff */\r
p_ptr->window |= (PW_OVERHEAD | PW_DUNGEON);\r
\r
if (p_ptr->special_defense & NINJA_S_STEALTH)\r
}\r
\r
}\r
+\r
+/*!\r
+ * @brief 現在フロアに残っている敵モンスターの数を返す /\r
+ * @return 現在の敵モンスターの数\r
+ */\r
+MONSTER_NUMBER count_all_hostile_monsters(void)\r
+{\r
+ POSITION x, y;\r
+ MONSTER_NUMBER number_mon = 0;\r
+\r
+ for (x = 0; x < cur_wid; ++x)\r
+ {\r
+ for (y = 0; y < cur_hgt; ++y)\r
+ {\r
+ MONSTER_IDX m_idx = cave[y][x].m_idx;\r
+\r
+ if (m_idx > 0 && is_hostile(&m_list[m_idx]))\r
+ {\r
+ ++number_mon;\r
+ }\r
+ }\r
+ }\r
+\r
+ return number_mon;\r
+}\r