Class: BCDice::GameSystem::RyuTuber

Inherits:
Base
  • Object
show all
Defined in:
lib/bcdice/game_system/RyuTuber.rb

Constant Summary collapse

ID =

ゲームシステムの識別子

'RyuTuber'
NAME =

ゲームシステム名

'リューチューバーとちいさな奇跡'
SORT_KEY =

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

'りゆうちゆうはあとちいさなきせき'
HELP_MESSAGE =
<<~MESSAGETEXT
  ◆判定
   ・判定 nB6<=1
    ※ n:サイコロの数 例)12B6<=1 サイコロの数12個の場合
   ・判定ルールを表示する RTB
  ◆職業 (カッコ内は使えそうな技能)
   ・職業表 JT
   ・学生表 JST
   ・技術・専門職表 JTPT
   ・事務・サービス職表 JOST
   ・エンタメ職表 JET
  ◆趣味 (カッコ内は使えそうな技能)
   ・趣味表 HT
   ・多人数でできる趣味表 HGT
   ・一人でできるインドア趣味表A HIAT
   ・一人でできるインドア趣味表B HIBT
   ・一人でできるアウトドア趣味表A HOAT
   ・一人でできるアウトドア趣味表B HOBT
  ◆奇跡の演目を表示する
   ・幸運の風が吹いている MPW
   ・困った時はお互い様 MPT
   ・悪い予感は的中する MPF
   ・ついていい嘘もある MPL
   ・私には星が見えている MPS
   ・心は竜と共にあり MPD
   ・人は石垣、人は城 MPH
