--- a/lang/english.txt Tue May 02 14:06:15 2006 +0000
+++ b/lang/english.txt Tue May 02 14:12:19 2006 +0000
@@ -838,6 +838,7 @@
STR_TOWNNAME_CZECH :Czech
STR_TOWNNAME_SWISS :Swiss
STR_TOWNNAME_DANISH :Danish
+STR_TOWNNAME_TURKISH :Turkish
############ end of townname region
STR_CURR_GBP :Pounds (£)
--- a/namegen.c Tue May 02 14:06:15 2006 +0000
+++ b/namegen.c Tue May 02 14:12:19 2006 +0000
@@ -593,6 +593,34 @@
return 0;
}
+static byte MakeTurkishTownName(char *buf, uint32 seed)
+{
+ uint i;
+
+ // null terminates the string for strcat
+ strcpy(buf, "");
+
+ if ((i = SeedModChance(0, 5, seed)) == 0) {
+ strcat(buf, name_turkish_prefix[SeedModChance( 2, lengthof(name_turkish_prefix), seed)]);
+
+ // middle segment
+ strcat(buf, name_turkish_middle[SeedModChance( 4, lengthof(name_turkish_middle), seed)]);
+
+ // optional suffix
+ if (SeedModChance(0, 7, seed) == 0) {
+ strcat(buf, name_turkish_suffix[SeedModChance( 10, lengthof(name_turkish_suffix), seed)]);
+ }
+ } else {
+ if (i == 1 || i == 2) {
+ strcat(buf, name_turkish_prefix[SeedModChance( 2, lengthof(name_turkish_prefix), seed)]);
+ strcat(buf, name_turkish_suffix[SeedModChance( 4, lengthof(name_turkish_suffix), seed)]);
+ } else {
+ strcat(buf, name_turkish_real[SeedModChance( 4, lengthof(name_turkish_real), seed)]);
+ }
+ }
+ return 0;
+}
+
TownNameGenerator * const _town_name_generators[] =
{
MakeEnglishOriginalTownName,
@@ -613,6 +641,7 @@
MakeCzechTownName,
MakeSwissTownName,
MakeDanishTownName,
+ MakeTurkishTownName,
};
// DO WE NEED THIS ANY MORE?
--- a/openttd.h Tue May 02 14:06:15 2006 +0000
+++ b/openttd.h Tue May 02 14:12:19 2006 +0000
@@ -492,7 +492,8 @@
SPECSTR_TOWNNAME_CZECH,
SPECSTR_TOWNNAME_SWISS,
SPECSTR_TOWNNAME_DANISH,
- SPECSTR_TOWNNAME_LAST = SPECSTR_TOWNNAME_DANISH,
+ SPECSTR_TOWNNAME_TURKISH,
+ SPECSTR_TOWNNAME_LAST = SPECSTR_TOWNNAME_TURKISH,
// special strings for player names on the form "TownName transport".
SPECSTR_PLAYERNAME_START = 0x70EA,
--- a/settings.c Tue May 02 14:06:15 2006 +0000
+++ b/settings.c Tue May 02 14:12:19 2006 +0000
@@ -811,7 +811,7 @@
{"diff_custom", SDT_INTLIST | SDT_UINT32 | (sizeof(GameDifficulty)/4) << 16, NULL, &_opt_newgame.diff, NULL},
{"currency", SDT_UINT8 | SDT_ONEOFMANY, (void*)0, &_opt_newgame.currency, "GBP|USD|EUR|YEN|ATS|BEF|CHF|CZK|DEM|DKK|ESP|FIM|FRF|GRD|HUF|ISK|ITL|NLG|NOK|PLN|ROL|RUR|SEK|custom" },
{"distances", SDT_UINT8 | SDT_ONEOFMANY, (void*)1, &_opt_newgame.kilometers, "imperial|metric" },
- {"town_names", SDT_UINT8 | SDT_ONEOFMANY, (void*)0, &_opt_newgame.town_name, "english|french|german|american|latin|silly|swedish|dutch|finnish|polish|slovakish|norwegian|hungarian|austrian|romanian|czech|swiss|danish" },
+ {"town_names", SDT_UINT8 | SDT_ONEOFMANY, (void*)0, &_opt_newgame.town_name, "english|french|german|american|latin|silly|swedish|dutch|finnish|polish|slovakish|norwegian|hungarian|austrian|romanian|czech|swiss|danish|turkish" },
{"landscape", SDT_UINT8 | SDT_ONEOFMANY, (void*)0, &_opt_newgame.landscape, "normal|hilly|desert|candy" },
{"autosave", SDT_UINT8 | SDT_ONEOFMANY, (void*)1, &_opt_newgame.autosave, "off|monthly|quarterly|half year|yearly" },
{"road_side", SDT_UINT8 | SDT_ONEOFMANY, (void*)1, &_opt_newgame.road_side, "left|right" },
--- a/table/namegen.h Tue May 02 14:06:15 2006 +0000
+++ b/table/namegen.h Tue May 02 14:12:19 2006 +0000
@@ -2729,3 +2729,117 @@
"feld",
"skov"
};
+
+static const char *name_turkish_prefix[] = {
+ "Akça",
+ "Altin",
+ "Bahçe",
+ "Boz",
+ "Büyük",
+ "Çay",
+ "Dogu",
+ "Eski",
+ "Güzel",
+ "Kizil",
+ "Küçük",
+ "Orta",
+ "Sari",
+ "Sultan",
+ "Ulu",
+ "Yeni"
+};
+
+static const char *name_turkish_middle[] = {
+ "agaç",
+ "ayva",
+ "çam",
+ "elma",
+ "kurt",
+ "pazar",
+ "yali"
+};
+
+static const char *name_turkish_suffix[] = {
+ "dere",
+ "hisar",
+ "kale",
+ "kaya",
+ "kent",
+ "köy",
+ "ova",
+ "özü",
+ "ören",
+ "pazar",
+ "saray",
+ "tepe",
+ "yer",
+ "yurt"
+};
+
+static const char *name_turkish_real[] = {
+ "Adana",
+ "Adiyaman",
+ "Afyon",
+ "Agri",
+ "Amasya",
+ "Antalya",
+ "Artvin",
+ "Balikesir",
+ "Bilecik",
+ "Bitlis",
+ "Bolu",
+ "Burdur",
+ "Bursa",
+ "Çanakkale",
+ "Çankiri",
+ "Denizli",
+ "Diyarbakir",
+ "Edirne",
+ "Elazig",
+ "Erzurum",
+ "Eskisehir",
+ "Giresun",
+ "Gümüshane",
+ "Hatay",
+ "Isparta",
+ "içel",
+ "istanbul",
+ "izmir",
+ "Kars",
+ "Kastamonu",
+ "Kayseri",
+ "Kirklareli",
+ "Kocaeli",
+ "Konya",
+ "Kütahya",
+ "Malatya",
+ "Manisa",
+ "Kahramanmaras",
+ "Mardin",
+ "Mugla",
+ "Mus",
+ "Nevsehir",
+ "Nigde",
+ "Rize",
+ "Sakarya",
+ "Samsun",
+ "Siirt",
+ "Sinop",
+ "Sivas",
+ "Trabzon",
+ "Sanliurfa",
+ "Van",
+ "Yozgat",
+ "Zonguldak",
+ "Aksaray",
+ "Bayburt",
+ "Karaman",
+ "Sirnak",
+ "Bartin",
+ "Ardahan",
+ "Igdir",
+ "Yalova",
+ "Karabük",
+ "Osmaniye",
+ "Düzce"
+};