blob: ccb555d4803916f95b77d3cdf629cd964d9dbc1a (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
|
#pragma once
#include "h-basic.h"
#include "monster_blow.hpp"
/**
* Monster information for a specific monster.
*
* Note: fy, fx constrain dungeon size to 256x256
*
* The "hold_o_idx" field points to the first object of a stack
* of objects (if any) being carried by the monster (see above).
*/
struct monster_type
{
s16b r_idx; /* Monster race index */
u16b ego; /* Ego monster type */
byte fy; /* Y location on map */
byte fx; /* X location on map */
s32b hp; /* Current Hit points */
s32b maxhp; /* Max Hit points */
monster_blow blow[4]; /* Up to four blows per round */
byte speed; /* Speed (normally 110) */
byte level; /* Level of creature */
s16b ac; /* Armour Class */
s32b exp; /* Experience */
s16b csleep; /* Inactive counter */
byte mspeed; /* Monster "speed" */
byte energy; /* Monster "energy" */
byte stunned; /* Monster is stunned */
byte confused; /* Monster is confused */
byte monfear; /* Monster is afraid */
s16b bleeding; /* Monster is bleeding */
s16b poisoned; /* Monster is poisoned */
byte cdis; /* Current dis from player */
s32b mflag; /* Extra monster flags */
bool_ ml; /* Monster is "visible" */
s16b hold_o_idx; /* Object being held (if any) */
u32b smart; /* Field for "smart_learn" */
s16b status; /* Status(friendly, pet, companion, ..) */
s16b target; /* Monster target */
s16b possessor; /* Is it under the control of a possessor ? */
};
|