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