pc-hack

PC HACK 3.61 source code (archival)
git clone http://frotz.net/git/pc-hack.git
Log | Files | Refs

shknam.c (4247B)


      1 /* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */
      2 /* 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 }