class BCDice::GameSystem::ShoujoTenrankai

Constants

EVENT_TABLES
HELP_MESSAGE

ダイスボットの使い方

ID

ゲームシステムの識別子

NAME

ゲームシステム名

SORT_KEY

ゲームシステム名の読みがな

Public Instance Methods

eval_game_system_specific_command(command) click to toggle source
# File lib/bcdice/game_system/ShoujoTenrankai.rb, line 38
def eval_game_system_specific_command(command)
  info = self.class::EVENT_TABLES[command]

  return nil if info.nil?

  name = info[:name]
  table = info[:table]

  text, number1, number2 = getEventTableResult(table)
  tensionText = getTensionText(number1, number2)

  result = "出来事表:#{name}([#{number1},#{number2}]) > #{text}#{tensionText}"

  return result
end
getEventTableResult(table) click to toggle source
# File lib/bcdice/game_system/ShoujoTenrankai.rb, line 61
def getEventTableResult(table)
  number1 = @randomizer.roll_once(6)
  number2 = @randomizer.roll_once(6)

  isOdd = number1.even?

  index = number2 - 1
  index += 6 if isOdd

  text = table[index]

  return nil if text.nil?

  return text, number1, number2
end
getTensionText(number1, number2) click to toggle source
# File lib/bcdice/game_system/ShoujoTenrankai.rb, line 54
def getTensionText(number1, number2)
  diff = (number1 - number2).abs
  return "" if diff == 0

  return "(テンション+#{diff})"
end