summaryrefslogtreecommitdiff
path: root/internal/character/name.go
blob: af9583ab5780890e796f1f1d5769738ad9a7567f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
package character

import (
	"math/rand"
	"strings"
)

var parts = [][]string{
	{
		"br", "cr", "dr", "fr", "gr",
		"j", "kr", "l", "m", "n",
		"pr", "", "", "", "r",
		"sh", "tr", "v", "wh", "x",
		"y", "z",
	},
	{
		"a", "a", "e", "e", "i",
		"i", "o", "o", "u", "u",
		"ae", "ie", "oo", "ou",
	},
	{
		"b", "ck", "d", "g", "k",
		"m", "n", "p", "t", "v",
		"x", "z",
	},
}

func NewName() string {
	var s string
	for i := 0; i < 6; i++ {
		p := parts[i%3]
		n := rand.Intn(len(p))
		s += p[n]
	}
	return strings.Title(s)
}