Cleanup: minimum string length for town name generator is not needed anymore

This commit is contained in:
Rubidium 2023-06-05 16:57:24 +02:00 committed by rubidium42
parent edb21620ea
commit e32f0aa20b
1 changed files with 24 additions and 34 deletions

View File

@ -974,42 +974,34 @@ static void MakeCatalanTownName(StringBuilder &builder, uint32_t seed)
/** /**
* Type for all town name generator functions. * Type for all town name generator functions.
* @param buf The buffer to write the name to. * @param builder The builder to write the name to.
* @param last The last element of the buffer.
* @param seed The seed of the town name. * @param seed The seed of the town name.
* @return The end of the filled buffer.
*/ */
typedef void TownNameGenerator(StringBuilder &builder, uint32 seed); typedef void TownNameGenerator(StringBuilder &builder, uint32 seed);
/** Contains pointer to generator and minimum buffer size (not incl. terminating '\0') */
struct TownNameGeneratorParams {
byte min; ///< minimum number of characters that need to be printed for generator to work correctly
TownNameGenerator *proc; ///< generator itself
};
/** Town name generators */ /** Town name generators */
static const TownNameGeneratorParams _town_name_generators[] = { static TownNameGenerator *_town_name_generators[] = {
{ 4, MakeEnglishOriginalTownName}, // replaces first 4 characters of name MakeEnglishOriginalTownName, // replaces first 4 characters of name
{ 0, MakeFrenchTownName}, MakeFrenchTownName,
{ 0, MakeGermanTownName}, MakeGermanTownName,
{ 4, MakeEnglishAdditionalTownName}, // replaces first 4 characters of name MakeEnglishAdditionalTownName, // replaces first 4 characters of name
{ 0, MakeSpanishTownName}, MakeSpanishTownName,
{ 0, MakeSillyTownName}, MakeSillyTownName,
{ 0, MakeSwedishTownName}, MakeSwedishTownName,
{ 0, MakeDutchTownName}, MakeDutchTownName,
{ 8, MakeFinnishTownName}, // _name_finnish_1 MakeFinnishTownName, // _name_finnish_1
{ 0, MakePolishTownName}, MakePolishTownName,
{ 0, MakeSlovakTownName}, MakeSlovakTownName,
{ 0, MakeNorwegianTownName}, MakeNorwegianTownName,
{ 0, MakeHungarianTownName}, MakeHungarianTownName,
{ 0, MakeAustrianTownName}, MakeAustrianTownName,
{ 0, MakeRomanianTownName}, MakeRomanianTownName,
{ 28, MakeCzechTownName}, // _name_czech_adj + _name_czech_patmod + 1 + _name_czech_subst_stem + _name_czech_subst_postfix MakeCzechTownName, // _name_czech_adj + _name_czech_patmod + 1 + _name_czech_subst_stem + _name_czech_subst_postfix
{ 0, MakeSwissTownName}, MakeSwissTownName,
{ 0, MakeDanishTownName}, MakeDanishTownName,
{ 0, MakeTurkishTownName}, MakeTurkishTownName,
{ 0, MakeItalianTownName}, MakeItalianTownName,
{ 0, MakeCatalanTownName}, MakeCatalanTownName,
}; };
@ -1022,7 +1014,5 @@ static const TownNameGeneratorParams _town_name_generators[] = {
void GenerateTownNameString(StringBuilder &builder, size_t lang, uint32 seed) void GenerateTownNameString(StringBuilder &builder, size_t lang, uint32 seed)
{ {
assert(lang < lengthof(_town_name_generators)); assert(lang < lengthof(_town_name_generators));
return _town_name_generators[lang](builder, seed);
const TownNameGeneratorParams *par = &_town_name_generators[lang];
return par->proc(builder, seed);
} }