• R/O
  • HTTP
  • SSH
  • HTTPS

hengband: Commit

変愚蛮怒のメインリポジトリです


Commit MetaInfo

Revisão4cdc349d100608a1a722507ac9b42a7986d33858 (tree)
Hora2020-03-22 20:27:23
AutorHourier <hourier@user...>
CommiterHourier

Mensagem de Log

[Refactor] #40233 Separated articles-on-sale.c/h from store.c/h

Mudança Sumário

Diff

--- a/Hengband_vcs2017/Hengband/Hengband.vcxproj
+++ b/Hengband_vcs2017/Hengband/Hengband.vcxproj
@@ -209,6 +209,7 @@
209209 <ClCompile Include="..\..\src\io\special-class-dump.c" />
210210 <ClCompile Include="..\..\src\io\tokenizer.c" />
211211 <ClCompile Include="..\..\src\io\write-diary.c" />
212+ <ClCompile Include="..\..\src\market\articles-on-sale.c" />
212213 <ClCompile Include="..\..\src\market\poker.c" />
213214 <ClCompile Include="..\..\src\market\store-owner-comments.c" />
214215 <ClCompile Include="..\..\src\market\store-owners.c" />
@@ -382,6 +383,7 @@
382383 <ClInclude Include="..\..\src\io\special-class-dump.h" />
383384 <ClInclude Include="..\..\src\io\tokenizer.h" />
384385 <ClInclude Include="..\..\src\io\write-diary.h" />
386+ <ClInclude Include="..\..\src\market\articles-on-sale.h" />
385387 <ClInclude Include="..\..\src\market\poker.h" />
386388 <ClInclude Include="..\..\src\market\store-owner-comments.h" />
387389 <ClInclude Include="..\..\src\market\store-owners.h" />
--- a/Hengband_vcs2017/Hengband/Hengband.vcxproj.filters
+++ b/Hengband_vcs2017/Hengband/Hengband.vcxproj.filters
@@ -547,6 +547,9 @@
547547 <ClCompile Include="..\..\src\market\store-owner-comments.c">
548548 <Filter>market</Filter>
549549 </ClCompile>
550+ <ClCompile Include="..\..\src\market\articles-on-sale.c">
551+ <Filter>market</Filter>
552+ </ClCompile>
550553 </ItemGroup>
551554 <ItemGroup>
552555 <ClInclude Include="..\..\src\gamevalue.h" />
@@ -1076,6 +1079,9 @@
10761079 <ClInclude Include="..\..\src\market\store-owner-comments.h">
10771080 <Filter>market</Filter>
10781081 </ClInclude>
1082+ <ClInclude Include="..\..\src\market\articles-on-sale.h">
1083+ <Filter>market</Filter>
1084+ </ClInclude>
10791085 </ItemGroup>
10801086 <ItemGroup>
10811087 <None Include="..\..\src\wall.bmp" />
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -13,6 +13,7 @@ hengband_SOURCES = \
1313 \
1414 market/poker.c market/poker.h market/store-owners.c market/store-owners.h \
1515 market/store-owner-comments.c store-owner-comments.h \
16+ market/articles-on-sale.c market/articles-on-sale.h \
1617 store.c store.h bldg.c bldg.h chest.c chest.h chuukei.c chuukei.h \
1718 \
1819 view/display-characteristic.c view/display-characteristic.h \
--- a/src/init.c
+++ b/src/init.c
@@ -59,6 +59,7 @@
5959 #include "object-ego.h"
6060 #include "rooms-vault.h"
6161 #include "world.h"
62+#include "market/articles-on-sale.h"
6263
6364 #include <sys/types.h>
6465 #include <sys/stat.h>
--- /dev/null
+++ b/src/market/articles-on-sale.c
@@ -0,0 +1,551 @@
1+#include "angband.h"
2+#include "store-owners.h"
3+#include "articles-on-sale.h"
4+
5+/*!
6+ * 店舗で販売するオブジェクトを定義する / Hack -- Objects sold in the stores -- by tval/sval pair.
7+ */
8+byte store_table[MAX_STORES][STORE_CHOICES][2] =
9+{
10+ {
11+ /* General Store */
12+ { TV_FOOD, SV_FOOD_RATION },
13+ { TV_FOOD, SV_FOOD_RATION },
14+ { TV_FOOD, SV_FOOD_RATION },
15+ { TV_FOOD, SV_FOOD_RATION },
16+
17+ { TV_FOOD, SV_FOOD_RATION },
18+ { TV_FOOD, SV_FOOD_BISCUIT },
19+ { TV_FOOD, SV_FOOD_JERKY },
20+ { TV_FOOD, SV_FOOD_JERKY },
21+
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 },
26+
27+ { TV_LITE, SV_LITE_TORCH },
28+ { TV_LITE, SV_LITE_TORCH },
29+ { TV_LITE, SV_LITE_LANTERN },
30+ { TV_LITE, SV_LITE_LANTERN },
31+
32+ { TV_FLASK, 0 },
33+ { TV_FLASK, 0 },
34+ { TV_FLASK, 0 },
35+ { TV_FLASK, 0 },
36+
37+ { TV_FLASK, 0 },
38+ { TV_FLASK, 0 },
39+ { TV_SPIKE, 0 },
40+ { TV_SPIKE, 0 },
41+
42+ { TV_SHOT, SV_AMMO_NORMAL },
43+ { TV_ARROW, SV_AMMO_NORMAL },
44+ { TV_BOLT, SV_AMMO_NORMAL },
45+ { TV_DIGGING, SV_SHOVEL },
46+
47+ { TV_DIGGING, SV_PICK },
48+ { TV_CLOAK, SV_CLOAK },
49+ { TV_CLOAK, SV_CLOAK },
50+ { TV_CLOAK, SV_FUR_CLOAK },
51+
52+ { TV_FOOD, SV_FOOD_RATION },
53+ { TV_FOOD, SV_FOOD_RATION },
54+ { TV_FOOD, SV_FOOD_RATION },
55+ { TV_FOOD, SV_FOOD_RATION },
56+
57+ { TV_POTION, SV_POTION_WATER },
58+ { TV_POTION, SV_POTION_WATER },
59+ { TV_LITE, SV_LITE_LANTERN },
60+ { TV_LITE, SV_LITE_LANTERN },
61+
62+ { TV_FOOD, SV_FOOD_WAYBREAD },
63+ { TV_FOOD, SV_FOOD_WAYBREAD },
64+ { TV_CAPTURE, 0 },
65+ { TV_FIGURINE, 0 },
66+
67+ { TV_SHOT, SV_AMMO_NORMAL },
68+ { TV_ARROW, SV_AMMO_NORMAL },
69+ { TV_BOLT, SV_AMMO_NORMAL },
70+ { TV_DIGGING, SV_SHOVEL }
71+ },
72+
73+ {
74+ /* Armoury */
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 },
79+
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 },
84+
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 },
89+
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 },
94+
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 },
99+
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 },
104+
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 },
109+
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 },
114+
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 },
119+
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 },
124+
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 },
129+
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 }
134+ },
135+
136+ {
137+ /* Weaponsmith */
138+ { TV_SWORD, SV_DAGGER },
139+ { TV_SWORD, SV_MAIN_GAUCHE },
140+ { TV_SWORD, SV_RAPIER },
141+ { TV_SWORD, SV_SMALL_SWORD },
142+
143+ { TV_SWORD, SV_SHORT_SWORD },
144+ { TV_SWORD, SV_SABRE },
145+ { TV_SWORD, SV_CUTLASS },
146+ { TV_SWORD, SV_TULWAR },
147+
148+ { TV_SWORD, SV_BROAD_SWORD },
149+ { TV_SWORD, SV_LONG_SWORD },
150+ { TV_SWORD, SV_SCIMITAR },
151+ { TV_SWORD, SV_KATANA },
152+
153+ { TV_SWORD, SV_BASTARD_SWORD },
154+ { TV_POLEARM, SV_SPEAR },
155+ { TV_POLEARM, SV_AWL_PIKE },
156+ { TV_POLEARM, SV_TRIDENT },
157+
158+ { TV_POLEARM, SV_PIKE },
159+ { TV_POLEARM, SV_BEAKED_AXE },
160+ { TV_POLEARM, SV_BROAD_AXE },
161+ { TV_POLEARM, SV_LANCE },
162+
163+ { TV_POLEARM, SV_BATTLE_AXE },
164+ { TV_POLEARM, SV_HATCHET },
165+ { TV_BOW, SV_SLING },
166+ { TV_BOW, SV_SHORT_BOW },
167+
168+ { TV_BOW, SV_LIGHT_XBOW },
169+ { TV_SHOT, SV_AMMO_NORMAL },
170+ { TV_SHOT, SV_AMMO_NORMAL },
171+ { TV_ARROW, SV_AMMO_NORMAL },
172+
173+ { TV_ARROW, SV_AMMO_NORMAL },
174+ { TV_BOLT, SV_AMMO_NORMAL },
175+ { TV_BOLT, SV_AMMO_NORMAL },
176+ { TV_BOW, SV_LIGHT_XBOW },
177+
178+ { TV_ARROW, SV_AMMO_NORMAL },
179+ { TV_BOLT, SV_AMMO_NORMAL },
180+ { TV_BOW, SV_SHORT_BOW },
181+ { TV_BOW, SV_LIGHT_XBOW },
182+
183+ { TV_SWORD, SV_DAGGER },
184+ { TV_SWORD, SV_TANTO },
185+ { TV_SWORD, SV_RAPIER },
186+ { TV_SWORD, SV_SMALL_SWORD },
187+
188+ { TV_SWORD, SV_SHORT_SWORD },
189+ { TV_SWORD, SV_LONG_SWORD },
190+ { TV_SWORD, SV_SCIMITAR },
191+ { TV_SWORD, SV_BROAD_SWORD },
192+
193+ { TV_HISSATSU_BOOK, 0 },
194+ { TV_HISSATSU_BOOK, 0 },
195+ { TV_HISSATSU_BOOK, 1 },
196+ { TV_HISSATSU_BOOK, 1 },
197+ },
198+
199+ {
200+ /* Temple */
201+ { TV_HAFTED, SV_NUNCHAKU },
202+ { TV_HAFTED, SV_QUARTERSTAFF },
203+ { TV_HAFTED, SV_MACE },
204+ { TV_HAFTED, SV_BO_STAFF },
205+
206+ { TV_HAFTED, SV_WAR_HAMMER },
207+ { TV_HAFTED, SV_WAR_HAMMER },
208+ { TV_HAFTED, SV_MORNING_STAR },
209+ { TV_HAFTED, SV_FLAIL },
210+
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 },
215+
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 },
220+
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 },
225+
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 },
230+
231+ { TV_LIFE_BOOK, 0 },
232+ { TV_LIFE_BOOK, 0 },
233+ { TV_LIFE_BOOK, 1 },
234+ { TV_LIFE_BOOK, 1 },
235+
236+ { TV_CRUSADE_BOOK, 0 },
237+ { TV_CRUSADE_BOOK, 0 },
238+ { TV_CRUSADE_BOOK, 1 },
239+ { TV_CRUSADE_BOOK, 1 },
240+
241+ { TV_HAFTED, SV_WHIP },
242+ { TV_HAFTED, SV_MACE },
243+ { TV_HAFTED, SV_BALL_AND_CHAIN },
244+ { TV_HAFTED, SV_WAR_HAMMER },
245+
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 },
250+
251+ { TV_POTION, SV_POTION_CURE_CRITICAL },
252+ { TV_POTION, SV_POTION_RESTORE_EXP },
253+
254+ { TV_FIGURINE, 0 },
255+ { TV_STATUE, SV_ANY },
256+
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 }
261+ },
262+
263+ {
264+ /* Alchemy shop */
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 },
269+
270+ { TV_SCROLL, SV_SCROLL_IDENTIFY },
271+ { TV_SCROLL, SV_SCROLL_IDENTIFY },
272+ { TV_SCROLL, SV_SCROLL_IDENTIFY },
273+ { TV_SCROLL, SV_SCROLL_LIGHT },
274+
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 },
279+
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 },
284+
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 },
289+
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 },
294+
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 },
299+
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 },
304+
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 },
309+
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 },
314+
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 },
319+
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 },
324+
325+ },
326+
327+ {
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 },
333+
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 },
338+
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 },
343+
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 },
348+
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 },
353+
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 },
358+
359+ { TV_STAFF, SV_STAFF_TELEPORTATION },
360+ { TV_STAFF, SV_STAFF_TELEPORTATION },
361+ { TV_STAFF, SV_STAFF_TELEPORTATION },
362+ { TV_STAFF, SV_STAFF_TELEPORTATION },
363+
364+ { TV_STAFF, SV_STAFF_IDENTIFY },
365+ { TV_STAFF, SV_STAFF_IDENTIFY },
366+ { TV_STAFF, SV_STAFF_IDENTIFY },
367+
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 },
372+
373+ { TV_FIGURINE, 0 },
374+
375+ { TV_SORCERY_BOOK, 0 },
376+ { TV_SORCERY_BOOK, 0 },
377+ { TV_SORCERY_BOOK, 1 },
378+ { TV_SORCERY_BOOK, 1 },
379+
380+ { TV_ARCANE_BOOK, 0 },
381+ { TV_ARCANE_BOOK, 0 },
382+ { TV_ARCANE_BOOK, 1 },
383+ { TV_ARCANE_BOOK, 1 },
384+
385+ { TV_ARCANE_BOOK, 2 },
386+ { TV_ARCANE_BOOK, 2 },
387+ { TV_ARCANE_BOOK, 3 },
388+ { TV_ARCANE_BOOK, 3 },
389+ },
390+
391+ {
392+ /* Black Market (unused) */
393+ { 0, 0 },
394+ { 0, 0 },
395+ { 0, 0 },
396+ { 0, 0 },
397+ { 0, 0 },
398+ { 0, 0 },
399+ { 0, 0 },
400+ { 0, 0 },
401+ { 0, 0 },
402+ { 0, 0 },
403+ { 0, 0 },
404+ { 0, 0 },
405+ { 0, 0 },
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+ },
426+
427+ {
428+ /* Home (unused) */
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+ { 0, 0 },
439+ { 0, 0 },
440+ { 0, 0 },
441+ { 0, 0 },
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+ },
462+
463+ {
464+ /* Bookstore */
465+ { TV_SORCERY_BOOK, 0 },
466+ { TV_SORCERY_BOOK, 0 },
467+ { TV_SORCERY_BOOK, 1 },
468+ { TV_SORCERY_BOOK, 1 },
469+
470+ { TV_NATURE_BOOK, 0 },
471+ { TV_NATURE_BOOK, 0 },
472+ { TV_NATURE_BOOK, 1 },
473+ { TV_NATURE_BOOK, 1 },
474+
475+ { TV_CHAOS_BOOK, 0 },
476+ { TV_CHAOS_BOOK, 0 },
477+ { TV_CHAOS_BOOK, 1 },
478+ { TV_CHAOS_BOOK, 1 },
479+
480+ { TV_DEATH_BOOK, 0 },
481+ { TV_DEATH_BOOK, 0 },
482+ { TV_DEATH_BOOK, 1 },
483+ { TV_DEATH_BOOK, 1 },
484+
485+ { TV_TRUMP_BOOK, 0 },
486+ { TV_TRUMP_BOOK, 0 },
487+ { TV_TRUMP_BOOK, 1 },
488+ { TV_TRUMP_BOOK, 1 },
489+
490+ { TV_ARCANE_BOOK, 0 },
491+ { TV_ARCANE_BOOK, 1 },
492+ { TV_ARCANE_BOOK, 2 },
493+ { TV_ARCANE_BOOK, 3 },
494+
495+ { TV_CRAFT_BOOK, 0 },
496+ { TV_CRAFT_BOOK, 0 },
497+ { TV_CRAFT_BOOK, 1 },
498+ { TV_CRAFT_BOOK, 1 },
499+
500+ { TV_DAEMON_BOOK, 0 },
501+ { TV_DAEMON_BOOK, 0 },
502+ { TV_DAEMON_BOOK, 1 },
503+ { TV_DAEMON_BOOK, 1 },
504+
505+ { TV_MUSIC_BOOK, 0 },
506+ { TV_MUSIC_BOOK, 0 },
507+ { TV_MUSIC_BOOK, 1 },
508+ { TV_MUSIC_BOOK, 1 },
509+
510+ { TV_HEX_BOOK, 0 },
511+ { TV_HEX_BOOK, 0 },
512+ { TV_HEX_BOOK, 1 },
513+ { TV_HEX_BOOK, 1 },
514+ },
515+
516+ {
517+ /* Museum (unused) */
518+ { 0, 0 },
519+ { 0, 0 },
520+ { 0, 0 },
521+ { 0, 0 },
522+ { 0, 0 },
523+ { 0, 0 },
524+ { 0, 0 },
525+ { 0, 0 },
526+ { 0, 0 },
527+ { 0, 0 },
528+ { 0, 0 },
529+ { 0, 0 },
530+ { 0, 0 },
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+ }
551+};
--- /dev/null
+++ b/src/market/articles-on-sale.h
@@ -0,0 +1,5 @@
1+#pragma once
2+
3+#define STORE_CHOICES 48 /* Number of items to choose stock from */
4+
5+extern byte store_table[MAX_STORES][STORE_CHOICES][2];
--- a/src/store.c
+++ b/src/store.c
@@ -69,562 +69,6 @@ static s16b inner_town_num = 0;
6969 /*** Initialize others ***/
7070
7171 /*!
72- * 店舗で販売するオブジェクトを定義する / Hack -- Objects sold in the stores -- by tval/sval pair.
73- */
74-byte store_table[MAX_STORES][STORE_CHOICES][2] =
75-{
76- {
77- /* General Store */
78-
79- { TV_FOOD, SV_FOOD_RATION },
80- { TV_FOOD, SV_FOOD_RATION },
81- { TV_FOOD, SV_FOOD_RATION },
82- { TV_FOOD, SV_FOOD_RATION },
83-
84- { TV_FOOD, SV_FOOD_RATION },
85- { TV_FOOD, SV_FOOD_BISCUIT },
86- { TV_FOOD, SV_FOOD_JERKY },
87- { TV_FOOD, SV_FOOD_JERKY },
88-
89- { TV_FOOD, SV_FOOD_PINT_OF_WINE },
90- { TV_FOOD, SV_FOOD_PINT_OF_ALE },
91- { TV_LITE, SV_LITE_TORCH },
92- { TV_LITE, SV_LITE_TORCH },
93-
94- { TV_LITE, SV_LITE_TORCH },
95- { TV_LITE, SV_LITE_TORCH },
96- { TV_LITE, SV_LITE_LANTERN },
97- { TV_LITE, SV_LITE_LANTERN },
98-
99- { TV_FLASK, 0 },
100- { TV_FLASK, 0 },
101- { TV_FLASK, 0 },
102- { TV_FLASK, 0 },
103-
104- { TV_FLASK, 0 },
105- { TV_FLASK, 0 },
106- { TV_SPIKE, 0 },
107- { TV_SPIKE, 0 },
108-
109- { TV_SHOT, SV_AMMO_NORMAL },
110- { TV_ARROW, SV_AMMO_NORMAL },
111- { TV_BOLT, SV_AMMO_NORMAL },
112- { TV_DIGGING, SV_SHOVEL },
113-
114- { TV_DIGGING, SV_PICK },
115- { TV_CLOAK, SV_CLOAK },
116- { TV_CLOAK, SV_CLOAK },
117- { TV_CLOAK, SV_FUR_CLOAK },
118-
119- { TV_FOOD, SV_FOOD_RATION },
120- { TV_FOOD, SV_FOOD_RATION },
121- { TV_FOOD, SV_FOOD_RATION },
122- { TV_FOOD, SV_FOOD_RATION },
123-
124- { TV_POTION, SV_POTION_WATER },
125- { TV_POTION, SV_POTION_WATER },
126- { TV_LITE, SV_LITE_LANTERN },
127- { TV_LITE, SV_LITE_LANTERN },
128-
129- { TV_FOOD, SV_FOOD_WAYBREAD },
130- { TV_FOOD, SV_FOOD_WAYBREAD },
131- { TV_CAPTURE, 0 },
132- { TV_FIGURINE, 0 },
133-
134- { TV_SHOT, SV_AMMO_NORMAL },
135- { TV_ARROW, SV_AMMO_NORMAL },
136- { TV_BOLT, SV_AMMO_NORMAL },
137- { TV_DIGGING, SV_SHOVEL }
138- },
139-
140- {
141- /* Armoury */
142-
143- { TV_BOOTS, SV_PAIR_OF_SOFT_LEATHER_BOOTS },
144- { TV_BOOTS, SV_PAIR_OF_SOFT_LEATHER_BOOTS },
145- { TV_BOOTS, SV_PAIR_OF_HARD_LEATHER_BOOTS },
146- { TV_BOOTS, SV_PAIR_OF_HARD_LEATHER_BOOTS },
147-
148- { TV_HELM, SV_HARD_LEATHER_CAP },
149- { TV_HELM, SV_HARD_LEATHER_CAP },
150- { TV_HELM, SV_METAL_CAP },
151- { TV_HELM, SV_IRON_HELM },
152-
153- { TV_SOFT_ARMOR, SV_ROBE },
154- { TV_SOFT_ARMOR, SV_ROBE },
155- { TV_SOFT_ARMOR, SV_SOFT_LEATHER_ARMOR },
156- { TV_SOFT_ARMOR, SV_SOFT_LEATHER_ARMOR },
157-
158- { TV_SOFT_ARMOR, SV_HARD_LEATHER_ARMOR },
159- { TV_SOFT_ARMOR, SV_HARD_LEATHER_ARMOR },
160- { TV_SOFT_ARMOR, SV_HARD_STUDDED_LEATHER },
161- { TV_SOFT_ARMOR, SV_HARD_STUDDED_LEATHER },
162-
163- { TV_SOFT_ARMOR, SV_RHINO_HIDE_ARMOR },
164- { TV_SOFT_ARMOR, SV_LEATHER_SCALE_MAIL },
165- { TV_HARD_ARMOR, SV_METAL_SCALE_MAIL },
166- { TV_HARD_ARMOR, SV_CHAIN_MAIL },
167-
168- { TV_HARD_ARMOR, SV_DOUBLE_RING_MAIL },
169- { TV_HARD_ARMOR, SV_AUGMENTED_CHAIN_MAIL },
170- { TV_HARD_ARMOR, SV_BAR_CHAIN_MAIL },
171- { TV_HARD_ARMOR, SV_DOUBLE_CHAIN_MAIL },
172-
173- { TV_HARD_ARMOR, SV_METAL_BRIGANDINE_ARMOUR },
174- { TV_HARD_ARMOR, SV_SPLINT_MAIL },
175- { TV_GLOVES, SV_SET_OF_LEATHER_GLOVES },
176- { TV_GLOVES, SV_SET_OF_LEATHER_GLOVES },
177-
178- { TV_GLOVES, SV_SET_OF_GAUNTLETS },
179- { TV_SHIELD, SV_SMALL_LEATHER_SHIELD },
180- { TV_SHIELD, SV_LARGE_LEATHER_SHIELD },
181- { TV_SHIELD, SV_SMALL_METAL_SHIELD },
182-
183- { TV_BOOTS, SV_PAIR_OF_HARD_LEATHER_BOOTS },
184- { TV_BOOTS, SV_PAIR_OF_HARD_LEATHER_BOOTS },
185- { TV_HELM, SV_HARD_LEATHER_CAP },
186- { TV_HELM, SV_HARD_LEATHER_CAP },
187-
188- { TV_SOFT_ARMOR, SV_ROBE },
189- { TV_SOFT_ARMOR, SV_SOFT_LEATHER_ARMOR },
190- { TV_SOFT_ARMOR, SV_SOFT_LEATHER_ARMOR },
191- { TV_SOFT_ARMOR, SV_HARD_LEATHER_ARMOR },
192-
193- { TV_SOFT_ARMOR, SV_LEATHER_JACK },
194- { TV_HARD_ARMOR, SV_METAL_SCALE_MAIL },
195- { TV_HARD_ARMOR, SV_CHAIN_MAIL },
196- { TV_HARD_ARMOR, SV_CHAIN_MAIL },
197-
198- { TV_GLOVES, SV_SET_OF_LEATHER_GLOVES },
199- { TV_GLOVES, SV_SET_OF_GAUNTLETS },
200- { TV_SHIELD, SV_SMALL_LEATHER_SHIELD },
201- { TV_SHIELD, SV_SMALL_LEATHER_SHIELD }
202- },
203-
204- {
205- /* Weaponsmith */
206-
207- { TV_SWORD, SV_DAGGER },
208- { TV_SWORD, SV_MAIN_GAUCHE },
209- { TV_SWORD, SV_RAPIER },
210- { TV_SWORD, SV_SMALL_SWORD },
211-
212- { TV_SWORD, SV_SHORT_SWORD },
213- { TV_SWORD, SV_SABRE },
214- { TV_SWORD, SV_CUTLASS },
215- { TV_SWORD, SV_TULWAR },
216-
217- { TV_SWORD, SV_BROAD_SWORD },
218- { TV_SWORD, SV_LONG_SWORD },
219- { TV_SWORD, SV_SCIMITAR },
220- { TV_SWORD, SV_KATANA },
221-
222- { TV_SWORD, SV_BASTARD_SWORD },
223- { TV_POLEARM, SV_SPEAR },
224- { TV_POLEARM, SV_AWL_PIKE },
225- { TV_POLEARM, SV_TRIDENT },
226-
227- { TV_POLEARM, SV_PIKE },
228- { TV_POLEARM, SV_BEAKED_AXE },
229- { TV_POLEARM, SV_BROAD_AXE },
230- { TV_POLEARM, SV_LANCE },
231-
232- { TV_POLEARM, SV_BATTLE_AXE },
233- { TV_POLEARM, SV_HATCHET },
234- { TV_BOW, SV_SLING },
235- { TV_BOW, SV_SHORT_BOW },
236-
237- { TV_BOW, SV_LIGHT_XBOW },
238- { TV_SHOT, SV_AMMO_NORMAL },
239- { TV_SHOT, SV_AMMO_NORMAL },
240- { TV_ARROW, SV_AMMO_NORMAL },
241-
242- { TV_ARROW, SV_AMMO_NORMAL },
243- { TV_BOLT, SV_AMMO_NORMAL },
244- { TV_BOLT, SV_AMMO_NORMAL },
245- { TV_BOW, SV_LIGHT_XBOW },
246-
247- { TV_ARROW, SV_AMMO_NORMAL },
248- { TV_BOLT, SV_AMMO_NORMAL },
249- { TV_BOW, SV_SHORT_BOW },
250- { TV_BOW, SV_LIGHT_XBOW },
251-
252- { TV_SWORD, SV_DAGGER },
253- { TV_SWORD, SV_TANTO },
254- { TV_SWORD, SV_RAPIER },
255- { TV_SWORD, SV_SMALL_SWORD },
256-
257- { TV_SWORD, SV_SHORT_SWORD },
258- { TV_SWORD, SV_LONG_SWORD },
259- { TV_SWORD, SV_SCIMITAR },
260- { TV_SWORD, SV_BROAD_SWORD },
261-
262- { TV_HISSATSU_BOOK, 0 },
263- { TV_HISSATSU_BOOK, 0 },
264- { TV_HISSATSU_BOOK, 1 },
265- { TV_HISSATSU_BOOK, 1 },
266- },
267-
268- {
269- /* Temple */
270-
271- { TV_HAFTED, SV_NUNCHAKU },
272- { TV_HAFTED, SV_QUARTERSTAFF },
273- { TV_HAFTED, SV_MACE },
274- { TV_HAFTED, SV_BO_STAFF },
275-
276- { TV_HAFTED, SV_WAR_HAMMER },
277- { TV_HAFTED, SV_WAR_HAMMER },
278- { TV_HAFTED, SV_MORNING_STAR },
279- { TV_HAFTED, SV_FLAIL },
280-
281- { TV_HAFTED, SV_LEAD_FILLED_MACE },
282- { TV_SCROLL, SV_SCROLL_REMOVE_CURSE },
283- { TV_SCROLL, SV_SCROLL_BLESSING },
284- { TV_SCROLL, SV_SCROLL_HOLY_CHANT },
285-
286- { TV_POTION, SV_POTION_HEROISM },
287- { TV_SCROLL, SV_SCROLL_WORD_OF_RECALL },
288- { TV_SCROLL, SV_SCROLL_WORD_OF_RECALL },
289- { TV_SCROLL, SV_SCROLL_WORD_OF_RECALL },
290-
291- { TV_POTION, SV_POTION_CURE_LIGHT },
292- { TV_POTION, SV_POTION_CURE_SERIOUS },
293- { TV_POTION, SV_POTION_CURE_SERIOUS },
294- { TV_POTION, SV_POTION_CURE_CRITICAL },
295-
296- { TV_POTION, SV_POTION_CURE_CRITICAL },
297- { TV_POTION, SV_POTION_RESTORE_EXP },
298- { TV_POTION, SV_POTION_RESTORE_EXP },
299- { TV_POTION, SV_POTION_RESTORE_EXP },
300-
301- { TV_LIFE_BOOK, 0 },
302- { TV_LIFE_BOOK, 0 },
303- { TV_LIFE_BOOK, 1 },
304- { TV_LIFE_BOOK, 1 },
305-
306- { TV_CRUSADE_BOOK, 0 },
307- { TV_CRUSADE_BOOK, 0 },
308- { TV_CRUSADE_BOOK, 1 },
309- { TV_CRUSADE_BOOK, 1 },
310-
311- { TV_HAFTED, SV_WHIP },
312- { TV_HAFTED, SV_MACE },
313- { TV_HAFTED, SV_BALL_AND_CHAIN },
314- { TV_HAFTED, SV_WAR_HAMMER },
315-
316- { TV_SCROLL, SV_SCROLL_WORD_OF_RECALL },
317- { TV_SCROLL, SV_SCROLL_WORD_OF_RECALL },
318- { TV_SCROLL, SV_SCROLL_WORD_OF_RECALL },
319- { TV_POTION, SV_POTION_CURE_CRITICAL },
320-
321- { TV_POTION, SV_POTION_CURE_CRITICAL },
322- { TV_POTION, SV_POTION_RESTORE_EXP },
323-
324- { TV_FIGURINE, 0 },
325- { TV_STATUE, SV_ANY },
326-
327- { TV_SCROLL, SV_SCROLL_REMOVE_CURSE },
328- { TV_SCROLL, SV_SCROLL_REMOVE_CURSE },
329- { TV_SCROLL, SV_SCROLL_STAR_REMOVE_CURSE },
330- { TV_SCROLL, SV_SCROLL_STAR_REMOVE_CURSE }
331- },
332-
333- {
334- /* Alchemy shop */
335-
336- { TV_SCROLL, SV_SCROLL_ENCHANT_WEAPON_TO_HIT },
337- { TV_SCROLL, SV_SCROLL_ENCHANT_WEAPON_TO_DAM },
338- { TV_SCROLL, SV_SCROLL_ENCHANT_ARMOR },
339- { TV_SCROLL, SV_SCROLL_IDENTIFY },
340-
341- { TV_SCROLL, SV_SCROLL_IDENTIFY },
342- { TV_SCROLL, SV_SCROLL_IDENTIFY },
343- { TV_SCROLL, SV_SCROLL_IDENTIFY },
344- { TV_SCROLL, SV_SCROLL_LIGHT },
345-
346- { TV_SCROLL, SV_SCROLL_PHASE_DOOR },
347- { TV_SCROLL, SV_SCROLL_PHASE_DOOR },
348- { TV_SCROLL, SV_SCROLL_TELEPORT },
349- { TV_SCROLL, SV_SCROLL_MONSTER_CONFUSION },
350-
351- { TV_SCROLL, SV_SCROLL_MAPPING },
352- { TV_SCROLL, SV_SCROLL_DETECT_GOLD },
353- { TV_SCROLL, SV_SCROLL_DETECT_ITEM },
354- { TV_SCROLL, SV_SCROLL_DETECT_TRAP },
355-
356- { TV_SCROLL, SV_SCROLL_DETECT_INVIS },
357- { TV_SCROLL, SV_SCROLL_RECHARGING },
358- { TV_SCROLL, SV_SCROLL_TELEPORT },
359- { TV_SCROLL, SV_SCROLL_WORD_OF_RECALL },
360-
361- { TV_SCROLL, SV_SCROLL_WORD_OF_RECALL },
362- { TV_SCROLL, SV_SCROLL_WORD_OF_RECALL },
363- { TV_SCROLL, SV_SCROLL_WORD_OF_RECALL },
364- { TV_SCROLL, SV_SCROLL_TELEPORT },
365-
366- { TV_SCROLL, SV_SCROLL_TELEPORT },
367- { TV_POTION, SV_POTION_RES_STR },
368- { TV_POTION, SV_POTION_RES_INT },
369- { TV_POTION, SV_POTION_RES_WIS },
370-
371- { TV_POTION, SV_POTION_RES_DEX },
372- { TV_POTION, SV_POTION_RES_CON },
373- { TV_POTION, SV_POTION_RES_CHR },
374- { TV_SCROLL, SV_SCROLL_IDENTIFY },
375-
376- { TV_SCROLL, SV_SCROLL_IDENTIFY },
377- { TV_SCROLL, SV_SCROLL_STAR_IDENTIFY }, /* Yep, occasionally! */
378- { TV_SCROLL, SV_SCROLL_STAR_IDENTIFY },
379- { TV_SCROLL, SV_SCROLL_LIGHT },
380-
381- { TV_POTION, SV_POTION_RES_STR },
382- { TV_POTION, SV_POTION_RES_INT },
383- { TV_POTION, SV_POTION_RES_WIS },
384- { TV_POTION, SV_POTION_RES_DEX },
385-
386- { TV_POTION, SV_POTION_RES_CON },
387- { TV_POTION, SV_POTION_RES_CHR },
388- { TV_SCROLL, SV_SCROLL_ENCHANT_ARMOR },
389- { TV_SCROLL, SV_SCROLL_ENCHANT_ARMOR },
390-
391- { TV_SCROLL, SV_SCROLL_RECHARGING },
392- { TV_SCROLL, SV_SCROLL_PHASE_DOOR },
393- { TV_SCROLL, SV_SCROLL_ENCHANT_WEAPON_TO_HIT },
394- { TV_SCROLL, SV_SCROLL_ENCHANT_WEAPON_TO_DAM },
395-
396- },
397-
398- {
399- /* Magic-User store */
400-
401- { TV_RING, SV_RING_PROTECTION },
402- { TV_RING, SV_RING_LEVITATION_FALL },
403- { TV_RING, SV_RING_PROTECTION },
404- { TV_RING, SV_RING_RESIST_FIRE },
405-
406- { TV_RING, SV_RING_RESIST_COLD },
407- { TV_AMULET, SV_AMULET_CHARISMA },
408- { TV_RING, SV_RING_WARNING },
409- { TV_AMULET, SV_AMULET_RESIST_ACID },
410-
411- { TV_AMULET, SV_AMULET_SEARCHING },
412- { TV_WAND, SV_WAND_SLOW_MONSTER },
413- { TV_WAND, SV_WAND_CONFUSE_MONSTER },
414- { TV_WAND, SV_WAND_SLEEP_MONSTER },
415-
416- { TV_WAND, SV_WAND_MAGIC_MISSILE },
417- { TV_WAND, SV_WAND_STINKING_CLOUD },
418- { TV_WAND, SV_WAND_WONDER },
419- { TV_WAND, SV_WAND_DISARMING },
420-
421- { TV_STAFF, SV_STAFF_LITE },
422- { TV_STAFF, SV_STAFF_MAPPING },
423- { TV_STAFF, SV_STAFF_DETECT_TRAP },
424- { TV_STAFF, SV_STAFF_DETECT_DOOR },
425-
426- { TV_STAFF, SV_STAFF_DETECT_GOLD },
427- { TV_STAFF, SV_STAFF_DETECT_ITEM },
428- { TV_STAFF, SV_STAFF_DETECT_INVIS },
429- { TV_STAFF, SV_STAFF_DETECT_EVIL },
430-
431- { TV_STAFF, SV_STAFF_TELEPORTATION },
432- { TV_STAFF, SV_STAFF_TELEPORTATION },
433- { TV_STAFF, SV_STAFF_TELEPORTATION },
434- { TV_STAFF, SV_STAFF_TELEPORTATION },
435-
436- { TV_STAFF, SV_STAFF_IDENTIFY },
437- { TV_STAFF, SV_STAFF_IDENTIFY },
438- { TV_STAFF, SV_STAFF_IDENTIFY },
439-
440- { TV_STAFF, SV_STAFF_IDENTIFY },
441- { TV_STAFF, SV_STAFF_REMOVE_CURSE },
442- { TV_STAFF, SV_STAFF_CURE_LIGHT },
443- { TV_STAFF, SV_STAFF_PROBING },
444-
445- { TV_FIGURINE, 0 },
446-
447- { TV_SORCERY_BOOK, 0 },
448- { TV_SORCERY_BOOK, 0 },
449- { TV_SORCERY_BOOK, 1 },
450- { TV_SORCERY_BOOK, 1 },
451-
452- { TV_ARCANE_BOOK, 0 },
453- { TV_ARCANE_BOOK, 0 },
454- { TV_ARCANE_BOOK, 1 },
455- { TV_ARCANE_BOOK, 1 },
456-
457- { TV_ARCANE_BOOK, 2 },
458- { TV_ARCANE_BOOK, 2 },
459- { TV_ARCANE_BOOK, 3 },
460- { TV_ARCANE_BOOK, 3 },
461-
462- },
463-
464- {
465- /* Black Market (unused) */
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- { 0, 0 },
475- { 0, 0 },
476- { 0, 0 },
477- { 0, 0 },
478- { 0, 0 },
479- { 0, 0 },
480- { 0, 0 },
481- { 0, 0 },
482- { 0, 0 },
483- { 0, 0 },
484- { 0, 0 },
485- { 0, 0 },
486- { 0, 0 },
487- { 0, 0 },
488- { 0, 0 },
489- { 0, 0 },
490- { 0, 0 },
491- { 0, 0 },
492- { 0, 0 },
493- { 0, 0 },
494- { 0, 0 },
495- { 0, 0 },
496- { 0, 0 },
497- { 0, 0 }
498- },
499-
500- {
501- /* Home (unused) */
502- { 0, 0 },
503- { 0, 0 },
504- { 0, 0 },
505- { 0, 0 },
506- { 0, 0 },
507- { 0, 0 },
508- { 0, 0 },
509- { 0, 0 },
510- { 0, 0 },
511- { 0, 0 },
512- { 0, 0 },
513- { 0, 0 },
514- { 0, 0 },
515- { 0, 0 },
516- { 0, 0 },
517- { 0, 0 },
518- { 0, 0 },
519- { 0, 0 },
520- { 0, 0 },
521- { 0, 0 },
522- { 0, 0 },
523- { 0, 0 },
524- { 0, 0 },
525- { 0, 0 },
526- { 0, 0 },
527- { 0, 0 },
528- { 0, 0 },
529- { 0, 0 },
530- { 0, 0 },
531- { 0, 0 },
532- { 0, 0 },
533- { 0, 0 }
534- },
535-
536- {
537- /* Bookstore */
538- { TV_SORCERY_BOOK, 0 },
539- { TV_SORCERY_BOOK, 0 },
540- { TV_SORCERY_BOOK, 1 },
541- { TV_SORCERY_BOOK, 1 },
542-
543- { TV_NATURE_BOOK, 0 },
544- { TV_NATURE_BOOK, 0 },
545- { TV_NATURE_BOOK, 1 },
546- { TV_NATURE_BOOK, 1 },
547-
548- { TV_CHAOS_BOOK, 0 },
549- { TV_CHAOS_BOOK, 0 },
550- { TV_CHAOS_BOOK, 1 },
551- { TV_CHAOS_BOOK, 1 },
552-
553- { TV_DEATH_BOOK, 0 },
554- { TV_DEATH_BOOK, 0 },
555- { TV_DEATH_BOOK, 1 },
556- { TV_DEATH_BOOK, 1 },
557-
558- { TV_TRUMP_BOOK, 0 }, /* +16 */
559- { TV_TRUMP_BOOK, 0 },
560- { TV_TRUMP_BOOK, 1 },
561- { TV_TRUMP_BOOK, 1 },
562-
563- { TV_ARCANE_BOOK, 0 },
564- { TV_ARCANE_BOOK, 1 },
565- { TV_ARCANE_BOOK, 2 },
566- { TV_ARCANE_BOOK, 3 },
567-
568- { TV_CRAFT_BOOK, 0 },
569- { TV_CRAFT_BOOK, 0 },
570- { TV_CRAFT_BOOK, 1 },
571- { TV_CRAFT_BOOK, 1 },
572-
573- { TV_DAEMON_BOOK, 0 },
574- { TV_DAEMON_BOOK, 0 },
575- { TV_DAEMON_BOOK, 1 },
576- { TV_DAEMON_BOOK, 1 },
577-
578- { TV_MUSIC_BOOK, 0 },
579- { TV_MUSIC_BOOK, 0 },
580- { TV_MUSIC_BOOK, 1 },
581- { TV_MUSIC_BOOK, 1 },
582-
583- { TV_HEX_BOOK, 0 },
584- { TV_HEX_BOOK, 0 },
585- { TV_HEX_BOOK, 1 },
586- { TV_HEX_BOOK, 1 },
587- },
588-
589- {
590- /* Museum (unused) */
591- { 0, 0 },
592- { 0, 0 },
593- { 0, 0 },
594- { 0, 0 },
595- { 0, 0 },
596- { 0, 0 },
597- { 0, 0 },
598- { 0, 0 },
599- { 0, 0 },
600- { 0, 0 },
601- { 0, 0 },
602- { 0, 0 },
603- { 0, 0 },
604- { 0, 0 },
605- { 0, 0 },
606- { 0, 0 },
607- { 0, 0 },
608- { 0, 0 },
609- { 0, 0 },
610- { 0, 0 },
611- { 0, 0 },
612- { 0, 0 },
613- { 0, 0 },
614- { 0, 0 },
615- { 0, 0 },
616- { 0, 0 },
617- { 0, 0 },
618- { 0, 0 },
619- { 0, 0 },
620- { 0, 0 },
621- { 0, 0 },
622- { 0, 0 }
623- }
624-};
625-
626-
627-/*!
62872 * @brief 取引成功時の店主のメッセージ処理 /
62973 * ブラックマーケットのときは別のメッセージを出す
63074 * Successful haggle.
@@ -4138,11 +3582,6 @@ void store_init(int town_num, int store_num)
41383582 st_ptr->good_buy = 0;
41393583 st_ptr->bad_buy = 0;
41403584 st_ptr->stock_num = 0;
4141-
4142- /*
4143- * MEGA-HACK - Last visit to store is
4144- * BEFORE player birth to enable store restocking
4145- */
41463585 st_ptr->last_visit = -10L * TURNS_PER_TICK * STORE_TICKS;
41473586 for (int k = 0; k < st_ptr->stock_size; k++)
41483587 {
--- a/src/store.h
+++ b/src/store.h
@@ -52,7 +52,6 @@ struct store_type
5252 * Store constants
5353 */
5454 #define STORE_INVEN_MAX 24 /* Max number of discrete objs in inven */
55-#define STORE_CHOICES 48 /* Number of items to choose stock from */
5655 #define STORE_OBJ_LEVEL 5 /* Magic Level for normal stores */
5756 #define STORE_TURNOVER 9 /* Normal shop turnover, per day */
5857 #define STORE_MIN_KEEP 6 /* Min slots to "always" keep full */
@@ -66,5 +65,3 @@ extern void do_cmd_store(player_type *player_ptr);
6665 extern void store_shuffle(player_type *player_ptr, int which);
6766 extern void store_maint(player_type *player_ptr, int town_num, int store_num);
6867 extern void store_init(int town_num, int store_num);
69-
70-extern byte store_table[MAX_STORES][STORE_CHOICES][2];
Show on old repository browser