Hengband  2.2.1
object-ego.h
[詳解]
1 #pragma once
2 
3 
4 /*** Ego-Item indexes (see "lib/edit/e_info.txt") ***/
5 
6 
7 /* Nothing */
8 /* xxx */
9 /* xxx */
10 /* xxx */
11 
12 /* Body Armor */
13 #define EGO_A_MORGUL 4
14 #define EGO_A_DEMON 5
15 #define EGO_DRUID 6
16 #define EGO_OLOG 7
17 #define EGO_RESISTANCE 8
18 #define EGO_ELVENKIND 9
19 #define EGO_DWARVEN 10
20 #define EGO_PERMANENCE 11
21 #define EGO_YOIYAMI 12
22 #define EGO_URUKISH 13
23 /* xxx */
24 /* xxx */
25 
26 /* Shields */
27 #define EGO_ENDURE_ACID 16
28 #define EGO_ENDURE_ELEC 17
29 #define EGO_ENDURE_FIRE 18
30 #define EGO_ENDURE_COLD 19
31 #define EGO_ENDURANCE 20
32 #define EGO_REFLECTION 21
33 #define EGO_NIGHT_DAY 22
34 #define EGO_S_PROTECTION 238
35 #define EGO_S_DWARVEN 239
36 
37 /* Crowns and Helms */
38 #define EGO_DARK 23
39 #define EGO_BRILLIANCE 24
40 #define EGO_H_PROTECTION 25
41 #define EGO_H_DEMON 26
42 #define EGO_MAGI 27
43 #define EGO_MIGHT 28
44 #define EGO_LORDLINESS 29
45 #define EGO_SEEING 30
46 #define EGO_INFRAVISION 31
47 #define EGO_LITE 32
48 #define EGO_TELEPATHY 33
49 #define EGO_REGENERATION 34
50 #define EGO_TELEPORTATION 35
51 #define EGO_FOOL 36
52 #define EGO_BASILISK 37
53 #define EGO_ANCIENT_CURSE 38
54 #define EGO_SICKLINESS 39
55 
56 /* Cloaks */
57 #define EGO_PROTECTION 40
58 #define EGO_STEALTH 41
59 #define EGO_AMAN 42
60 #define EGO_AURA_FIRE 43
61 #define EGO_ENVELOPING 44
62 #define EGO_VULNERABILITY 45
63 #define EGO_IRRITATION 46
64 #define EGO_AURA_ELEC 47
65 #define EGO_AURA_COLD 128
66 #define EGO_BAT 129
67 #define EGO_NAZGUL 240
68 
69 /* Gloves */
70 #define EGO_FREE_ACTION 48
71 #define EGO_SLAYING 49
72 #define EGO_AGILITY 50
73 #define EGO_POWER 51
74 #define EGO_2WEAPON 52
75 #define EGO_MAGIC_MASTERY 53
76 #define EGO_WEAKNESS 54
77 #define EGO_CLUMSINESS 55
78 
79 /* Boots */
80 #define EGO_SLOW_DESCENT 56
81 #define EGO_QUIET 57
82 #define EGO_MOTION 58
83 #define EGO_SPEED 59
84 #define EGO_JUMP 60
85 #define EGO_NOISE 61
86 #define EGO_SLOWNESS 62
87 #define EGO_ANNOYANCE 63
88 
89 /* Weapons */
90 #define EGO_HA 64
91 #define EGO_DF 65
92 #define EGO_BLESS_BLADE 66
93 /* xxx */
94 #define EGO_WEST 68
95 #define EGO_ATTACKS 69
96 #define EGO_SLAYING_WEAPON 70
97 #define EGO_FORCE_WEAPON 71
98 #define EGO_BRAND_ACID 72
99 #define EGO_BRAND_ELEC 73
100 #define EGO_BRAND_FIRE 74
101 #define EGO_BRAND_COLD 75
102 #define EGO_BRAND_POIS 76
103 #define EGO_CHAOTIC 77
104 #define EGO_SHARPNESS 78
105 #define EGO_EARTHQUAKES 79
106 #define EGO_XXX_1 80
107 #define EGO_XXX_2 81
108 #define EGO_XXX_3 82
109 #define EGO_XXX_4 83
110 #define EGO_XXX_5 84
111 #define EGO_XXX_6 85
112 #define EGO_XXX_7 86
113 #define EGO_WEIRD 87
114 #define EGO_KILL_ANIMAL 88
115 #define EGO_KILL_EVIL 89
116 #define EGO_KILL_UNDEAD 90
117 #define EGO_KILL_DEMON 91
118 #define EGO_KILL_ORC 92
119 #define EGO_KILL_TROLL 93
120 #define EGO_KILL_GIANT 94
121 #define EGO_KILL_DRAGON 95
122 #define EGO_VAMPIRIC 96
123 #define EGO_PRISM 97
124 #define EGO_TRUMP 98
125 #define EGO_PATTERN 99
126 #define EGO_DIGGING 100
127 #define EGO_DEMON 101
128 #define EGO_MORGUL 102
129 #define EGO_KILL_HUMAN 103
130 
131 /* Bows */
132 #define EGO_ACCURACY 104
133 #define EGO_VELOCITY 105
134 /* xxx */
135 /* xxx */
136 #define EGO_EXTRA_MIGHT 108
137 #define EGO_EXTRA_SHOTS 109
138 /* xxx */
139 /* xxx */
140 
141 /* Ammo */
142 #define EGO_HURT_ANIMAL 112
143 #define EGO_HURT_EVIL 113
144 /* xxx */
145 /* xxx */
146 /* xxx */
147 /* xxx */
148 /* xxx */
149 #define EGO_HURT_DRAGON 119
150 #define EGO_SLAYING_BOLT 120
151 #define EGO_LIGHTNING_BOLT 121
152 #define EGO_FLAME 122
153 #define EGO_FROST 123
154 #define EGO_WOUNDING 124
155 #define EGO_BACKBITING 125
156 #define EGO_SHATTERED 126
157 #define EGO_BLASTED 127
158 
159 #define EGO_LITE_SHINE 140
160 #define EGO_LITE_ILLUMINATION 141
161 #define EGO_LITE_AURA_FIRE 142
162 #define EGO_LITE_INFRA 143
163 #define EGO_LITE_LONG 144
164 #define EGO_LITE_DARKNESS 145
165 #define EGO_LITE_EYE 146
166 
167 #define EGO_RING_HERO 150
168 #define EGO_RING_SLAY 151
169 #define EGO_RING_SUPER_AC 152
170 #define EGO_RING_MAGIC_MIS 153
171 #define EGO_RING_FIRE_BOLT 154
172 #define EGO_RING_COLD_BOLT 155
173 #define EGO_RING_ELEC_BOLT 156
174 #define EGO_RING_ACID_BOLT 157
175 #define EGO_RING_MANA_BOLT 158
176 #define EGO_RING_FIRE_BALL 159
177 #define EGO_RING_COLD_BALL 160
178 #define EGO_RING_ELEC_BALL 161
179 #define EGO_RING_ACID_BALL 162
180 #define EGO_RING_MANA_BALL 163
181 #define EGO_RING_DRAGON_F 164
182 #define EGO_RING_DRAGON_C 165
183 #define EGO_RING_D_SPEED 166
184 #define EGO_RING_BERSERKER 167
185 #define EGO_RING_HUNTER 168
186 #define EGO_RING_THROW 169
187 #define EGO_RING_REGEN 170
188 #define EGO_RING_LITE 171
189 #define EGO_RING_M_DETECT 172
190 #define EGO_RING_STEALTH 173
191 #define EGO_RING_TELE_AWAY 174
192 #define EGO_RING_TO_H 175
193 #define EGO_RING_TO_D 176
194 #define EGO_RING_RES_LITE 177
195 #define EGO_RING_RES_DARK 178
196 #define EGO_RING_WIZARD 179
197 #define EGO_RING_TRUE 180
198 #define EGO_RING_DRAIN_EXP 181
199 #define EGO_RING_NO_MELEE 182
200 #define EGO_RING_AGGRAVATE 183
201 #define EGO_RING_TY_CURSE 184
202 #define EGO_RING_RES_TIME 185
203 #define EGO_RING_TELEPORT 186
204 #define EGO_RING_ALBINO 187
205 
206 #define EGO_AMU_SLOW_D 210
207 #define EGO_AMU_INFRA 211
208 #define EGO_AMU_SEE_INVIS 212
209 #define EGO_AMU_HOLD_EXP 213
210 #define EGO_AMU_DRAIN_EXP 214
211 #define EGO_AMU_FOOL 215
212 #define EGO_AMU_AGGRAVATE 216
213 #define EGO_AMU_TY_CURSE 217
214 #define EGO_AMU_AC 218
215 #define EGO_AMU_IDENT 219
216 #define EGO_AMU_CHARM 220
217 #define EGO_AMU_STEALTH 221
218 #define EGO_AMU_JUMP 222
219 #define EGO_AMU_TELEPORT 223
220 #define EGO_AMU_D_DOOR 224
221 #define EGO_AMU_DEFENDER 225
222 #define EGO_AMU_RES_FIRE 226
223 #define EGO_AMU_RES_FIRE_ 227
224 #define EGO_AMU_RES_COLD 228
225 #define EGO_AMU_RES_COLD_ 229
226 #define EGO_AMU_RES_ELEC 230
227 #define EGO_AMU_RES_ELEC_ 231
228 #define EGO_AMU_RES_ACID 232
229 #define EGO_AMU_RES_ACID_ 233
230 #define EGO_AMU_LEVITATION 234
231 #define EGO_AMU_GREAT 235
232 #define EGO_AMU_DETECTION 236
233 #define EGO_AMU_NAIVETY 237
234 // MAX 240
235 
236 /*
237  * Information about "ego-items".
238  */
239 
241 
243 {
244  STR_OFFSET name; /* Name (offset) */
245  STR_OFFSET text; /* Text (offset) */
246 
247  INVENTORY_IDX slot; /*!< 装備部位 / Standard slot value */
248  PRICE rating; /*!< ベースアイテムからの価値加速 / Rating boost */
249 
250  DEPTH level; /* Minimum level */
251  RARITY rarity; /* Object rarity */
252 
253  HIT_PROB max_to_h; /* Maximum to-hit bonus */
254  HIT_POINT max_to_d; /* Maximum to-dam bonus */
255  ARMOUR_CLASS max_to_a; /* Maximum to-ac bonus */
256 
257  PARAMETER_VALUE max_pval; /* Maximum pval */
258 
259  PRICE cost; /* Ego-item "cost" */
260 
261  BIT_FLAGS flags[TR_FLAG_SIZE]; /* Ego-Item Flags */
262  BIT_FLAGS gen_flags; /* flags for generate */
263 
264  IDX act_idx; /* Activative ability index */
265 };
266 
267 extern EGO_IDX max_e_idx;
268 extern ego_item_type *e_info;
269 extern char *e_name;
270 extern char *e_text;
271 
HIT_POINT max_to_d
Definition: object-ego.h:254
IDX act_idx
Definition: object-ego.h:264
ego_item_type * e_info
Definition: object-ego.c:7
STR_OFFSET name
Definition: object-ego.h:244
PRICE rating
ベースアイテムからの価値加速 / Rating boost
Definition: object-ego.h:248
char * e_name
Definition: object-ego.c:8
s16b IDX
ゲーム中のID型を定義
Definition: h-type.h:112
STR_OFFSET text
Definition: object-ego.h:245
char * e_text
Definition: object-ego.c:9
PRICE cost
Definition: object-ego.h:259
INVENTORY_IDX slot
装備部位 / Standard slot value
Definition: object-ego.h:247
BIT_FLAGS gen_flags
Definition: object-ego.h:262
#define TR_FLAG_SIZE
Definition: object.h:175
s32b DEPTH
ゲーム中の階層レベルの型定義
Definition: h-type.h:216
PARAMETER_VALUE max_pval
Definition: object-ego.h:257
s16b EGO_IDX
アイテムエゴのID型を定義
Definition: h-type.h:133
s32b HIT_POINT
HPとその増減量の型定義
Definition: h-type.h:161
u32b BIT_FLAGS
32ビットのフラグ配列の型定義
Definition: h-type.h:225
s16b INVENTORY_IDX
ゲーム中の所持品ID型を定義
Definition: h-type.h:139
EGO_IDX max_e_idx
Definition: object-ego.c:14
RARITY rarity
Definition: object-ego.h:251
u32b STR_OFFSET
テキストオフセットの型定義
Definition: h-type.h:212
Definition: object-ego.h:242
s16b PARAMETER_VALUE
ゲーム中のアイテム能力値の型定義
Definition: h-type.h:204
BIT_FLAGS flags[TR_FLAG_SIZE]
Definition: object-ego.h:261
HIT_PROB max_to_h
Definition: object-ego.h:253
s32b PRICE
ゲーム中の金額価値の型定義
Definition: h-type.h:209
s16b HIT_PROB
ゲーム中の装備命中修正値を定義
Definition: h-type.h:173
DEPTH level
Definition: object-ego.h:250
s16b ARMOUR_CLASS
ゲーム中の行動アーマークラス型を定義
Definition: h-type.h:181
ARMOUR_CLASS max_to_a
Definition: object-ego.h:255
byte RARITY
ゲーム中の希少度の型定義
Definition: h-type.h:217