4 typedef struct artifact_type artifact_type;
7 * @struct artifact_type
8 * @brief 固定アーティファクト情報の構造体 / Artifact structure.
11 * the save-file only writes "cur_num" to the savefile.
12 * "max_num" is always "1" (if that artifact "exists")
16 STR_OFFSET name; /*!< アーティファクト名(headerオフセット参照) / Name (offset) */
17 STR_OFFSET text; /*!< アーティファクト解説(headerオフセット参照) / Text (offset) */
19 OBJECT_TYPE_VALUE tval; /*!< ベースアイテム大項目ID / Artifact type */
20 OBJECT_SUBTYPE_VALUE sval; /*!< ベースアイテム小項目ID / Artifact sub type */
22 PARAMETER_VALUE pval; /*!< pval修正値 / Artifact extra info */
24 HIT_PROB to_h; /*!< 命中ボーナス値 / Bonus to hit */
25 HIT_POINT to_d; /*!< ダメージボーナス値 / Bonus to damage */
26 ARMOUR_CLASS to_a; /*!< ACボーナス値 / Bonus to armor */
28 ARMOUR_CLASS ac; /*!< 上書きベースAC値 / Base armor */
31 DICE_SID ds; /*!< ダイス値 / Damage when hits */
33 WEIGHT weight; /*!< 重量 / Weight */
35 PRICE cost; /*!< 基本価格 / Artifact "cost" */
37 BIT_FLAGS flags[TR_FLAG_SIZE]; /*! アイテムフラグ / Artifact Flags */
39 BIT_FLAGS gen_flags; /*! アイテム生成フラグ / flags for generate */
41 DEPTH level; /*! 基本生成階 / Artifact level */
42 RARITY rarity; /*! レアリティ / Artifact rarity */
44 byte cur_num; /*! 現在の生成数 / Number created (0 or 1) */
45 byte max_num; /*! (未使用)最大生成数 / Unused (should be "1") */
47 FLOOR_IDX floor_id; /*! アイテムを落としたフロアのID / Leaved on this location last time */
49 byte act_idx; /*! 発動能力ID / Activative ability index */
52 extern artifact_type *a_info;
57 extern bool create_artifact(object_type *o_ptr, bool a_scroll);
58 extern int activation_index(object_type *o_ptr);
59 extern const activation_type* find_activation_info(object_type *o_ptr);
60 extern void random_artifact_resistance(object_type * o_ptr, artifact_type *a_ptr);
61 extern bool create_named_art(ARTIFACT_IDX a_idx, POSITION y, POSITION x);
62 extern bool make_artifact(object_type *o_ptr);
63 extern bool make_artifact_special(object_type *o_ptr);
65 /*** Artifact indexes (see "lib/edit/a_info.txt") ***/
68 #define ART_GALADRIEL 1
72 #define ART_PALANTIR 15
73 #define ART_STONE_LORE 17
74 #define ART_FLY_STONE 147
75 #define ART_ORB_OF_FATE 245
77 #define ART_CARLAMMAS 4
80 #define ART_FARAMIR 18
81 #define ART_BOROMIR 143
82 #define ART_MAGATAMA 149
85 #define ART_SACRED_KNIGHTS 217
87 #define ART_CHARMED 219
100 #define ART_RAZORBACK 129
101 #define ART_BLADETURNER 130
102 #define ART_SEIRYU 201
105 #define ART_SOULKEEPER 19
106 #define ART_ISILDUR 20
107 #define ART_ROHIRRIM 21
108 #define ART_LOHENGRIN 22
109 #define ART_JULIAN 23
110 #define ART_ARVEDUI 24
111 #define ART_CASPANION 25
112 #define ART_GILES 168
113 #define ART_MORLOK 203
114 #define ART_VETERAN 206
117 #define ART_SHIVA_JACKET 26
118 #define ART_HITHLOMIR 27
119 #define ART_THALKETTOTH 28
120 #define ART_HIMRING 127
121 #define ART_ICANUS 131
122 #define ART_NAMAKE_ARMOR 183
124 #define ART_DASAI 200
125 #define ART_KESHO 204
126 #define ART_MILIM 246
129 #define ART_THORIN 30
130 #define ART_CELEGORM 31
131 #define ART_ANARION 32
132 #define ART_GIL_GALAD 138
133 #define ART_YENDOR 141
135 #define ART_EARENDIL 186
136 #define ART_PERSEUS 197
138 /* Helms and Crowns */
141 #define ART_BERUTHIEL 35
142 #define ART_THRANDUIL 36
143 #define ART_THENGEL 37
144 #define ART_HAMMERHAND 38
146 #define ART_HOLHENNETH 40
147 #define ART_TERROR 41
149 #define ART_NUMENOR 132
150 #define ART_STONEMASK 146
154 #define ART_COLLUIN 44
155 #define ART_HOLCOLLETH 45
156 #define ART_THINGOL 46
157 #define ART_THORONGIL 47
158 #define ART_COLANNON 48
159 #define ART_LUTHIEN 49
162 #define ART_HEAVENLY_MAIDEN 233
165 #define ART_CAMBELEG 52
166 #define ART_CAMMITHRIM 53
167 #define ART_PAURHACH 54
168 #define ART_CORWIN 55
169 #define ART_PAURAEGEN 56
170 #define ART_PAURNEN 57
171 #define ART_THANOS 58
172 #define ART_FINGOLFIN 59
173 #define ART_PAURNIMMEN 185
176 #define ART_FEANOR 60
179 #define ART_SHIVA_BOOTS 63
180 #define ART_GLASS 165
187 #define ART_MAEDHROS 64
189 #define ART_NARTHANC 66
190 #define ART_NIMTHANC 67
191 #define ART_DETHANC 68
194 #define ART_CALRIS 71
195 #define ART_GRAYSWANDIR 72
196 #define ART_GLAMDRING 73
197 #define ART_NOTHUNG 74
198 #define ART_ORCRIST 75
199 #define ART_GURTHANG 76
200 #define ART_ZARCUTHRA 77
201 #define ART_TWILIGHT 78
202 #define ART_GONDRICAM 79
203 #define ART_CRISDURIAN 80
204 #define ART_AGLARANG 81
205 #define ART_RINGIL 82
206 #define ART_ANDURIL 83
207 #define ART_WEREWINDLE 84
208 #define ART_CHAINSWORD 85
209 #define ART_FORASGIL 86
210 #define ART_CARETH 87
212 #define ART_SOULSWORD 89
213 #define ART_MERLIN 90
214 #define ART_DOOMCALLER 91
215 #define ART_VORPAL_BLADE 92
216 #define ART_SLAYER 123
217 #define ART_KUSANAGI 128
218 #define ART_HURIN 133
219 #define ART_AZAGHAL 135
221 #define ART_CHARIOT 140
222 #define ART_WORPAL_BLADE 142
223 #define ART_MURAMASA 144
224 #define ART_ZANTETSU 150
225 #define ART_SOULCRUSH 154
226 #define ART_FALIS 155
227 #define ART_HRUNTING 156
228 #define ART_ANUBIS 158
229 #define ART_GURENKI 160
230 #define ART_TAILBITER 167
231 #define ART_MUSASI_KATANA 171
232 #define ART_MUSASI_WAKIZASI 172
233 #define ART_QUICKTHORN 174
234 #define ART_TINYTHORN 175
235 #define ART_EXCALIBUR 176
236 #define ART_EXCALIPUR 177
237 #define ART_EXCALIBUR_J 179
238 #define ART_ARUNRUTH 184
239 #define ART_HAKABUSA 189
240 #define ART_STORMBRINGER 190
241 #define ART_NARSIL 191
242 #define ART_KANNU 193
243 #define ART_GRIMTOOTH 196
244 #define ART_KAMUI 198
245 #define ART_GOURYU 207
246 #define ART_EOWYN 216
247 #define ART_NANACHO 248
248 #define ART_ROBINTON 251
251 #define ART_THEODEN 93
253 #define ART_OSONDIR 95
255 #define ART_RUNESPEAR 97
256 #define ART_DESTINY 98
258 #define ART_EORLINGAS 100
259 #define ART_DURIN 101
260 #define ART_EONWE 102
261 #define ART_BALLI 103
262 #define ART_LOTHARANG 104
263 #define ART_DWARVES_AXE 105
264 #define ART_BARUKKHELED 106
265 #define ART_WRATH 107
267 #define ART_AVAVIR 109
268 #define ART_BENKEI 152
269 #define ART_TAIKOBO 159
270 #define ART_TONBO 161
271 #define ART_GAEBOLG 163
272 #define ART_ARRYU 164
273 #define ART_AEGLOS 187
274 #define ART_BLOOD 199
275 #define ART_NUMAHOKO 202
277 /* The sword of the Dawn */
281 #define ART_GROND 111
282 #define ART_TOTILA 112
283 #define ART_THUNDERFIST 113
284 #define ART_BLOODSPIKE 114
285 #define ART_FIRESTAR 115
286 #define ART_TARATOL 116
289 #define ART_ERIRIL 119
290 #define ART_GANDALF 120
291 #define ART_DEATHWREAKER 121
292 #define ART_TURMIL 122
293 #define ART_MJOLLNIR 136
294 #define ART_WINBLOWS 139
295 #define ART_XIAOLONG 145
296 #define ART_NYOIBOU 157
297 #define ART_JONES 162
298 #define ART_HYOUSIGI 169
299 #define ART_MATOI 170
300 #define ART_IRON_BALL 173
301 #define ART_SAMSON 178
302 #define ART_NAMAKE_HAMMER 181
303 #define ART_BOLISHOI 188
304 #define ART_SHUTEN_DOJI 194
305 #define ART_G_HAMMER 195
306 #define ART_AEGISFANG 208
307 #define ART_HERMIT 209
308 #define ART_GOTHMOG 212
310 #define ART_FUNDIN 214
311 #define ART_AESCULAPIUS 225
314 #define ART_BELTHRONDING 124
316 #define ART_BRAND 126
317 #define ART_CRIMSON 16
318 #define ART_BUCKLAND 134
319 #define ART_YOICHI 148
320 #define ART_HARAD 180
321 #define ART_NAMAKE_BOW 182
322 #define ART_ROBIN_HOOD 221
323 #define ART_HELLFIRE 222
326 #define ART_BARD_ARROW 153
329 /* "Biases" for random artifact gen */
330 #define BIAS_ELEC 1 /*!< ランダムアーティファクトバイアス:電撃 */
331 #define BIAS_POIS 2 /*!< ランダムアーティファクトバイアス:毒 */
332 #define BIAS_FIRE 3 /*!< ランダムアーティファクトバイアス:火炎 */
333 #define BIAS_COLD 4 /*!< ランダムアーティファクトバイアス:冷気 */
334 #define BIAS_ACID 5 /*!< ランダムアーティファクトバイアス:酸 */
335 #define BIAS_STR 6 /*!< ランダムアーティファクトバイアス:腕力 */
336 #define BIAS_INT 7 /*!< ランダムアーティファクトバイアス:知力 */
337 #define BIAS_WIS 8 /*!< ランダムアーティファクトバイアス:賢さ */
338 #define BIAS_DEX 9 /*!< ランダムアーティファクトバイアス:器用さ */
339 #define BIAS_CON 10 /*!< ランダムアーティファクトバイアス:耐久 */
340 #define BIAS_CHR 11 /*!< ランダムアーティファクトバイアス:魅力 */
341 #define BIAS_CHAOS 12 /*!< ランダムアーティファクトバイアス:混沌 */
342 #define BIAS_PRIESTLY 13 /*!< ランダムアーティファクトバイアス:プリースト系 */
343 #define BIAS_NECROMANTIC 14 /*!< ランダムアーティファクトバイアス:死霊 */
344 #define BIAS_LAW 15 /*!< ランダムアーティファクトバイアス:法 */
345 #define BIAS_ROGUE 16 /*!< ランダムアーティファクトバイアス:盗賊系 */
346 #define BIAS_MAGE 17 /*!< ランダムアーティファクトバイアス:メイジ系 */
347 #define BIAS_WARRIOR 18 /*!< ランダムアーティファクトバイアス:戦士系 */
348 #define BIAS_RANGER 19 /*!< ランダムアーティファクトバイアス:レンジャー系 */
349 #define MAX_BIAS 20 /*!< ランダムアーティファクトバイアス:最大数 */