OSDN Git Service

[Implement] #37285 アーティファクトを1件追加 / Added one artifact
[hengband/hengband.git] / src / market / articles-on-sale.c
1 #include "market/articles-on-sale.h"
2 #include "object/tval-types.h"
3 #include "sv-definition/sv-amulet-types.h"
4 #include "sv-definition/sv-armor-types.h"
5 #include "sv-definition/sv-bow-types.h"
6 #include "sv-definition/sv-digging-types.h"
7 #include "sv-definition/sv-food-types.h"
8 #include "sv-definition/sv-other-types.h"
9 #include "sv-definition/sv-lite-types.h"
10 #include "sv-definition/sv-potion-types.h"
11 #include "sv-definition/sv-protector-types.h"
12 #include "sv-definition/sv-scroll-types.h"
13 #include "sv-definition/sv-ring-types.h"
14 #include "sv-definition/sv-staff-types.h"
15 #include "sv-definition/sv-wand-types.h"
16 #include "sv-definition/sv-weapon-types.h"
17
18 /*!
19  * 店舗で販売するオブジェクトを定義する / Hack -- Objects sold in the stores -- by tval/sval pair.
20  */
21 byte store_table[MAX_STORES][STORE_CHOICES][2] =
22 {
23         {
24                 /* General Store */
25                 { TV_FOOD, SV_FOOD_RATION },
26                 { TV_FOOD, SV_FOOD_RATION },
27                 { TV_FOOD, SV_FOOD_RATION },
28                 { TV_FOOD, SV_FOOD_RATION },
29
30                 { TV_FOOD, SV_FOOD_RATION },
31                 { TV_FOOD, SV_FOOD_BISCUIT },
32                 { TV_FOOD, SV_FOOD_JERKY },
33                 { TV_FOOD, SV_FOOD_JERKY },
34
35                 { TV_FOOD, SV_FOOD_PINT_OF_WINE },
36                 { TV_FOOD, SV_FOOD_PINT_OF_ALE },
37                 { TV_LITE, SV_LITE_TORCH },
38                 { TV_LITE, SV_LITE_TORCH },
39
40                 { TV_LITE, SV_LITE_TORCH },
41                 { TV_LITE, SV_LITE_TORCH },
42                 { TV_LITE, SV_LITE_LANTERN },
43                 { TV_LITE, SV_LITE_LANTERN },
44
45                 { TV_FLASK, 0 },
46                 { TV_FLASK, 0 },
47                 { TV_FLASK, 0 },
48                 { TV_FLASK, 0 },
49
50                 { TV_FLASK, 0 },
51                 { TV_FLASK, 0 },
52                 { TV_SPIKE, 0 },
53                 { TV_SPIKE, 0 },
54
55                 { TV_SHOT, SV_AMMO_NORMAL },
56                 { TV_ARROW, SV_AMMO_NORMAL },
57                 { TV_BOLT, SV_AMMO_NORMAL },
58                 { TV_DIGGING, SV_SHOVEL },
59
60                 { TV_DIGGING, SV_PICK },
61                 { TV_CLOAK, SV_CLOAK },
62                 { TV_CLOAK, SV_CLOAK },
63                 { TV_CLOAK, SV_FUR_CLOAK },
64
65                 { TV_FOOD, SV_FOOD_RATION },
66                 { TV_FOOD, SV_FOOD_RATION },
67                 { TV_FOOD, SV_FOOD_RATION },
68                 { TV_FOOD, SV_FOOD_RATION },
69
70                 { TV_POTION, SV_POTION_WATER },
71                 { TV_POTION, SV_POTION_WATER },
72                 { TV_LITE, SV_LITE_LANTERN },
73                 { TV_LITE, SV_LITE_LANTERN },
74
75                 { TV_FOOD, SV_FOOD_WAYBREAD },
76                 { TV_FOOD, SV_FOOD_WAYBREAD },
77                 { TV_CAPTURE, 0 },
78                 { TV_FIGURINE, 0 },
79
80                 { TV_SHOT, SV_AMMO_NORMAL },
81                 { TV_ARROW, SV_AMMO_NORMAL },
82                 { TV_BOLT, SV_AMMO_NORMAL },
83                 { TV_DIGGING, SV_SHOVEL }
84         },
85
86         {
87                 /* Armoury */
88                 { TV_BOOTS, SV_PAIR_OF_SOFT_LEATHER_BOOTS },
89                 { TV_BOOTS, SV_PAIR_OF_SOFT_LEATHER_BOOTS },
90                 { TV_BOOTS, SV_PAIR_OF_HARD_LEATHER_BOOTS },
91                 { TV_BOOTS, SV_PAIR_OF_HARD_LEATHER_BOOTS },
92
93                 { TV_HELM, SV_HARD_LEATHER_CAP },
94                 { TV_HELM, SV_HARD_LEATHER_CAP },
95                 { TV_HELM, SV_METAL_CAP },
96                 { TV_HELM, SV_IRON_HELM },
97
98                 { TV_SOFT_ARMOR, SV_ROBE },
99                 { TV_SOFT_ARMOR, SV_ROBE },
100                 { TV_SOFT_ARMOR, SV_SOFT_LEATHER_ARMOR },
101                 { TV_SOFT_ARMOR, SV_SOFT_LEATHER_ARMOR },
102
103                 { TV_SOFT_ARMOR, SV_HARD_LEATHER_ARMOR },
104                 { TV_SOFT_ARMOR, SV_HARD_LEATHER_ARMOR },
105                 { TV_SOFT_ARMOR, SV_HARD_STUDDED_LEATHER },
106                 { TV_SOFT_ARMOR, SV_HARD_STUDDED_LEATHER },
107
108                 { TV_SOFT_ARMOR, SV_RHINO_HIDE_ARMOR },
109                 { TV_SOFT_ARMOR, SV_LEATHER_SCALE_MAIL },
110                 { TV_HARD_ARMOR, SV_METAL_SCALE_MAIL },
111                 { TV_HARD_ARMOR, SV_CHAIN_MAIL },
112
113                 { TV_HARD_ARMOR, SV_DOUBLE_RING_MAIL },
114                 { TV_HARD_ARMOR, SV_AUGMENTED_CHAIN_MAIL },
115                 { TV_HARD_ARMOR, SV_BAR_CHAIN_MAIL },
116                 { TV_HARD_ARMOR, SV_DOUBLE_CHAIN_MAIL },
117
118                 { TV_HARD_ARMOR, SV_METAL_BRIGANDINE_ARMOUR },
119                 { TV_HARD_ARMOR, SV_SPLINT_MAIL },
120                 { TV_GLOVES, SV_SET_OF_LEATHER_GLOVES },
121                 { TV_GLOVES, SV_SET_OF_LEATHER_GLOVES },
122
123                 { TV_GLOVES, SV_SET_OF_GAUNTLETS },
124                 { TV_SHIELD, SV_SMALL_LEATHER_SHIELD },
125                 { TV_SHIELD, SV_LARGE_LEATHER_SHIELD },
126                 { TV_SHIELD, SV_SMALL_METAL_SHIELD },
127
128                 { TV_BOOTS, SV_PAIR_OF_HARD_LEATHER_BOOTS },
129                 { TV_BOOTS, SV_PAIR_OF_HARD_LEATHER_BOOTS },
130                 { TV_HELM, SV_HARD_LEATHER_CAP },
131                 { TV_HELM, SV_HARD_LEATHER_CAP },
132
133                 { TV_SOFT_ARMOR, SV_ROBE },
134                 { TV_SOFT_ARMOR, SV_SOFT_LEATHER_ARMOR },
135                 { TV_SOFT_ARMOR, SV_SOFT_LEATHER_ARMOR },
136                 { TV_SOFT_ARMOR, SV_HARD_LEATHER_ARMOR },
137
138                 { TV_SOFT_ARMOR, SV_LEATHER_JACK },
139                 { TV_HARD_ARMOR, SV_METAL_SCALE_MAIL },
140                 { TV_HARD_ARMOR, SV_CHAIN_MAIL },
141                 { TV_HARD_ARMOR, SV_CHAIN_MAIL },
142
143                 { TV_GLOVES, SV_SET_OF_LEATHER_GLOVES },
144                 { TV_GLOVES, SV_SET_OF_GAUNTLETS },
145                 { TV_SHIELD, SV_SMALL_LEATHER_SHIELD },
146                 { TV_SHIELD, SV_SMALL_LEATHER_SHIELD }
147         },
148
149         {
150                 /* Weaponsmith */
151                 { TV_SWORD, SV_DAGGER },
152                 { TV_SWORD, SV_MAIN_GAUCHE },
153                 { TV_SWORD, SV_RAPIER },
154                 { TV_SWORD, SV_SMALL_SWORD },
155
156                 { TV_SWORD, SV_SHORT_SWORD },
157                 { TV_SWORD, SV_SABRE },
158                 { TV_SWORD, SV_CUTLASS },
159                 { TV_SWORD, SV_TULWAR },
160
161                 { TV_SWORD, SV_BROAD_SWORD },
162                 { TV_SWORD, SV_LONG_SWORD },
163                 { TV_SWORD, SV_SCIMITAR },
164                 { TV_SWORD, SV_KATANA },
165
166                 { TV_SWORD, SV_BASTARD_SWORD },
167                 { TV_POLEARM, SV_SPEAR },
168                 { TV_POLEARM, SV_AWL_PIKE },
169                 { TV_POLEARM, SV_TRIDENT },
170
171                 { TV_POLEARM, SV_PIKE },
172                 { TV_POLEARM, SV_BEAKED_AXE },
173                 { TV_POLEARM, SV_BROAD_AXE },
174                 { TV_POLEARM, SV_LANCE },
175
176                 { TV_POLEARM, SV_BATTLE_AXE },
177                 { TV_POLEARM, SV_HATCHET },
178                 { TV_BOW, SV_SLING },
179                 { TV_BOW, SV_SHORT_BOW },
180
181                 { TV_BOW, SV_LIGHT_XBOW },
182                 { TV_SHOT, SV_AMMO_NORMAL },
183                 { TV_SHOT, SV_AMMO_NORMAL },
184                 { TV_ARROW, SV_AMMO_NORMAL },
185
186                 { TV_ARROW, SV_AMMO_NORMAL },
187                 { TV_BOLT, SV_AMMO_NORMAL },
188                 { TV_BOLT, SV_AMMO_NORMAL },
189                 { TV_BOW, SV_LIGHT_XBOW },
190
191                 { TV_ARROW, SV_AMMO_NORMAL },
192                 { TV_BOLT, SV_AMMO_NORMAL },
193                 { TV_BOW, SV_SHORT_BOW },
194                 { TV_BOW, SV_LIGHT_XBOW },
195
196                 { TV_SWORD, SV_DAGGER },
197                 { TV_SWORD, SV_TANTO },
198                 { TV_SWORD, SV_RAPIER },
199                 { TV_SWORD, SV_SMALL_SWORD },
200
201                 { TV_SWORD, SV_SHORT_SWORD },
202                 { TV_SWORD, SV_LONG_SWORD },
203                 { TV_SWORD, SV_SCIMITAR },
204                 { TV_SWORD, SV_BROAD_SWORD },
205
206                 { TV_HISSATSU_BOOK, 0 },
207                 { TV_HISSATSU_BOOK, 0 },
208                 { TV_HISSATSU_BOOK, 1 },
209                 { TV_HISSATSU_BOOK, 1 },
210         },
211
212         {
213                 /* Temple */
214                 { TV_HAFTED, SV_NUNCHAKU },
215                 { TV_HAFTED, SV_QUARTERSTAFF },
216                 { TV_HAFTED, SV_MACE },
217                 { TV_HAFTED, SV_BO_STAFF },
218
219                 { TV_HAFTED, SV_WAR_HAMMER },
220                 { TV_HAFTED, SV_WAR_HAMMER },
221                 { TV_HAFTED, SV_MORNING_STAR },
222                 { TV_HAFTED, SV_FLAIL },
223
224                 { TV_HAFTED, SV_LEAD_FILLED_MACE },
225                 { TV_SCROLL, SV_SCROLL_REMOVE_CURSE },
226                 { TV_SCROLL, SV_SCROLL_BLESSING },
227                 { TV_SCROLL, SV_SCROLL_HOLY_CHANT },
228
229                 { TV_POTION, SV_POTION_HEROISM },
230                 { TV_SCROLL, SV_SCROLL_WORD_OF_RECALL },
231                 { TV_SCROLL, SV_SCROLL_WORD_OF_RECALL },
232                 { TV_SCROLL, SV_SCROLL_WORD_OF_RECALL },
233
234                 { TV_POTION, SV_POTION_CURE_LIGHT },
235                 { TV_POTION, SV_POTION_CURE_SERIOUS },
236                 { TV_POTION, SV_POTION_CURE_SERIOUS },
237                 { TV_POTION, SV_POTION_CURE_CRITICAL },
238
239                 { TV_POTION, SV_POTION_CURE_CRITICAL },
240                 { TV_POTION, SV_POTION_RESTORE_EXP },
241                 { TV_POTION, SV_POTION_RESTORE_EXP },
242                 { TV_POTION, SV_POTION_RESTORE_EXP },
243
244                 { TV_LIFE_BOOK, 0 },
245                 { TV_LIFE_BOOK, 0 },
246                 { TV_LIFE_BOOK, 1 },
247                 { TV_LIFE_BOOK, 1 },
248
249                 { TV_CRUSADE_BOOK, 0 },
250                 { TV_CRUSADE_BOOK, 0 },
251                 { TV_CRUSADE_BOOK, 1 },
252                 { TV_CRUSADE_BOOK, 1 },
253
254                 { TV_HAFTED, SV_WHIP },
255                 { TV_HAFTED, SV_MACE },
256                 { TV_HAFTED, SV_BALL_AND_CHAIN },
257                 { TV_HAFTED, SV_WAR_HAMMER },
258
259                 { TV_SCROLL, SV_SCROLL_WORD_OF_RECALL },
260                 { TV_SCROLL, SV_SCROLL_WORD_OF_RECALL },
261                 { TV_SCROLL, SV_SCROLL_WORD_OF_RECALL },
262                 { TV_POTION, SV_POTION_CURE_CRITICAL },
263
264                 { TV_POTION, SV_POTION_CURE_CRITICAL },
265                 { TV_POTION, SV_POTION_RESTORE_EXP },
266
267                 { TV_FIGURINE, 0 },
268                 { TV_STATUE, SV_ANY },
269
270                 { TV_SCROLL, SV_SCROLL_REMOVE_CURSE },
271                 { TV_SCROLL, SV_SCROLL_REMOVE_CURSE },
272                 { TV_SCROLL, SV_SCROLL_STAR_REMOVE_CURSE },
273                 { TV_SCROLL, SV_SCROLL_STAR_REMOVE_CURSE }
274         },
275
276         {
277                 /* Alchemy shop */
278                 { TV_SCROLL, SV_SCROLL_ENCHANT_WEAPON_TO_HIT },
279                 { TV_SCROLL, SV_SCROLL_ENCHANT_WEAPON_TO_DAM },
280                 { TV_SCROLL, SV_SCROLL_ENCHANT_ARMOR },
281                 { TV_SCROLL, SV_SCROLL_IDENTIFY },
282
283                 { TV_SCROLL, SV_SCROLL_IDENTIFY },
284                 { TV_SCROLL, SV_SCROLL_IDENTIFY },
285                 { TV_SCROLL, SV_SCROLL_IDENTIFY },
286                 { TV_SCROLL, SV_SCROLL_LIGHT },
287
288                 { TV_SCROLL, SV_SCROLL_PHASE_DOOR },
289                 { TV_SCROLL, SV_SCROLL_PHASE_DOOR },
290                 { TV_SCROLL, SV_SCROLL_TELEPORT },
291                 { TV_SCROLL, SV_SCROLL_MONSTER_CONFUSION },
292
293                 { TV_SCROLL, SV_SCROLL_MAPPING },
294                 { TV_SCROLL, SV_SCROLL_DETECT_GOLD },
295                 { TV_SCROLL, SV_SCROLL_DETECT_ITEM },
296                 { TV_SCROLL, SV_SCROLL_DETECT_TRAP },
297
298                 { TV_SCROLL, SV_SCROLL_DETECT_INVIS },
299                 { TV_SCROLL, SV_SCROLL_RECHARGING },
300                 { TV_SCROLL, SV_SCROLL_TELEPORT },
301                 { TV_SCROLL, SV_SCROLL_WORD_OF_RECALL },
302
303                 { TV_SCROLL, SV_SCROLL_WORD_OF_RECALL },
304                 { TV_SCROLL, SV_SCROLL_WORD_OF_RECALL },
305                 { TV_SCROLL, SV_SCROLL_WORD_OF_RECALL },
306                 { TV_SCROLL, SV_SCROLL_TELEPORT },
307
308                 { TV_SCROLL, SV_SCROLL_TELEPORT },
309                 { TV_POTION, SV_POTION_RES_STR },
310                 { TV_POTION, SV_POTION_RES_INT },
311                 { TV_POTION, SV_POTION_RES_WIS },
312
313                 { TV_POTION, SV_POTION_RES_DEX },
314                 { TV_POTION, SV_POTION_RES_CON },
315                 { TV_POTION, SV_POTION_RES_CHR },
316                 { TV_SCROLL, SV_SCROLL_IDENTIFY },
317
318                 { TV_SCROLL, SV_SCROLL_IDENTIFY },
319                 { TV_SCROLL, SV_SCROLL_STAR_IDENTIFY },
320                 { TV_SCROLL, SV_SCROLL_STAR_IDENTIFY },
321                 { TV_SCROLL, SV_SCROLL_LIGHT },
322
323                 { TV_POTION, SV_POTION_RES_STR },
324                 { TV_POTION, SV_POTION_RES_INT },
325                 { TV_POTION, SV_POTION_RES_WIS },
326                 { TV_POTION, SV_POTION_RES_DEX },
327
328                 { TV_POTION, SV_POTION_RES_CON },
329                 { TV_POTION, SV_POTION_RES_CHR },
330                 { TV_SCROLL, SV_SCROLL_ENCHANT_ARMOR },
331                 { TV_SCROLL, SV_SCROLL_ENCHANT_ARMOR },
332
333                 { TV_SCROLL, SV_SCROLL_RECHARGING },
334                 { TV_SCROLL, SV_SCROLL_PHASE_DOOR },
335                 { TV_SCROLL, SV_SCROLL_ENCHANT_WEAPON_TO_HIT },
336                 { TV_SCROLL, SV_SCROLL_ENCHANT_WEAPON_TO_DAM },
337
338         },
339
340         {
341                 /* Magic-User store */
342                 { TV_RING, SV_RING_PROTECTION },
343                 { TV_RING, SV_RING_LEVITATION_FALL },
344                 { TV_RING, SV_RING_PROTECTION },
345                 { TV_RING, SV_RING_RESIST_FIRE },
346
347                 { TV_RING, SV_RING_RESIST_COLD },
348                 { TV_AMULET, SV_AMULET_CHARISMA },
349                 { TV_RING, SV_RING_WARNING },
350                 { TV_AMULET, SV_AMULET_RESIST_ACID },
351
352                 { TV_AMULET, SV_AMULET_SEARCHING },
353                 { TV_WAND, SV_WAND_SLOW_MONSTER },
354                 { TV_WAND, SV_WAND_CONFUSE_MONSTER },
355                 { TV_WAND, SV_WAND_SLEEP_MONSTER },
356
357                 { TV_WAND, SV_WAND_MAGIC_MISSILE },
358                 { TV_WAND, SV_WAND_STINKING_CLOUD },
359                 { TV_WAND, SV_WAND_WONDER },
360                 { TV_WAND, SV_WAND_DISARMING },
361
362                 { TV_STAFF, SV_STAFF_LITE },
363                 { TV_STAFF, SV_STAFF_MAPPING },
364                 { TV_STAFF, SV_STAFF_DETECT_TRAP },
365                 { TV_STAFF, SV_STAFF_DETECT_DOOR },
366
367                 { TV_STAFF, SV_STAFF_DETECT_GOLD },
368                 { TV_STAFF, SV_STAFF_DETECT_ITEM },
369                 { TV_STAFF, SV_STAFF_DETECT_INVIS },
370                 { TV_STAFF, SV_STAFF_DETECT_EVIL },
371
372                 { TV_STAFF, SV_STAFF_TELEPORTATION },
373                 { TV_STAFF, SV_STAFF_TELEPORTATION },
374                 { TV_STAFF, SV_STAFF_TELEPORTATION },
375                 { TV_STAFF, SV_STAFF_TELEPORTATION },
376
377                 { TV_STAFF, SV_STAFF_IDENTIFY },
378                 { TV_STAFF, SV_STAFF_IDENTIFY },
379                 { TV_STAFF, SV_STAFF_IDENTIFY },
380
381                 { TV_STAFF, SV_STAFF_IDENTIFY },
382                 { TV_STAFF, SV_STAFF_REMOVE_CURSE },
383                 { TV_STAFF, SV_STAFF_CURE_LIGHT },
384                 { TV_STAFF, SV_STAFF_PROBING },
385
386                 { TV_FIGURINE, 0 },
387
388                 { TV_SORCERY_BOOK, 0 },
389                 { TV_SORCERY_BOOK, 0 },
390                 { TV_SORCERY_BOOK, 1 },
391                 { TV_SORCERY_BOOK, 1 },
392
393                 { TV_ARCANE_BOOK, 0 },
394                 { TV_ARCANE_BOOK, 0 },
395                 { TV_ARCANE_BOOK, 1 },
396                 { TV_ARCANE_BOOK, 1 },
397
398                 { TV_ARCANE_BOOK, 2 },
399                 { TV_ARCANE_BOOK, 2 },
400                 { TV_ARCANE_BOOK, 3 },
401                 { TV_ARCANE_BOOK, 3 },
402         },
403
404         {
405                 /* Black Market (unused) */
406                 { 0, 0 },
407                 { 0, 0 },
408                 { 0, 0 },
409                 { 0, 0 },
410                 { 0, 0 },
411                 { 0, 0 },
412                 { 0, 0 },
413                 { 0, 0 },
414                 { 0, 0 },
415                 { 0, 0 },
416                 { 0, 0 },
417                 { 0, 0 },
418                 { 0, 0 },
419                 { 0, 0 },
420                 { 0, 0 },
421                 { 0, 0 },
422                 { 0, 0 },
423                 { 0, 0 },
424                 { 0, 0 },
425                 { 0, 0 },
426                 { 0, 0 },
427                 { 0, 0 },
428                 { 0, 0 },
429                 { 0, 0 },
430                 { 0, 0 },
431                 { 0, 0 },
432                 { 0, 0 },
433                 { 0, 0 },
434                 { 0, 0 },
435                 { 0, 0 },
436                 { 0, 0 },
437                 { 0, 0 }
438         },
439
440         {
441                 /* Home (unused) */
442                 { 0, 0 },
443                 { 0, 0 },
444                 { 0, 0 },
445                 { 0, 0 },
446                 { 0, 0 },
447                 { 0, 0 },
448                 { 0, 0 },
449                 { 0, 0 },
450                 { 0, 0 },
451                 { 0, 0 },
452                 { 0, 0 },
453                 { 0, 0 },
454                 { 0, 0 },
455                 { 0, 0 },
456                 { 0, 0 },
457                 { 0, 0 },
458                 { 0, 0 },
459                 { 0, 0 },
460                 { 0, 0 },
461                 { 0, 0 },
462                 { 0, 0 },
463                 { 0, 0 },
464                 { 0, 0 },
465                 { 0, 0 },
466                 { 0, 0 },
467                 { 0, 0 },
468                 { 0, 0 },
469                 { 0, 0 },
470                 { 0, 0 },
471                 { 0, 0 },
472                 { 0, 0 },
473                 { 0, 0 }
474         },
475
476         {
477                 /* Bookstore */
478                 { TV_SORCERY_BOOK, 0 },
479                 { TV_SORCERY_BOOK, 0 },
480                 { TV_SORCERY_BOOK, 1 },
481                 { TV_SORCERY_BOOK, 1 },
482
483                 { TV_NATURE_BOOK, 0 },
484                 { TV_NATURE_BOOK, 0 },
485                 { TV_NATURE_BOOK, 1 },
486                 { TV_NATURE_BOOK, 1 },
487
488                 { TV_CHAOS_BOOK, 0 },
489                 { TV_CHAOS_BOOK, 0 },
490                 { TV_CHAOS_BOOK, 1 },
491                 { TV_CHAOS_BOOK, 1 },
492
493                 { TV_DEATH_BOOK, 0 },
494                 { TV_DEATH_BOOK, 0 },
495                 { TV_DEATH_BOOK, 1 },
496                 { TV_DEATH_BOOK, 1 },
497
498                 { TV_TRUMP_BOOK, 0 },
499                 { TV_TRUMP_BOOK, 0 },
500                 { TV_TRUMP_BOOK, 1 },
501                 { TV_TRUMP_BOOK, 1 },
502
503                 { TV_ARCANE_BOOK, 0 },
504                 { TV_ARCANE_BOOK, 1 },
505                 { TV_ARCANE_BOOK, 2 },
506                 { TV_ARCANE_BOOK, 3 },
507
508                 { TV_CRAFT_BOOK, 0 },
509                 { TV_CRAFT_BOOK, 0 },
510                 { TV_CRAFT_BOOK, 1 },
511                 { TV_CRAFT_BOOK, 1 },
512
513                 { TV_DEMON_BOOK, 0 },
514                 { TV_DEMON_BOOK, 0 },
515                 { TV_DEMON_BOOK, 1 },
516                 { TV_DEMON_BOOK, 1 },
517
518                 { TV_MUSIC_BOOK, 0 },
519                 { TV_MUSIC_BOOK, 0 },
520                 { TV_MUSIC_BOOK, 1 },
521                 { TV_MUSIC_BOOK, 1 },
522
523                 { TV_HEX_BOOK, 0 },
524                 { TV_HEX_BOOK, 0 },
525                 { TV_HEX_BOOK, 1 },
526                 { TV_HEX_BOOK, 1 },
527         },
528
529         {
530                 /* Museum (unused) */
531                 { 0, 0 },
532                 { 0, 0 },
533                 { 0, 0 },
534                 { 0, 0 },
535                 { 0, 0 },
536                 { 0, 0 },
537                 { 0, 0 },
538                 { 0, 0 },
539                 { 0, 0 },
540                 { 0, 0 },
541                 { 0, 0 },
542                 { 0, 0 },
543                 { 0, 0 },
544                 { 0, 0 },
545                 { 0, 0 },
546                 { 0, 0 },
547                 { 0, 0 },
548                 { 0, 0 },
549                 { 0, 0 },
550                 { 0, 0 },
551                 { 0, 0 },
552                 { 0, 0 },
553                 { 0, 0 },
554                 { 0, 0 },
555                 { 0, 0 },
556                 { 0, 0 },
557                 { 0, 0 },
558                 { 0, 0 },
559                 { 0, 0 },
560                 { 0, 0 },
561                 { 0, 0 },
562                 { 0, 0 }
563         }
564 };