extern bool msg_flag;
extern s16b running;
extern GAME_TURN resting;
-extern MONSTER_NUMBER num_repro;
extern DEPTH object_level;
extern DEPTH monster_level;
extern bool invoking_midnight_curse;
/* r_ptr->cur_num++; */
/* Hack -- Count the number of "reproducers" */
- if (r_ptr->flags2 & RF2_MULTIPLY) num_repro++;
+ if (r_ptr->flags2 & RF2_MULTIPLY) current_floor_ptr->num_repro++;
/* Hack -- Notice new multi-hued monsters */
{
current_floor_ptr->base_level = (DEPTH)tmp16s;
rd_s16b(&tmp16s);
- num_repro = (MONSTER_NUMBER)tmp16s;
+ current_floor_ptr->num_repro = (MONSTER_NUMBER)tmp16s;
rd_s16b(&tmp16s);
p_ptr->y = (POSITION)tmp16s;
rd_s16b(&tmp16s);
rd_s16b(&tmp16s);
current_floor_ptr->base_level = (DEPTH)tmp16s;
rd_s16b(&tmp16s);
- num_repro = (MONSTER_NUMBER)tmp16s;
+ current_floor_ptr->num_repro = (MONSTER_NUMBER)tmp16s;
rd_u16b(&tmp16u);
p_ptr->y = (POSITION)tmp16u;
ox = m_ptr->fx;
/* Attempt to "multiply" if able and allowed */
- if ((r_ptr->flags2 & RF2_MULTIPLY) && (num_repro < MAX_REPRO))
+ if ((r_ptr->flags2 & RF2_MULTIPLY) && (current_floor_ptr->num_repro < MAX_REPRO))
{
int k;
POSITION y, x;
real_r_ptr(m_ptr)->cur_num--;
/* Hack -- count the number of "reproducers" */
- if (r_ptr->flags2 & (RF2_MULTIPLY)) num_repro--;
+ if (r_ptr->flags2 & (RF2_MULTIPLY)) current_floor_ptr->num_repro--;
if (MON_CSLEEP(m_ptr)) (void)set_monster_csleep(i, 0);
if (MON_FAST(m_ptr)) (void)set_monster_fast(i, 0);
for (i = 0; i < MAX_MTIMED; i++) mproc_max[i] = 0;
/* Hack -- reset "reproducer" count */
- num_repro = 0;
+ current_floor_ptr->num_repro = 0;
/* Hack -- no more target */
target_who = 0;
real_r_ptr(m_ptr)->floor_id = p_ptr->floor_id;
/* Hack -- Count the number of "reproducers" */
- if (r_ptr->flags2 & RF2_MULTIPLY) num_repro++;
+ if (r_ptr->flags2 & RF2_MULTIPLY) current_floor_ptr->num_repro++;
/* Hack -- Notice new multi-hued monsters */
{
case MUT1_STERILITY:
msg_print(_("突然頭が痛くなった!", "You suddenly have a headache!"));
take_hit(DAMAGE_LOSELIFE, randint1(17) + 17, _("禁欲を強いた疲労", "the strain of forcing abstinence"), -1);
- num_repro += MAX_REPRO;
+ current_floor_ptr->num_repro += MAX_REPRO;
break;
case MUT1_PANIC_HIT:
{
if (cast)
{
- num_repro += MAX_REPRO;
+ current_floor_ptr->num_repro += MAX_REPRO;
}
}
break;
}
wr_u16b((u16b)current_floor_ptr->base_level);
- wr_u16b((s16b)num_repro);
+ wr_u16b((s16b)current_floor_ptr->num_repro);
wr_u16b((u16b)p_ptr->y);
wr_u16b((u16b)p_ptr->x);
wr_u16b((u16b)current_floor_ptr->height);
DEPTH base_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
s16b running; /* Current counter for running, if any */
GAME_TURN resting; /* Current counter for resting, if any */
-MONSTER_NUMBER num_repro; /*!< Current reproducer count */
DEPTH object_level; /*!< アイテムの生成レベル、current_floor_ptr->base_levelを起点に一時変更する時に参照 / Current object creation level */
DEPTH monster_level; /*!< モンスターの生成レベル、current_floor_ptr->base_levelを起点に一時変更する時に参照 / Current monster creation level */
bool invoking_midnight_curse; /*!< 悪夢モード時の真夜中太古の呪い発生処理フラグ */