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
-2
View File
@@ -4,7 +4,6 @@ import (
"encoding/json"
"math/rand"
"os"
"time"
)
type AasimarData struct {
@@ -39,7 +38,6 @@ func LoadAasimarData(path string) error {
}
func GenerateAasimarName(gender string) string {
rand.Seed(time.Now().UnixNano())
if gender == "female" {
return generateAasimarFemaleName()
}
-2
View File
@@ -4,7 +4,6 @@ import (
"encoding/json"
"math/rand"
"os"
"time"
)
type BugbearArrays struct {
@@ -29,7 +28,6 @@ func LoadBugbearArrays(path string) (*BugbearArrays, error) {
}
func BugbearNameMas(arr *BugbearArrays, checkSwear func(string) bool) string {
rand.Seed(time.Now().UnixNano())
nTp := rand.Intn(3)
rnd := rand.Intn(len(arr.Nm1))
rnd2 := rand.Intn(len(arr.Nm4))
-2
View File
@@ -4,7 +4,6 @@ import (
"encoding/json"
"math/rand"
"os"
"time"
)
type CentaurData struct {
@@ -42,7 +41,6 @@ func LoadCentaurData(path string) error {
}
func GenerateCentaurName(gender string) string {
rand.Seed(time.Now().UnixNano())
var nMs string
if gender == "female" {
nMs = generateCentaurFemaleName()
-2
View File
@@ -4,7 +4,6 @@ import (
"encoding/json"
"math/rand"
"os"
"time"
)
type ChangelingArrays struct {
@@ -27,7 +26,6 @@ func LoadChangelingArrays(path string) (*ChangelingArrays, error) {
}
func ChangelingNameMas(arr *ChangelingArrays, checkSwear func(string) bool) string {
rand.Seed(time.Now().UnixNano())
rnd := rand.Intn(len(arr.Nm1))
rnd2 := rand.Intn(len(arr.Nm2))
rnd3 := rand.Intn(len(arr.Nm3))
-2
View File
@@ -4,7 +4,6 @@ import (
"encoding/json"
"math/rand"
"os"
"time"
)
type DeepGnomeData struct {
@@ -40,7 +39,6 @@ func LoadDeepGnomeData(path string) error {
}
func GenerateDeepGnomeName(gender string) string {
rand.Seed(time.Now().UnixNano())
var nMs string
if gender == "female" {
nMs = generateDeepGnomeFemaleName()
-2
View File
@@ -4,7 +4,6 @@ import (
"encoding/json"
"math/rand"
"os"
"time"
)
type DevaData struct {
@@ -42,7 +41,6 @@ func LoadDevaData(path string) error {
}
func GenerateDevaName(gender string) string {
rand.Seed(time.Now().UnixNano())
if gender == "female" {
return generateDevaFemaleName()
}
-2
View File
@@ -6,7 +6,6 @@ import (
"math/rand"
"os"
"strings"
"time"
)
type DrowData struct {
@@ -38,7 +37,6 @@ func init() {
if err := json.NewDecoder(file).Decode(&drowData); err != nil {
panic(fmt.Errorf("failed to decode drow.json: %w", err))
}
rand.Seed(time.Now().UnixNano())
}
func DrowName(gender, surname string) string {
+1 -3
View File
@@ -4,7 +4,6 @@ import (
"encoding/json"
"math/rand"
"os"
"time"
)
type FairyArrays struct {
@@ -33,9 +32,8 @@ func LoadFairyArrays(path string) (FairyArrays, error) {
}
func GenerateFairyNames(arr FairyArrays, gender string, swearFilter func(string) bool) []string {
rand.Seed(time.Now().UnixNano())
var names []string
for i := 0; i < 10; i++ {
for i := range 10 {
var n string
if gender == "female" {
if i < 3 {
+1 -1
View File
@@ -84,7 +84,7 @@ func GrungName(arr *GrungArrays, swearFilter func(string) bool) string {
func GenerateGrungNames(arr *GrungArrays, swearFilter func(string) bool) []string {
names := make([]string, 0, 10)
for i := 0; i < 10; i++ {
for range 10 {
n := GrungName(arr, swearFilter)
names = append(names, n)
}
+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)
-2
View File
@@ -4,7 +4,6 @@ import (
"encoding/json"
"math/rand"
"os"
"time"
)
type ShadarKaiArrays struct {
@@ -39,7 +38,6 @@ func LoadShadarKaiArrays(path string) (ShadarKaiArrays, error) {
}
func GenerateShadarKaiName(arr ShadarKaiArrays, gender string) string {
rand.Seed(time.Now().UnixNano())
if gender == "female" {
return shadarKaiFemale(arr)
}
+1 -3
View File
@@ -4,7 +4,6 @@ import (
"encoding/json"
"math/rand"
"os"
"time"
)
type ShardmindArrays struct {
@@ -27,7 +26,6 @@ func LoadShardmindArrays(path string) (ShardmindArrays, error) {
}
func GenerateShardmindName(arr ShardmindArrays) string {
rand.Seed(time.Now().UnixNano())
rnd := rand.Intn(len(arr.Nm1))
rnd2 := rand.Intn(len(arr.Nm2))
return arr.Nm1[rnd] + arr.Nm2[rnd2]
@@ -35,7 +33,7 @@ func GenerateShardmindName(arr ShardmindArrays) string {
func GenerateShardmindNames(arr *ShardmindArrays, swearFilter func(string) bool) []string {
names := make([]string, 0, 10)
for i := 0; i < 10; i++ {
for range 10 {
n := GenerateShardmindName(*arr)
for n == "" || swearFilter(n) {
n = GenerateShardmindName(*arr)
+1 -3
View File
@@ -4,7 +4,6 @@ import (
"encoding/json"
"math/rand"
"os"
"time"
)
type ShifterArrays struct {
@@ -28,7 +27,6 @@ func LoadShifterArrays(path string) (ShifterArrays, error) {
// gender: "male" or "female"
func GenerateShifterName(arr ShifterArrays, gender string) string {
rand.Seed(time.Now().UnixNano())
if gender == "female" {
rnd := rand.Intn(len(arr.Names2))
return arr.Names2[rnd]
@@ -39,7 +37,7 @@ func GenerateShifterName(arr ShifterArrays, gender string) string {
func GenerateShifterNames(arr *ShifterArrays, gender string, swearFilter func(string) bool) []string {
names := make([]string, 0, 10)
for i := 0; i < 10; i++ {
for range 10 {
var n string
if gender == "female" {
n = GenerateShifterName(*arr, "female")
+1 -5
View File
@@ -4,7 +4,6 @@ import (
"encoding/json"
"math/rand"
"os"
"time"
)
type SimicHybridArrays struct {
@@ -35,7 +34,6 @@ func LoadSimicHybridArrays(path string) (SimicHybridArrays, error) {
}
func simicHybridNameMas(a SimicHybridArrays) (string, int) {
rand.Seed(time.Now().UnixNano())
nTp := rand.Intn(4)
rnd := rand.Intn(len(a.Nm1))
rnd2 := rand.Intn(len(a.Nm2))
@@ -57,14 +55,12 @@ func simicHybridNameMas(a SimicHybridArrays) (string, int) {
}
func simicHybridNameFir(a SimicHybridArrays) string {
rand.Seed(time.Now().UnixNano())
rnd := rand.Intn(len(a.Nm7))
rnd2 := rand.Intn(len(a.Nm8))
return a.Nm7[rnd] + a.Nm8[rnd2]
}
func simicHybridNameSec(a SimicHybridArrays) string {
rand.Seed(time.Now().UnixNano())
rnd := rand.Intn(len(a.Nm9))
rnd2 := rand.Intn(len(a.Nm10))
return a.Nm9[rnd] + a.Nm10[rnd2]
@@ -72,7 +68,7 @@ func simicHybridNameSec(a SimicHybridArrays) string {
func GenerateSimicHybridNames(arr *SimicHybridArrays, gender string, swearFilter func(string) bool) []string {
names := make([]string, 0, 10)
for i := 0; i < 10; i++ {
for i := range 10 {
var nMs string
if i < 5 {
var nTp int
-2
View File
@@ -4,7 +4,6 @@ import (
"encoding/json"
"math/rand"
"os"
"time"
)
type TieflingArrays struct {
@@ -30,7 +29,6 @@ func LoadTieflingArrays(path string) (TieflingArrays, error) {
}
func GenerateTieflingName(arr *TieflingArrays, gender string) string {
rand.Seed(time.Now().UnixNano())
switch gender {
case "female":
rnd := rand.Intn(len(arr.Nm4))