Class: BCDice::GameSystem::ShinobiGami
- Defined in:
- lib/bcdice/game_system/ShinobiGami.rb
Constant Summary collapse
- ID =
ゲームシステムの識別子
'ShinobiGami'
- NAME =
ゲームシステム名
'シノビガミ'
- SORT_KEY =
ゲームシステム名の読みがな
'しのひかみ'
- HELP_MESSAGE =
ダイスボットの使い方
<<~INFO_MESSAGE_TEXT ・行為判定 SG@s#f>=x 2D6の行為判定を行う s: スペシャル値 (省略時 12) f: ファンブル値 (省略時 2) x: 目標値 (省略可) 例)SG, SG@11, SG@11#3, SG#3>=7 ・各種表 ・(無印)シーン表 ST/ファンブル表 FT/感情表 ET /変調表 WT/戦場表 BT/異形表 MT ・ランダム特技決定表 RTTn (n:分野番号、省略可能) 1器術 2体術 3忍術 4謀術 5戦術 6妖術 ・ランダム分野表 RCT ・(弐)都市シーン表 CST/館シーン表 MST/出島シーン表 DST ・(参)トラブルシーン表 TST/日常シーン表 NST/回想シーン表 KST ・(死)東京シーン表 TKST/戦国シーン表 GST ・(乱)戦国変調表 GWT ・(リプレイ戦1〜2巻)学校シーン表 GAST/京都シーン表 KYST /神社仏閣シーン表 JBST ・(怪)怪ファンブル表 KFT/怪変調表 KWT ・(その他)秋空に雪舞えばシーン表 AKST/災厄シーン表 CLST /出島EXシーン表 DXST/斜歯ラボシーン表 HLST /夏の終わりシーン表 NTST/培養プラントシーン表 PLST ・忍秘伝 中忍試験シーン表 HC/滅びの塔シーン表 HT/影の街でシーン表 HK /夜行列車シーン表 HY/病院シーン表 HO/龍動シーン表 HR/密室シーン表 HM/催眠シーン表 HS ・D66ダイスあり INFO_MESSAGE_TEXT
- SPECIAL =
"スペシャル(【生命力】1点か変調一つを回復)"
- 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
- #eval_game_system_specific_command(command) ⇒ Object
-
#initialize(command) ⇒ ShinobiGami
constructor
A new instance of ShinobiGami.
- #result_2d6(total, dice_total, _dice_list, cmp_op, target) ⇒ Object
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
Constructor Details
#initialize(command) ⇒ ShinobiGami
Returns a new instance of ShinobiGami.
46 47 48 49 50 51 |
# File 'lib/bcdice/game_system/ShinobiGami.rb', line 46 def initialize(command) super(command) @sort_add_dice = true @d66_sort_type = D66SortType::ASC end |
Instance Method Details
#eval_game_system_specific_command(command) ⇒ Object
73 74 75 76 77 78 79 |
# File 'lib/bcdice/game_system/ShinobiGami.rb', line 73 def eval_game_system_specific_command(command) result = action_roll(command) || roll_tables(command, TABLES) || RTT.roll_command(@randomizer, command) return result if result return () if command == 'MT' nil end |
#result_2d6(total, dice_total, _dice_list, cmp_op, target) ⇒ Object
55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 |
# File 'lib/bcdice/game_system/ShinobiGami.rb', line 55 def result_2d6(total, dice_total, _dice_list, cmp_op, target) return nil unless cmp_op == :>= if dice_total <= 2 Result.fumble("ファンブル") elsif dice_total >= 12 Result.critical(SPECIAL) elsif target == "?" nil elsif total >= target Result.success("成功") else Result.failure("失敗") end end |