module Degica::DoorNameGenerator

Constants

ADJECTIVES
COLORS
MATERIAL

Public Class Methods

sample() click to toggle source
# File lib/degica/generators/door_name_generator.rb, line 39
def sample
  desc = sample_with_order([ADJECTIVES.sample, MATERIAL.sample, COLORS.sample]).join(' ')
  "A #{desc} door."
end

Private Class Methods

sample_with_order(words) click to toggle source
# File lib/degica/generators/door_name_generator.rb, line 46
def sample_with_order(words)
  size = words.size
  indexes = [*0..size-1].sample(rand(1..size)).sort
  indexes.collect { |i| words[i] }
end