Class: BCDice::GameSystem::PastFutureParadox

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

Constant Summary collapse

ID =

ゲームシステムの識別子

"PastFutureParadox"
NAME =

ゲームシステム名

"パストフューチャーパラドックス"
SORT_KEY =

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

"はすとふゆうちやあはらとつくす"
HELP_MESSAGE =
<<~TEXT
  ・行為判定 PP@s#f[+m/-m]>=x  2D6の行為判定を行う。
   s: スペシャル値 (省略時 12)、 f: ファンブル値 (省略時 2)
   [+m/-m]: 修正値(省略可)、 x: 目標値 (省略可)
   例)PP, PP-1, PP@11, PP@11+2, PP@11#3, PP@11#3-1,
     PP#3>=7, PP#3+2>=7, PP>=7, PP-1>=7
  ・特技表
  ランダム分野表 RCT
  ランダム特技表 RTTn(n:分野番号、省略時は全分野からランダム)
   科学 (RTT1)、知識(RTT2)、身体(RTT3)、
   センス(RTT4)、知恵(RTT5)、迷信(RTT6)
  ・各種表 ※1D6および2D6を振る表は、末尾に=nと付けることで出目nの内容を指定可能。末尾に-n/+nと付けることで、出目に修正を付けることが可能。
   例:SBET=2 MBET-1 TBET+2
  シーン表(2D6)
   現代シーン表 ST4
  経歴表(D66)
   原始時代経歴表 CT1 、古代経歴表 CT2 、中世時代経歴表 CT3
   現代経歴表 CT4 、超情報化時代経歴表 CT5 、宇宙時代経歴表 CT6
  名前表(D66)
   原始時代名前表(男性名) NMT1 、原始時代名前表(女性名) NFT1
   古代名前表(男性名) NMT2 、古代名前表(女性名) NFT2 、古代名前表(姓) NLT2
   中世時代(日本)名前表(男性名) NMT3 、中世時代(日本)名前表(女性名) NFT3 、中世時代(日本)名前表(姓) NLT3
   中世時代(西洋)名前表(男性名) NMT3W 、中世時代(西洋)名前表(女性名) NFT3W 、中世時代(西洋)名前表(姓) NLT3W
   現代(日本)名前表(男性名) NMT4 、現代(日本)名前表(女性名) NFT4 、現代(日本)名前表(姓) NLT4
   現代(西洋)名前表(男性名) NMT4W 、現代(西洋)名前表(女性名) NFT4W 、現代(西洋)名前表(姓) NLT4W
   超情報化時代名前表(男性名) NMT5 、超情報化時代名前表(女性名) NFT5 、超情報化時代名前表(姓) NLT5
   宇宙時代名前表(男性名) NMT6 、宇宙時代名前表(女性名) NFT6 、宇宙時代名前表(姓) NLT6
  因縁種別表(D66) CTT 、ポジティブ因縁内容表(1D6) CPT 、ネガティブ因縁内容表(1D6) CNT
  バタフライエフェクト表(2D6) ※バタフライエフェクト表は-5~12までの結果を算出可能
   重度バタフライエフェクト表 SBET 、軽度バタフライエフェクト表 MBET 、タイムトラベラー重度バタフライエフェクト表 TBET
  アクシデント表(2D6) ACT 、タイムトラベル演出表(2D6) TT 、帰還演出表(1D6) RT
  アイテム決定表(1D6) IT 、時代決定表(1D6) AGT
  ・D66ダイスあり
TEXT
RTT =
DiceTable::SaiFicSkillTable.new(
  [
    ['科学', ['人工知能', '計算機', '電子工学', '機械工学', '物理学', '数学', '天文学', '地学', '化学', '医療', 'バイオ技術']],
    ['知識', ['帝王学', '経済', '政治', '社会', '法律', '情報', '労働', '教育', '歴史', '語学', '文学']],
    ['身体', ['狙う', '斬る', '殴る', '跳ぶ', '走る', '避ける', '柔軟', '持ち上げる', '食べる', '飲む', '叫ぶ']],
    ['センス', ['魔法', '超能力', '第六感', '宗教', '倫理', '観察', '我慢', '操縦', '哲学', '心理', '芸術']],
    ['知恵', ['戦略', '方便', '機転', '洞察力', '記憶力', '段取り', '応急処置', '漢方', '胆力', '', '人徳']],
    ['迷信', ['思い込み', 'インチキ', '未確認物体', '雨乞い', '風水', '占い', '縁起', '魔除け', '心霊', '運命', '民間伝承']],
  ],
  s_format: "分野「%<category_name>s」《%<skill_name>s》",
  rtt_format: "ランダム指定特技表(%<category_dice>d,%<row_dice>d) > %<text>s"
)

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, prefixes_pattern, register_prefix, register_prefix_from_super_class, #sort_add_dice?, #sort_barabara_dice?

Methods included from Translate

#translate

Constructor Details

#initialize(command) ⇒ PastFutureParadox

Returns a new instance of PastFutureParadox.



50
51
52
53
54
55
# File 'lib/bcdice/game_system/PastFutureParadox.rb', line 50

def initialize(command)
  super(command)
  @sort_add_dice = false
  @sort_barabara_dice = false
  @d66_sort_type = D66SortType::ASC
end

Instance Method Details

#eval_game_system_specific_command(command) ⇒ Object



59
60
61
# File 'lib/bcdice/game_system/PastFutureParadox.rb', line 59

def eval_game_system_specific_command(command)
  return action_roll(command) || RTT.roll_command(@randomizer, command) || roll_tables(command, TABLES) || roll_table_command(command)
end