3 #include "system/system-variables.h"
6 * @brief アイテムに付与できる鍛冶効果の列挙体
8 enum class SmithEffectType : int16_t {
17 SUST_STR = 10, //!< 腕力維持
18 SUST_INT = 11, //!< 知能維持
19 SUST_WIS = 12, //!< 賢さ維持
20 SUST_DEX = 13, //!< 器用維持
21 SUST_CON = 14, //!< 耐久力維持
22 SUST_CHR = 15, //!< 魅力維持
24 MAGIC_MASTERY = 100, //!< 魔法道具支配
25 STEALTH = 101, //!< 隠密
27 INFRA = 103, //!< 赤外線視力
29 SPEED = 105, //!< スピード
30 BLOWS = 106, //!< 追加攻撃
32 CHAOTIC = 200, //!< カオス攻撃
33 VAMPIRIC = 201, //!< 吸血攻撃
34 EARTHQUAKE = 202, //!< 地震発動
35 BRAND_POIS = 203, //!< 毒殺
36 BRAND_ACID = 204, //!< 溶解
37 BRAND_ELEC = 205, //!< 電撃
38 BRAND_FIRE = 206, //!< 焼棄
39 BRAND_COLD = 207, //!< 凍結
40 VORPAL = 208, //!< 切れ味
41 XTRA_MIGHT = 209, //!< 強力射
42 XTRA_SHOTS = 210, //!< 強速射
43 BRAND_MAGIC = 211, //!< 魔術属性攻撃
45 IM_ACID = 300, //!< 酸免疫
46 IM_ELEC = 301, //!< 電撃免疫
47 IM_FIRE = 302, //!< 火炎免疫
48 IM_COLD = 303, //!< 冷気免疫
49 REFLECT = 304, //!< 反射
51 RES_ACID = 400, //!< 耐酸
52 RES_ELEC = 401, //!< 耐電撃
53 RES_FIRE = 402, //!< 耐火炎
54 RES_COLD = 403, //!< 耐冷気
55 RES_POIS = 404, //!< 耐毒
56 RES_FEAR = 405, //!< 耐恐怖
57 RES_LITE = 406, //!< 耐閃光
58 RES_DARK = 407, //!< 耐暗黒
59 RES_BLIND = 408, //!< 耐盲目
60 RES_CONF = 409, //!< 耐混乱
61 RES_SOUND = 410, //!< 耐轟音
62 RES_SHARDS = 411, //!< 耐破片
63 RES_NETHER = 412, //!< 耐地獄
64 RES_NEXUS = 413, //!< 耐因果混乱
65 RES_CHAOS = 414, //!< 耐カオス
66 RES_DISEN = 415, //!< 耐劣化
67 RES_WATER = 416, //!< 耐水
68 RES_TIME = 417, //!< 耐時間逆転
69 RES_CURSE = 418, //!< 耐呪力
71 HOLD_EXP = 500, //!< 経験値維持
72 FREE_ACT = 501, //!< 麻痺知らず
73 WARNING = 502, //!< 警告
74 LEVITATION = 503, //!< 浮遊
75 SEE_INVIS = 504, //!< 可視透明
76 SLOW_DIGEST = 505, //!< 遅消化
77 REGEN = 506, //!< 急速回復
78 TELEPORT = 507, //!< テレポート
79 NO_MAGIC = 508, //!< 反魔法
81 NO_TELE = 510, //!< 反テレポート
83 SLAY_EVIL = 600, //!< 邪悪倍打
84 SLAY_ANIMAL = 601, //!< 動物倍打
85 SLAY_UNDEAD = 602, //!< 不死倍打
86 SLAY_DEMON = 603, //!< 悪魔倍打
87 SLAY_ORC = 604, //!< オーク倍打
88 SLAY_TROLL = 605, //!< トロル倍打
89 SLAY_GIANT = 606, //!< 巨人倍打
90 SLAY_DRAGON = 607, //!< 竜倍打
91 SLAY_HUMAN = 608, //!< 人間倍打
92 SLAY_GOOD = 609, //!< 善良倍打
94 KILL_EVIL = 700, //!< 邪悪倍倍打
95 KILL_ANIMAL = 701, //!< 動物倍倍打
96 KILL_UNDEAD = 702, //!< 不死倍倍打
97 KILL_DEMON = 703, //!< 悪魔倍倍打
98 KILL_ORC = 704, //!< オーク倍倍打
99 KILL_TROLL = 705, //!< トロル倍倍打
100 KILL_GIANT = 706, //!< 巨人倍倍打
101 KILL_DRAGON = 707, //!< 竜倍倍打
102 KILL_HUMAN = 708, //!< 人間倍倍打
103 KILL_GOOD = 709, //!< 善良倍倍打
105 TELEPATHY = 800, //!< テレパシー
106 ESP_ANIMAL = 801, //!< 動物ESP
107 ESP_UNDEAD = 802, //!< 不死ESP
108 ESP_DEMON = 803, //!< 悪魔ESP
109 ESP_ORC = 804, //!< オークESP
110 ESP_TROLL = 805, //!< トロルESP
111 ESP_GIANT = 806, //!< 巨人ESP
112 ESP_DRAGON = 807, //!< 竜ESP
113 ESP_HUMAN = 808, //!< 人間ESP
114 ESP_GOOD = 809, //!< 善良ESP
115 ESP_UNIQUE = 810, //!< ユニークESP
117 SH_FIRE = 900, //!< 火炎オーラ
118 SH_ELEC = 901, //!< 電撃オーラ
119 SH_COLD = 902, //!< 冷気オーラ
121 RESISTANCE = 1000, //!< 全耐性
122 SLAY_GLOVE = 1001, //!< 殺戮の小手
123 EASY_2WEAPON = 1002, //!< 二刀流
125 SAVE_EFFECT_MAX = 8192, //!< 鍛冶師の銘付きアイテムに付与された鍛冶効果の保存領域は2バイト。とりあえず余裕を持って8192としておく。
127 //! @note これ以降は鍛冶師の銘付きアイテムになる鍛冶効果ではないので、効果番号を保存しなくてよい。
128 // 鍛冶効果のリストを管理するためだけのものである。したがって SAVE_EFFECT_MAX 以降に自動的に番号の割り振りを行う
130 ACT_RES_ACID, //!< 酸耐性発動
131 ACT_RES_ELEC, //!< 電撃耐性発動
132 ACT_RES_FIRE, //!< 火炎耐性発動
133 ACT_RES_COLD, //!< 冷気耐性発動
134 ACT_RES_POIS, //!< 毒耐性発動
135 ACT_PHASE_DOOR, //!< ショート・テレポート発動
136 ACT_TELEPORT, //!< テレポート発動
138 ACT_STONE_MUD, //!< 岩石溶解発動
139 ACT_LIGHT, //!< イルミネーション発動
140 ACT_REST_EXP, //!< 経験値復活発動
141 ACT_REST_ALL, //!< 全ステータスと経験値復活発動
142 ACT_PROT_EVIL, //!< 対邪悪結界発動
143 ACT_DISP_EVIL, //!< 邪悪退散発動
144 ACT_DISP_GOOD, //!< 善良退散発動
145 ACT_PESTICIDE, //!< 害虫駆除発動
146 ACT_BA_ACID, //!< アシッド・ボール発動
147 ACT_BA_ELEC, //!< サンダー・ボール発動
148 ACT_BA_FIRE, //!< ファイア・ボール発動
149 ACT_BA_COLD, //!< アイス・ボール発動
150 ACT_BA_NUKE, //!< 放射能球発動
151 ACT_SUNLIGHT, //!< 太陽光線発動
152 ACT_DRAIN, //!< 吸血の矢発動
153 ACT_CONFUSE, //!< パニック・モンスター発動
154 ACT_DETECT_ALL, //!< 全感知発動
155 ACT_DETECT_UNIQUE, //!< ユニークモンスター感知発動
156 ACT_MAP_LIGHT, //!< 魔法の地図と光発動
157 ACT_SATIATE, //!< 空腹充足発動
158 ACT_CURE_700, //!< 体力回復発動
160 ATTACK, //!< 命中/ダメージ強化
166 * @brief アイテムに付与できる鍛冶効果のカテゴリ
168 enum class SmithCategoryType {
170 WEAPON_ATTR = 1, //!< 武器属性
171 RESISTANCE = 2, //!< 耐性
174 SLAYING = 5, //!< スレイ
177 ACTIVATION = 8, //!< 発動
178 ENCHANT = 10, //!< 武器防具強化
184 enum class SmithEssenceType : int16_t {
192 MAGIC_MASTERY = 7, //!< 魔法道具支配
195 INFRA = 10, //!< 赤外線視力
197 SPEED = 12, //!< スピード
198 BLOWS = 13, //!< 攻撃回数
199 CHAOTIC = 14, //!< カオス攻撃
200 VAMPIRIC = 15, //!< 吸血攻撃
201 EATHQUAKE = 16, //!< 地震
202 BRAND_POIS = 17, //!< 毒殺
203 BRAND_ACID = 18, //!< 溶解
204 BRAND_ELEC = 19, //!< 電撃
205 BRAND_FIRE = 20, //!< 焼棄
206 BRAND_COLD = 21, //!< 凍結
207 SUST_STATUS = 22, //!< 能力値維持(6能力値共通)
208 IMMUNITY = 23, //!< 免疫(4元素共通)
209 REFLECT = 24, //!< 反射
210 FREE_ACT = 25, //!< 麻痺知らず
211 HOLD_EXP = 26, //!< 経験値維持
212 RES_ACID = 27, //!< 耐酸
213 RES_ELEC = 28, //!< 耐電撃
214 RES_FIRE = 29, //!< 耐火炎
215 RES_COLD = 30, //!< 耐冷気
216 RES_POIS = 31, //!< 耐毒
217 RES_FEAR = 32, //!< 耐恐怖
218 RES_LITE = 33, //!< 耐閃光
219 RES_DARK = 34, //!< 耐暗黒
220 RES_BLIND = 35, //!< 耐盲目
221 RES_CONF = 36, //!< 耐混乱
222 RES_SOUND = 37, //!< 耐轟音
223 RES_SHARDS = 38, //!< 耐破片
224 RES_NETHER = 39, //!< 耐地獄
225 RES_NEXUS = 40, //!< 耐因果混乱
226 RES_CHAOS = 41, //!< 耐カオス
227 RES_DISEN = 42, //!< 耐劣化
228 NO_MAGIC = 43, //!< 反魔法
229 WARNING = 44, //!< 警告
230 LEVITATION = 45, //!< 浮遊
232 SEE_INVIS = 47, //!< 可視透明
233 TELEPATHY = 48, //!< テレパシー
234 SLOW_DIGEST = 49, //!< 遅消化
235 REGEN = 50, //!< 急速回復
236 TELEPORT = 51, //!< テレポート
238 SLAY_EVIL = 52, //!< 邪悪倍打
239 SLAY_ANIMAL = 53, //!< 動物倍打
240 SLAY_UNDEAD = 54, //!< 不死倍打
241 SLAY_DEMON = 55, //!< 悪魔倍打
242 SLAY_ORC = 56, //!< オーク倍打
243 SLAY_TROLL = 57, //!< トロル倍打
244 SLAY_GIANT = 58, //!< 巨人倍打
245 SLAY_DRAGON = 59, //!< 竜倍打
246 SLAY_HUMAN = 60, //!< 人間倍打
247 SLAY_GOOD = 61, //!< 善良倍打
249 RES_WATER = 62, //!< 耐水
250 RES_TIME = 63, //!< 耐時間逆転
251 RES_CURSE = 64, //!< 耐呪力
252 NO_TELE = 65, //!< 反テレポート
253 EASY2_WEAPON = 66, //!< 二刀流
254 STRENGTHEN_BOW = 67, //!< 弓強化
255 BRAND_MAGIC = 68, //!< 魔術属性攻撃
256 UNIQUE = 69, //!< ユニーク
258 ATTACK = 100, //!< 攻撃