(svn r2957) - Feature: [ 1263280 ] Danish town names (fey_dk)
authorDarkvater
Fri, 16 Sep 2005 10:37:21 +0000
changeset 2431 447292e83ab3
parent 2430 b8bb9d74253b
child 2432 c48585a8b05f
(svn r2957) - Feature: [ 1263280 ] Danish town names (fey_dk)
lang/danish.txt
lang/english.txt
namegen.c
openttd.h
table/namegen.h
--- a/lang/danish.txt	Fri Sep 16 00:33:33 2005 +0000
+++ b/lang/danish.txt	Fri Sep 16 10:37:21 2005 +0000
@@ -832,6 +832,7 @@
 STR_TOWNNAME_ROMANIAN                                           :Rumænske
 STR_TOWNNAME_CZECH                                              :Tjekkiske
 STR_TOWNNAME_SWISS                                              :Schweiziske
+STR_TOWNNAME_DANISH                                             :Danske
 ############ end of	townname region
 
 STR_CURR_GBP                                                    :Pund ({POUNDSIGN})
--- a/lang/english.txt	Fri Sep 16 00:33:33 2005 +0000
+++ b/lang/english.txt	Fri Sep 16 10:37:21 2005 +0000
@@ -835,6 +835,7 @@
 STR_TOWNNAME_ROMANIAN                                           :Romanian
 STR_TOWNNAME_CZECH                                              :Czech
 STR_TOWNNAME_SWISS                                              :Swiss
+STR_TOWNNAME_DANISH                                             :Danish
 ############ end of	townname region
 
 STR_CURR_GBP                                                    :Pounds ({POUNDSIGN})
--- a/namegen.c	Fri Sep 16 00:33:33 2005 +0000
+++ b/namegen.c	Fri Sep 16 10:37:21 2005 +0000
@@ -573,6 +573,25 @@
 	return 0;
 }
 
+static byte MakeDanishTownName(char *buf, uint32 seed)
+{
+	int i;
+
+	// null terminates the string for strcat
+	strcpy(buf, "");
+
+	// optional first segment
+	i = SeedChanceBias(0, lengthof(name_danish_1), seed, 50);
+	if (i >= 0)
+		strcat(buf, name_danish_1[i]);
+
+	// middle segments removed as this algorithm seems to create much more realistic names
+	strcat(buf, name_danish_2[SeedChance( 7, lengthof(name_danish_2), seed)]);
+	strcat(buf, name_danish_3[SeedChance(16, lengthof(name_danish_3), seed)]);
+
+	return 0;
+}
+
 TownNameGenerator * const _town_name_generators[] =
 {
 	MakeEnglishOriginalTownName,
@@ -592,6 +611,7 @@
 	MakeRomanianTownName,
 	MakeCzechTownName,
 	MakeSwissTownName,
+	MakeDanishTownName,
 };
 
 // DO WE NEED THIS ANY MORE?
--- a/openttd.h	Fri Sep 16 00:33:33 2005 +0000
+++ b/openttd.h	Fri Sep 16 10:37:21 2005 +0000
@@ -487,7 +487,8 @@
 	SPECSTR_TOWNNAME_ROMANIAN,
 	SPECSTR_TOWNNAME_CZECH,
 	SPECSTR_TOWNNAME_SWISS,
-  SPECSTR_TOWNNAME_LAST = SPECSTR_TOWNNAME_SWISS,
+	SPECSTR_TOWNNAME_DANISH,
+	SPECSTR_TOWNNAME_LAST = SPECSTR_TOWNNAME_DANISH,
 
 	// special strings for player names on the form "TownName transport".
 	SPECSTR_PLAYERNAME_START = 0x70EA,
--- a/table/namegen.h	Fri Sep 16 00:33:33 2005 +0000
+++ b/table/namegen.h	Fri Sep 16 10:37:21 2005 +0000
@@ -2597,3 +2597,135 @@
 	"Zürich",
 	"Zug",
 };
+
+static const char *name_danish_1[] = {
+	"Gamle ",
+	"Lille ",
+	"Nye ",
+	"Store ",
+	"Kirke ",
+	"Nørre ",
+	"Vester ",
+	"Sønder ",
+	"Øster ",
+	"Hvide ",
+	"Høje ",
+	"Kongens ",
+};
+
+static const char *name_danish_2[] = {
+	"Ager",
+	"Alle",
+	"Aske",
+	"Balle",
+	"Bede",
+	"Birke",
+	"Bjerring",
+	"Bjæver",
+	"Blommens",
+	"Blok",
+	"Bolder",
+	"Bred",
+	"Charlotten",
+	"Christians",
+	"Danne",
+	"Diana",
+	"Es",
+	"Fredens",
+	"Frederiks",
+	"Fugle",
+	"Fåre",
+	"Gille",
+	"Gis",
+	"Givs",
+	"Glams",
+	"Glo",
+	"Guld",
+	"Had",
+	"Haralds",
+	"Hassel",
+	"Hede",
+	"Helle",
+	"Hessel",
+	"Hjorts",
+	"Hol",
+	"Horn",
+	"Humle",
+	"Høj",
+	"Hør",
+	"Is",
+	"Jyde",
+	"Jægers",
+	"Karls",
+	"Klov",
+	"Kokke",
+	"Kvist",
+	"Lang",
+	"Lange",
+	"Mari",
+	"Nord",
+	"Ny",
+	"Oks",
+	"Ring",
+	"Røde",
+	"Rung",
+	"Rør",
+	"Rud",
+	"Saks",
+	"Salt",
+	"Skam",
+	"Silke",
+	"Skod",
+	"Skæl",
+	"Skær",
+	"Sol",
+	"Svend",
+	"Svine",
+	"Strand",
+	"Stubbe",
+	"Ting",
+	"Tjære",
+	"Tore",
+	"Uger",
+	"Ulf",
+	"Val",
+	"Vand",
+	"Vej",
+	"Vor",
+	"Vær",
+	"Ør",
+	"Ål"
+};
+
+static const char *name_danish_3[] = {
+	"basse",
+	"borg",
+	"berg",
+	"bro",
+	"by",
+	"havn",
+	"strup",
+	"holm",
+	"hus",
+	"købing",
+	"lund",
+	"lunde",
+	"sund",
+	"ovre",
+	"høj",
+	"dal",
+	"sted",
+	"sten",
+	"løse",
+	"rød",
+	"magle",
+	"sø",
+	"bjerg",
+	"bæk",
+	"drup",
+	"lev",
+	"bo",
+	"lyst",
+	"feld",
+	"skov"
+};