Method: NameGenerator#markov_name

Defined in:
lib/gemwarrior/misc/name_generator.rb

#markov_name(chain) ⇒ Object

construct name from markov chain



135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
# File 'lib/gemwarrior/misc/name_generator.rb', line 135

def markov_name(chain)
  parts = select_link(chain, 'parts')
  names = []

  for i in 0..parts-1
    name_len = select_link(chain, 'name_len')
    c = select_link(chain, 'initial')
    name = c
    last_c = c

    while name.length < name_len do
      c = select_link(chain, last_c)
      name += c
      last_c = c
    end
    names.push(name)
  end

  return names.join(' ')
end