Commit | Line | Data |
---|---|---|
15637ed4 RG |
1 | /* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */ |
2 | /* hack.shknam.c - version 1.0.2 */ | |
3 | ||
4 | #include "hack.h" | |
5 | ||
6 | char *shkliquors[] = { | |
7 | /* Ukraine */ | |
8 | "Njezjin", "Tsjernigof", "Gomel", "Ossipewsk", "Gorlowka", | |
9 | /* N. Russia */ | |
10 | "Konosja", "Weliki Oestjoeg", "Syktywkar", "Sablja", | |
11 | "Narodnaja", "Kyzyl", | |
12 | /* Silezie */ | |
13 | "Walbrzych", "Swidnica", "Klodzko", "Raciborz", "Gliwice", | |
14 | "Brzeg", "Krnov", "Hradec Kralove", | |
15 | /* Schweiz */ | |
16 | "Leuk", "Brig", "Brienz", "Thun", "Sarnen", "Burglen", "Elm", | |
17 | "Flims", "Vals", "Schuls", "Zum Loch", | |
18 | 0 | |
19 | }; | |
20 | ||
21 | char *shkbooks[] = { | |
22 | /* Eire */ | |
23 | "Skibbereen", "Kanturk", "Rath Luirc", "Ennistymon", "Lahinch", | |
24 | "Loughrea", "Croagh", "Maumakeogh", "Ballyjamesduff", | |
25 | "Kinnegad", "Lugnaquillia", "Enniscorthy", "Gweebarra", | |
26 | "Kittamagh", "Nenagh", "Sneem", "Ballingeary", "Kilgarvan", | |
27 | "Cahersiveen", "Glenbeigh", "Kilmihil", "Kiltamagh", | |
28 | "Droichead Atha", "Inniscrone", "Clonegal", "Lisnaskea", | |
29 | "Culdaff", "Dunfanaghy", "Inishbofin", "Kesh", | |
30 | 0 | |
31 | }; | |
32 | ||
33 | char *shkarmors[] = { | |
34 | /* Turquie */ | |
35 | "Demirci", "Kalecik", "Boyabai", "Yildizeli", "Gaziantep", | |
36 | "Siirt", "Akhalataki", "Tirebolu", "Aksaray", "Ermenak", | |
37 | "Iskenderun", "Kadirli", "Siverek", "Pervari", "Malasgirt", | |
38 | "Bayburt", "Ayancik", "Zonguldak", "Balya", "Tefenni", | |
39 | "Artvin", "Kars", "Makharadze", "Malazgirt", "Midyat", | |
40 | "Birecik", "Kirikkale", "Alaca", "Polatli", "Nallihan", | |
41 | 0 | |
42 | }; | |
43 | ||
44 | char *shkwands[] = { | |
45 | /* Wales */ | |
46 | "Yr Wyddgrug", "Trallwng", "Mallwyd", "Pontarfynach", | |
47 | "Rhaeader", "Llandrindod", "Llanfair-ym-muallt", | |
48 | "Y-Fenni", "Measteg", "Rhydaman", "Beddgelert", | |
49 | "Curig", "Llanrwst", "Llanerchymedd", "Caergybi", | |
50 | /* Scotland */ | |
51 | "Nairn", "Turriff", "Inverurie", "Braemar", "Lochnagar", | |
52 | "Kerloch", "Beinn a Ghlo", "Drumnadrochit", "Morven", | |
53 | "Uist", "Storr", "Sgurr na Ciche", "Cannich", "Gairloch", | |
54 | "Kyleakin", "Dunvegan", | |
55 | 0 | |
56 | }; | |
57 | ||
58 | char *shkrings[] = { | |
59 | /* Hollandse familienamen */ | |
60 | "Feyfer", "Flugi", "Gheel", "Havic", "Haynin", "Hoboken", | |
61 | "Imbyze", "Juyn", "Kinsky", "Massis", "Matray", "Moy", | |
62 | "Olycan", "Sadelin", "Svaving", "Tapper", "Terwen", "Wirix", | |
63 | "Ypey", | |
64 | /* Skandinaviske navne */ | |
65 | "Rastegaisa", "Varjag Njarga", "Kautekeino", "Abisko", | |
66 | "Enontekis", "Rovaniemi", "Avasaksa", "Haparanda", | |
67 | "Lulea", "Gellivare", "Oeloe", "Kajaani", "Fauske", | |
68 | 0 | |
69 | }; | |
70 | ||
71 | char *shkfoods[] = { | |
72 | /* Indonesia */ | |
73 | "Djasinga", "Tjibarusa", "Tjiwidej", "Pengalengan", | |
74 | "Bandjar", "Parbalingga", "Bojolali", "Sarangan", | |
75 | "Ngebel", "Djombang", "Ardjawinangun", "Berbek", | |
76 | "Papar", "Baliga", "Tjisolok", "Siboga", "Banjoewangi", | |
77 | "Trenggalek", "Karangkobar", "Njalindoeng", "Pasawahan", | |
78 | "Pameunpeuk", "Patjitan", "Kediri", "Pemboeang", "Tringanoe", | |
79 | "Makin", "Tipor", "Semai", "Berhala", "Tegal", "Samoe", | |
80 | 0 | |
81 | }; | |
82 | ||
83 | char *shkweapons[] = { | |
84 | /* Perigord */ | |
85 | "Voulgezac", "Rouffiac", "Lerignac", "Touverac", "Guizengeard", | |
86 | "Melac", "Neuvicq", "Vanzac", "Picq", "Urignac", "Corignac", | |
87 | "Fleac", "Lonzac", "Vergt", "Queyssac", "Liorac", "Echourgnac", | |
88 | "Cazelon", "Eypau", "Carignan", "Monbazillac", "Jonzac", | |
89 | "Pons", "Jumilhac", "Fenouilledes", "Laguiolet", "Saujon", | |
90 | "Eymoutiers", "Eygurande", "Eauze", "Labouheyre", | |
91 | 0 | |
92 | }; | |
93 | ||
94 | char *shkgeneral[] = { | |
95 | /* Suriname */ | |
96 | "Hebiwerie", "Possogroenoe", "Asidonhopo", "Manlobbi", | |
97 | "Adjama", "Pakka Pakka", "Kabalebo", "Wonotobo", | |
98 | "Akalapi", "Sipaliwini", | |
99 | /* Greenland */ | |
100 | "Annootok", "Upernavik", "Angmagssalik", | |
101 | /* N. Canada */ | |
102 | "Aklavik", "Inuvik", "Tuktoyaktuk", | |
103 | "Chicoutimi", "Ouiatchouane", "Chibougamau", | |
104 | "Matagami", "Kipawa", "Kinojevis", | |
105 | "Abitibi", "Maganasipi", | |
106 | /* Iceland */ | |
107 | "Akureyri", "Kopasker", "Budereyri", "Akranes", "Bordeyri", | |
108 | "Holmavik", | |
109 | 0 | |
110 | }; | |
111 | ||
112 | struct shk_nx { | |
113 | char x; | |
114 | char **xn; | |
115 | } shk_nx[] = { | |
116 | { POTION_SYM, shkliquors }, | |
117 | { SCROLL_SYM, shkbooks }, | |
118 | { ARMOR_SYM, shkarmors }, | |
119 | { WAND_SYM, shkwands }, | |
120 | { RING_SYM, shkrings }, | |
121 | { FOOD_SYM, shkfoods }, | |
122 | { WEAPON_SYM, shkweapons }, | |
123 | { 0, shkgeneral } | |
124 | }; | |
125 | ||
126 | findname(nampt, let) char *nampt; char let; { | |
127 | register struct shk_nx *p = shk_nx; | |
128 | register char **q; | |
129 | register int i; | |
130 | while(p->x && p->x != let) p++; | |
131 | q = p->xn; | |
132 | for(i=0; i<dlevel; i++) if(!q[i]){ | |
133 | /* Not enough names, try general name */ | |
134 | if(let) findname(nampt, 0); | |
135 | else (void) strcpy(nampt, "Dirk"); | |
136 | return; | |
137 | } | |
138 | (void) strncpy(nampt, q[i], PL_NSIZ); | |
139 | nampt[PL_NSIZ-1] = 0; | |
140 | } |