BCDice/内部処理/BCDiceクラス

< BCDice‎ | 内部処理
2019年6月28日 (金) 23:57時点におけるOchaochaocha3 (トーク | 投稿記録)による版 (目次を追加する)

BCDiceの司令塔といえるクラス。ゲームの指定、ダイスロールなどの主要な操作は、このクラスを介して行う。

setGameByTitle

https://github.com/torgtaitai/BCDice/blob/86b8dd03ae00f8ea6a8787f9f514a5d83b2e3d41/src/bcdiceCore.rb#L1778-L1801

  1. カード機能を初期化する。
  2. 指定されたゲーム名のダイスボットを設定する。
    1. 設定後の処理を行う(diceBot.postSet)。
  3. ゲームを設定したことを示すメッセージを返す。
# 指定したタイトルのゲームを設定する
# @param [String] gameTitle ゲームタイトル
# @return [String] ゲームを設定したことを示すメッセージ
def setGameByTitle(gameTitle)
  debug('setGameByTitle gameTitle', gameTitle)

  @cardTrader.initValues

  loader = DiceBotLoaderList.find(gameTitle)
  diceBot =
    if loader
      loader.loadDiceBot
    else
      DiceBotLoader.loadUnknownGame(gameTitle) || DiceBot.new
    end

  setDiceBot(diceBot)
  diceBot.postSet

  message = "Game設定を#{diceBot.gameName}に設定しました"
  debug( 'setGameByTitle message', message )

  return message
end