OSDN Git Service

Merge pull request #3569 from sikabane-works/release/3.0.0.88-alpha
[hengbandforosx/hengbandosx.git] / src / effect / effect-monster-util.h
1 #pragma once
2
3 #include "system/angband.h"
4 #include <string>
5
6 enum class AttributeType;
7 struct grid_type;
8 class MonsterEntity;
9 class MonsterRaceInfo;
10 class PlayerType;
11 class EffectMonster {
12 public:
13     EffectMonster(PlayerType *player_ptr, MONSTER_IDX who, POSITION r, POSITION y, POSITION x, int dam, AttributeType attribute, BIT_FLAGS flag, bool see_s_msg);
14
15     char killer[MAX_MONSTER_NAME]{};
16     bool obvious = false;
17     bool skipped = false;
18     bool get_angry = false;
19     bool do_polymorph = false;
20     int do_dist = 0;
21     int do_conf = 0;
22     int do_stun = 0;
23     int do_sleep = 0;
24     int do_fear = 0;
25     int do_time = 0;
26     bool heal_leper = false;
27     GAME_TEXT m_name[MAX_NLEN]{};
28     char m_poss[10]{};
29     short photo = 0;
30     std::string note = "";
31
32     MONSTER_IDX who;
33     POSITION r;
34     POSITION y;
35     POSITION x;
36     int dam;
37     AttributeType attribute;
38     BIT_FLAGS flag;
39     bool see_s_msg;
40
41     grid_type *g_ptr;
42     MonsterEntity *m_ptr;
43     MonsterEntity *m_caster_ptr;
44     MonsterRaceInfo *r_ptr;
45     bool seen;
46     bool seen_msg;
47     bool slept;
48     bool known;
49     std::string note_dies;
50     int caster_lev;
51 };