1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
63:
64: #include <sys/cdefs.h>
65: #ifndef lint
66: __RCSID("$NetBSD: hack.shknam.c,v 1.6 2003/04/02 18:36:40 jsm Exp $");
67: #endif
68:
69: #include "hack.h"
70: #include "extern.h"
71:
72: const char *const shkliquors[] = {
73:
74: "Njezjin", "Tsjernigof", "Gomel", "Ossipewsk", "Gorlowka",
75:
76: "Konosja", "Weliki Oestjoeg", "Syktywkar", "Sablja",
77: "Narodnaja", "Kyzyl",
78:
79: "Walbrzych", "Swidnica", "Klodzko", "Raciborz", "Gliwice",
80: "Brzeg", "Krnov", "Hradec Kralove",
81:
82: "Leuk", "Brig", "Brienz", "Thun", "Sarnen", "Burglen", "Elm",
83: "Flims", "Vals", "Schuls", "Zum Loch",
84: 0
85: };
86:
87: const char *const shkbooks[] = {
88:
89: "Skibbereen", "Kanturk", "Rath Luirc", "Ennistymon", "Lahinch",
90: "Loughrea", "Croagh", "Maumakeogh", "Ballyjamesduff",
91: "Kinnegad", "Lugnaquillia", "Enniscorthy", "Gweebarra",
92: "Kittamagh", "Nenagh", "Sneem", "Ballingeary", "Kilgarvan",
93: "Cahersiveen", "Glenbeigh", "Kilmihil", "Kiltamagh",
94: "Droichead Atha", "Inniscrone", "Clonegal", "Lisnaskea",
95: "Culdaff", "Dunfanaghy", "Inishbofin", "Kesh",
96: 0
97: };
98:
99: const char *const shkarmors[] = {
100:
101: "Demirci", "Kalecik", "Boyabai", "Yildizeli", "Gaziantep",
102: "Siirt", "Akhalataki", "Tirebolu", "Aksaray", "Ermenak",
103: "Iskenderun", "Kadirli", "Siverek", "Pervari", "Malasgirt",
104: "Bayburt", "Ayancik", "Zonguldak", "Balya", "Tefenni",
105: "Artvin", "Kars", "Makharadze", "Malazgirt", "Midyat",
106: "Birecik", "Kirikkale", "Alaca", "Polatli", "Nallihan",
107: 0
108: };
109:
110: const char *const shkwands[] = {
111:
112: "Yr Wyddgrug", "Trallwng", "Mallwyd", "Pontarfynach",
113: "Rhaeader", "Llandrindod", "Llanfair-ym-muallt",
114: "Y-Fenni", "Measteg", "Rhydaman", "Beddgelert",
115: "Curig", "Llanrwst", "Llanerchymedd", "Caergybi",
116:
117: "Nairn", "Turriff", "Inverurie", "Braemar", "Lochnagar",
118: "Kerloch", "Beinn a Ghlo", "Drumnadrochit", "Morven",
119: "Uist", "Storr", "Sgurr na Ciche", "Cannich", "Gairloch",
120: "Kyleakin", "Dunvegan",
121: 0
122: };
123:
124: const char *const shkrings[] = {
125:
126: "Feyfer", "Flugi", "Gheel", "Havic", "Haynin", "Hoboken",
127: "Imbyze", "Juyn", "Kinsky", "Massis", "Matray", "Moy",
128: "Olycan", "Sadelin", "Svaving", "Tapper", "Terwen", "Wirix",
129: "Ypey",
130:
131: "Rastegaisa", "Varjag Njarga", "Kautekeino", "Abisko",
132: "Enontekis", "Rovaniemi", "Avasaksa", "Haparanda",
133: "Lulea", "Gellivare", "Oeloe", "Kajaani", "Fauske",
134: 0
135: };
136:
137: const char *const shkfoods[] = {
138:
139: "Djasinga", "Tjibarusa", "Tjiwidej", "Pengalengan",
140: "Bandjar", "Parbalingga", "Bojolali", "Sarangan",
141: "Ngebel", "Djombang", "Ardjawinangun", "Berbek",
142: "Papar", "Baliga", "Tjisolok", "Siboga", "Banjoewangi",
143: "Trenggalek", "Karangkobar", "Njalindoeng", "Pasawahan",
144: "Pameunpeuk", "Patjitan", "Kediri", "Pemboeang", "Tringanoe",
145: "Makin", "Tipor", "Semai", "Berhala", "Tegal", "Samoe",
146: 0
147: };
148:
149: const char *const shkweapons[] = {
150:
151: "Voulgezac", "Rouffiac", "Lerignac", "Touverac", "Guizengeard",
152: "Melac", "Neuvicq", "Vanzac", "Picq", "Urignac", "Corignac",
153: "Fleac", "Lonzac", "Vergt", "Queyssac", "Liorac", "Echourgnac",
154: "Cazelon", "Eypau", "Carignan", "Monbazillac", "Jonzac",
155: "Pons", "Jumilhac", "Fenouilledes", "Laguiolet", "Saujon",
156: "Eymoutiers", "Eygurande", "Eauze", "Labouheyre",
157: 0
158: };
159:
160: const char *const shkgeneral[] = {
161:
162: "Hebiwerie", "Possogroenoe", "Asidonhopo", "Manlobbi",
163: "Adjama", "Pakka Pakka", "Kabalebo", "Wonotobo",
164: "Akalapi", "Sipaliwini",
165:
166: "Annootok", "Upernavik", "Angmagssalik",
167:
168: "Aklavik", "Inuvik", "Tuktoyaktuk",
169: "Chicoutimi", "Ouiatchouane", "Chibougamau",
170: "Matagami", "Kipawa", "Kinojevis",
171: "Abitibi", "Maganasipi",
172:
173: "Akureyri", "Kopasker", "Budereyri", "Akranes", "Bordeyri",
174: "Holmavik",
175: 0
176: };
177:
178: const struct shk_nx {
179: char x;
180: const char *const *xn;
181: } shk_nx[] = {
182: {
183: POTION_SYM, shkliquors
184: },
185: {
186: SCROLL_SYM, shkbooks
187: },
188: {
189: ARMOR_SYM, shkarmors
190: },
191: {
192: WAND_SYM, shkwands
193: },
194: {
195: RING_SYM, shkrings
196: },
197: {
198: FOOD_SYM, shkfoods
199: },
200: {
201: WEAPON_SYM, shkweapons
202: },
203: {
204: 0, shkgeneral
205: }
206: };
207:
208: void
209: findname(nampt, let)
210: char *nampt;
211: char let;
212: {
213: const struct shk_nx *p = shk_nx;
214: const char *const *q;
215: int i;
216: while (p->x && p->x != let)
217: p++;
218: q = p->xn;
219: for (i = 0; i < dlevel; i++)
220: if (!q[i]) {
221:
222: if (let)
223: findname(nampt, 0);
224: else
225: (void) strcpy(nampt, "Dirk");
226: return;
227: }
228: (void) strncpy(nampt, q[i], PL_NSIZ);
229: nampt[PL_NSIZ - 1] = 0;
230: }