class BCDice::GameSystem::DeadlineHeroes::HeroNameBaseChart

Public Class Methods

new(name, items) click to toggle source
# File lib/bcdice/game_system/DeadlineHeroes.rb, line 326
def initialize(name, items)
  @name = name
  @items = items
end

Public Instance Methods

roll(randomizer) click to toggle source

@param randomizer [Randomizer] @return [Array<(String, String)>]

# File lib/bcdice/game_system/DeadlineHeroes.rb, line 333
def roll(randomizer)
  dice = randomizer.roll_once(10)
  chosen = @items[dice - 1]

  result = "#{@name}(#{dice}) > #{chosen}"
  if (m = chosen.match(/^[(.+)]$/))
    element_type = m[1]
    element_chart = HERO_NAME_ELEMENT_CHARTS[element_type]

    element_result, chosen = element_chart.roll(randomizer)
    result = [result, element_result].join(" > ")
  end

  return result, chosen
end