2 #include "store-owners.h"
3 #include "articles-on-sale.h"
6 * 店舗で販売するオブジェクトを定義する / Hack -- Objects sold in the stores -- by tval/sval pair.
8 byte store_table[MAX_STORES][STORE_CHOICES][2] =
12 { TV_FOOD, SV_FOOD_RATION },
13 { TV_FOOD, SV_FOOD_RATION },
14 { TV_FOOD, SV_FOOD_RATION },
15 { TV_FOOD, SV_FOOD_RATION },
17 { TV_FOOD, SV_FOOD_RATION },
18 { TV_FOOD, SV_FOOD_BISCUIT },
19 { TV_FOOD, SV_FOOD_JERKY },
20 { TV_FOOD, SV_FOOD_JERKY },
22 { TV_FOOD, SV_FOOD_PINT_OF_WINE },
23 { TV_FOOD, SV_FOOD_PINT_OF_ALE },
24 { TV_LITE, SV_LITE_TORCH },
25 { TV_LITE, SV_LITE_TORCH },
27 { TV_LITE, SV_LITE_TORCH },
28 { TV_LITE, SV_LITE_TORCH },
29 { TV_LITE, SV_LITE_LANTERN },
30 { TV_LITE, SV_LITE_LANTERN },
42 { TV_SHOT, SV_AMMO_NORMAL },
43 { TV_ARROW, SV_AMMO_NORMAL },
44 { TV_BOLT, SV_AMMO_NORMAL },
45 { TV_DIGGING, SV_SHOVEL },
47 { TV_DIGGING, SV_PICK },
48 { TV_CLOAK, SV_CLOAK },
49 { TV_CLOAK, SV_CLOAK },
50 { TV_CLOAK, SV_FUR_CLOAK },
52 { TV_FOOD, SV_FOOD_RATION },
53 { TV_FOOD, SV_FOOD_RATION },
54 { TV_FOOD, SV_FOOD_RATION },
55 { TV_FOOD, SV_FOOD_RATION },
57 { TV_POTION, SV_POTION_WATER },
58 { TV_POTION, SV_POTION_WATER },
59 { TV_LITE, SV_LITE_LANTERN },
60 { TV_LITE, SV_LITE_LANTERN },
62 { TV_FOOD, SV_FOOD_WAYBREAD },
63 { TV_FOOD, SV_FOOD_WAYBREAD },
67 { TV_SHOT, SV_AMMO_NORMAL },
68 { TV_ARROW, SV_AMMO_NORMAL },
69 { TV_BOLT, SV_AMMO_NORMAL },
70 { TV_DIGGING, SV_SHOVEL }
75 { TV_BOOTS, SV_PAIR_OF_SOFT_LEATHER_BOOTS },
76 { TV_BOOTS, SV_PAIR_OF_SOFT_LEATHER_BOOTS },
77 { TV_BOOTS, SV_PAIR_OF_HARD_LEATHER_BOOTS },
78 { TV_BOOTS, SV_PAIR_OF_HARD_LEATHER_BOOTS },
80 { TV_HELM, SV_HARD_LEATHER_CAP },
81 { TV_HELM, SV_HARD_LEATHER_CAP },
82 { TV_HELM, SV_METAL_CAP },
83 { TV_HELM, SV_IRON_HELM },
85 { TV_SOFT_ARMOR, SV_ROBE },
86 { TV_SOFT_ARMOR, SV_ROBE },
87 { TV_SOFT_ARMOR, SV_SOFT_LEATHER_ARMOR },
88 { TV_SOFT_ARMOR, SV_SOFT_LEATHER_ARMOR },
90 { TV_SOFT_ARMOR, SV_HARD_LEATHER_ARMOR },
91 { TV_SOFT_ARMOR, SV_HARD_LEATHER_ARMOR },
92 { TV_SOFT_ARMOR, SV_HARD_STUDDED_LEATHER },
93 { TV_SOFT_ARMOR, SV_HARD_STUDDED_LEATHER },
95 { TV_SOFT_ARMOR, SV_RHINO_HIDE_ARMOR },
96 { TV_SOFT_ARMOR, SV_LEATHER_SCALE_MAIL },
97 { TV_HARD_ARMOR, SV_METAL_SCALE_MAIL },
98 { TV_HARD_ARMOR, SV_CHAIN_MAIL },
100 { TV_HARD_ARMOR, SV_DOUBLE_RING_MAIL },
101 { TV_HARD_ARMOR, SV_AUGMENTED_CHAIN_MAIL },
102 { TV_HARD_ARMOR, SV_BAR_CHAIN_MAIL },
103 { TV_HARD_ARMOR, SV_DOUBLE_CHAIN_MAIL },
105 { TV_HARD_ARMOR, SV_METAL_BRIGANDINE_ARMOUR },
106 { TV_HARD_ARMOR, SV_SPLINT_MAIL },
107 { TV_GLOVES, SV_SET_OF_LEATHER_GLOVES },
108 { TV_GLOVES, SV_SET_OF_LEATHER_GLOVES },
110 { TV_GLOVES, SV_SET_OF_GAUNTLETS },
111 { TV_SHIELD, SV_SMALL_LEATHER_SHIELD },
112 { TV_SHIELD, SV_LARGE_LEATHER_SHIELD },
113 { TV_SHIELD, SV_SMALL_METAL_SHIELD },
115 { TV_BOOTS, SV_PAIR_OF_HARD_LEATHER_BOOTS },
116 { TV_BOOTS, SV_PAIR_OF_HARD_LEATHER_BOOTS },
117 { TV_HELM, SV_HARD_LEATHER_CAP },
118 { TV_HELM, SV_HARD_LEATHER_CAP },
120 { TV_SOFT_ARMOR, SV_ROBE },
121 { TV_SOFT_ARMOR, SV_SOFT_LEATHER_ARMOR },
122 { TV_SOFT_ARMOR, SV_SOFT_LEATHER_ARMOR },
123 { TV_SOFT_ARMOR, SV_HARD_LEATHER_ARMOR },
125 { TV_SOFT_ARMOR, SV_LEATHER_JACK },
126 { TV_HARD_ARMOR, SV_METAL_SCALE_MAIL },
127 { TV_HARD_ARMOR, SV_CHAIN_MAIL },
128 { TV_HARD_ARMOR, SV_CHAIN_MAIL },
130 { TV_GLOVES, SV_SET_OF_LEATHER_GLOVES },
131 { TV_GLOVES, SV_SET_OF_GAUNTLETS },
132 { TV_SHIELD, SV_SMALL_LEATHER_SHIELD },
133 { TV_SHIELD, SV_SMALL_LEATHER_SHIELD }
138 { TV_SWORD, SV_DAGGER },
139 { TV_SWORD, SV_MAIN_GAUCHE },
140 { TV_SWORD, SV_RAPIER },
141 { TV_SWORD, SV_SMALL_SWORD },
143 { TV_SWORD, SV_SHORT_SWORD },
144 { TV_SWORD, SV_SABRE },
145 { TV_SWORD, SV_CUTLASS },
146 { TV_SWORD, SV_TULWAR },
148 { TV_SWORD, SV_BROAD_SWORD },
149 { TV_SWORD, SV_LONG_SWORD },
150 { TV_SWORD, SV_SCIMITAR },
151 { TV_SWORD, SV_KATANA },
153 { TV_SWORD, SV_BASTARD_SWORD },
154 { TV_POLEARM, SV_SPEAR },
155 { TV_POLEARM, SV_AWL_PIKE },
156 { TV_POLEARM, SV_TRIDENT },
158 { TV_POLEARM, SV_PIKE },
159 { TV_POLEARM, SV_BEAKED_AXE },
160 { TV_POLEARM, SV_BROAD_AXE },
161 { TV_POLEARM, SV_LANCE },
163 { TV_POLEARM, SV_BATTLE_AXE },
164 { TV_POLEARM, SV_HATCHET },
165 { TV_BOW, SV_SLING },
166 { TV_BOW, SV_SHORT_BOW },
168 { TV_BOW, SV_LIGHT_XBOW },
169 { TV_SHOT, SV_AMMO_NORMAL },
170 { TV_SHOT, SV_AMMO_NORMAL },
171 { TV_ARROW, SV_AMMO_NORMAL },
173 { TV_ARROW, SV_AMMO_NORMAL },
174 { TV_BOLT, SV_AMMO_NORMAL },
175 { TV_BOLT, SV_AMMO_NORMAL },
176 { TV_BOW, SV_LIGHT_XBOW },
178 { TV_ARROW, SV_AMMO_NORMAL },
179 { TV_BOLT, SV_AMMO_NORMAL },
180 { TV_BOW, SV_SHORT_BOW },
181 { TV_BOW, SV_LIGHT_XBOW },
183 { TV_SWORD, SV_DAGGER },
184 { TV_SWORD, SV_TANTO },
185 { TV_SWORD, SV_RAPIER },
186 { TV_SWORD, SV_SMALL_SWORD },
188 { TV_SWORD, SV_SHORT_SWORD },
189 { TV_SWORD, SV_LONG_SWORD },
190 { TV_SWORD, SV_SCIMITAR },
191 { TV_SWORD, SV_BROAD_SWORD },
193 { TV_HISSATSU_BOOK, 0 },
194 { TV_HISSATSU_BOOK, 0 },
195 { TV_HISSATSU_BOOK, 1 },
196 { TV_HISSATSU_BOOK, 1 },
201 { TV_HAFTED, SV_NUNCHAKU },
202 { TV_HAFTED, SV_QUARTERSTAFF },
203 { TV_HAFTED, SV_MACE },
204 { TV_HAFTED, SV_BO_STAFF },
206 { TV_HAFTED, SV_WAR_HAMMER },
207 { TV_HAFTED, SV_WAR_HAMMER },
208 { TV_HAFTED, SV_MORNING_STAR },
209 { TV_HAFTED, SV_FLAIL },
211 { TV_HAFTED, SV_LEAD_FILLED_MACE },
212 { TV_SCROLL, SV_SCROLL_REMOVE_CURSE },
213 { TV_SCROLL, SV_SCROLL_BLESSING },
214 { TV_SCROLL, SV_SCROLL_HOLY_CHANT },
216 { TV_POTION, SV_POTION_HEROISM },
217 { TV_SCROLL, SV_SCROLL_WORD_OF_RECALL },
218 { TV_SCROLL, SV_SCROLL_WORD_OF_RECALL },
219 { TV_SCROLL, SV_SCROLL_WORD_OF_RECALL },
221 { TV_POTION, SV_POTION_CURE_LIGHT },
222 { TV_POTION, SV_POTION_CURE_SERIOUS },
223 { TV_POTION, SV_POTION_CURE_SERIOUS },
224 { TV_POTION, SV_POTION_CURE_CRITICAL },
226 { TV_POTION, SV_POTION_CURE_CRITICAL },
227 { TV_POTION, SV_POTION_RESTORE_EXP },
228 { TV_POTION, SV_POTION_RESTORE_EXP },
229 { TV_POTION, SV_POTION_RESTORE_EXP },
236 { TV_CRUSADE_BOOK, 0 },
237 { TV_CRUSADE_BOOK, 0 },
238 { TV_CRUSADE_BOOK, 1 },
239 { TV_CRUSADE_BOOK, 1 },
241 { TV_HAFTED, SV_WHIP },
242 { TV_HAFTED, SV_MACE },
243 { TV_HAFTED, SV_BALL_AND_CHAIN },
244 { TV_HAFTED, SV_WAR_HAMMER },
246 { TV_SCROLL, SV_SCROLL_WORD_OF_RECALL },
247 { TV_SCROLL, SV_SCROLL_WORD_OF_RECALL },
248 { TV_SCROLL, SV_SCROLL_WORD_OF_RECALL },
249 { TV_POTION, SV_POTION_CURE_CRITICAL },
251 { TV_POTION, SV_POTION_CURE_CRITICAL },
252 { TV_POTION, SV_POTION_RESTORE_EXP },
255 { TV_STATUE, SV_ANY },
257 { TV_SCROLL, SV_SCROLL_REMOVE_CURSE },
258 { TV_SCROLL, SV_SCROLL_REMOVE_CURSE },
259 { TV_SCROLL, SV_SCROLL_STAR_REMOVE_CURSE },
260 { TV_SCROLL, SV_SCROLL_STAR_REMOVE_CURSE }
265 { TV_SCROLL, SV_SCROLL_ENCHANT_WEAPON_TO_HIT },
266 { TV_SCROLL, SV_SCROLL_ENCHANT_WEAPON_TO_DAM },
267 { TV_SCROLL, SV_SCROLL_ENCHANT_ARMOR },
268 { TV_SCROLL, SV_SCROLL_IDENTIFY },
270 { TV_SCROLL, SV_SCROLL_IDENTIFY },
271 { TV_SCROLL, SV_SCROLL_IDENTIFY },
272 { TV_SCROLL, SV_SCROLL_IDENTIFY },
273 { TV_SCROLL, SV_SCROLL_LIGHT },
275 { TV_SCROLL, SV_SCROLL_PHASE_DOOR },
276 { TV_SCROLL, SV_SCROLL_PHASE_DOOR },
277 { TV_SCROLL, SV_SCROLL_TELEPORT },
278 { TV_SCROLL, SV_SCROLL_MONSTER_CONFUSION },
280 { TV_SCROLL, SV_SCROLL_MAPPING },
281 { TV_SCROLL, SV_SCROLL_DETECT_GOLD },
282 { TV_SCROLL, SV_SCROLL_DETECT_ITEM },
283 { TV_SCROLL, SV_SCROLL_DETECT_TRAP },
285 { TV_SCROLL, SV_SCROLL_DETECT_INVIS },
286 { TV_SCROLL, SV_SCROLL_RECHARGING },
287 { TV_SCROLL, SV_SCROLL_TELEPORT },
288 { TV_SCROLL, SV_SCROLL_WORD_OF_RECALL },
290 { TV_SCROLL, SV_SCROLL_WORD_OF_RECALL },
291 { TV_SCROLL, SV_SCROLL_WORD_OF_RECALL },
292 { TV_SCROLL, SV_SCROLL_WORD_OF_RECALL },
293 { TV_SCROLL, SV_SCROLL_TELEPORT },
295 { TV_SCROLL, SV_SCROLL_TELEPORT },
296 { TV_POTION, SV_POTION_RES_STR },
297 { TV_POTION, SV_POTION_RES_INT },
298 { TV_POTION, SV_POTION_RES_WIS },
300 { TV_POTION, SV_POTION_RES_DEX },
301 { TV_POTION, SV_POTION_RES_CON },
302 { TV_POTION, SV_POTION_RES_CHR },
303 { TV_SCROLL, SV_SCROLL_IDENTIFY },
305 { TV_SCROLL, SV_SCROLL_IDENTIFY },
306 { TV_SCROLL, SV_SCROLL_STAR_IDENTIFY },
307 { TV_SCROLL, SV_SCROLL_STAR_IDENTIFY },
308 { TV_SCROLL, SV_SCROLL_LIGHT },
310 { TV_POTION, SV_POTION_RES_STR },
311 { TV_POTION, SV_POTION_RES_INT },
312 { TV_POTION, SV_POTION_RES_WIS },
313 { TV_POTION, SV_POTION_RES_DEX },
315 { TV_POTION, SV_POTION_RES_CON },
316 { TV_POTION, SV_POTION_RES_CHR },
317 { TV_SCROLL, SV_SCROLL_ENCHANT_ARMOR },
318 { TV_SCROLL, SV_SCROLL_ENCHANT_ARMOR },
320 { TV_SCROLL, SV_SCROLL_RECHARGING },
321 { TV_SCROLL, SV_SCROLL_PHASE_DOOR },
322 { TV_SCROLL, SV_SCROLL_ENCHANT_WEAPON_TO_HIT },
323 { TV_SCROLL, SV_SCROLL_ENCHANT_WEAPON_TO_DAM },
328 /* Magic-User store */
329 { TV_RING, SV_RING_PROTECTION },
330 { TV_RING, SV_RING_LEVITATION_FALL },
331 { TV_RING, SV_RING_PROTECTION },
332 { TV_RING, SV_RING_RESIST_FIRE },
334 { TV_RING, SV_RING_RESIST_COLD },
335 { TV_AMULET, SV_AMULET_CHARISMA },
336 { TV_RING, SV_RING_WARNING },
337 { TV_AMULET, SV_AMULET_RESIST_ACID },
339 { TV_AMULET, SV_AMULET_SEARCHING },
340 { TV_WAND, SV_WAND_SLOW_MONSTER },
341 { TV_WAND, SV_WAND_CONFUSE_MONSTER },
342 { TV_WAND, SV_WAND_SLEEP_MONSTER },
344 { TV_WAND, SV_WAND_MAGIC_MISSILE },
345 { TV_WAND, SV_WAND_STINKING_CLOUD },
346 { TV_WAND, SV_WAND_WONDER },
347 { TV_WAND, SV_WAND_DISARMING },
349 { TV_STAFF, SV_STAFF_LITE },
350 { TV_STAFF, SV_STAFF_MAPPING },
351 { TV_STAFF, SV_STAFF_DETECT_TRAP },
352 { TV_STAFF, SV_STAFF_DETECT_DOOR },
354 { TV_STAFF, SV_STAFF_DETECT_GOLD },
355 { TV_STAFF, SV_STAFF_DETECT_ITEM },
356 { TV_STAFF, SV_STAFF_DETECT_INVIS },
357 { TV_STAFF, SV_STAFF_DETECT_EVIL },
359 { TV_STAFF, SV_STAFF_TELEPORTATION },
360 { TV_STAFF, SV_STAFF_TELEPORTATION },
361 { TV_STAFF, SV_STAFF_TELEPORTATION },
362 { TV_STAFF, SV_STAFF_TELEPORTATION },
364 { TV_STAFF, SV_STAFF_IDENTIFY },
365 { TV_STAFF, SV_STAFF_IDENTIFY },
366 { TV_STAFF, SV_STAFF_IDENTIFY },
368 { TV_STAFF, SV_STAFF_IDENTIFY },
369 { TV_STAFF, SV_STAFF_REMOVE_CURSE },
370 { TV_STAFF, SV_STAFF_CURE_LIGHT },
371 { TV_STAFF, SV_STAFF_PROBING },
375 { TV_SORCERY_BOOK, 0 },
376 { TV_SORCERY_BOOK, 0 },
377 { TV_SORCERY_BOOK, 1 },
378 { TV_SORCERY_BOOK, 1 },
380 { TV_ARCANE_BOOK, 0 },
381 { TV_ARCANE_BOOK, 0 },
382 { TV_ARCANE_BOOK, 1 },
383 { TV_ARCANE_BOOK, 1 },
385 { TV_ARCANE_BOOK, 2 },
386 { TV_ARCANE_BOOK, 2 },
387 { TV_ARCANE_BOOK, 3 },
388 { TV_ARCANE_BOOK, 3 },
392 /* Black Market (unused) */
465 { TV_SORCERY_BOOK, 0 },
466 { TV_SORCERY_BOOK, 0 },
467 { TV_SORCERY_BOOK, 1 },
468 { TV_SORCERY_BOOK, 1 },
470 { TV_NATURE_BOOK, 0 },
471 { TV_NATURE_BOOK, 0 },
472 { TV_NATURE_BOOK, 1 },
473 { TV_NATURE_BOOK, 1 },
475 { TV_CHAOS_BOOK, 0 },
476 { TV_CHAOS_BOOK, 0 },
477 { TV_CHAOS_BOOK, 1 },
478 { TV_CHAOS_BOOK, 1 },
480 { TV_DEATH_BOOK, 0 },
481 { TV_DEATH_BOOK, 0 },
482 { TV_DEATH_BOOK, 1 },
483 { TV_DEATH_BOOK, 1 },
485 { TV_TRUMP_BOOK, 0 },
486 { TV_TRUMP_BOOK, 0 },
487 { TV_TRUMP_BOOK, 1 },
488 { TV_TRUMP_BOOK, 1 },
490 { TV_ARCANE_BOOK, 0 },
491 { TV_ARCANE_BOOK, 1 },
492 { TV_ARCANE_BOOK, 2 },
493 { TV_ARCANE_BOOK, 3 },
495 { TV_CRAFT_BOOK, 0 },
496 { TV_CRAFT_BOOK, 0 },
497 { TV_CRAFT_BOOK, 1 },
498 { TV_CRAFT_BOOK, 1 },
500 { TV_DAEMON_BOOK, 0 },
501 { TV_DAEMON_BOOK, 0 },
502 { TV_DAEMON_BOOK, 1 },
503 { TV_DAEMON_BOOK, 1 },
505 { TV_MUSIC_BOOK, 0 },
506 { TV_MUSIC_BOOK, 0 },
507 { TV_MUSIC_BOOK, 1 },
508 { TV_MUSIC_BOOK, 1 },
517 /* Museum (unused) */