diff options
author | belugas <belugas@openttd.org> | 2006-07-16 00:32:00 +0000 |
---|---|---|
committer | belugas <belugas@openttd.org> | 2006-07-16 00:32:00 +0000 |
commit | 40021f15f00874acf3409f057f4e65444dcef335 (patch) | |
tree | dd00733f46f122fffadd14c58a2cfc798f93bfc5 /namegen.c | |
parent | 3b9bd65f704de818b82cd438fed61239863c56cc (diff) | |
download | openttd-40021f15f00874acf3409f057f4e65444dcef335.tar.xz |
(svn r5504) Feature : Added Italian town name generator. (sidew)
Diffstat (limited to 'namegen.c')
-rw-r--r-- | namegen.c | 49 |
1 files changed, 49 insertions, 0 deletions
@@ -647,6 +647,54 @@ static byte MakeTurkishTownName(char *buf, uint32 seed) return 0; } +static byte MakeItalianTownName(char *buf, uint32 seed) { + + byte i; + char *c; + strcpy(buf, ""); + + if (SeedModChance(0, 6, seed) == 0) { + // real city names + strcat(buf, name_italian_real[SeedModChance(4, lengthof(name_italian_real), seed)]); + } else { + if (SeedModChance(0, 8, seed) == 0) { + // prefix + strcat(buf, name_italian_pref[SeedModChance(11, lengthof(name_italian_pref), seed)]); + } + + i = SeedModChance(0, 2, seed); + if (i == 0) { // masculine form + strcat(buf, name_italian_1m[SeedModChance(4, lengthof(name_italian_1m), seed)]); + c = "o"; + } else { // femminine form + strcat(buf, name_italian_1f[SeedModChance(4, lengthof(name_italian_1f), seed)]); + c = "a"; + } + + if (SeedModChance(0, 3, seed) == 0) { + strcat(buf, name_italian_2[SeedModChance(11, lengthof(name_italian_2), seed)]); + strcat(buf,c); + } else { + strcat(buf, name_italian_2i[SeedModChance(16, lengthof(name_italian_2i), seed)]); + } + + + if (SeedModChance(15, 4, seed) == 0) { + if (SeedModChance(0, 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, @@ -668,6 +716,7 @@ TownNameGenerator * const _town_name_generators[] = MakeSwissTownName, MakeDanishTownName, MakeTurkishTownName, + MakeItalianTownName, }; // DO WE NEED THIS ANY MORE? |