#define SINGING_SONG_EFFECT(P_PTR) ((P_PTR)->magic_num1[0])
#define INTERUPTING_SONG_EFFECT(P_PTR) ((P_PTR)->magic_num1[1])
+#define SINGING_COUNT(P_PTR) ((P_PTR)->magic_num1[2])
#define SINGING_SONG_ID(P_PTR) ((P_PTR)->magic_num2[0])
#define music_singing(X) ((p_ptr->pclass == CLASS_BARD) && (p_ptr->magic_num1[0] == (X)))
#define music_singing_any() ((p_ptr->pclass == CLASS_BARD) && p_ptr->magic_num1[0])
{
msg_print(_("静かな音楽が感覚を研ぎ澄まさせた...", "Your quiet music sharpens your sense of hearing..."));
/* Hack -- Initialize the turn count */
- p_ptr->magic_num1[2] = 0;
-
+ SINGING_COUNT(p_ptr) = 0;
start_singing(spell, MUSIC_DETECT);
}
if (cont)
{
- int count = p_ptr->magic_num1[2];
+ int count = SINGING_COUNT(p_ptr);
if (count >= 19) wiz_lite(FALSE);
if (count >= 11)
{
map_area(rad);
if (plev > 39 && count < 19)
- p_ptr->magic_num1[2] = count + 1;
+ SINGING_COUNT(p_ptr) = count + 1;
}
if (count >= 6)
{
detect_objects_normal(rad);
if (plev > 24 && count < 11)
- p_ptr->magic_num1[2] = count + 1;
+ SINGING_COUNT(p_ptr) = count + 1;
}
if (count >= 3)
{
detect_monsters_normal(rad);
if (plev > 19 && count < 6)
- p_ptr->magic_num1[2] = count + 1;
+ SINGING_COUNT(p_ptr) = count + 1;
}
detect_traps(rad, TRUE);
detect_doors(rad);
detect_stairs(rad);
if (plev > 14 && count < 3)
- p_ptr->magic_num1[2] = count + 1;
+ SINGING_COUNT(p_ptr) = count + 1;
}
}
if (known) p_ptr->dtrap = TRUE;
- if (music_singing(MUSIC_DETECT) && p_ptr->magic_num1[2] > 0) detect = FALSE;
+ if (music_singing(MUSIC_DETECT) && SINGING_COUNT(p_ptr) > 0) detect = FALSE;
/* Describe */
if (detect)
{
bool detect = detect_feat_flag(range, FF_DOOR, TRUE);
- if (music_singing(MUSIC_DETECT) && p_ptr->magic_num1[2] > 0) detect = FALSE;
+ if (music_singing(MUSIC_DETECT) && SINGING_COUNT(p_ptr) > 0) detect = FALSE;
/* Describe */
if (detect)
{
bool detect = detect_feat_flag(range, FF_STAIRS, TRUE);
- if (music_singing(MUSIC_DETECT) && p_ptr->magic_num1[2] > 0) detect = FALSE;
+ if (music_singing(MUSIC_DETECT) && SINGING_COUNT(p_ptr) > 0) detect = FALSE;
/* Describe */
if (detect)
{
bool detect = detect_feat_flag(range, FF_HAS_GOLD, TRUE);
- if (music_singing(MUSIC_DETECT) && p_ptr->magic_num1[2] > 6) detect = FALSE;
+ if (music_singing(MUSIC_DETECT) && SINGING_COUNT(p_ptr) > 6) detect = FALSE;
/* Describe */
if (detect)
}
}
- if (music_singing(MUSIC_DETECT) && p_ptr->magic_num1[2] > 6) detect = FALSE;
+ if (music_singing(MUSIC_DETECT) && SINGING_COUNT(p_ptr) > 6) detect = FALSE;
/* Describe */
if (detect)
}
}
- if (music_singing(MUSIC_DETECT) && p_ptr->magic_num1[2] > 6) detect = FALSE;
+ if (music_singing(MUSIC_DETECT) && SINGING_COUNT(p_ptr) > 6) detect = FALSE;
/* Describe */
if (detect)
}
}
- if (music_singing(MUSIC_DETECT) && p_ptr->magic_num1[2] > 3) flag = FALSE;
+ if (music_singing(MUSIC_DETECT) && SINGING_COUNT(p_ptr) > 3) flag = FALSE;
/* Describe */
if (flag)
}
}
- if (music_singing(MUSIC_DETECT) && p_ptr->magic_num1[2] > 3) flag = FALSE;
+ if (music_singing(MUSIC_DETECT) && SINGING_COUNT(p_ptr) > 3) flag = FALSE;
/* Describe */
if (flag)
}
}
- if (music_singing(MUSIC_DETECT) && p_ptr->magic_num1[2] > 3) flag = FALSE;
+ if (music_singing(MUSIC_DETECT) && SINGING_COUNT(p_ptr) > 3) flag = FALSE;
/* Describe */
if (flag)