* amound of memory, but they all seem rather complicated, and would
* probably add enough code that the savings would be lost. So for
* these reasons, we simply store an index into the "o_list" and
- * "m_list" arrays, using "zero" when no monster/object is present.
+ * "current_floor_ptr->m_list" arrays, using "zero" when no monster/object is present.
*
* Note that "o_idx" is the index of the top object in a stack of
* objects, using the "next_o_idx" field of objects (see below) to
s16b good_buy; /* Number of "good" buys */
s16b bad_buy; /* Number of "bad" buys */
- s32b store_open; /* Closed until this turn */
+ s32b store_open; /* Closed until this current_world_ptr->game_turn */
- s32b last_visit; /* Last visited on this turn */
+ s32b last_visit; /* Last visited on this current_world_ptr->game_turn */
s16b table_num; /* Table -- Number of entries */
s16b table_size; /* Table -- Total Size of Array */
HIT_POINT mhp; /* Max hit pts */
HIT_POINT chp; /* Cur hit pts */
u32b chp_frac; /* Cur hit frac (times 2^16) */
+ PERCENTAGE mutant_regenerate_mod;
MANA_POINT msp; /* Max mana pts */
MANA_POINT csp; /* Cur mana pts */
bool wait_report_score; /* Waiting to report score */
bool is_dead; /* Player is dead */
+ bool now_damaged;
bool wizard; /* Player is in wizard mode */
bool autopick_autoregister; /* auto register is in-use or not */
byte feeling; /* Most recent dungeon feeling */
- s32b feeling_turn; /* The turn of the last dungeon feeling */
+ s32b feeling_turn; /* The current_world_ptr->game_turn of the last dungeon feeling */
/*** Temporary fields ***/
byte pspeed; /* Current speed */
- ENERGY energy_use; /* Energy use this turn */
+ ENERGY energy_use; /* Energy use this current_world_ptr->game_turn */
POSITION y; /* Player location in dungeon */
POSITION x; /* Player location in dungeon */
typedef struct {
grid_type *grid_array[MAX_HGT];
DEPTH dun_level; /*!< 現在の実ダンジョン階層base_levelの参照元となる / Current dungeon level */
- DEPTH base_level;
+ DEPTH base_level; /*!< 基本生成レベル、後述のobject_level, monster_levelの参照元となる / Base dungeon level */
+ DEPTH object_level; /*!< アイテムの生成レベル、current_floor_ptr->base_levelを起点に一時変更する時に参照 / Current object creation level */
+ DEPTH monster_level; /*!< モンスターの生成レベル、current_floor_ptr->base_levelを起点に一時変更する時に参照 / Current monster creation level */
POSITION width; /* Current dungeon width */
POSITION height; /* Current dungeon height */
MONSTER_NUMBER num_repro; /*!< Current reproducer count */
-} floor_type;
\ No newline at end of file
+
+ GAME_TURN generated_turn; /* Turn when level began */
+
+ object_type *o_list; /*!< The array of dungeon items [current_floor_ptr->max_o_idx] */
+ OBJECT_IDX max_o_idx; /*!< Maximum number of objects in the level */
+
+ monster_type *m_list; /*!< The array of dungeon monsters [current_floor_ptr->max_m_idx] */
+ MONSTER_IDX max_m_idx; /*!< Maximum number of monsters in the level */
+
+ s16b *mproc_list[MAX_MTIMED]; /*!< The array to process dungeon monsters[max_m_idx] */
+ s16b mproc_max[MAX_MTIMED]; /*!< Number of monsters to be processed */
+
+ POSITION_IDX lite_n; //!< Array of grids lit by player lite (see "current_floor_ptr->grid_array.c")
+ POSITION lite_y[LITE_MAX];
+ POSITION lite_x[LITE_MAX];
+
+ POSITION_IDX mon_lite_n; //!< Array of grids lit by player lite (see "current_floor_ptr->grid_array.c")
+ POSITION mon_lite_y[MON_LITE_MAX];
+ POSITION mon_lite_x[MON_LITE_MAX];
+
+ POSITION_IDX view_n; //!< Array of grids viewable to the player (see "grid_array")
+ POSITION view_y[VIEW_MAX];
+ POSITION view_x[VIEW_MAX];
+
+ POSITION_IDX redraw_n; //!< Array of grids for delayed visual updating (see "current_floor_ptr->grid_array.c")
+ POSITION redraw_y[REDRAW_MAX];
+ POSITION redraw_x[REDRAW_MAX];
+
+} floor_type;
+
+typedef struct {
+ POSITION max_wild_x; /*!< Maximum size of the wilderness */
+ POSITION max_wild_y; /*!< Maximum size of the wilderness */
+ GAME_TURN game_turn; /*!< 画面表示上のゲーム時間基準となるターン / Current game turn */
+ GAME_TURN game_turn_limit; /*!< game_turnの最大値 / Limit of game_turn */
+ GAME_TURN dungeon_turn; /*!< NASTY生成の計算に関わる内部ターン値 / Game current_world_ptr->game_turn in dungeon */
+ GAME_TURN dungeon_turn_limit; /*!< dungeon_turnの最大値 / Limit of game_turn in dungeon */
+ MONSTER_IDX timewalk_m_idx; /*!< 現在時間停止を行っているモンスターのID */
+
+ MONRACE_IDX bounty_r_idx[MAX_KUBI];
+
+ u32b play_time; /*!< 実プレイ時間 */
+} world_type;