MESSAGETEXT
TEXTS =
{
  'RTB' => <<~TEXT,
  'MPW' => <<~TEXT,
  'MPT' => <<~TEXT,
  'MPF' => <<~TEXT,
  'MPL' => <<~TEXT,
  'MPS' => <<~TEXT,
  'MPD' => <<~TEXT,
  'MPH' => <<~TEXT,
}.freeze
TABLES =
{
  "JT" => DiceTable::Table.new(
    "職業表",
    "1D6",
    [
      '学生表へ',
      '技術・専門職表へ',
      '技術・専門職表へ',
      '事務・サービス職表へ',
      '事務・サービス職表へ',
      'エンタメ職表へ'
    ]
  ),
  "JST" => DiceTable::Table.new(
    "学生表",
    "1D6",
    [
      '中学生 (ゲーム 運動する)',
      '高校生(文系) (仲良くする 文章を書く)',
      '高校生(理系) (仲良くする 科学の知識)',
      '専門学校生 (ものづくり 設計する)',
      '大学生(文系) (社会の仕組み 外国語)',
      '大学生(理系) (すごい技術 科学の知識)'
    ]
  ),
  "JTPT" => DiceTable::Table.new(
    "技術・専門職表",
    "2D6",
    [
      '勝負師・山師 (洞察力 精神力)',
      '漁師/猟師 (自然の知識 料理する)',
      '建築家、大工 (設計する 運転する)',
      '料理人 (料理する ものづくり)',
      '職人 (ものづくり 丁寧)',
      '農家 (自然の知識 育てる)',
      '医療・福祉関係(医師、薬剤師、介護職) (治す 科学の知識)',
      '美容、スタイリスト (見た目を整える 仲良くする)',
      'プログラマー (プログラム 設計する)',
      '士業(税理士、弁護士、行政書士等) (社会の仕組み 事務仕事)',
      '研究者 (教える すごい技術)'
    ]
  ),
  "JOST" => DiceTable::Table.new(
    "事務・サービス職表",
    "2D6",
    [
      '宗教関係(巫女、僧侶など) (お祈りする 地元知識)',
      '観光、旅行 (外国語 地元知識)',
      '教師、保育士 (教える 育てる)',
      '運転手、配達員 (運転する 地元知識)',
      '自宅警備員 (ゲーム 想像力)',
      'サラリーマン (事務仕事 仲良くする)',
      '店員 (丁寧 商品知識)',
      '公務員 (事務仕事 地元知識)',
      '警察、自衛隊、消防士 (社会の仕組み 戦う)',
      '投資家、金融業、不動産 (プレゼンする 事務仕事)',
      '経営者 (社会の仕組み 仲良くする)'
    ]
  ),
  "JET" => DiceTable::Table.new(
    "エンタメ職表",
    "2D6",
    [
      'ゲーム制作 (プログラム ものづくり)',
      '写真家 (自然の知識 絵を描く)',
      'デザイナー (設計する 見た目を整える)',
      'ライター (文章を書く 想像力)',
      'イラストレーター (絵を描く 見た目を整える)',
      '専業配信者 (プレゼンする カリスマ)',
      '声優 (声を出す 演技する)',
      'ミュージシャン (声を出す 音楽)',
      'アイドル・芸能人 (演技する カリスマ)',
      'プロゲーマー (ゲーム 戦う)',
      'プロスポーツ選手 (運動する 精神力)'
    ]
  ),
  "HT" => DiceTable::Table.new(
    "趣味表",
    "1D6",
    [
      '多人数でできる趣味表へ',
      '多人数でできる趣味表へ',
      '一人でできるインドア趣味表Aへ',
      '一人でできるインドア趣味表Bへ',
      '一人でできるアウトドア趣味表Aへ',
      '一人でできるアウトドア趣味表Bへ'
    ]
  ),
  "HGT" => DiceTable::Table.new(
    "多人数でできる趣味表",
    "1D6",
    [
      '家族サービス (仲良くする 育てる)',
      '野球・フットサル (仲良くする 運動する)',
      'ボードゲーム/TRPG/囲碁/将棋 (ゲーム 想像する)',
      'ボランティア (忍耐力 カリスマ)',
      'サバイバルゲーム (戦う 隠れる)',
      'バンド (音楽 見た目を整える)'
    ]
  ),
  "HIAT" => DiceTable::Table.new(
    "一人でできるインドア趣味表A",
    "1D6",
    [
      '工芸 (ものづくり 想像力)',
      '編み物 (丁寧 見た目を整える)',
      '陶芸 (ものづくり 想像力)',
      'プラモ (ものづくり 見た目を整える)',
      '同人 (絵を描く 文章を書く)',
      '読書 (外国語 社会の仕組み)'
    ]
  ),
  "HIBT" => DiceTable::Table.new(
    "一人でできるインドア趣味表B",
    "1D6",
    [
      '仕事 (事務仕事 忍耐力)',
      '資格集め (社会の仕組み 商品知識)',
      'お絵かき (絵を描く 想像力)',
      '料理 (料理する 設計する)',
      '筋トレ (運動する 忍耐力)',
      'コンピューターゲーム (ゲーム プログラム)'
    ]
  ),
  "HOAT" => DiceTable::Table.new(
    "一人でできるアウトドア趣味表A",
    "1D6",
    [
      'スポーツ観戦 (忍耐力 お祈りする)',
      '水泳 (運動する 泳ぐ)',
      '旅行/鉄道 (移動する 外国語)',
      '写真 (自然の知識 想像力)',
      'ジグソーパズル (ゲーム 忍耐力)',
      'マラソン (運動する 忍耐力)'
    ]
  ),
  "HOBT" => DiceTable::Table.new(
    "一人でできるアウトドア趣味表B",
    "1D6",
    [
      'スキー・スノーボード (運動する 自然の知識)',
      '自転車 (移動する 運動する)',
      '盆栽・生花 (丁寧 育てる)',
      'キャンプ (自然の知識 精神力)',
      '映画鑑賞 (演技する 想像力)',
      '恋愛 (仲良くする 見た目を整える)'
    ]
  )
}.freeze

Instance Attribute Summary

Attributes inherited from Base

#d66_sort_type, #default_cmp_op, #default_target_number, #randomizer, #reroll_dice_reroll_threshold, #round_type, #sides_implicit_d, #upper_dice_reroll_threshold

Instance Method Summary collapse

Methods inherited from Base

#change_text, #check_result, command_pattern, #enable_debug, #enabled_d9?, #eval, eval, #grich_text, #initialize, prefixes_pattern, register_prefix, register_prefix_from_super_class, #sort_add_dice?, #sort_barabara_dice?

Methods included from Translate

#translate

Constructor Details

This class inherits a constructor from BCDice::Base

Instance Method Details

#eval_game_system_specific_command(command) ⇒ Object

ダイスロールコマンド



45
46
47
48
49
50
51
52
53
54
55
# File 'lib/bcdice/game_system/RyuTuber.rb', line 45

def eval_game_system_specific_command(command) # ダイスロールコマンド
  if (ret = roll_tables(command, TABLES))
    return ret
  end

  if (text = TEXTS[command])
    return text.chomp
  end

  return nil
end