3 #include "system/angband.h"
5 enum class RaceBlowEffectType;
6 enum class RaceBlowMethodType;
10 class MonsterAttackPlayer {
12 MonsterAttackPlayer(PlayerType *player_ptr, short m_idx);
14 int abbreviate = 0; // 2回目以降の省略表現フラグ.
18 RaceBlowMethodType method;
19 RaceBlowEffectType effect;
21 concptr act = nullptr;
27 GAME_TEXT m_name[MAX_NLEN]{};
30 object_type *o_ptr = nullptr;
34 GAME_TEXT o_name[MAX_NLEN]{};
35 HIT_POINT get_damage = 0;
36 GAME_TEXT ddesc[MAX_MONSTER_NAME]{};
41 void make_attack_normal();
44 PlayerType *player_ptr;
46 static int stat_value(const int raw);
48 bool process_monster_blows();
49 bool check_monster_continuous_attack();
50 bool process_monster_attack_hit();
51 bool effect_protecion_from_evil();
52 void describe_silly_attacks();
53 void select_cut_stun();
54 void calc_player_cut();
55 void process_player_stun();
56 void monster_explode();
57 void process_monster_attack_evasion();
58 void describe_attack_evasion();
59 void gain_armor_exp();
60 void increase_blow_type_seen(const int ap_cnt);
61 void postprocess_monster_blows();