Class: BCDice::GameSystem::ShinkuuGakuen
- Defined in:
- lib/bcdice/game_system/ShinkuuGakuen.rb
Constant Summary collapse
- ID =
ゲームシステムの識別子
'ShinkuuGakuen'
- NAME =
ゲームシステム名
'真空学園'
- SORT_KEY =
ゲームシステム名の読みがな
'しんくうかくえん'
- HELP_MESSAGE =
ダイスボットの使い方
<<~MESSAGETEXT ・判定 RLx:技能ベースxで技能チェックのダイスロール RLx>=y:この書式なら目標値 y で判定結果出力 例)RL10 RL22>=50 ・武器攻撃 (武器記号)(技能ベース値) 例)SW10 BX30 武器を技能ベースでダイスロール。技発動までチェック。 武器記号は以下の通り SW:剣、LS:大剣、SS:小剣、SP:槍、 AX:斧、CL:棍棒、BW:弓、MA:体術、 BX:ボクシング、PR:プロレス、ST:幽波紋 ・カウンター攻撃 カウンター技は武器記号の頭に「C」をつけるとロール可能。 例)CSW10 CBX76 MESSAGETEXT
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
- #getJudgeDiceList ⇒ Object
- #getRandMartialArtCounter ⇒ Object
- #getSkillText(first, diff, isWeapon) ⇒ Object
- #getSuccessText(allTotal, diff, diceList, isWeapon) ⇒ Object
- #getWeaponSkillText(weaponTable, dice) ⇒ Object
- #getWeaponTable(weaponCommand) ⇒ Object
- #getWeaponTableAx ⇒ Object
- #getWeaponTableAxCounter ⇒ Object
- #getWeaponTableBow ⇒ Object
- #getWeaponTableBoxing ⇒ Object
- #getWeaponTableBoxingCounter ⇒ Object
- #getWeaponTableClub ⇒ Object
- #getWeaponTableClubCounter ⇒ Object
- #getWeaponTableLongSword ⇒ Object
- #getWeaponTableLongSwordCounter ⇒ Object
- #getWeaponTableMartialArt ⇒ Object
- #getWeaponTableMartialArtCounter ⇒ Object
- #getWeaponTableProWrestling ⇒ Object
- #getWeaponTableProWrestlingCounter ⇒ Object
- #getWeaponTableShortSword ⇒ Object
- #getWeaponTableShortSwordCounter ⇒ Object
- #getWeaponTableSpear ⇒ Object
- #getWeaponTableSpearCounter ⇒ Object
- #getWeaponTableStand ⇒ Object
- #getWeaponTableStandCounter ⇒ Object
- #getWeaponTableSword ⇒ Object
- #getWeaponTableSwordCounter ⇒ Object
- #rollJudge(base, diff, weaponInfo) ⇒ Object
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
41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 |
# File 'lib/bcdice/game_system/ShinkuuGakuen.rb', line 41 def eval_game_system_specific_command(command) m = /^([A-Z]+)([+-]?\d+)?(?:>=(\d+))?$/i.match(command) unless m return nil end weaponCommand = m[1] base = m[2].to_i diff = m[3] weaponInfo = getWeaponTable(weaponCommand) output_msg = rollJudge(base, diff, weaponInfo) return output_msg end |
#getJudgeDiceList ⇒ Object
81 82 83 84 85 86 87 88 89 90 91 92 93 94 |
# File 'lib/bcdice/game_system/ShinkuuGakuen.rb', line 81 def getJudgeDiceList diceList = [] loop do value = @randomizer.roll_once(100) diceList << value rank01 = value % 10 debug("rank01", rank01) break unless rank01 == 0 end return diceList end |
#getRandMartialArtCounter ⇒ Object
387 388 389 390 391 392 393 394 395 396 397 398 399 |
# File 'lib/bcdice/game_system/ShinkuuGakuen.rb', line 387 def getRandMartialArtCounter value = @randomizer.roll_once(10) dice = value * 10 + value dice = 100 if value == 110 tableInfo = getWeaponTableMartialArt weaponTable = tableInfo[:table] result = " > (#{value})" result += getWeaponSkillText(weaponTable, dice) return result end |
#getSkillText(first, diff, isWeapon) ⇒ Object
120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 |
# File 'lib/bcdice/game_system/ShinkuuGakuen.rb', line 120 def getSkillText(first, diff, isWeapon) result = '' return result if isWeapon result = ' > ' return result unless first == 10 result += "技能なし:ファンブル" return result if diff.nil? result += "/技能あり:" return result\ end |
#getSuccessText(allTotal, diff, diceList, isWeapon) ⇒ Object
96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 |
# File 'lib/bcdice/game_system/ShinkuuGakuen.rb', line 96 def getSuccessText(allTotal, diff, diceList, isWeapon) first = diceList.first return '' if first.nil? return " > ファンブル" if first <= 9 if diff.nil? && (first != 10) return '' end result = '' skillText = getSkillText(first, diff, isWeapon) result += skillText unless diff.nil? result += ' > ' if skillText.empty? success = (allTotal >= diff.to_i ? "成功" : "失敗") result += success.to_s end return result end |
#getWeaponSkillText(weaponTable, dice) ⇒ Object
482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 |
# File 'lib/bcdice/game_system/ShinkuuGakuen.rb', line 482 def getWeaponSkillText(weaponTable, dice) debug('getWeaponSkillText', dice) return '' if weaponTable.nil? preName = '' preEffect = '' weaponTable.each do |index, name, effect| name ||= preName preName = name effect ||= preEffect preEffect = effect next unless index == (dice % 100) return " > 「#{name}」#{effect}" end return '' end |
#getWeaponTable(weaponCommand) ⇒ Object
136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 |
# File 'lib/bcdice/game_system/ShinkuuGakuen.rb', line 136 def getWeaponTable(weaponCommand) debug('getWeaponTable weaponCommand', weaponCommand) case weaponCommand.upcase when 'SW' return getWeaponTableSword when 'CSW' return getWeaponTableSwordCounter when 'LS' return getWeaponTableLongSword when 'CLS' return getWeaponTableLongSwordCounter when 'SS' return getWeaponTableShortSword when 'CSS' return getWeaponTableShortSwordCounter when 'SP' return getWeaponTableSpear when 'CSP' return getWeaponTableSpearCounter when 'AX' return getWeaponTableAx when 'CAX' return getWeaponTableAxCounter when 'CL' return getWeaponTableClub when 'CCL' return getWeaponTableClubCounter when 'BW' return getWeaponTableBow when 'MA' return getWeaponTableMartialArt when 'CMA' return getWeaponTableMartialArtCounter when 'BX' return getWeaponTableBoxing when 'CBX' return getWeaponTableBoxingCounter when 'PR' return getWeaponTableProWrestling when 'CPR' return getWeaponTableProWrestlingCounter when 'ST' return getWeaponTableStand when 'CST' return getWeaponTableStandCounter end return {name: '判定', table: nil} end |
#getWeaponTableAx ⇒ Object
292 293 294 295 296 297 298 299 300 301 302 303 304 |
# File 'lib/bcdice/game_system/ShinkuuGakuen.rb', line 292 def getWeaponTableAx {name: '斧', table: [[11, '一人時間差', '防御行動ー100'], [22, 'トマホーク', 'カウンター不可'], [33, '大木断', 'ダメージ2倍'], [44, 'ブレードロール', '全体攻撃'], [55, 'マキ割りスペシャル', '盾受け不可、B・D'], [66, 'ヨーヨー', 'カウンター不可、2連続攻撃'], [77, 'メガホーク', 'カウンター不可、全体攻撃、攻撃量2倍'], [88, 'デッドリースピン', '回避不可、攻撃量5倍'], [99, 'マキ割りダイナミック', '盾受け不可、ダメージ2倍、B・D、ターンの最後に命中'], [0, '高速ナブラ', '回避不可、カウンター不可、攻撃量3倍、B・D'],]} end |
#getWeaponTableAxCounter ⇒ Object
306 307 308 309 310 311 312 313 314 315 |
# File 'lib/bcdice/game_system/ShinkuuGakuen.rb', line 306 def getWeaponTableAxCounter {name: '斧カウンター', table: [[44, '真っ向唐竹割り', 'クロスカウンター、B・D'], [55, nil, nil], [66, nil, nil], [77, nil, nil], [88, nil, nil], [99, nil, nil], [0, nil, nil],]} end |
#getWeaponTableBow ⇒ Object
345 346 347 348 349 350 351 352 353 354 355 356 357 |
# File 'lib/bcdice/game_system/ShinkuuGakuen.rb', line 345 def getWeaponTableBow {name: '弓', table: [[11, '影縫い', '麻痺効果「注意力」0'], [22, 'アローレイン', '全体攻撃・回避ー50'], [33, '速射', '2連続攻撃'], [44, '瞬速の矢', '防御不可'], [55, 'バラージシュート', '全体攻撃・盾受け不可・攻撃量2倍'], [66, '貫きの矢', '防御力無視、B・D'], [77, '落鳳波', '回避不可、B・D'], [88, '皆死ね矢', '全体攻撃、気絶効果「根性」5'], [99, 'ミリオンダラー', '三連続攻撃'], [0, '夢想弓', 'B・D、ダメージ3倍'],]} end |
#getWeaponTableBoxing ⇒ Object
401 402 403 404 405 406 407 408 409 410 411 412 413 |
# File 'lib/bcdice/game_system/ShinkuuGakuen.rb', line 401 def getWeaponTableBoxing {name: 'ボクシング', table: [[11, 'ワン・ツー', '2連続攻撃・2攻撃目盾受け、回避不可'], [22, 'リバーブロー', '麻痺効果「根性」5'], [33, 'フリッカー', '2連続攻撃・全て盾受け、カウンター不可'], [44, 'コークスクリューブロー', '防御力無視、ダメージ3倍'], [55, 'レイ・ガン', '全体攻撃、B・D、陽属性魔法攻撃'], [66, 'ショットガンブロー', '攻撃量10倍'], [77, 'ハートブレイクショット', '2連続攻撃・1攻撃目防御力無視、ダメージ3倍・2撃目敵無防備'], [88, 'デンプシーロール', '3連続攻撃・全てB・D'], [99, 'フラッシュピストンマッハパンチ', '全体攻撃、B・D、気絶効果「根性」5'], [0, '右', '防御力無視、ダメージ10倍'],]} end |
#getWeaponTableBoxingCounter ⇒ Object
415 416 417 418 419 420 421 422 423 424 425 426 427 |
# File 'lib/bcdice/game_system/ShinkuuGakuen.rb', line 415 def getWeaponTableBoxingCounter {name: 'ボクシングカウンター', table: [[11, 'ダッキングブロー', 'カウンター'], [22, 'ジョルトカウンター', 'クロスカウンター、B・D'], [33, nil, nil], [44, nil, nil], [55, nil, nil], [66, nil, nil], [77, nil, nil], [88, nil, nil], [99, nil, nil], [0, 'ノーガード戦法', '攻撃の無効化、次ターン以降は自分の盾受け、回避不可、全ての攻撃にB・D'],]} end |
#getWeaponTableClub ⇒ Object
317 318 319 320 321 322 323 324 325 326 327 328 329 |
# File 'lib/bcdice/game_system/ShinkuuGakuen.rb', line 317 def getWeaponTableClub {name: '棍棒', table: [[11, 'ハードヒット', '防御力無視'], [22, 'ダブルヒット', '2連続攻撃'], [33, '回転撃', '防御判定ー100'], [44, '飛翔脳天撃', '麻痺効果「根性」5'], [55, '削岩撃', '盾受け不可、攻撃量3倍'], [66, '地裂撃', '防御力無視、カウンター不可、盾受け不可、スタン効果「注意力」0'], [77, 'トリプルヒット', '3連続攻撃'], [88, '亀甲羅割り', '防御力半分、盾受け不可、B・D'], [99, '叩きつぶす', '防御力無視、防御行動、カウンター不可、B・D'], [0, 'グランドクロス', '防御無視、盾、カウンター不可、ダメージ2倍、B・D、全体攻撃'],]} end |
#getWeaponTableClubCounter ⇒ Object
331 332 333 334 335 336 337 338 339 340 341 342 343 |
# File 'lib/bcdice/game_system/ShinkuuGakuen.rb', line 331 def getWeaponTableClubCounter {name: '棍棒カウンター', table: [[11, 'ブロッキング', '攻撃の無効化'], [22, nil, nil], [33, nil, nil], [44, nil, nil], [55, nil, nil], [66, 'ジャストミート', '飛び道具のみカウンター'], [77, nil, nil], [88, nil, nil], [99, 'ホームラン', 'すべての攻撃に対するカウンター'], [0, nil, nil],]} end |
#getWeaponTableLongSword ⇒ Object
213 214 215 216 217 218 219 220 221 222 223 224 225 |
# File 'lib/bcdice/game_system/ShinkuuGakuen.rb', line 213 def getWeaponTableLongSword {name: '大剣', table: [[11, 'スマッシュ', '敵防御半分'], [22, '峰打ち', '麻痺硬化「根性」0'], [33, '水鳥剣', '敵防御判定ー50'], [44, 'ブルクラッシュ', '敵防御力無視'], [55, '逆風の太刀', 'カウンター不可、ダメージ2倍'], [66, '濁流剣', '回避不可、カウンター不可、B・D'], [77, '清流剣', '回避不可、カウンター不可、B・D'], [88, '燕返し', '2連続攻撃・2撃目カウンター不可、B・D'], [99, '地ずり残月', '盾受け不可、ダメージ3倍、B・D'], [0, '乱れ雪月花', '3連続攻撃・三撃目敵無防備、ダメージ3倍、防御力無視、B・D'],]} end |
#getWeaponTableLongSwordCounter ⇒ Object
227 228 229 230 231 232 233 234 235 236 237 238 |
# File 'lib/bcdice/game_system/ShinkuuGakuen.rb', line 227 def getWeaponTableLongSwordCounter {name: '大剣カウンター', table: [[22, '無形の位', '攻撃の無効化'], [33, nil, nil], [44, nil, nil], [55, '双破', 'クロスカウンター、B・D'], [66, nil, nil], [77, nil, nil], [88, '喪心無想', 'カウンター、攻撃量6倍'], [99, nil, nil], [0, nil, nil],]} end |
#getWeaponTableMartialArt ⇒ Object
359 360 361 362 363 364 365 366 367 368 369 370 371 |
# File 'lib/bcdice/game_system/ShinkuuGakuen.rb', line 359 def getWeaponTableMartialArt {name: '体術', table: [[11, '集気法', '通常ダメージ分自分のHP回復'], [22, 'コンビネーション', '2連続攻撃'], [33, '逆一本', '盾受け不可、防御力半分、スタン効果「根性」0'], [44, 'コークスクリューブロー', '防御力無視、ダメージ3倍'], [55, '練気拳', '全体攻撃・回避不可'], [66, 'バベルクランプル', '盾受け不可、B・D'], [77, 'マシンガンジャブ', '3連続攻撃'], [88, 'ナイアガラフォール', '盾受け不可、B・D、ダメージ2倍'], [99, '羅刹掌', '防御力無視、防御不可、B・D、ダメージ3倍'], [0, '千手観音', '5連続攻撃、すべてカウンター不可'],]} end |
#getWeaponTableMartialArtCounter ⇒ Object
373 374 375 376 377 378 379 380 381 382 383 384 385 |
# File 'lib/bcdice/game_system/ShinkuuGakuen.rb', line 373 def getWeaponTableMartialArtCounter {name: '体術カウンター', table: [[11, 'スウェイバック', '攻撃の無効化'], [22, nil, nil], [33, '当て身投げ', 'カウンター'], [44, nil, nil], [55, nil, nil], [66, 'ジョルトカウンター', 'クロスカウンター、B・D'], [77, nil, nil], [88, nil, nil], [99, 'ガードキャンセル', 'D10で振った必殺技によるカウンター' + getRandMartialArtCounter], [0, nil, nil],]} end |
#getWeaponTableProWrestling ⇒ Object
429 430 431 432 433 434 435 436 437 438 439 440 441 |
# File 'lib/bcdice/game_system/ShinkuuGakuen.rb', line 429 def getWeaponTableProWrestling {name: 'プロレス', table: [[11, 'ボディスラム', '盾受け不可'], [22, 'ドロップキック', 'B・D'], [33, '水車落とし', '盾受け不可、成功度+5'], [44, 'ナックルアロー', 'B・D、麻痺効果「根性」5'], [55, 'ワン・ツー・エルボー', '2連続攻撃'], [66, 'バックドロップ', '盾受け不可、ダメージ2倍'], [77, '投げっ放しジャーマン', '盾受け不可、防御力無視、成功度+5'], [88, 'パワーボム', '盾受け不可、ダメージ2倍、B・D'], [99, 'デスバレーボム', '盾受け不可、防御力無視、ダメージ2倍、気絶効果「根性」5'], [0, 'ジャックハマー', '盾受け不可、防御力無視、ダメージ3倍、成功度+10'],]} end |
#getWeaponTableProWrestlingCounter ⇒ Object
443 444 445 446 447 448 449 450 451 452 |
# File 'lib/bcdice/game_system/ShinkuuGakuen.rb', line 443 def getWeaponTableProWrestlingCounter {name: 'プロレスカウンター', table: [[22, 'パワースラム', 'カウンター'], [55, 'アックスボンバー', 'カウンター、B・D'], [66, nil, nil], [77, nil, nil], [88, nil, nil], [99, nil, nil], [0, nil, nil],]} end |
#getWeaponTableShortSword ⇒ Object
240 241 242 243 244 245 246 247 248 249 250 251 252 |
# File 'lib/bcdice/game_system/ShinkuuGakuen.rb', line 240 def getWeaponTableShortSword {name: '小剣', table: [[11, '乱れ突き', '2連続攻撃'], [22, 'フェイクタング', 'スタン効果「注意力」5'], [33, 'マインドステア', '麻痺効果「注意力」0'], [44, 'サイドワインダー', '成功度+3、盾受け不可'], [55, 'スクリュードライバー', '防御力無視、ダメージ2倍'], [66, 'ニードルロンド', '3連続攻撃'], [77, 'プラズマブラスト', '麻痺効果「根性」0、B・D'], [88, 'サザンクロス', '麻痺効果「根性」5、攻撃量2倍'], [99, 'ファイナルレター', '気絶効果「根性」0、回避不可、カウンター不可、B・D'], [0, '百花繚乱', '回避不可、盾受け不可、攻撃量3倍、B・D'],]} end |
#getWeaponTableShortSwordCounter ⇒ Object
254 255 256 257 258 259 260 261 262 263 264 265 266 |
# File 'lib/bcdice/game_system/ShinkuuGakuen.rb', line 254 def getWeaponTableShortSwordCounter {name: '小剣カウンター', table: [[11, 'リポスト', 'カウンター'], [22, nil, nil], [33, nil, nil], [44, nil, nil], [55, nil, nil], [66, nil, nil], [77, nil, nil], [88, 'マタドール', 'カウンター、麻痺効果「注意力」5'], [99, nil, nil], [0, 'マリオネット', '攻撃の相手を変える'],]} end |
#getWeaponTableSpear ⇒ Object
268 269 270 271 272 273 274 275 276 277 278 279 280 |
# File 'lib/bcdice/game_system/ShinkuuGakuen.rb', line 268 def getWeaponTableSpear {name: '槍', table: [[11, 'チャージ', 'ダメージ1.5倍、盾受けー30'], [22, '稲妻突き', '回避不可'], [33, '脳削り', '麻痺効果「根性」0'], [44, '大車輪', '全体攻撃'], [55, '狂乱撃', '二回攻撃'], [66, 'スパイラルチャージ', '盾受け不可、ダメージ2倍、B・D'], [77, '双龍波', 'スタン効果「注意力」5、盾受け不可、B・D'], [88, '流星衝', 'カウンター不可、ダメージ3倍、次行動まで攻撃対象にならない'], [99, 'ランドスライサー', '全体攻撃、回避不可、カウンター不可、B・D'], [0, '無双三段', '三段攻撃、二段目B・D、三段目ダメージ2倍、B・D'],]} end |
#getWeaponTableSpearCounter ⇒ Object
282 283 284 285 286 287 288 289 290 |
# File 'lib/bcdice/game_system/ShinkuuGakuen.rb', line 282 def getWeaponTableSpearCounter {name: '槍カウンター', table: [[55, '風車', 'カウンター、ダメージ2倍'], [66, nil, nil], [77, nil, nil], [88, nil, nil], [99, nil, nil], [0, nil, nil],]} end |
#getWeaponTableStand ⇒ Object
454 455 456 457 458 459 460 461 462 463 464 465 466 |
# File 'lib/bcdice/game_system/ShinkuuGakuen.rb', line 454 def getWeaponTableStand {name: '幽波紋', table: [[11, 'SILER CHARIOT', '攻撃量5倍、刺しタイプ攻撃'], [22, 'TOWER OF GRAY', '防御力無視'], [33, 'DARK BLUE MOON', '全体攻撃、攻撃量2倍、水属性斬りタイプ攻撃'], [44, 'EMPEROR', '回避不可、盾受け不可、カウンター不可、飛び道具攻撃'], [55, 'MAGICIAN\'s RED', 'ダメージ2倍、B・D、火属性魔法攻撃'], [66, 'DEATH 13', 'ダメージ0、全体攻撃、気絶効果「根性」5'], [77, 'HIEROPHANT GREEN', '全体攻撃、B・D、水属性攻撃'], [88, 'VANILLA ICE CREAM', '盾受け不可、カウンター不可、防御力無視、ダメージ3倍、B・D'], [99, 'THE WORLD', '5連続攻撃、全て敵無防備'], [0, 'STAR PLATINUM', '攻撃量15倍、B・D'],]} end |
#getWeaponTableStandCounter ⇒ Object
468 469 470 471 472 473 474 475 476 477 478 479 480 |
# File 'lib/bcdice/game_system/ShinkuuGakuen.rb', line 468 def getWeaponTableStandCounter {name: '幽波紋カウンター', table: [[11, 'ANUBIS', '技のみカウンター、ダメージ(カウンターした回数の2乗)倍、斬りタイプ攻撃'], [22, nil, nil], [33, nil, nil], [44, nil, nil], [55, nil, nil], [66, 'YELLOW TEMPERANE', '魔法・飛び道具含めて全ての攻撃を無効化'], [77, nil, nil], [88, nil, nil], [99, nil, nil], [0, nil, nil],]} end |
#getWeaponTableSword ⇒ Object
187 188 189 190 191 192 193 194 195 196 197 198 199 |
# File 'lib/bcdice/game_system/ShinkuuGakuen.rb', line 187 def getWeaponTableSword {name: '剣', table: [[11, '失礼剣', '成功度+5'], [22, '隼斬り', '回避不可'], [33, 'みじん斬り', '攻撃量2倍'], [44, '天地二段', '2連続攻撃'], [55, '波動剣', 'カウンター不可、B・D'], [66, '疾風剣', '攻撃量3倍、盾受けー100'], [77, '残像剣', '全体攻撃、B・D'], [88, '五月雨斬り」', '回避不可.ダメージ3倍'], [99, 'ライジングノヴア」', '2連続攻撃・2撃目敵無防備、B・D'], [0, '光速剣', '攻撃量3倍、盾受け不可、カウンター不可、B・D'],]} end |
#getWeaponTableSwordCounter ⇒ Object
201 202 203 204 205 206 207 208 209 210 211 |
# File 'lib/bcdice/game_system/ShinkuuGakuen.rb', line 201 def getWeaponTableSwordCounter {name: '剣カウンター', table: [[33, 'パリィ', '攻撃の無効化'], [44, nil, nil], [55, nil, nil], [66, 'かすみ青眼', 'カウンター'], [77, nil, nil], [88, nil, nil], [99, nil, nil], [0, '不動剣', 'クロスカウンター、B・D、ダメージ2倍'],]} end |
#rollJudge(base, diff, weaponInfo) ⇒ Object
57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 |
# File 'lib/bcdice/game_system/ShinkuuGakuen.rb', line 57 def rollJudge(base, diff, weaponInfo) debug("rollJudge base", base) debug("rollJudge diff", diff) weaponName = weaponInfo[:name] weaponTable = weaponInfo[:table] diceList = getJudgeDiceList total = diceList.sum() allTotal = total + base diffText = diff.nil? ? "" : ">=#{diff}" result = "(#{weaponName}:#{base}#{diffText}) > 1D100+#{base} > #{total}" result += "[#{diceList.join(',')}]" if diceList.length >= 2 result += "+#{base}" result += " > #{allTotal}" result += getSuccessText(allTotal, diff, diceList, weaponTable) result += getWeaponSkillText(weaponTable, diceList.max) debug("check_1D100 result", result) return result end |