Fix Generators

This commit is contained in:
2025-08-03 19:25:14 +01:00
parent e0bd9295c7
commit 702aaeb570
15 changed files with 13 additions and 39 deletions
+8 -6
View File
@@ -58,13 +58,15 @@ func SatyrNameMas(arr *SatyrArrays, swearFilter func(string) bool) string {
} else {
rnd6 := rand.Intn(len(arr.Nm4))
rnd7 := rand.Intn(len(arr.Nm5))
for arr.Nm3[rnd5] == arr.Nm5[rnd3] && arr.Nm3[rnd5] == arr.Nm1[rnd] {
rnd5 = rand.Intn(len(arr.Nm3))
// Fix: ensure rnd5 is for Nm7, rnd3 is for Nm5, and check bounds
for (rnd5 >= len(arr.Nm7) || rnd3 >= len(arr.Nm5)) || (arr.Nm3[rnd5%len(arr.Nm3)] == arr.Nm5[rnd3%len(arr.Nm5)] && arr.Nm3[rnd5%len(arr.Nm3)] == arr.Nm1[rnd]) {
rnd5 = rand.Intn(len(arr.Nm7))
rnd3 = rand.Intn(len(arr.Nm5))
}
for rnd6 == 0 && rnd4 == 0 {
rnd6 = rand.Intn(len(arr.Nm4))
}
nMs = arr.Nm1[rnd] + arr.Nm2[rnd2] + arr.Nm3[rnd3] + arr.Nm4[rnd6] + arr.Nm5[rnd7] + arr.Nm6[rnd4] + arr.Nm7[rnd5]
nMs = arr.Nm1[rnd] + arr.Nm2[rnd2] + arr.Nm3[rnd3%len(arr.Nm3)] + arr.Nm4[rnd6] + arr.Nm5[rnd7] + arr.Nm6[rnd4] + arr.Nm7[rnd5]
}
if swearFilter != nil && swearFilter(nMs) {
return ""
@@ -138,12 +140,12 @@ func GenerateSatyrNames(arr *SatyrArrays, gender string, swearFilter func(string
names := make([]string, 0, 10)
switch gender {
case "child":
for i := 0; i < 10; i++ {
for range 10 {
n := SatyrNameChild(arr)
names = append(names, n)
}
case "female":
for i := 0; i < 10; i++ {
for range 10 {
n := SatyrNameFem(arr, swearFilter)
for n == "" {
n = SatyrNameFem(arr, swearFilter)
@@ -151,7 +153,7 @@ func GenerateSatyrNames(arr *SatyrArrays, gender string, swearFilter func(string
names = append(names, n)
}
default:
for i := 0; i < 10; i++ {
for range 10 {
n := SatyrNameMas(arr, swearFilter)
for n == "" {
n = SatyrNameMas(arr, swearFilter)