1 #include "smith/smith-tables.h"
2 #include "artifact/random-art-effects.h"
3 #include "object-enchant/tr-flags.h"
4 #include "object-enchant/tr-types.h"
5 #include "smith/object-smith.h"
6 #include "smith/smith-info.h"
7 #include "smith/smith-types.h"
10 #include <unordered_map>
14 * @brief エッセンスの順序リスト。エッセンスの表示順等で使用する。
16 const std::vector<SmithEssenceType> Smith::essence_list_order = {
17 SmithEssenceType::STR,
18 SmithEssenceType::INT,
19 SmithEssenceType::WIS,
20 SmithEssenceType::DEX,
21 SmithEssenceType::CON,
22 SmithEssenceType::CHR,
24 SmithEssenceType::SUST_STATUS,
26 SmithEssenceType::MAGIC_MASTERY,
27 SmithEssenceType::STEALTH,
28 SmithEssenceType::SEARCH,
29 SmithEssenceType::INFRA,
30 SmithEssenceType::TUNNEL,
31 SmithEssenceType::SPEED,
32 SmithEssenceType::BLOWS,
34 SmithEssenceType::CHAOTIC,
35 SmithEssenceType::VAMPIRIC,
36 SmithEssenceType::EATHQUAKE,
37 SmithEssenceType::BRAND_POIS,
38 SmithEssenceType::BRAND_ACID,
39 SmithEssenceType::BRAND_ELEC,
40 SmithEssenceType::BRAND_FIRE,
41 SmithEssenceType::BRAND_COLD,
42 SmithEssenceType::BRAND_MAGIC,
44 SmithEssenceType::IMMUNITY,
45 SmithEssenceType::REFLECT,
47 SmithEssenceType::RES_ACID,
48 SmithEssenceType::RES_ELEC,
49 SmithEssenceType::RES_FIRE,
50 SmithEssenceType::RES_COLD,
51 SmithEssenceType::RES_POIS,
52 SmithEssenceType::RES_FEAR,
53 SmithEssenceType::RES_LITE,
54 SmithEssenceType::RES_DARK,
55 SmithEssenceType::RES_BLIND,
56 SmithEssenceType::RES_CONF,
57 SmithEssenceType::RES_SOUND,
58 SmithEssenceType::RES_SHARDS,
59 SmithEssenceType::RES_NETHER,
60 SmithEssenceType::RES_NEXUS,
61 SmithEssenceType::RES_CHAOS,
62 SmithEssenceType::RES_DISEN,
63 SmithEssenceType::RES_WATER,
64 SmithEssenceType::RES_TIME,
65 SmithEssenceType::RES_CURSE,
67 SmithEssenceType::HOLD_EXP,
68 SmithEssenceType::FREE_ACT,
69 SmithEssenceType::WARNING,
70 SmithEssenceType::LEVITATION,
71 SmithEssenceType::SEE_INVIS,
72 SmithEssenceType::SLOW_DIGEST,
73 SmithEssenceType::REGEN,
74 SmithEssenceType::TELEPORT,
75 SmithEssenceType::NO_MAGIC,
76 SmithEssenceType::LITE,
77 SmithEssenceType::NO_TELE,
78 SmithEssenceType::TELEPATHY,
80 SmithEssenceType::SLAY_EVIL,
81 SmithEssenceType::SLAY_ANIMAL,
82 SmithEssenceType::SLAY_UNDEAD,
83 SmithEssenceType::SLAY_DEMON,
84 SmithEssenceType::SLAY_ORC,
85 SmithEssenceType::SLAY_TROLL,
86 SmithEssenceType::SLAY_GIANT,
87 SmithEssenceType::SLAY_DRAGON,
88 SmithEssenceType::SLAY_HUMAN,
89 SmithEssenceType::SLAY_GOOD,
91 SmithEssenceType::EASY2_WEAPON,
92 SmithEssenceType::STRENGTHEN_BOW,
93 SmithEssenceType::UNIQUE,
95 SmithEssenceType::ATTACK,
100 * @brief SmithEssence からエッセンスの表記名を引く連想配列
102 const std::unordered_map<SmithEssenceType, concptr> Smith::essence_to_name = {
103 { SmithEssenceType::STR, _("腕力", "strength") },
104 { SmithEssenceType::INT, _("知能", "intelligen.") },
105 { SmithEssenceType::WIS, _("賢さ", "wisdom") },
106 { SmithEssenceType::DEX, _("器用さ", "dexterity") },
107 { SmithEssenceType::CON, _("耐久力", "constitut.") },
108 { SmithEssenceType::CHR, _("魅力", "charisma") },
110 { SmithEssenceType::SUST_STATUS, _("能力維持", "sustain") },
112 { SmithEssenceType::MAGIC_MASTERY, _("魔力支配", "magic mast.") },
113 { SmithEssenceType::STEALTH, _("隠密", "stealth") },
114 { SmithEssenceType::SEARCH, _("探索", "searching") },
115 { SmithEssenceType::INFRA, _("赤外線視力", "infravision") },
116 { SmithEssenceType::TUNNEL, _("採掘", "digging") },
117 { SmithEssenceType::SPEED, _("スピード", "speed") },
118 { SmithEssenceType::BLOWS, _("追加攻撃", "extra atk") },
120 { SmithEssenceType::CHAOTIC, _("カオス攻撃", "chaos brand") },
121 { SmithEssenceType::VAMPIRIC, _("吸血攻撃", "vampiric") },
122 { SmithEssenceType::EATHQUAKE, _("地震", "quake") },
123 { SmithEssenceType::BRAND_POIS, _("毒殺", "pois. brand") },
124 { SmithEssenceType::BRAND_ACID, _("溶解", "acid brand") },
125 { SmithEssenceType::BRAND_ELEC, _("電撃", "elec. brand") },
126 { SmithEssenceType::BRAND_FIRE, _("焼棄", "fire brand") },
127 { SmithEssenceType::BRAND_COLD, _("凍結", "cold brand") },
128 { SmithEssenceType::BRAND_MAGIC, _("魔術", "magic brand") },
130 { SmithEssenceType::IMMUNITY, _("免疫", "immunity") },
131 { SmithEssenceType::REFLECT, _("反射", "reflection") },
133 { SmithEssenceType::RES_ACID, _("耐酸", "res. acid") },
134 { SmithEssenceType::RES_ELEC, _("耐電撃", "res. elec.") },
135 { SmithEssenceType::RES_FIRE, _("耐火炎", "res. fire") },
136 { SmithEssenceType::RES_COLD, _("耐冷気", "res. cold") },
137 { SmithEssenceType::RES_POIS, _("耐毒", "res. poison") },
138 { SmithEssenceType::RES_FEAR, _("耐恐怖", "res. fear") },
139 { SmithEssenceType::RES_LITE, _("耐閃光", "res. light") },
140 { SmithEssenceType::RES_DARK, _("耐暗黒", "res. dark") },
141 { SmithEssenceType::RES_BLIND, _("耐盲目", "res. blind") },
142 { SmithEssenceType::RES_CONF, _("耐混乱", "res.confuse") },
143 { SmithEssenceType::RES_SOUND, _("耐轟音", "res. sound") },
144 { SmithEssenceType::RES_SHARDS, _("耐破片", "res. shard") },
145 { SmithEssenceType::RES_NETHER, _("耐地獄", "res. nether") },
146 { SmithEssenceType::RES_NEXUS, _("耐因果混乱", "res. nexus") },
147 { SmithEssenceType::RES_CHAOS, _("耐カオス", "res. chaos") },
148 { SmithEssenceType::RES_DISEN, _("耐劣化", "res. disen.") },
149 { SmithEssenceType::RES_WATER, _("耐水", "res. water") },
150 { SmithEssenceType::RES_TIME, _("耐時間逆転", "res. time") },
151 { SmithEssenceType::RES_CURSE, _("耐呪力", "res. curse") },
153 { SmithEssenceType::HOLD_EXP, _("経験値維持", "hold exp") },
154 { SmithEssenceType::FREE_ACT, _("麻痺知らず", "free action") },
155 { SmithEssenceType::WARNING, _("警告", "warning") },
156 { SmithEssenceType::LEVITATION, _("浮遊", "levitation") },
157 { SmithEssenceType::SEE_INVIS, _("可視透明", "see invis.") },
158 { SmithEssenceType::TELEPATHY, _("テレパシー", "telepathy") },
159 { SmithEssenceType::SLOW_DIGEST, _("遅消化", "slow dige.") },
160 { SmithEssenceType::REGEN, _("急速回復", "regen.") },
161 { SmithEssenceType::TELEPORT, _("テレポート", "teleport") },
162 { SmithEssenceType::NO_MAGIC, _("反魔法", "anti magic") },
163 { SmithEssenceType::LITE, _("永久光源", "perm. light") },
164 { SmithEssenceType::NO_TELE, _("反テレポ", "no teleport") },
166 { SmithEssenceType::SLAY_EVIL, _("邪悪倍打", "slay evil") },
167 { SmithEssenceType::SLAY_ANIMAL, _("動物倍打", "slay animal") },
168 { SmithEssenceType::SLAY_UNDEAD, _("不死倍打", "slay undead") },
169 { SmithEssenceType::SLAY_DEMON, _("悪魔倍打", "slay demon") },
170 { SmithEssenceType::SLAY_ORC, _("オーク倍打", "slay orc") },
171 { SmithEssenceType::SLAY_TROLL, _("トロル倍打", "slay troll") },
172 { SmithEssenceType::SLAY_GIANT, _("巨人倍打", "slay giant") },
173 { SmithEssenceType::SLAY_DRAGON, _("竜倍打", "slay dragon") },
174 { SmithEssenceType::SLAY_HUMAN, _("人間倍打", "slay human") },
175 { SmithEssenceType::SLAY_GOOD, _("善良倍打", "slay good") },
177 { SmithEssenceType::EASY2_WEAPON, _("二刀流", "two weapons") },
178 { SmithEssenceType::STRENGTHEN_BOW, _("射撃強化", "enc. ranged") },
179 { SmithEssenceType::UNIQUE, _("ユニーク", "unique") },
181 { SmithEssenceType::ATTACK, _("攻撃", "weapon enc.") },
182 { SmithEssenceType::AC, _("防御", "armor enc.") },
186 * @brief エッセンス抽出情報テーブル
188 const std::vector<essence_drain_type> Smith::essence_drain_info_table = {
189 { TR_STR, { SmithEssenceType::STR }, 10 },
190 { TR_INT, { SmithEssenceType::INT }, 10 },
191 { TR_WIS, { SmithEssenceType::WIS }, 10 },
192 { TR_DEX, { SmithEssenceType::DEX }, 10 },
193 { TR_CON, { SmithEssenceType::CON }, 10 },
194 { TR_CHR, { SmithEssenceType::CHR }, 10 },
195 { TR_MAGIC_MASTERY, { SmithEssenceType::MAGIC_MASTERY }, 10 },
196 { TR_FORCE_WEAPON, { SmithEssenceType::INT, SmithEssenceType::WIS }, 5 },
197 { TR_STEALTH, { SmithEssenceType::STEALTH }, 10 },
198 { TR_SEARCH, { SmithEssenceType::SEARCH }, 10 },
199 { TR_INFRA, { SmithEssenceType::INFRA }, 10 },
200 { TR_TUNNEL, { SmithEssenceType::TUNNEL }, 10 },
201 { TR_SPEED, { SmithEssenceType::SPEED }, 10 },
202 { TR_BLOWS, { SmithEssenceType::BLOWS }, 10 },
203 { TR_CHAOTIC, { SmithEssenceType::CHAOTIC }, 10 },
204 { TR_VAMPIRIC, { SmithEssenceType::VAMPIRIC }, 10 },
205 { TR_SLAY_ANIMAL, { SmithEssenceType::SLAY_ANIMAL }, 10 },
206 { TR_SLAY_EVIL, { SmithEssenceType::SLAY_EVIL }, 10 },
207 { TR_SLAY_UNDEAD, { SmithEssenceType::SLAY_UNDEAD }, 10 },
208 { TR_SLAY_DEMON, { SmithEssenceType::SLAY_DEMON }, 10 },
209 { TR_SLAY_ORC, { SmithEssenceType::SLAY_ORC }, 10 },
210 { TR_SLAY_TROLL, { SmithEssenceType::SLAY_TROLL }, 10 },
211 { TR_SLAY_GIANT, { SmithEssenceType::SLAY_GIANT }, 10 },
212 { TR_SLAY_DRAGON, { SmithEssenceType::SLAY_DRAGON }, 10 },
213 { TR_KILL_DRAGON, { SmithEssenceType::SLAY_DRAGON }, 10 },
214 { TR_VORPAL, { SmithEssenceType::BRAND_POIS, SmithEssenceType::BRAND_ACID, SmithEssenceType::BRAND_ELEC, SmithEssenceType::BRAND_FIRE, SmithEssenceType::BRAND_COLD }, 5 },
215 { TR_EARTHQUAKE, { SmithEssenceType::EATHQUAKE }, 10 },
216 { TR_BRAND_POIS, { SmithEssenceType::BRAND_POIS }, 10 },
217 { TR_BRAND_ACID, { SmithEssenceType::BRAND_ACID }, 10 },
218 { TR_BRAND_ELEC, { SmithEssenceType::BRAND_ELEC }, 10 },
219 { TR_BRAND_FIRE, { SmithEssenceType::BRAND_FIRE }, 10 },
220 { TR_BRAND_COLD, { SmithEssenceType::BRAND_COLD }, 10 },
222 { TR_SUST_STR, { SmithEssenceType::SUST_STATUS }, 10 },
223 { TR_SUST_INT, { SmithEssenceType::SUST_STATUS }, 10 },
224 { TR_SUST_WIS, { SmithEssenceType::SUST_STATUS }, 10 },
225 { TR_SUST_DEX, { SmithEssenceType::SUST_STATUS }, 10 },
226 { TR_SUST_CON, { SmithEssenceType::SUST_STATUS }, 10 },
227 { TR_SUST_CHR, { SmithEssenceType::SUST_STATUS }, 10 },
228 { TR_RIDING, {}, 0 },
229 { TR_EASY_SPELL, { SmithEssenceType::BRAND_MAGIC }, 10 },
230 { TR_IM_ACID, { SmithEssenceType::IMMUNITY }, 100 },
231 { TR_IM_ELEC, { SmithEssenceType::IMMUNITY }, 100 },
232 { TR_IM_FIRE, { SmithEssenceType::IMMUNITY }, 100 },
233 { TR_IM_COLD, { SmithEssenceType::IMMUNITY }, 100 },
235 { TR_REFLECT, { SmithEssenceType::REFLECT }, 10 },
236 { TR_FREE_ACT, { SmithEssenceType::FREE_ACT }, 10 },
237 { TR_HOLD_EXP, { SmithEssenceType::HOLD_EXP }, 10 },
238 { TR_RES_ACID, { SmithEssenceType::RES_ACID }, 10 },
239 { TR_RES_ELEC, { SmithEssenceType::RES_ELEC }, 10 },
240 { TR_RES_FIRE, { SmithEssenceType::RES_FIRE }, 10 },
241 { TR_RES_COLD, { SmithEssenceType::RES_COLD }, 10 },
242 { TR_RES_POIS, { SmithEssenceType::RES_POIS }, 10 },
243 { TR_RES_FEAR, { SmithEssenceType::RES_FEAR }, 10 },
244 { TR_RES_LITE, { SmithEssenceType::RES_LITE }, 10 },
245 { TR_RES_DARK, { SmithEssenceType::RES_DARK }, 10 },
246 { TR_RES_BLIND, { SmithEssenceType::RES_BLIND }, 10 },
247 { TR_RES_CONF, { SmithEssenceType::RES_CONF }, 10 },
248 { TR_RES_SOUND, { SmithEssenceType::RES_SOUND }, 10 },
249 { TR_RES_SHARDS, { SmithEssenceType::RES_SHARDS }, 10 },
250 { TR_RES_NETHER, { SmithEssenceType::RES_NETHER }, 10 },
251 { TR_RES_NEXUS, { SmithEssenceType::RES_NEXUS }, 10 },
252 { TR_RES_CHAOS, { SmithEssenceType::RES_CHAOS }, 10 },
253 { TR_RES_DISEN, { SmithEssenceType::RES_DISEN }, 10 },
255 { TR_SH_FIRE, { SmithEssenceType::BRAND_FIRE, SmithEssenceType::RES_FIRE }, 10 },
256 { TR_SH_ELEC, { SmithEssenceType::BRAND_ELEC, SmithEssenceType::RES_ELEC }, 10 },
257 { TR_SLAY_HUMAN, { SmithEssenceType::SLAY_HUMAN }, 10 },
258 { TR_SH_COLD, { SmithEssenceType::BRAND_COLD, SmithEssenceType::RES_COLD }, 10 },
259 { TR_NO_TELE, { SmithEssenceType::NO_TELE }, 10 },
260 { TR_NO_MAGIC, { SmithEssenceType::NO_MAGIC }, 10 },
261 { TR_DEC_MANA, { SmithEssenceType::INT }, 10 },
262 { TR_TY_CURSE, {}, -1 },
263 { TR_WARNING, { SmithEssenceType::WARNING }, 10 },
264 { TR_HIDE_TYPE, {}, 0 },
265 { TR_SHOW_MODS, {}, 0 },
266 { TR_SLAY_GOOD, { SmithEssenceType::SLAY_GOOD }, 10 },
267 { TR_LEVITATION, { SmithEssenceType::LEVITATION }, 10 },
268 { TR_LITE_1, { SmithEssenceType::LITE }, 10 },
269 { TR_SEE_INVIS, { SmithEssenceType::SEE_INVIS }, 10 },
270 { TR_TELEPATHY, { SmithEssenceType::TELEPATHY }, 10 },
271 { TR_SLOW_DIGEST, { SmithEssenceType::SLOW_DIGEST }, 10 },
272 { TR_REGEN, { SmithEssenceType::REGEN }, 10 },
273 { TR_XTRA_MIGHT, { SmithEssenceType::STRENGTHEN_BOW }, 10 },
274 { TR_XTRA_SHOTS, { SmithEssenceType::STRENGTHEN_BOW }, 10 },
275 { TR_IGNORE_ACID, {}, 0 },
276 { TR_IGNORE_ELEC, {}, 0 },
277 { TR_IGNORE_FIRE, {}, 0 },
278 { TR_IGNORE_COLD, {}, 0 },
279 { TR_ACTIVATE, {}, 0 },
280 { TR_DRAIN_EXP, {}, -1 },
281 { TR_TELEPORT, { SmithEssenceType::TELEPORT }, 10 },
282 { TR_AGGRAVATE, {}, -1 },
283 { TR_BLESSED, {}, 0 },
284 { TR_XXX_93, {}, 0 },
285 { TR_XXX_94, {}, 0 },
286 { TR_KILL_GOOD, { SmithEssenceType::SLAY_GOOD }, 10 },
288 { TR_KILL_ANIMAL, { SmithEssenceType::SLAY_ANIMAL }, 10 },
289 { TR_KILL_EVIL, { SmithEssenceType::SLAY_EVIL }, 10 },
290 { TR_KILL_UNDEAD, { SmithEssenceType::SLAY_UNDEAD }, 10 },
291 { TR_KILL_DEMON, { SmithEssenceType::SLAY_DEMON }, 10 },
292 { TR_KILL_ORC, { SmithEssenceType::SLAY_ORC }, 10 },
293 { TR_KILL_TROLL, { SmithEssenceType::SLAY_TROLL }, 10 },
294 { TR_KILL_GIANT, { SmithEssenceType::SLAY_GIANT }, 10 },
295 { TR_KILL_HUMAN, { SmithEssenceType::SLAY_HUMAN }, 10 },
296 { TR_ESP_ANIMAL, { SmithEssenceType::SLAY_ANIMAL }, 10 },
297 { TR_ESP_UNDEAD, { SmithEssenceType::SLAY_UNDEAD }, 10 },
298 { TR_ESP_DEMON, { SmithEssenceType::SLAY_DEMON }, 10 },
299 { TR_ESP_ORC, { SmithEssenceType::SLAY_ORC }, 10 },
300 { TR_ESP_TROLL, { SmithEssenceType::SLAY_TROLL }, 10 },
301 { TR_ESP_GIANT, { SmithEssenceType::SLAY_GIANT }, 10 },
302 { TR_ESP_DRAGON, { SmithEssenceType::SLAY_DRAGON }, 10 },
303 { TR_ESP_HUMAN, { SmithEssenceType::SLAY_HUMAN }, 10 },
304 { TR_ESP_EVIL, { SmithEssenceType::SLAY_EVIL }, 10 },
305 { TR_ESP_GOOD, { SmithEssenceType::SLAY_GOOD }, 10 },
306 { TR_ESP_NONLIVING, {}, 0 }, // TODO
307 { TR_ESP_UNIQUE, { SmithEssenceType::UNIQUE }, 20 },
308 { TR_FULL_NAME, {}, 0 },
309 { TR_FIXED_FLAVOR, {}, 0 },
310 { TR_ADD_L_CURSE, {}, -1 },
311 { TR_ADD_H_CURSE, {}, -1 },
312 { TR_DRAIN_HP, {}, -1 },
313 { TR_DRAIN_MANA, {}, -1 },
314 { TR_LITE_2, { SmithEssenceType::LITE }, 20 },
315 { TR_LITE_3, { SmithEssenceType::LITE }, 30 },
316 { TR_LITE_M1, {}, 0 },
317 { TR_LITE_M2, {}, 0 },
318 { TR_LITE_M3, {}, 0 },
319 { TR_LITE_FUEL, {}, 0 },
321 { TR_CALL_ANIMAL, {}, -1 },
322 { TR_CALL_DEMON, {}, -1 },
323 { TR_CALL_DRAGON, {}, -1 },
324 { TR_CALL_UNDEAD, {}, -1 },
325 { TR_COWARDICE, {}, -1 },
326 { TR_LOW_MELEE, {}, -1 },
327 { TR_LOW_AC, {}, -1 },
328 { TR_HARD_SPELL, {}, -1 },
329 { TR_FAST_DIGEST, {}, -1 },
330 { TR_SLOW_REGEN, {}, -1 },
331 { TR_MIGHTY_THROW, {}, 0 },
332 { TR_EASY2_WEAPON, { SmithEssenceType::EASY2_WEAPON }, 10 },
333 { TR_DOWN_SAVING, {}, -1 },
334 { TR_NO_AC, {}, -1 },
335 { TR_HEAVY_SPELL, {}, -1 },
336 { TR_RES_TIME, { SmithEssenceType::RES_TIME }, 10 },
337 { TR_RES_WATER, { SmithEssenceType::RES_WATER }, 10 },
338 { TR_INVULN_ARROW, {}, 0 },
339 { TR_DARK_SOURCE, {}, 0 },
340 { TR_SUPPORTIVE, { SmithEssenceType::EASY2_WEAPON }, 5 },
341 { TR_RES_CURSE, { SmithEssenceType::RES_CURSE }, 10 },
342 { TR_BERS_RAGE, {}, -1 },
343 { TR_BRAND_MAGIC, { SmithEssenceType::BRAND_MAGIC }, 10 },
344 { TR_IMPACT, {}, 0 },
345 { TR_VUL_ACID, {}, -1 },
346 { TR_VUL_COLD, {}, -1 },
347 { TR_VUL_ELEC, {}, -1 },
348 { TR_VUL_FIRE, {}, -1 },
349 { TR_VUL_LITE, {}, -1 },
350 { TR_IM_DARK, {}, 0 },
352 { TR_SELF_FIRE, { SmithEssenceType::BRAND_FIRE, SmithEssenceType::RES_FIRE }, 10 },
353 { TR_SELF_ELEC, { SmithEssenceType::BRAND_ELEC, SmithEssenceType::RES_ELEC }, 10 },
354 { TR_SELF_COLD, { SmithEssenceType::BRAND_COLD, SmithEssenceType::RES_COLD }, 10 },
355 { TR_PERSISTENT_CURSE, {}, -1 },
356 { TR_VUL_CURSE, {}, -1 },
361 template <typename T, typename... Args>
362 std::shared_ptr<ISmithInfo> make_info(SmithEffectType effect, concptr name, SmithCategoryType category, std::vector<SmithEssenceType> need_essences, int consumption, Args &&...args)
364 return std::make_shared<T>(effect, name, category, std::move(need_essences), consumption, std::forward<Args>(args)...);
367 std::shared_ptr<ISmithInfo> make_basic_smith_info(SmithEffectType effect, concptr name, SmithCategoryType category, std::vector<SmithEssenceType> need_essences, int consumption, TrFlags add_flags)
369 return make_info<BasicSmithInfo>(effect, name, category, std::move(need_essences), consumption, std::move(add_flags));
377 const std::vector<std::shared_ptr<ISmithInfo>> Smith::smith_info_table = {
378 make_basic_smith_info(SmithEffectType::NONE, _("なし", "None"), SmithCategoryType::NONE, std::vector<SmithEssenceType>{ SmithEssenceType::NONE }, 0, {}),
380 make_basic_smith_info(SmithEffectType::STR, _("腕力", "strength"), SmithCategoryType::PVAL, { SmithEssenceType::STR }, 20, { TR_STR }),
381 make_basic_smith_info(SmithEffectType::INT, _("知能", "intelligence"), SmithCategoryType::PVAL, { SmithEssenceType::INT }, 20, { TR_INT }),
382 make_basic_smith_info(SmithEffectType::WIS, _("賢さ", "wisdom"), SmithCategoryType::PVAL, { SmithEssenceType::WIS }, 20, { TR_WIS }),
383 make_basic_smith_info(SmithEffectType::DEX, _("器用さ", "dexterity"), SmithCategoryType::PVAL, { SmithEssenceType::DEX }, 20, { TR_DEX }),
384 make_basic_smith_info(SmithEffectType::CON, _("耐久力", "constitution"), SmithCategoryType::PVAL, { SmithEssenceType::CON }, 20, { TR_CON }),
385 make_basic_smith_info(SmithEffectType::CHR, _("魅力", "charisma"), SmithCategoryType::PVAL, { SmithEssenceType::CHR }, 20, { TR_CHR }),
387 make_basic_smith_info(SmithEffectType::SUST_STR, _("腕力維持", "sustain strength"), SmithCategoryType::ABILITY, { SmithEssenceType::SUST_STATUS }, 15, { TR_SUST_STR }),
388 make_basic_smith_info(SmithEffectType::SUST_INT, _("知能維持", "sustain intelligence"), SmithCategoryType::ABILITY, { SmithEssenceType::SUST_STATUS }, 15, { TR_SUST_INT }),
389 make_basic_smith_info(SmithEffectType::SUST_WIS, _("賢さ維持", "sustain wisdom"), SmithCategoryType::ABILITY, { SmithEssenceType::SUST_STATUS }, 15, { TR_SUST_WIS }),
390 make_basic_smith_info(SmithEffectType::SUST_DEX, _("器用さ維持", "sustain dexterity"), SmithCategoryType::ABILITY, { SmithEssenceType::SUST_STATUS }, 15, { TR_SUST_DEX }),
391 make_basic_smith_info(SmithEffectType::SUST_CON, _("耐久力維持", "sustain constitution"), SmithCategoryType::ABILITY, { SmithEssenceType::SUST_STATUS }, 15, { TR_SUST_CON }),
392 make_basic_smith_info(SmithEffectType::SUST_CHR, _("魅力維持", "sustain charisma"), SmithCategoryType::ABILITY, { SmithEssenceType::SUST_STATUS }, 15, { TR_SUST_CHR }),
394 make_basic_smith_info(SmithEffectType::MAGIC_MASTERY, _("魔力支配", "magic mastery"), SmithCategoryType::PVAL, { SmithEssenceType::MAGIC_MASTERY }, 20, { TR_MAGIC_MASTERY }),
395 make_basic_smith_info(SmithEffectType::STEALTH, _("隠密", "stealth"), SmithCategoryType::PVAL, { SmithEssenceType::STEALTH }, 40, { TR_STEALTH }),
396 make_basic_smith_info(SmithEffectType::SEARCH, _("探索", "searching"), SmithCategoryType::PVAL, { SmithEssenceType::SEARCH }, 15, { TR_SEARCH }),
397 make_basic_smith_info(SmithEffectType::INFRA, _("赤外線視力", "infravision"), SmithCategoryType::PVAL, { SmithEssenceType::INFRA }, 15, { TR_INFRA }),
398 make_basic_smith_info(SmithEffectType::TUNNEL, _("採掘", "digging"), SmithCategoryType::PVAL, { SmithEssenceType::TUNNEL }, 15, { TR_TUNNEL }),
399 make_basic_smith_info(SmithEffectType::SPEED, _("スピード", "speed"), SmithCategoryType::PVAL, { SmithEssenceType::SPEED }, 12, { TR_SPEED }),
400 make_basic_smith_info(SmithEffectType::BLOWS, _("追加攻撃", "extra attack"), SmithCategoryType::WEAPON_ATTR, { SmithEssenceType::BLOWS }, 20, { TR_BLOWS }),
402 make_basic_smith_info(SmithEffectType::CHAOTIC, _("カオス攻撃", "chaos brand"), SmithCategoryType::WEAPON_ATTR, { SmithEssenceType::CHAOTIC }, 15, { TR_CHAOTIC }),
403 make_basic_smith_info(SmithEffectType::VAMPIRIC, _("吸血攻撃", "vampiric brand"), SmithCategoryType::WEAPON_ATTR, { SmithEssenceType::VAMPIRIC }, 60, { TR_VAMPIRIC }),
404 make_basic_smith_info(SmithEffectType::EARTHQUAKE, _("地震攻撃", "quake brand"), SmithCategoryType::WEAPON_ATTR, { SmithEssenceType::EATHQUAKE }, 15, { TR_EARTHQUAKE }),
405 make_basic_smith_info(SmithEffectType::BRAND_POIS, _("毒殺", "poison brand"), SmithCategoryType::WEAPON_ATTR, { SmithEssenceType::BRAND_POIS }, 20, { TR_BRAND_POIS }),
406 make_basic_smith_info(SmithEffectType::BRAND_ACID, _("溶解", "acid brand"), SmithCategoryType::WEAPON_ATTR, { SmithEssenceType::BRAND_ACID }, 20, { TR_BRAND_ACID }),
407 make_basic_smith_info(SmithEffectType::BRAND_ELEC, _("電撃", "electric brand"), SmithCategoryType::WEAPON_ATTR, { SmithEssenceType::BRAND_ELEC }, 20, { TR_BRAND_ELEC }),
408 make_basic_smith_info(SmithEffectType::BRAND_FIRE, _("焼棄", "fire brand"), SmithCategoryType::WEAPON_ATTR, { SmithEssenceType::BRAND_FIRE }, 20, { TR_BRAND_FIRE }),
409 make_basic_smith_info(SmithEffectType::BRAND_COLD, _("凍結", "cold brand"), SmithCategoryType::WEAPON_ATTR, { SmithEssenceType::BRAND_COLD }, 20, { TR_BRAND_COLD }),
410 make_basic_smith_info(SmithEffectType::VORPAL, _("切れ味", "sharpness"), SmithCategoryType::WEAPON_ATTR, { SmithEssenceType::BRAND_ACID, SmithEssenceType::BRAND_ELEC, SmithEssenceType::BRAND_FIRE, SmithEssenceType::BRAND_COLD }, 10, { TR_VORPAL }),
411 make_basic_smith_info(SmithEffectType::BRAND_MAGIC, _("魔術属性攻撃", "magic brand"), SmithCategoryType::WEAPON_ATTR, { SmithEssenceType::BRAND_MAGIC }, 20, { TR_BRAND_MAGIC }),
412 make_basic_smith_info(SmithEffectType::XTRA_MIGHT, _("射撃倍率強化", "enhance firing power"), SmithCategoryType::WEAPON_ATTR, { SmithEssenceType::STRENGTHEN_BOW }, 50, { TR_XTRA_MIGHT }),
413 make_basic_smith_info(SmithEffectType::XTRA_SHOTS, _("射撃速度強化", "enhance firing rate"), SmithCategoryType::WEAPON_ATTR, { SmithEssenceType::STRENGTHEN_BOW }, 50, { TR_XTRA_SHOTS }),
415 make_basic_smith_info(SmithEffectType::IM_ACID, _("酸免疫", "acid immunity"), SmithCategoryType::RESISTANCE, { SmithEssenceType::IMMUNITY, SmithEssenceType::RES_ACID }, 200, { TR_IM_ACID }),
416 make_basic_smith_info(SmithEffectType::IM_ELEC, _("電撃免疫", "electric immunity"), SmithCategoryType::RESISTANCE, { SmithEssenceType::IMMUNITY, SmithEssenceType::RES_ELEC }, 200, { TR_IM_ELEC }),
417 make_basic_smith_info(SmithEffectType::IM_FIRE, _("火炎免疫", "fire immunity"), SmithCategoryType::RESISTANCE, { SmithEssenceType::IMMUNITY, SmithEssenceType::RES_FIRE }, 200, { TR_IM_FIRE }),
418 make_basic_smith_info(SmithEffectType::IM_COLD, _("冷気免疫", "cold immunity"), SmithCategoryType::RESISTANCE, { SmithEssenceType::IMMUNITY, SmithEssenceType::RES_COLD }, 200, { TR_IM_COLD }),
419 make_basic_smith_info(SmithEffectType::REFLECT, _("反射", "reflection"), SmithCategoryType::RESISTANCE, { SmithEssenceType::REFLECT }, 20, { TR_REFLECT }),
421 make_basic_smith_info(SmithEffectType::RES_ACID, _("耐酸", "resistance to acid"), SmithCategoryType::RESISTANCE, { SmithEssenceType::RES_ACID }, 15, { TR_RES_ACID }),
422 make_basic_smith_info(SmithEffectType::RES_ELEC, _("耐電撃", "resistance to electric"), SmithCategoryType::RESISTANCE, { SmithEssenceType::RES_ELEC }, 15, { TR_RES_ELEC }),
423 make_basic_smith_info(SmithEffectType::RES_FIRE, _("耐火炎", "resistance to fire"), SmithCategoryType::RESISTANCE, { SmithEssenceType::RES_FIRE }, 15, { TR_RES_FIRE }),
424 make_basic_smith_info(SmithEffectType::RES_COLD, _("耐冷気", "resistance to cold"), SmithCategoryType::RESISTANCE, { SmithEssenceType::RES_COLD }, 15, { TR_RES_COLD }),
425 make_basic_smith_info(SmithEffectType::RES_POIS, _("耐毒", "resistance to poison"), SmithCategoryType::RESISTANCE, { SmithEssenceType::RES_POIS }, 25, { TR_RES_POIS }),
426 make_basic_smith_info(SmithEffectType::RES_FEAR, _("耐恐怖", "resistance to fear"), SmithCategoryType::RESISTANCE, { SmithEssenceType::RES_FEAR }, 20, { TR_RES_FEAR }),
427 make_basic_smith_info(SmithEffectType::RES_LITE, _("耐閃光", "resistance to light"), SmithCategoryType::RESISTANCE, { SmithEssenceType::RES_LITE }, 20, { TR_RES_LITE }),
428 make_basic_smith_info(SmithEffectType::RES_DARK, _("耐暗黒", "resistance to dark"), SmithCategoryType::RESISTANCE, { SmithEssenceType::RES_DARK }, 20, { TR_RES_DARK }),
429 make_basic_smith_info(SmithEffectType::RES_BLIND, _("耐盲目", "resistance to blind"), SmithCategoryType::RESISTANCE, { SmithEssenceType::RES_BLIND }, 20, { TR_RES_BLIND }),
430 make_basic_smith_info(SmithEffectType::RES_CONF, _("耐混乱", "resistance to confusion"), SmithCategoryType::RESISTANCE, { SmithEssenceType::RES_CONF }, 20, { TR_RES_CONF }),
431 make_basic_smith_info(SmithEffectType::RES_SOUND, _("耐轟音", "resistance to sound"), SmithCategoryType::RESISTANCE, { SmithEssenceType::RES_SOUND }, 20, { TR_RES_SOUND }),
432 make_basic_smith_info(SmithEffectType::RES_SHARDS, _("耐破片", "resistance to shard"), SmithCategoryType::RESISTANCE, { SmithEssenceType::RES_SHARDS }, 20, { TR_RES_SHARDS }),
433 make_basic_smith_info(SmithEffectType::RES_NETHER, _("耐地獄", "resistance to nether"), SmithCategoryType::RESISTANCE, { SmithEssenceType::RES_NETHER }, 20, { TR_RES_NETHER }),
434 make_basic_smith_info(SmithEffectType::RES_NEXUS, _("耐因果混乱", "resistance to nexus"), SmithCategoryType::RESISTANCE, { SmithEssenceType::RES_NEXUS }, 20, { TR_RES_NEXUS }),
435 make_basic_smith_info(SmithEffectType::RES_CHAOS, _("耐カオス", "resistance to chaos"), SmithCategoryType::RESISTANCE, { SmithEssenceType::RES_CHAOS }, 20, { TR_RES_CHAOS }),
436 make_basic_smith_info(SmithEffectType::RES_DISEN, _("耐劣化", "resistance to disenchantment"), SmithCategoryType::RESISTANCE, { SmithEssenceType::RES_DISEN }, 20, { TR_RES_DISEN }),
437 make_basic_smith_info(SmithEffectType::RES_WATER, _("耐水", "resistance to water"), SmithCategoryType::RESISTANCE, { SmithEssenceType::RES_WATER }, 20, { TR_RES_WATER }),
438 make_basic_smith_info(SmithEffectType::RES_TIME, _("耐時間逆転", "resistance to time"), SmithCategoryType::RESISTANCE, { SmithEssenceType::RES_TIME }, 20, { TR_RES_TIME }),
439 make_basic_smith_info(SmithEffectType::RES_CURSE, _("耐呪力", "resistance to curse"), SmithCategoryType::RESISTANCE, { SmithEssenceType::RES_CURSE }, 20, { TR_RES_CURSE }),
441 make_basic_smith_info(SmithEffectType::HOLD_EXP, _("経験値維持", "hold experience"), SmithCategoryType::ABILITY, { SmithEssenceType::HOLD_EXP }, 20, { TR_HOLD_EXP }),
442 make_basic_smith_info(SmithEffectType::FREE_ACT, _("麻痺知らず", "free action"), SmithCategoryType::ABILITY, { SmithEssenceType::FREE_ACT }, 20, { TR_FREE_ACT }),
443 make_basic_smith_info(SmithEffectType::WARNING, _("警告", "warning"), SmithCategoryType::ABILITY, { SmithEssenceType::WARNING }, 20, { TR_WARNING }),
444 make_basic_smith_info(SmithEffectType::LEVITATION, _("浮遊", "levitation"), SmithCategoryType::ABILITY, { SmithEssenceType::LEVITATION }, 20, { TR_LEVITATION }),
445 make_basic_smith_info(SmithEffectType::SEE_INVIS, _("可視透明", "see invisible"), SmithCategoryType::ABILITY, { SmithEssenceType::SEE_INVIS }, 20, { TR_SEE_INVIS }),
446 make_basic_smith_info(SmithEffectType::SLOW_DIGEST, _("遅消化", "slow digestion"), SmithCategoryType::ABILITY, { SmithEssenceType::SLOW_DIGEST }, 15, { TR_SLOW_DIGEST }),
447 make_basic_smith_info(SmithEffectType::REGEN, _("急速回復", "regeneration"), SmithCategoryType::ABILITY, { SmithEssenceType::REGEN }, 20, { TR_REGEN }),
448 make_basic_smith_info(SmithEffectType::TELEPORT, _("テレポート", "teleport"), SmithCategoryType::ABILITY, { SmithEssenceType::TELEPORT }, 25, { TR_TELEPORT }),
449 make_basic_smith_info(SmithEffectType::NO_MAGIC, _("反魔法", "anti magic"), SmithCategoryType::ABILITY, { SmithEssenceType::NO_MAGIC }, 15, { TR_NO_MAGIC }),
450 make_basic_smith_info(SmithEffectType::LITE, _("永久光源", "permanent light"), SmithCategoryType::ABILITY, { SmithEssenceType::LITE }, 15, { TR_LITE_1 }),
451 make_basic_smith_info(SmithEffectType::NO_TELE, _("反テレポート", "prevent teleportation"), SmithCategoryType::ABILITY, { SmithEssenceType::NO_TELE }, 15, { TR_NO_TELE }),
453 make_basic_smith_info(SmithEffectType::SLAY_EVIL, _("邪悪倍打", "slay evil"), SmithCategoryType::SLAYING, { SmithEssenceType::SLAY_EVIL }, 100, { TR_SLAY_EVIL }),
454 make_basic_smith_info(SmithEffectType::SLAY_ANIMAL, _("動物倍打", "slay animal"), SmithCategoryType::SLAYING, { SmithEssenceType::SLAY_ANIMAL }, 20, { TR_SLAY_ANIMAL }),
455 make_basic_smith_info(SmithEffectType::SLAY_UNDEAD, _("不死倍打", "slay undead"), SmithCategoryType::SLAYING, { SmithEssenceType::SLAY_UNDEAD }, 20, { TR_SLAY_UNDEAD }),
456 make_basic_smith_info(SmithEffectType::SLAY_DEMON, _("悪魔倍打", "slay demon"), SmithCategoryType::SLAYING, { SmithEssenceType::SLAY_DEMON }, 20, { TR_SLAY_DEMON }),
457 make_basic_smith_info(SmithEffectType::SLAY_ORC, _("オーク倍打", "slay orc"), SmithCategoryType::SLAYING, { SmithEssenceType::SLAY_ORC }, 20, { TR_SLAY_ORC }),
458 make_basic_smith_info(SmithEffectType::SLAY_TROLL, _("トロル倍打", "slay troll"), SmithCategoryType::SLAYING, { SmithEssenceType::SLAY_TROLL }, 20, { TR_SLAY_TROLL }),
459 make_basic_smith_info(SmithEffectType::SLAY_GIANT, _("巨人倍打", "slay giant"), SmithCategoryType::SLAYING, { SmithEssenceType::SLAY_GIANT }, 20, { TR_SLAY_GIANT }),
460 make_basic_smith_info(SmithEffectType::SLAY_DRAGON, _("竜倍打", "slay dragon"), SmithCategoryType::SLAYING, { SmithEssenceType::SLAY_DRAGON }, 20, { TR_SLAY_DRAGON }),
461 make_basic_smith_info(SmithEffectType::SLAY_HUMAN, _("人間倍打", "slay human"), SmithCategoryType::SLAYING, { SmithEssenceType::SLAY_HUMAN }, 20, { TR_SLAY_HUMAN }),
462 make_basic_smith_info(SmithEffectType::SLAY_GOOD, _("善良倍打", "slay good"), SmithCategoryType::SLAYING, { SmithEssenceType::SLAY_GOOD }, 20, { TR_SLAY_GOOD }),
464 make_basic_smith_info(SmithEffectType::KILL_EVIL, _("邪悪倍倍打", "kill evil"), SmithCategoryType::NONE, { SmithEssenceType::SLAY_EVIL }, 0, { TR_KILL_EVIL }), // 強力すぎるため無効(SmithCategory:NONE)
465 make_basic_smith_info(SmithEffectType::KILL_ANIMAL, _("動物倍倍打", "kill animal"), SmithCategoryType::SLAYING, { SmithEssenceType::SLAY_ANIMAL }, 60, { TR_KILL_ANIMAL }),
466 make_basic_smith_info(SmithEffectType::KILL_UNDEAD, _("不死倍倍打", "kill undead"), SmithCategoryType::SLAYING, { SmithEssenceType::SLAY_UNDEAD }, 60, { TR_KILL_UNDEAD }),
467 make_basic_smith_info(SmithEffectType::KILL_DEMON, _("悪魔倍倍打", "kill demon"), SmithCategoryType::SLAYING, { SmithEssenceType::SLAY_DEMON }, 60, { TR_KILL_DEMON }),
468 make_basic_smith_info(SmithEffectType::KILL_ORC, _("オーク倍倍打", "kill orc"), SmithCategoryType::SLAYING, { SmithEssenceType::SLAY_ORC }, 60, { TR_KILL_ORC }),
469 make_basic_smith_info(SmithEffectType::KILL_TROLL, _("トロル倍倍打", "kill troll"), SmithCategoryType::SLAYING, { SmithEssenceType::SLAY_TROLL }, 60, { TR_KILL_TROLL }),
470 make_basic_smith_info(SmithEffectType::KILL_GIANT, _("巨人倍倍打", "kill giant"), SmithCategoryType::SLAYING, { SmithEssenceType::SLAY_GIANT }, 60, { TR_KILL_GIANT }),
471 make_basic_smith_info(SmithEffectType::KILL_DRAGON, _("竜倍倍打", "kill dragon"), SmithCategoryType::SLAYING, { SmithEssenceType::SLAY_DRAGON }, 60, { TR_KILL_DRAGON }),
472 make_basic_smith_info(SmithEffectType::KILL_HUMAN, _("人間倍倍打", "kill human"), SmithCategoryType::SLAYING, { SmithEssenceType::SLAY_HUMAN }, 60, { TR_KILL_HUMAN }),
473 make_basic_smith_info(SmithEffectType::KILL_GOOD, _("善良倍倍打", "kill good"), SmithCategoryType::SLAYING, { SmithEssenceType::SLAY_GOOD }, 60, { TR_KILL_GOOD }),
475 make_basic_smith_info(SmithEffectType::TELEPATHY, _("テレパシー", "telepathy"), SmithCategoryType::ESP, { SmithEssenceType::TELEPATHY }, 15, { TR_TELEPATHY }),
476 make_basic_smith_info(SmithEffectType::ESP_ANIMAL, _("動物ESP", "sense animal"), SmithCategoryType::ESP, { SmithEssenceType::SLAY_ANIMAL }, 40, { TR_ESP_ANIMAL }),
477 make_basic_smith_info(SmithEffectType::ESP_UNDEAD, _("不死ESP", "sense undead"), SmithCategoryType::ESP, { SmithEssenceType::SLAY_UNDEAD }, 40, { TR_ESP_UNDEAD }),
478 make_basic_smith_info(SmithEffectType::ESP_DEMON, _("悪魔ESP", "sense demon"), SmithCategoryType::ESP, { SmithEssenceType::SLAY_DEMON }, 40, { TR_ESP_DEMON }),
479 make_basic_smith_info(SmithEffectType::ESP_ORC, _("オークESP", "sense orc"), SmithCategoryType::ESP, { SmithEssenceType::SLAY_ORC }, 40, { TR_ESP_ORC }),
480 make_basic_smith_info(SmithEffectType::ESP_TROLL, _("トロルESP", "sense troll"), SmithCategoryType::ESP, { SmithEssenceType::SLAY_TROLL }, 40, { TR_ESP_TROLL }),
481 make_basic_smith_info(SmithEffectType::ESP_GIANT, _("巨人ESP", "sense giant"), SmithCategoryType::ESP, { SmithEssenceType::SLAY_GIANT }, 40, { TR_ESP_GIANT }),
482 make_basic_smith_info(SmithEffectType::ESP_DRAGON, _("竜ESP", "sense dragon"), SmithCategoryType::ESP, { SmithEssenceType::SLAY_DRAGON }, 40, { TR_ESP_DRAGON }),
483 make_basic_smith_info(SmithEffectType::ESP_HUMAN, _("人間ESP", "sense human"), SmithCategoryType::ESP, { SmithEssenceType::SLAY_HUMAN }, 40, { TR_ESP_HUMAN }),
484 make_basic_smith_info(SmithEffectType::ESP_GOOD, _("善良ESP", "sense good"), SmithCategoryType::ESP, { SmithEssenceType::SLAY_GOOD }, 40, { TR_ESP_GOOD }),
485 make_basic_smith_info(SmithEffectType::ESP_UNIQUE, _("ユニークESP", "sense unique"), SmithCategoryType::ESP, { SmithEssenceType::UNIQUE }, 100, { TR_ESP_UNIQUE }),
487 make_basic_smith_info(SmithEffectType::SH_FIRE, _("火炎オーラ", "fiery sheath"), SmithCategoryType::ETC, { SmithEssenceType::RES_FIRE, SmithEssenceType::BRAND_FIRE }, 50, { TR_RES_FIRE, TR_SH_FIRE }),
488 make_basic_smith_info(SmithEffectType::SH_ELEC, _("電撃オーラ", "electric sheath"), SmithCategoryType::ETC, { SmithEssenceType::RES_ELEC, SmithEssenceType::BRAND_ELEC }, 50, { TR_RES_ELEC, TR_SH_ELEC }),
489 make_basic_smith_info(SmithEffectType::SH_COLD, _("冷気オーラ", "sheath of coldness"), SmithCategoryType::ETC, { SmithEssenceType::RES_COLD, SmithEssenceType::BRAND_COLD }, 50, { TR_RES_COLD, TR_SH_COLD }),
491 make_basic_smith_info(SmithEffectType::RESISTANCE, _("全耐性", "resistance"), SmithCategoryType::RESISTANCE, { SmithEssenceType::RES_ACID, SmithEssenceType::RES_ELEC, SmithEssenceType::RES_FIRE, SmithEssenceType::RES_COLD }, 150, { TR_RES_ACID, TR_RES_ELEC, TR_RES_FIRE, TR_RES_COLD }),
492 make_info<SlayingGlovesSmithInfo>(SmithEffectType::SLAY_GLOVE, _("殺戮の小手", "gauntlets of slaying"), SmithCategoryType::ETC, { SmithEssenceType::ATTACK }, 200),
493 make_basic_smith_info(SmithEffectType::EASY_2WEAPON, _("源氏の小手", "gauntlets of Genji"), SmithCategoryType::ETC, { SmithEssenceType::EASY2_WEAPON }, 20, { TR_EASY2_WEAPON }),
495 make_info<ActivationSmithInfo>(SmithEffectType::ACT_QUAKE, _("地震", "quake"), SmithCategoryType::ACTIVATION, { SmithEssenceType::EATHQUAKE }, 15, RandomArtActType::QUAKE),
496 make_info<ActivationSmithInfo>(SmithEffectType::ACT_RES_ACID, _("酸耐性", "resist acid"), SmithCategoryType::ACTIVATION, { SmithEssenceType::RES_ACID }, 30, RandomArtActType::RESIST_ACID),
497 make_info<ActivationSmithInfo>(SmithEffectType::ACT_RES_ELEC, _("電撃耐性", "resist electricity"), SmithCategoryType::ACTIVATION, { SmithEssenceType::RES_ELEC }, 30, RandomArtActType::RESIST_ELEC),
498 make_info<ActivationSmithInfo>(SmithEffectType::ACT_RES_FIRE, _("火炎耐性", "resist fire"), SmithCategoryType::ACTIVATION, { SmithEssenceType::RES_FIRE }, 30, RandomArtActType::RESIST_FIRE),
499 make_info<ActivationSmithInfo>(SmithEffectType::ACT_RES_COLD, _("冷気耐性", "resist cold"), SmithCategoryType::ACTIVATION, { SmithEssenceType::RES_COLD }, 30, RandomArtActType::RESIST_COLD),
500 make_info<ActivationSmithInfo>(SmithEffectType::ACT_RES_POIS, _("毒耐性", "resist poison"), SmithCategoryType::ACTIVATION, { SmithEssenceType::RES_POIS }, 40, RandomArtActType::RESIST_POIS),
501 make_info<ActivationSmithInfo>(SmithEffectType::ACT_PHASE_DOOR, _("ショート・テレポート", "blink"), SmithCategoryType::ACTIVATION, { SmithEssenceType::TELEPORT }, 30, RandomArtActType::PHASE_DOOR),
502 make_info<ActivationSmithInfo>(SmithEffectType::ACT_TELEPORT, _("テレポート", "teleport"), SmithCategoryType::ACTIVATION, { SmithEssenceType::TELEPORT }, 40, RandomArtActType::TELEPORT),
503 make_info<ActivationSmithInfo>(SmithEffectType::ACT_SPEED, _("スピード", "speed"), SmithCategoryType::ACTIVATION, { SmithEssenceType::SPEED }, 25, RandomArtActType::SPEED),
504 make_info<ActivationSmithInfo>(SmithEffectType::ACT_STONE_MUD, _("岩石溶解", "stone to mud"), SmithCategoryType::ACTIVATION, { SmithEssenceType::TUNNEL }, 100, RandomArtActType::STONE_MUD),
505 make_info<ActivationSmithInfo>(SmithEffectType::ACT_LIGHT, _("イルミネーション", "light area"), SmithCategoryType::ACTIVATION, { SmithEssenceType::LITE }, 30, RandomArtActType::LIGHT),
506 make_info<ActivationSmithInfo>(SmithEffectType::ACT_MAP_LIGHT, _("魔法の地図と光", "light & map area"), SmithCategoryType::ACTIVATION, { SmithEssenceType::SEARCH, SmithEssenceType::LITE }, 30, RandomArtActType::MAP_LIGHT),
507 make_info<ActivationSmithInfo>(SmithEffectType::ACT_DETECT_ALL, _("全感知", "detection"), SmithCategoryType::ACTIVATION, { SmithEssenceType::SEARCH, SmithEssenceType::TELEPATHY }, 30, RandomArtActType::DETECT_ALL),
508 make_info<ActivationSmithInfo>(SmithEffectType::ACT_DETECT_UNIQUE, _("階にいるユニークモンスターを表示", "list of the uniques on the level"), SmithCategoryType::ACTIVATION, { SmithEssenceType::UNIQUE }, 100, RandomArtActType::DETECT_UNIQUE),
509 make_info<ActivationSmithInfo>(SmithEffectType::ACT_REST_EXP, _("経験値復活", "restore experience"), SmithCategoryType::ACTIVATION, { SmithEssenceType::HOLD_EXP }, 30, RandomArtActType::REST_EXP),
510 make_info<ActivationSmithInfo>(SmithEffectType::ACT_REST_ALL, _("全ステータスと経験値復活", "restore stats and experience"), SmithCategoryType::ACTIVATION, { SmithEssenceType::SUST_STATUS, SmithEssenceType::HOLD_EXP }, 40, RandomArtActType::REST_ALL),
511 make_info<ActivationSmithInfo>(SmithEffectType::ACT_PROT_EVIL, _("対邪悪結界", "protect evil"), SmithCategoryType::ACTIVATION, { SmithEssenceType::SLAY_EVIL }, 100, RandomArtActType::PROT_EVIL),
512 make_info<ActivationSmithInfo>(SmithEffectType::ACT_DISP_EVIL, _("邪悪退散", "dispel evil"), SmithCategoryType::ACTIVATION, { SmithEssenceType::SLAY_EVIL }, 100, RandomArtActType::DISP_EVIL),
513 make_info<ActivationSmithInfo>(SmithEffectType::ACT_DISP_GOOD, _("善良退散", "dispel good"), SmithCategoryType::ACTIVATION, { SmithEssenceType::SLAY_GOOD }, 50, RandomArtActType::DISP_GOOD),
514 make_info<ActivationSmithInfo>(SmithEffectType::ACT_PESTICIDE, _("害虫駆除", "dispel pests"), SmithCategoryType::ACTIVATION, { SmithEssenceType::BRAND_POIS }, 30, RandomArtActType::PESTICIDE),
515 make_info<ActivationSmithInfo>(SmithEffectType::ACT_BA_ACID, _("アシッド・ボール", "ball of acid"), SmithCategoryType::ACTIVATION, { SmithEssenceType::BRAND_ACID }, 40, RandomArtActType::BA_ACID_1),
516 make_info<ActivationSmithInfo>(SmithEffectType::ACT_BA_ELEC, _("サンダー・ボール", "ball of lightning"), SmithCategoryType::ACTIVATION, { SmithEssenceType::BRAND_ELEC }, 40, RandomArtActType::BA_ELEC_2),
517 make_info<ActivationSmithInfo>(SmithEffectType::ACT_BA_FIRE, _("ファイア・ボール", "ball of fire"), SmithCategoryType::ACTIVATION, { SmithEssenceType::BRAND_FIRE }, 40, RandomArtActType::BA_FIRE_4),
518 make_info<ActivationSmithInfo>(SmithEffectType::ACT_BA_COLD, _("アイス・ボール", "ball of cold"), SmithCategoryType::ACTIVATION, { SmithEssenceType::BRAND_COLD }, 40, RandomArtActType::BA_COLD_2),
519 make_info<ActivationSmithInfo>(SmithEffectType::ACT_BA_NUKE, _("放射能球", "ball of nuke"), SmithCategoryType::ACTIVATION, { SmithEssenceType::BRAND_POIS, SmithEssenceType::CHAOTIC }, 30, RandomArtActType::BA_NUKE_1),
520 make_info<ActivationSmithInfo>(SmithEffectType::ACT_SUNLIGHT, _("太陽光線", "beam of sunlight"), SmithCategoryType::ACTIVATION, { SmithEssenceType::LITE }, 40, RandomArtActType::SUNLIGHT),
521 make_info<ActivationSmithInfo>(SmithEffectType::ACT_DRAIN, _("吸血の矢", "drain bolt"), SmithCategoryType::ACTIVATION, { SmithEssenceType::VAMPIRIC }, 100, RandomArtActType::DRAIN_1),
522 make_info<ActivationSmithInfo>(SmithEffectType::ACT_CONFUSE, _("パニック・モンスター", "confuse monster"), SmithCategoryType::ACTIVATION, { SmithEssenceType::CHAOTIC }, 30, RandomArtActType::CONFUSE),
523 make_info<ActivationSmithInfo>(SmithEffectType::ACT_SATIATE, _("空腹充足", "satisfy hunger"), SmithCategoryType::ACTIVATION, { SmithEssenceType::SLOW_DIGEST }, 50, RandomArtActType::SATIATE),
524 make_info<ActivationSmithInfo>(SmithEffectType::ACT_CURE_700, _("体力回復", "heal"), SmithCategoryType::ACTIVATION, { SmithEssenceType::REGEN }, 100, RandomArtActType::CURE_700),
526 make_info<EnchantWeaponSmithInfo>(SmithEffectType::ATTACK, _("攻撃", "weapon enchant"), SmithCategoryType::ENCHANT, { SmithEssenceType::ATTACK }, 30),
527 make_info<EnchantArmourSmithInfo>(SmithEffectType::AC, _("防御", "armor enchant"), SmithCategoryType::ENCHANT, { SmithEssenceType::AC }, 15),
528 make_info<SustainSmithInfo>(SmithEffectType::SUSTAIN, _("装備保持", "elements proof"), SmithCategoryType::ENCHANT, { SmithEssenceType::RES_ACID, SmithEssenceType::RES_ELEC, SmithEssenceType::RES_FIRE, SmithEssenceType::RES_COLD }, 10),