Class: BCDice::GameSystem::NinjaSlayer2
- Defined in:
- lib/bcdice/game_system/NinjaSlayer2.rb
Constant Summary collapse
- ID =
ゲームシステムの識別子
"NinjaSlayer2"
- NAME =
ゲームシステム名
"ニンジャスレイヤーTRPG 2版"
- SORT_KEY =
ゲームシステム名の読みがな
"にんしやすれいやあTRPG2"
- HELP_MESSAGE =
<<~TEXT - K{x1},{x2},...,{xn} 難易度K([K]ids)の成功判定({x1}B6>=2)を、ダイス{x1}個({x2}~を指定した場合はそれぞれ個々に)で実行します。 先頭の文字を変えることで、難易度E([E]asy),N([N]ormal),H([H]ard),U([U]ltra-hard)もしくはUH([U]ltra-[H]ard)でも実行可能です。(以下も同様) - K{x1},{x2},...,{xn}[>={y}] K{x1}のロールの結果を使って、[]内で指定された条件を満たすダイスの個数を追加で出力します。 判定式は「>=」の他に「>」「<=」「<」「=」「!=」が利用可能です。 [=5][=6]のように複数記述することで、それぞれで追加判定が可能です。 - K{x1},{x2},...,{xn}[S] or K{x1},{x2},...,{xn}[S{y}] - K{x1},{x2},...,{xn}[C] or K{x1},{x2},...,{xn}[C{y}] いずれもK{x1},{x2},...,{xn}[>={y}]のショートカットです。({y}省略時は固定値6で処理します。) 出力時のテキストが、Sの場合は「サツバツ!」に、Cの場合は「クリティカル!」になります。 こちらも複数記述することで、それぞれで追加判定が可能です。 - SB or SB@{x} {x}(1-6/省略時はd6)に対応したサツバツ([S]atz-[B]atz)・クリティカル表の内容を返します。 - WS{x} {x}(1-12/省略不可)に対応する[W]as[s]hoi!判定(2d6<={x})を行います - WSE or WSE@{x} {x}(1-6/省略時はd6)に対応する死神のエントリー決定表([W]as[s]hoi! [E]ntry)の内容を返します。 - NRS_E{x} or NRS_E{x}@{y} or NRS@{y} ダイス{x}個で難易度[E]asy(>=3)のNRS判定({x}省略時はスキップ)を行い、失敗した場合は{y}(1~7/省略時は難易度に応じたダイス目)に対応するNRS発狂表を返します。 「_E」部分を変更することで、難易度N,H,U,UHでも利用可能です。(Kはありません) 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) ⇒ String?
Base::eval_game_system_specific_commandの実装.
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) ⇒ String?
Base::eval_game_system_specific_commandの実装
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 |
# File 'lib/bcdice/game_system/NinjaSlayer2.rb', line 48 def eval_game_system_specific_command(command) # @debug = true debug("input: #{command}") begin case command when RE_JUDGE_DICEROLL # 2版用のダイス判定 proc_result = proc_dice_2nd(Regexp.last_match) # 結果は文字列と達成値という形で受け取る if proc_result[1] > 0 return Result.success(proc_result[0]) else return Result.failure(proc_result[0]) end else # ダイスでなければ定型文処理 return proc_text(command) end rescue StandardError => e # 解析できずにエラーが出たら構文ミスと皆してnilを返す debug("#{e.} \n#{e.backtrace}") return nil end end |