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