Class: BCDice::GameSystem::ChaosFlare
- Defined in:
- lib/bcdice/game_system/ChaosFlare.rb
Constant Summary collapse
- ID =
ゲームシステムの識別子
'ChaosFlare'
- NAME =
ゲームシステム名
'カオスフレア'
- SORT_KEY =
ゲームシステム名の読みがな
'かおすふれあ'
- HELP_MESSAGE =
ダイスボットの使い方
<<~INFO_MESSAGE_TEXT 判定 CF 書式: [ダイスの数]CF[修正値][@クリティカル値][#ファンブル値][>=目標値] CF以外は全て省略可能 例: - CF 2D6,クリティカル値12,ファンブル値2で判定 - CF+10@10 修正値+10,クリティカル値10で判定 - CF+10#3 修正値+10,ファンブル値3で判定 - CF+10>=10 目標値を指定した場合、差分値も出力する - 3CF+10@10#3>=10 3D6での判定 - CF@9#3+8>=10 2D6 ファンブル値2で判定する。クリティカルの判定は行われない。 目標値が設定された場合、差分値を出力する。 - 2D6+4>=10 各種表 FT: 因縁表 FTx: 数値を指定すると因果表の値を出力する - FT -> 11から66の間でランダム決定 - FT23 -> 23の項目を出力 - FT0 - FT7 INFO_MESSAGE_TEXT
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
- #eval_game_system_specific_command(command) ⇒ Object
-
#result_2d6(total, dice_total, _dice_list, cmp_op, target) ⇒ Object
ゲーム別成功度判定(2D6)。以前の処理をそのまま残しています。.
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
Constructor Details
This class inherits a constructor from BCDice::Base
Instance Method Details
#eval_game_system_specific_command(command) ⇒ Object
77 78 79 80 81 82 83 |
# File 'lib/bcdice/game_system/ChaosFlare.rb', line 77 def eval_game_system_specific_command(command) if command.start_with? "FT" roll_fate_table(command) else cf_roll(command) end end |
#result_2d6(total, dice_total, _dice_list, cmp_op, target) ⇒ Object
ゲーム別成功度判定(2D6)。以前の処理をそのまま残しています。
45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 |
# File 'lib/bcdice/game_system/ChaosFlare.rb', line 45 def result_2d6(total, dice_total, _dice_list, cmp_op, target) return nil unless cmp_op == :>= sequence = [] result = Result.new if dice_total <= 2 total -= 20 sequence.push("ファンブル(-20)") result.fumble = true end if target != '?' if total >= target sequence.push("成功") result.success = true else sequence.push("失敗") result.failure = true end if total - target != 0 sequence.push("差分値#{total - target}") end end return Result.nothing if sequence.empty? result.text = sequence.join(" > ") return result end |