diff options
-rw-r--r-- | namegen.c | 17 | ||||
-rw-r--r-- | table/namegen.h | 172 |
2 files changed, 178 insertions, 11 deletions
@@ -381,7 +381,22 @@ static byte MakeSlovakTownName(byte *buf, uint32 seed) static byte MakeNorwegianTownName(byte *buf, uint32 seed) { strcpy(buf, ""); - strcat(buf, name_norwegian_1[GetNumberBasedOnSeed(0, lengthof(name_norwegian_1), seed)]); + + // Use first 4 bit from seed to decide whether or not this town should + // have a real name 3/16 chance. Bit 0-3 + if (GetNumberBasedOnSeed(0, 15, seed) < 3) + { + // Use 7bit for the realname table index. Bit 4-10 + strcat(buf, name_norwegian_real[GetNumberBasedOnSeed(4, lengthof(name_norwegian_real), seed)]); + } + else + { + // Use 7bit for the first fake part. Bit 4-10 + strcat(buf, name_norwegian_1[GetNumberBasedOnSeed(4, lengthof(name_norwegian_1), seed)]); + // Use 7bit for the last fake part. Bit 11-17 + strcat(buf, name_norwegian_2[GetNumberBasedOnSeed(11, lengthof(name_norwegian_2), seed)]); + } + return 0; } diff --git a/table/namegen.h b/table/namegen.h index fc07ff48c..0985dfdb2 100644 --- a/table/namegen.h +++ b/table/namegen.h @@ -1847,6 +1847,163 @@ static const char *name_slovakish_1[] = { }; static const char *name_norwegian_1[] = { + "Arna", + "Aust", + "Bjørk", + "Bjørn", + "Brand", + "Bøver", + "Drag", + "Drø", + "Eids", + "Egge", + "Fager", + "Finns", + "Flat", + "Foll", + "Foss", + "Fugle", + "Furu", + "Gaus", + "Galte", + "Geir", + "Gløs", + "Gran", + "Grind", + "Grims", + "Grøn", + "Grøt", + "Gulle", + "Haka", + "Hammer", + "Haug", + "Hol", + "Hon", + "Hop", + "Hov", + "Jess", + "Kabel", + "Kjerns", + "Kjerring", + "Knatte", + "Krok", + "Køy", + "Lang", + "Lauv", + "Leir", + "Lund", + "Logn", + "Lo", + "Lyng", + "Løn", + "Mesna", + "Mel", + "Mo", + "Nar", + "Nitte", + "Nord", + "Odd", + "Ola", + "Otte", + "Ran", + "Rev", + "Rog", + "Roms", + "Rosen", + "Sand", + "Sau", + "Sel", + "Sol", + "Sjur", + "Skår", + "Slått", + "Stjør", + "Stor", + "Svart", + "Svens", + "Svin", + "Sylte", + "Syn", + "Tran", + "Vass", + "Ved", + "Vest", + "Vesle", + "Vik", + "Våg" +}; + +static const char *name_norwegian_2[] = { + "aker", + "anger", + "bakken", + "bekk", + "berg", + "botn", + "breen", + "bu", + "bugen", + "by", + "bygd", + "bø", + "dal", + "egga", + "eid", + "elv", + "enga", + "foss", + "fjell", + "fjord", + "foten", + "gard", + "grend", + "hammer", + "haug", + "havn", + "heim", + "hella", + "hovda", + "høa", + "høgda", + "kampen", + "kjølen", + "kollen", + "kroken", + "land", + "lia", + "mark", + "moen", + "myr", + "nes", + "nuten", + "osen", + "rike", + "rud", + "sand", + "set", + "sjøen", + "skogen", + "slette", + "snipa", + "stad", + "stua", + "stulen", + "sund", + "svingen", + "sætra", + "tinden", + "tun", + "vang", + "vatn", + "veid", + "vik", + "voll", + "våg", + "um", + "åsen" +}; + +static const char *name_norwegian_real[] = { "Alta", "Arendal", "Askim", @@ -1863,7 +2020,7 @@ static const char *name_norwegian_1[] = { "Fauske", "Finnsnes", "Flekkefjord", - "Florø", + "Flora", "Fosnavåg", "Fredrikstad", "Førde", @@ -1875,9 +2032,7 @@ static const char *name_norwegian_1[] = { "Harstad", "Haugesund", "Holmestrand", - "Honningsvåg", "Horten", - "Hønefoss", "Jørpeland", "Kirkenes", "Kolvereid", @@ -1911,26 +2066,25 @@ static const char *name_norwegian_1[] = { "Oslo", "Otta", "Porsgrunn", + "Ringerike", "Risør", "Rjukan", - "Røros", "Sandefjord", "Sandnes", "Sandnessjøen", "Sandvika", "Sarpsborg", "Sauda", - "Setermoen", "Ski", "Skien", "Skudeneshavn", "Sortland", "Stathelle", "Stavanger", - "Stavern", "Steinkjer", "Stjørdal", "Stokmarknes", + "Stord", "Svelvik", "Svolvær", "Tromsø", @@ -1940,12 +2094,10 @@ static const char *name_norwegian_1[] = { "Ulsteinvik", "Vadsø", "Vardø", - "Verdal", - "Voss", + "Verdalsøra", "Åkrehamn", "Ålesund", - "Åndalsnes", - "Åsgårdstrand" + "Åndalsnes" }; static const char *name_hungarian_1[] = { |