do {
(void)do_dec_stat(player_ptr, A_INT);
- } while (randint0(100) > player_ptr->skill_sav && one_in_(2));
+ } while (!player_ptr->try_resist_eldritch_horror());
do {
(void)do_dec_stat(player_ptr, A_WIS);
- } while (randint0(100) > player_ptr->skill_sav && one_in_(2));
+ } while (!player_ptr->try_resist_eldritch_horror());
break;
}
bool is_located_at(const Pos2D &pos) const;
bool in_saved_floor() const;
int calc_life_rating() const;
+ bool try_resist_eldritch_horror() const;
private:
std::shared_ptr<TimedEffects> timed_effects;