package data import "math/rand" var ( lastNameList []string maleNameList []string femaleNameList []string ) func (p *lordNameConfig) OnAfterLoad(_ bool) { var ( loadLastNames []string loadMaleNames []string loadFemaleNames []string ) for _, row := range p.List() { if len(row.LastName) > 0 { loadLastNames = append(loadLastNames, row.LastName) } if len(row.MaleName) > 0 { loadMaleNames = append(loadMaleNames, row.MaleName) } if len(row.FemaleName) > 0 { loadFemaleNames = append(loadFemaleNames, row.FemaleName) } } lastNameList = loadLastNames maleNameList = loadMaleNames femaleNameList = loadFemaleNames } func (p *lordNameConfig) RandomName(isMale bool) string { var ( lastName string firstName string ) lastName = lastNameList[rand.Intn(len(lastNameList))] if isMale { firstName = maleNameList[rand.Intn(len(maleNameList))] } else { firstName = femaleNameList[rand.Intn(len(femaleNameList))] } return lastName + firstName }