mirror of https://github.com/OpenTTD/OpenTTD.git
(svn r5671) - Backport from trunk (r5504, r5512):
Added Italian town name generator. While not a fix, it is added along the same lines as the turkish town names. Official translation > official townnames (if existing).
This commit is contained in:
parent
58b4fd7683
commit
6af2e64186
|
@ -839,6 +839,7 @@ STR_TOWNNAME_CZECH :Czech
|
|||
STR_TOWNNAME_SWISS :Swiss
|
||||
STR_TOWNNAME_DANISH :Danish
|
||||
STR_TOWNNAME_TURKISH :Turkish
|
||||
STR_TOWNNAME_ITALIAN :Italian
|
||||
############ end of townname region
|
||||
|
||||
STR_CURR_GBP :Pounds (£)
|
||||
|
|
|
@ -896,6 +896,7 @@ STR_TOWNNAME_CZECH :Ceska
|
|||
STR_TOWNNAME_SWISS :¦výcarská
|
||||
STR_TOWNNAME_DANISH :Dánská
|
||||
STR_TOWNNAME_TURKISH :Turecká
|
||||
STR_TOWNNAME_ITALIAN :Italská
|
||||
############ end of townname region
|
||||
|
||||
STR_CURR_GBP :Libry (£)
|
||||
|
|
|
@ -839,6 +839,7 @@ STR_TOWNNAME_CZECH :Tsjechisch
|
|||
STR_TOWNNAME_SWISS :Zwitsers
|
||||
STR_TOWNNAME_DANISH :Deens
|
||||
STR_TOWNNAME_TURKISH :Turks
|
||||
STR_TOWNNAME_ITALIAN :Italiaans
|
||||
############ end of townname region
|
||||
|
||||
STR_CURR_GBP :Pond (£)
|
||||
|
|
|
@ -839,6 +839,7 @@ STR_TOWNNAME_CZECH :Czech
|
|||
STR_TOWNNAME_SWISS :Swiss
|
||||
STR_TOWNNAME_DANISH :Danish
|
||||
STR_TOWNNAME_TURKISH :Turkish
|
||||
STR_TOWNNAME_ITALIAN :Italian
|
||||
############ end of townname region
|
||||
|
||||
STR_CURR_GBP :Pounds (£)
|
||||
|
|
|
@ -839,6 +839,7 @@ STR_TOWNNAME_CZECH :T
|
|||
STR_TOWNNAME_SWISS :¦veitsi
|
||||
STR_TOWNNAME_DANISH :Taani
|
||||
STR_TOWNNAME_TURKISH :Türgi
|
||||
STR_TOWNNAME_ITALIAN :Itaalia
|
||||
############ end of townname region
|
||||
|
||||
STR_CURR_GBP :Naelad (£)
|
||||
|
|
|
@ -840,6 +840,7 @@ STR_TOWNNAME_CZECH :Tch
|
|||
STR_TOWNNAME_SWISS :Suisse
|
||||
STR_TOWNNAME_DANISH :Danois
|
||||
STR_TOWNNAME_TURKISH :Turques
|
||||
STR_TOWNNAME_ITALIAN :Italien
|
||||
############ end of townname region
|
||||
|
||||
STR_CURR_GBP :Livre (£)
|
||||
|
|
|
@ -840,6 +840,7 @@ STR_TOWNNAME_CZECH :Tschechisch
|
|||
STR_TOWNNAME_SWISS :Schweizerisch
|
||||
STR_TOWNNAME_DANISH :Dänisch
|
||||
STR_TOWNNAME_TURKISH :Türkisch
|
||||
STR_TOWNNAME_ITALIAN :Italienisch
|
||||
############ end of townname region
|
||||
|
||||
STR_CURR_GBP :Pfund (£)
|
||||
|
|
|
@ -904,6 +904,7 @@ STR_TOWNNAME_CZECH :Cseh
|
|||
STR_TOWNNAME_SWISS :Svájci
|
||||
STR_TOWNNAME_DANISH :Dán
|
||||
STR_TOWNNAME_TURKISH :Török
|
||||
STR_TOWNNAME_ITALIAN :Olasz
|
||||
############ end of townname region
|
||||
|
||||
STR_CURR_GBP :Font (£)
|
||||
|
|
|
@ -839,6 +839,7 @@ STR_TOWNNAME_CZECH :T
|
|||
STR_TOWNNAME_SWISS :Svissnesk
|
||||
STR_TOWNNAME_DANISH :Dönsk
|
||||
STR_TOWNNAME_TURKISH :Tyrknesk
|
||||
STR_TOWNNAME_ITALIAN :Ítölsk
|
||||
############ end of townname region
|
||||
|
||||
STR_CURR_GBP :Pund (£)
|
||||
|
|
|
@ -839,6 +839,7 @@ STR_TOWNNAME_CZECH :Cechi
|
|||
STR_TOWNNAME_SWISS :Svizzero
|
||||
STR_TOWNNAME_DANISH :Danese
|
||||
STR_TOWNNAME_TURKISH :Turco
|
||||
STR_TOWNNAME_ITALIAN :Italiano
|
||||
############ end of townname region
|
||||
|
||||
STR_CURR_GBP :Sterlina (£)
|
||||
|
|
|
@ -839,6 +839,7 @@ STR_TOWNNAME_CZECH :Tsjekkisk
|
|||
STR_TOWNNAME_SWISS :Sveitsisk
|
||||
STR_TOWNNAME_DANISH :Dansk
|
||||
STR_TOWNNAME_TURKISH :Tyrkisk
|
||||
STR_TOWNNAME_ITALIAN :Italiensk
|
||||
############ end of townname region
|
||||
|
||||
STR_CURR_GBP :Pund (£)
|
||||
|
|
|
@ -926,6 +926,7 @@ STR_TOWNNAME_CZECH :Czeskie
|
|||
STR_TOWNNAME_SWISS :Szwajcarskie
|
||||
STR_TOWNNAME_DANISH :Dunskie
|
||||
STR_TOWNNAME_TURKISH :Tureckie
|
||||
STR_TOWNNAME_ITALIAN :Wloskie
|
||||
############ end of townname region
|
||||
|
||||
STR_CURR_GBP :Funty (£)
|
||||
|
|
|
@ -839,6 +839,7 @@ STR_TOWNNAME_CZECH :Checo
|
|||
STR_TOWNNAME_SWISS :Suiça
|
||||
STR_TOWNNAME_DANISH :Dinamarquês
|
||||
STR_TOWNNAME_TURKISH :Turco
|
||||
STR_TOWNNAME_ITALIAN :Italiano
|
||||
############ end of townname region
|
||||
|
||||
STR_CURR_GBP :Libras (£)
|
||||
|
|
|
@ -839,6 +839,7 @@ STR_TOWNNAME_CZECH :Ceske
|
|||
STR_TOWNNAME_SWISS :Svajciarske
|
||||
STR_TOWNNAME_DANISH :Danske
|
||||
STR_TOWNNAME_TURKISH :Turecké
|
||||
STR_TOWNNAME_ITALIAN :Talianske
|
||||
############ end of townname region
|
||||
|
||||
STR_CURR_GBP :Libry (£)
|
||||
|
|
|
@ -839,6 +839,7 @@ STR_TOWNNAME_CZECH :Checo
|
|||
STR_TOWNNAME_SWISS :Suizo
|
||||
STR_TOWNNAME_DANISH :Danes
|
||||
STR_TOWNNAME_TURKISH :Turco
|
||||
STR_TOWNNAME_ITALIAN :Italiano
|
||||
############ end of townname region
|
||||
|
||||
STR_CURR_GBP :Libras (£)
|
||||
|
|
|
@ -839,6 +839,7 @@ STR_TOWNNAME_CZECH :Tjeckiska
|
|||
STR_TOWNNAME_SWISS :Schweiziska
|
||||
STR_TOWNNAME_DANISH :Danska
|
||||
STR_TOWNNAME_TURKISH :Turkiska
|
||||
STR_TOWNNAME_ITALIAN :Italienska
|
||||
############ end of townname region
|
||||
|
||||
STR_CURR_GBP :Pund (£)
|
||||
|
|
|
@ -839,6 +839,7 @@ STR_TOWNNAME_CZECH :
|
|||
STR_TOWNNAME_SWISS :isviçrece
|
||||
STR_TOWNNAME_DANISH :Danimarkaca
|
||||
STR_TOWNNAME_TURKISH :Türkçe
|
||||
STR_TOWNNAME_ITALIAN :Italyanca
|
||||
############ end of townname region
|
||||
|
||||
STR_CURR_GBP :Sterlin (£)
|
||||
|
|
46
namegen.c
46
namegen.c
|
@ -621,6 +621,51 @@ static byte MakeTurkishTownName(char *buf, uint32 seed)
|
|||
return 0;
|
||||
}
|
||||
|
||||
static const char *mascul_femin_italian[] = {
|
||||
"o",
|
||||
"a",
|
||||
};
|
||||
|
||||
static byte MakeItalianTownName(char *buf, uint32 seed) {
|
||||
|
||||
strcpy(buf, "");
|
||||
|
||||
if (SeedModChance(0, 6, seed) == 0) { // real city names
|
||||
strcat(buf, name_italian_real[SeedModChance(4, lengthof(name_italian_real), seed)]);
|
||||
} else {
|
||||
uint i;
|
||||
|
||||
if (SeedModChance(0, 8, seed) == 0) { // prefix
|
||||
strcat(buf, name_italian_pref[SeedModChance(11, lengthof(name_italian_pref), seed)]);
|
||||
}
|
||||
|
||||
i = SeedChance(0, 2, seed);
|
||||
if (i == 0) { // masculine form
|
||||
strcat(buf, name_italian_1m[SeedModChance(4, lengthof(name_italian_1m), seed)]);
|
||||
} else { // feminine form
|
||||
strcat(buf, name_italian_1f[SeedModChance(4, lengthof(name_italian_1f), seed)]);
|
||||
}
|
||||
|
||||
if (SeedModChance(3, 3, seed) == 0) {
|
||||
strcat(buf, name_italian_2[SeedModChance(11, lengthof(name_italian_2), seed)]);
|
||||
strcat(buf,mascul_femin_italian[i]);
|
||||
} else {
|
||||
strcat(buf, name_italian_2i[SeedModChance(16, lengthof(name_italian_2i), seed)]);
|
||||
}
|
||||
|
||||
if (SeedModChance(15, 4, seed) == 0) {
|
||||
if (SeedModChance(5, 2, seed) == 0) { // generic suffix
|
||||
strcat(buf, name_italian_3[SeedModChance(4, lengthof(name_italian_3), seed)]);
|
||||
} else { // river name suffix
|
||||
strcat(buf, name_italian_river1[SeedModChance(4, lengthof(name_italian_river1), seed)]);
|
||||
strcat(buf, name_italian_river2[SeedModChance(16, lengthof(name_italian_river2), seed)]);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
TownNameGenerator * const _town_name_generators[] =
|
||||
{
|
||||
MakeEnglishOriginalTownName,
|
||||
|
@ -642,6 +687,7 @@ TownNameGenerator * const _town_name_generators[] =
|
|||
MakeSwissTownName,
|
||||
MakeDanishTownName,
|
||||
MakeTurkishTownName,
|
||||
MakeItalianTownName,
|
||||
};
|
||||
|
||||
// DO WE NEED THIS ANY MORE?
|
||||
|
|
|
@ -493,7 +493,8 @@ enum SpecialStrings {
|
|||
SPECSTR_TOWNNAME_SWISS,
|
||||
SPECSTR_TOWNNAME_DANISH,
|
||||
SPECSTR_TOWNNAME_TURKISH,
|
||||
SPECSTR_TOWNNAME_LAST = SPECSTR_TOWNNAME_TURKISH,
|
||||
SPECSTR_TOWNNAME_ITALIAN,
|
||||
SPECSTR_TOWNNAME_LAST = SPECSTR_TOWNNAME_ITALIAN,
|
||||
|
||||
// special strings for player names on the form "TownName transport".
|
||||
SPECSTR_PLAYERNAME_START = 0x70EA,
|
||||
|
|
|
@ -811,7 +811,7 @@ static const SettingDesc gameopt_settings[] = {
|
|||
{"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|turkish" },
|
||||
{"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|italian" },
|
||||
{"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" },
|
||||
|
|
266
table/namegen.h
266
table/namegen.h
|
@ -2843,3 +2843,269 @@ static const char *name_turkish_real[] = {
|
|||
"Osmaniye",
|
||||
"Düzce"
|
||||
};
|
||||
|
||||
static const char *name_italian_real[] = {
|
||||
"Roma",
|
||||
"Milano",
|
||||
"Napoli",
|
||||
"Torino",
|
||||
"Venezia",
|
||||
"Firenze",
|
||||
"Palermo",
|
||||
"Genova",
|
||||
"Parma",
|
||||
"Bologna",
|
||||
"Bari",
|
||||
"Cagliari",
|
||||
"Sassari",
|
||||
"Pisa",
|
||||
"Aosta",
|
||||
"Brescia",
|
||||
"Verona",
|
||||
"Bolzano",
|
||||
"Padova",
|
||||
"Udine",
|
||||
"Trieste",
|
||||
"Livorno",
|
||||
"Ancona",
|
||||
"Perugia",
|
||||
"Pescara",
|
||||
"L'Aquila",
|
||||
"Campobasso",
|
||||
"Potenza",
|
||||
"Cosenza",
|
||||
"Reggio Calabria",
|
||||
"Catania",
|
||||
"Caltanisetta",
|
||||
"Agrigento",
|
||||
"La Spezia",
|
||||
"Modena",
|
||||
"Vicenza",
|
||||
"Mantova",
|
||||
"Cremona",
|
||||
"Piacenza",
|
||||
"Reggio Emilia",
|
||||
"Foggia",
|
||||
"Benevento",
|
||||
"Salerno",
|
||||
"Catanzaro",
|
||||
"Lecce",
|
||||
"Como",
|
||||
"Lecco",
|
||||
"Sondrio",
|
||||
"Trento",
|
||||
"Desenzano",
|
||||
"Cuneo",
|
||||
"Asti",
|
||||
"Lodi",
|
||||
"Novara",
|
||||
"Biella",
|
||||
"Vercelli",
|
||||
"Rieti",
|
||||
"Nuoro",
|
||||
"Oristano",
|
||||
"Matera",
|
||||
"Taranto",
|
||||
"Varese",
|
||||
"Bergamo",
|
||||
"Pavia",
|
||||
"Caserta",
|
||||
"Frosinone",
|
||||
"Latina",
|
||||
"Enna",
|
||||
"Ragusa",
|
||||
"Siracusa",
|
||||
"Pordenone",
|
||||
"Imperia",
|
||||
"Verbania",
|
||||
"Alessandria",
|
||||
"Messina",
|
||||
"Siena",
|
||||
"Arezzo",
|
||||
"Grosseto",
|
||||
};
|
||||
|
||||
static const char *name_italian_pref[] = {
|
||||
"Alpe ",
|
||||
"Borgo ",
|
||||
"Cascina ",
|
||||
"Castel ",
|
||||
"Fonte ",
|
||||
"Forte ",
|
||||
"Malga ",
|
||||
"Pieve ",
|
||||
"Poggio ",
|
||||
"Rocca ",
|
||||
"Villa ",
|
||||
"Villar ",
|
||||
};
|
||||
|
||||
static const char *name_italian_1m[] = {
|
||||
"Bel",
|
||||
"Borgo",
|
||||
"Bosco",
|
||||
"Campo",
|
||||
"Capo",
|
||||
"Casal",
|
||||
"Castel",
|
||||
"Colle",
|
||||
"Fiume",
|
||||
"Fonte",
|
||||
"Lago",
|
||||
"Mezzo",
|
||||
"Monte",
|
||||
"Mon",
|
||||
"Orto",
|
||||
"Passo",
|
||||
"Prato",
|
||||
"Poggio",
|
||||
"Ponte",
|
||||
"Pozzo",
|
||||
"Sasso",
|
||||
"Tra",
|
||||
"Tre",
|
||||
"Ver",
|
||||
"Vico",
|
||||
};
|
||||
|
||||
static const char *name_italian_1f[] = {
|
||||
"Acqua",
|
||||
"Bra",
|
||||
"Cala",
|
||||
"Casa",
|
||||
"Chiesa",
|
||||
"Citta",
|
||||
"Civita",
|
||||
"Corte",
|
||||
"Costa",
|
||||
"Croce",
|
||||
"Fontana",
|
||||
"Grotta",
|
||||
"Guardia",
|
||||
"Mezza",
|
||||
"Palma",
|
||||
"Pietra",
|
||||
"Ripa",
|
||||
"Rocca",
|
||||
"Serra",
|
||||
"Torre",
|
||||
"Val",
|
||||
"Valle",
|
||||
"Villa",
|
||||
};
|
||||
|
||||
static const char *name_italian_2[] = {
|
||||
"bell",
|
||||
"bianc",
|
||||
"cald",
|
||||
"chiar",
|
||||
"cort",
|
||||
"ferrat",
|
||||
"fier",
|
||||
"fredd",
|
||||
"gioios",
|
||||
"grec",
|
||||
"guzz",
|
||||
"lung",
|
||||
"long",
|
||||
"migli",
|
||||
"negr",
|
||||
"ner",
|
||||
"nov",
|
||||
"nuov",
|
||||
"ross",
|
||||
"rotond",
|
||||
"scur",
|
||||
"secc",
|
||||
"sett",
|
||||
"vecchi",
|
||||
"ventos",
|
||||
"vers",
|
||||
"viv",
|
||||
};
|
||||
|
||||
static const char *name_italian_2i[] = {
|
||||
"",
|
||||
"breve",
|
||||
"brevi",
|
||||
"chiari",
|
||||
"ferro",
|
||||
"fieschi",
|
||||
"fiore",
|
||||
"fonte",
|
||||
"forte",
|
||||
"gate",
|
||||
"leone",
|
||||
"maggiore",
|
||||
"minore",
|
||||
"mole",
|
||||
"monte",
|
||||
"poli",
|
||||
"scuri",
|
||||
"terra",
|
||||
"te",
|
||||
"torrione",
|
||||
"vento",
|
||||
"verde",
|
||||
"versiere",
|
||||
};
|
||||
|
||||
|
||||
static const char *name_italian_3[] = {
|
||||
" Marittimo",
|
||||
" Marittima",
|
||||
" del Capo",
|
||||
" del Monte",
|
||||
" di Sopra",
|
||||
" di Sotto",
|
||||
" sui Monti",
|
||||
" dei Marmi",
|
||||
" dei Sassi",
|
||||
" delle Fonti",
|
||||
" sui Prati",
|
||||
" a Mare",
|
||||
" Superiore",
|
||||
" Inferiore",
|
||||
" Terme",
|
||||
" Alta",
|
||||
" Bassa",
|
||||
" Brianza",
|
||||
" Vesuviano",
|
||||
" Scrivia",
|
||||
" Ticino",
|
||||
};
|
||||
|
||||
static const char *name_italian_river1[] = {
|
||||
" del",
|
||||
" sul",
|
||||
" al",
|
||||
" nel",
|
||||
};
|
||||
|
||||
static const char *name_italian_river2[] = {
|
||||
"l'Adda",
|
||||
"l'Adige",
|
||||
"le Alpi",
|
||||
"l'Arno",
|
||||
" Bormida",
|
||||
" Brenta",
|
||||
"la Dora Baltea",
|
||||
" Lambro",
|
||||
" Mincio",
|
||||
" Naviglio",
|
||||
"l'Oglio",
|
||||
"l'Olona",
|
||||
"l'Ombrone",
|
||||
" Panaro",
|
||||
" Piave",
|
||||
" Po",
|
||||
" Reno",
|
||||
" Scrivia",
|
||||
" Secchia",
|
||||
" Serio",
|
||||
" Tagliamento",
|
||||
" Tanaro",
|
||||
" Taro",
|
||||
" Ticino",
|
||||
" Tevere",
|
||||
};
|
||||
|
|
Loading…
Reference in New Issue