if ((have_flag(flgs, TR_CHAOTIC)) && one_in_(2))
{
if (one_in_(10))
- chg_virtue(V_CHANCE, 1);
+ chg_virtue(p_ptr, V_CHANCE, 1);
if (randint1(5) < 3)
{
{
if (one_in_(4))
{
- chg_virtue(V_UNLIFE, 1);
+ chg_virtue(p_ptr, V_UNLIFE, 1);
}
}
/* Mega-Hack -- apply earthquake brand */
if (stormbringer)
{
msg_format(_("黒い刃は強欲に%sを攻撃した!", "Your black blade greedily attacks %s!"), m_name);
- chg_virtue(V_INDIVIDUALISM, 1);
- chg_virtue(V_HONOUR, -1);
- chg_virtue(V_JUSTICE, -1);
- chg_virtue(V_COMPASSION, -1);
+ chg_virtue(p_ptr, V_INDIVIDUALISM, 1);
+ chg_virtue(p_ptr, V_HONOUR, -1);
+ chg_virtue(p_ptr, V_JUSTICE, -1);
+ chg_virtue(p_ptr, V_COMPASSION, -1);
}
else if (p_ptr->pclass != CLASS_BERSERKER)
{
if (get_check(_("本当に攻撃しますか?", "Really hit it? ")))
{
- chg_virtue(V_INDIVIDUALISM, 1);
- chg_virtue(V_HONOUR, -1);
- chg_virtue(V_JUSTICE, -1);
- chg_virtue(V_COMPASSION, -1);
+ chg_virtue(p_ptr, V_INDIVIDUALISM, 1);
+ chg_virtue(p_ptr, V_HONOUR, -1);
+ chg_virtue(p_ptr, V_JUSTICE, -1);
+ chg_virtue(p_ptr, V_COMPASSION, -1);
}
else
{
if (MON_CSLEEP(m_ptr)) /* It is not honorable etc to attack helpless victims */
{
- if (!(r_ptr->flags3 & RF3_EVIL) || one_in_(5)) chg_virtue(V_COMPASSION, -1);
- if (!(r_ptr->flags3 & RF3_EVIL) || one_in_(5)) chg_virtue(V_HONOUR, -1);
+ if (!(r_ptr->flags3 & RF3_EVIL) || one_in_(5)) chg_virtue(p_ptr, V_COMPASSION, -1);
+ if (!(r_ptr->flags3 & RF3_EVIL) || one_in_(5)) chg_virtue(p_ptr, V_HONOUR, -1);
}
if (p_ptr->migite && p_ptr->hidarite)
if ((p_ptr->special_defense & KATA_IAI) && ((mode != HISSATSU_IAI) || mdeath))
{
- set_action(ACTION_NONE);
+ set_action(p_ptr, ACTION_NONE);
}
return mdeath;
{
msg_print(_("財布が軽くなった気がする。", "Your purse feels lighter."));
msg_format(_("$%ld のお金が盗まれた!", "%ld coins were stolen!"), (long)gold);
- chg_virtue(V_SACRIFICE, 1);
+ chg_virtue(p_ptr, V_SACRIFICE, 1);
}
else
{
msg_print(_("財布が軽くなった気がする。", "Your purse feels lighter."));
msg_print(_("お金が全部盗まれた!", "All of your coins were stolen!"));
- chg_virtue(V_SACRIFICE, 2);
+ chg_virtue(p_ptr, V_SACRIFICE, 2);
}
/* Redraw gold */
#else
msg_format("%sour %s (%c) was stolen!", ((o_ptr->number > 1) ? "One of y" : "Y"), o_name, index_to_label(i));
#endif
- chg_virtue(V_SACRIFICE, 1);
+ chg_virtue(p_ptr, V_SACRIFICE, 1);
o_idx = o_pop();
/* Success */
if (p_ptr->is_dead || CHECK_MULTISHADOW()) break;
- (void)drain_exp(d, d / 10, 95);
+ (void)drain_exp(p_ptr, d, d / 10, 95);
break;
}
if (p_ptr->is_dead || CHECK_MULTISHADOW()) break;
- (void)drain_exp(d, d / 10, 90);
+ (void)drain_exp(p_ptr, d, d / 10, 90);
break;
}
if (p_ptr->is_dead || CHECK_MULTISHADOW()) break;
- (void)drain_exp(d, d / 10, 75);
+ (void)drain_exp(p_ptr, d, d / 10, 75);
break;
}
if (p_ptr->is_dead || CHECK_MULTISHADOW()) break;
- (void)drain_exp(d, d / 10, 50);
+ (void)drain_exp(p_ptr, d, d / 10, 50);
break;
}
{
if (p_ptr->prace == RACE_ANDROID) break;
msg_print(_("人生が逆戻りした気がする。", "You feel life has clocked back."));
- lose_exp(100 + (p_ptr->exp / 100) * MON_DRAIN_LIFE);
+ lose_exp(p_ptr, 100 + (p_ptr->exp / 100) * MON_DRAIN_LIFE);
break;
}
if (p_ptr->is_dead || CHECK_MULTISHADOW()) break;
- resist_drain = !drain_exp(d, d / 10, 50);
+ resist_drain = !drain_exp(p_ptr, d, d / 10, 50);
/* Heal the attacker? */
if (p_ptr->mimic_form)
if (p_ptr->special_defense & KATA_IAI)
{
- set_action(ACTION_NONE);
+ set_action(p_ptr, ACTION_NONE);
}
/* Assume we attacked */