xref: /dragonfly/games/hack/hack.shknam.c (revision 8a7bdfea)
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.4 2006/08/21 19:45:32 pavalos 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 void
129 findname(char *nampt, char let)
130 {
131 struct shk_nx *p = shk_nx;
132 const char **q;
133 int i;
134 	while(p->x && p->x != let) p++;
135 	q = p->xn;
136 	for(i=0; i<dlevel; i++) if(!q[i]){
137 		/* Not enough names, try general name */
138 		if(let) findname(nampt, 0);
139 		else strcpy(nampt, "Dirk");
140 		return;
141 	}
142 	strncpy(nampt, q[i], PL_NSIZ);
143 	nampt[PL_NSIZ-1] = 0;
144 }
145