diff --git a/src/diceBot/YearZeroEngine.rb b/src/diceBot/YearZeroEngine.rb index 8c28cff4a..fae979420 100644 --- a/src/diceBot/YearZeroEngine.rb +++ b/src/diceBot/YearZeroEngine.rb @@ -6,65 +6,134 @@ class YearZeroEngine < DiceBot ID = 'YearZeroEngine' # ゲームシステム名 - NAME = 'イヤーゼロエンジン' + NAME = 'YearZeroEngine' # ゲームシステム名の読みがな SORT_KEY = 'いやあせろえんしん' # ダイスボットの使い方 HELP_MESSAGE = < 0 + if @total_success_dice >= @difficulty + result_text = "#{result_text} 難易度=#{@difficulty}:判定成功!" + else + result_text = "#{result_text} 難易度=#{@difficulty}:判定失敗!" + end end + return result_text + end - return "#{diceCountText} > #{diceText} 成功数:#{successDice}" + def make_result_with_myz(dice_count_text, dice_text) + result_text = make_result_with_yze(dice_count_text, dice_text) + + return "#{result_text}\n出目1:[能力:#{@base_botch_dice},技能:#{@skill_botch_dice},アイテム:#{@gear_botch_dice}) プッシュ可能=#{@push_dice}ダイス" end - def makeDiceRoll(matchText, successDice) - dice = matchText.to_i - _, diceText, = roll(dice, 6) + def make_dice_roll(dice_pool) + botch_dice = 0 + success_dice = 0 + + _, dice_text, = roll(dice_pool, 6) - diceText.split(',').each do |takeDice| - if takeDice == "6" - successDice += 1 + dice_text.split(',').each do |take_dice| + if take_dice == "6" + success_dice += 1 + elsif take_dice == "1" + botch_dice += 1 end end - return "[#{diceText}]", successDice + return "[#{dice_text}]", success_dice, botch_dice end end diff --git a/src/test/data/YearZeroEngine.txt b/src/test/data/YearZeroEngine.txt index 70d9dc74a..923002bbc 100644 --- a/src/test/data/YearZeroEngine.txt +++ b/src/test/data/YearZeroEngine.txt @@ -92,4 +92,331 @@ input: SYZE1+2+3 output: YearZeroEngine : (1D6)+(2D6)+(3D6) > [2]+[4,6]+[6,1,5] 成功数:2###secret dice### -rand:2/6,4/6,6/6,6/6,1/6,5/6 \ No newline at end of file +rand:2/6,4/6,6/6,6/6,1/6,5/6 +============================ +input: +2YZE3 +output: +YearZeroEngine : (3D6) > [2,5,3] 成功数:0 難易度=2:判定失敗! +rand:2/6,5/6,3/6 +============================ +input: +2YZE3 +output: +YearZeroEngine : (3D6) > [2,6,1] 成功数:1 難易度=2:判定失敗! +rand:2/6,6/6,1/6 +============================ +input: +2YZE3 +output: +YearZeroEngine : (3D6) > [6,6,6] 成功数:3 難易度=2:判定成功! +rand:6/6,6/6,6/6 +============================ +input: +2YZE3+3 +output: +YearZeroEngine : (3D6)+(3D6) > [2,5,3]+[1,4,1] 成功数:0 難易度=2:判定失敗! +rand:2/6,5/6,3/6,1/6,4/6,1/6 +============================ +input: +2YZE3+3 +output: +YearZeroEngine : (3D6)+(3D6) > [2,6,3]+[1,6,1] 成功数:2 難易度=2:判定成功! +rand:2/6,6/6,3/6,1/6,6/6,1/6 +============================ +input: +2YZE3+3 +output: +YearZeroEngine : (3D6)+(3D6) > [6,6,6]+[6,6,6] 成功数:6 難易度=2:判定成功! +rand:6/6,6/6,6/6,6/6,6/6,6/6 +============================ +input: +2YZE3+3+3 +output: +YearZeroEngine : (3D6)+(3D6)+(3D6) > [2,5,3]+[1,4,1]+[3,1,4] 成功数:0 難易度=2:判定失敗! +rand:2/6,5/6,3/6,1/6,4/6,1/6,3/6,1/6,4/6 +============================ +input: +2YZE3+3+3 +output: +YearZeroEngine : (3D6)+(3D6)+(3D6) > [2,5,6]+[1,4,6]+[3,1,6] 成功数:3 難易度=2:判定成功! +rand:2/6,5/6,6/6,1/6,4/6,6/6,3/6,1/6,6/6 +============================ +input: +2YZE3+3+3 +output: +YearZeroEngine : (3D6)+(3D6)+(3D6) > [6,6,6]+[6,6,6]+[6,6,6] 成功数:9 難易度=2:判定成功! +rand:6/6,6/6,6/6,6/6,6/6,6/6,6/6,6/6,6/6 +============================ +input: +2YZE3+2+1 +output: +YearZeroEngine : (3D6)+(2D6)+(1D6) > [2,5,3]+[1,4]+[3] 成功数:0 難易度=2:判定失敗! +rand:2/6,5/6,3/6,1/6,4/6,3/6 +============================ +input: +2YZE3+2+1 +output: +YearZeroEngine : (3D6)+(2D6)+(1D6) > [2,5,6]+[4,6]+[6] 成功数:3 難易度=2:判定成功! +rand:2/6,5/6,6/6,4/6,6/6,6/6 +============================ +input: +2YZE3+2+1 +output: +YearZeroEngine : (3D6)+(2D6)+(1D6) > [6,6,6]+[6,6]+[6] 成功数:6 難易度=2:判定成功! +rand:6/6,6/6,6/6,6/6,6/6,6/6, +============================ +input: +2YZE1+2+3 +output: +YearZeroEngine : (1D6)+(2D6)+(3D6) > [2]+[4,6]+[6,1,5] 成功数:2 難易度=2:判定成功! +rand:2/6,4/6,6/6,6/6,1/6,5/6 +============================ +input: +S2YZE3 +output: +YearZeroEngine : (3D6) > [2,5,3] 成功数:0 難易度=2:判定失敗!###secret dice### +rand:2/6,5/6,3/6 +============================ +input: +S2YZE3+3 +output: +YearZeroEngine : (3D6)+(3D6) > [2,5,3]+[1,4,1] 成功数:0 難易度=2:判定失敗!###secret dice### +rand:2/6,5/6,3/6,1/6,4/6,1/6 +============================ +input: +S2YZE1+2+3 +output: +YearZeroEngine : (1D6)+(2D6)+(3D6) > [2]+[4,6]+[6,1,5] 成功数:2 難易度=2:判定成功!###secret dice### +rand:2/6,4/6,6/6,6/6,1/6,5/6 +============================ +input: +MYZ3 +output: +YearZeroEngine : (3D6) > [2,5,3] 成功数:0 +出目1:[能力:0,技能:0,アイテム:0) プッシュ可能=3ダイス +rand:2/6,5/6,3/6 +============================ +input: +MYZ3 +output: +YearZeroEngine : (3D6) > [2,6,1] 成功数:1 +出目1:[能力:1,技能:0,アイテム:0) プッシュ可能=1ダイス +rand:2/6,6/6,1/6 +============================ +input: +MYZ3 +output: +YearZeroEngine : (3D6) > [6,6,6] 成功数:3 +出目1:[能力:0,技能:0,アイテム:0) プッシュ可能=0ダイス +rand:6/6,6/6,6/6 +============================ +input: +MYZ3+3 +output: +YearZeroEngine : (3D6)+(3D6) > [2,5,3]+[1,4,1] 成功数:0 +出目1:[能力:0,技能:2,アイテム:0) プッシュ可能=6ダイス +rand:2/6,5/6,3/6,1/6,4/6,1/6 +============================ +input: +MYZ3+3 +output: +YearZeroEngine : (3D6)+(3D6) > [2,6,3]+[1,6,1] 成功数:2 +出目1:[能力:0,技能:2,アイテム:0) プッシュ可能=4ダイス +rand:2/6,6/6,3/6,1/6,6/6,1/6 +============================ +input: +MYZ3+3 +output: +YearZeroEngine : (3D6)+(3D6) > [6,6,6]+[6,6,6] 成功数:6 +出目1:[能力:0,技能:0,アイテム:0) プッシュ可能=0ダイス +rand:6/6,6/6,6/6,6/6,6/6,6/6 +============================ +input: +MYZ3+3+3 +output: +YearZeroEngine : (3D6)+(3D6)+(3D6) > [2,5,3]+[1,4,1]+[3,1,4] 成功数:0 +出目1:[能力:0,技能:2,アイテム:1) プッシュ可能=8ダイス +rand:2/6,5/6,3/6,1/6,4/6,1/6,3/6,1/6,4/6 +============================ +input: +MYZ3+3+3 +output: +YearZeroEngine : (3D6)+(3D6)+(3D6) > [2,5,6]+[1,4,6]+[3,1,6] 成功数:3 +出目1:[能力:0,技能:1,アイテム:1) プッシュ可能=5ダイス +rand:2/6,5/6,6/6,1/6,4/6,6/6,3/6,1/6,6/6 +============================ +input: +MYZ3+3+3 +output: +YearZeroEngine : (3D6)+(3D6)+(3D6) > [6,6,6]+[6,6,6]+[6,6,6] 成功数:9 +出目1:[能力:0,技能:0,アイテム:0) プッシュ可能=0ダイス +rand:6/6,6/6,6/6,6/6,6/6,6/6,6/6,6/6,6/6 +============================ +input: +MYZ3+2+1 +output: +YearZeroEngine : (3D6)+(2D6)+(1D6) > [2,5,3]+[1,4]+[3] 成功数:0 +出目1:[能力:0,技能:1,アイテム:0) プッシュ可能=6ダイス +rand:2/6,5/6,3/6,1/6,4/6,3/6 +============================ +input: +MYZ3+2+1 +output: +YearZeroEngine : (3D6)+(2D6)+(1D6) > [2,5,6]+[4,6]+[6] 成功数:3 +出目1:[能力:0,技能:0,アイテム:0) プッシュ可能=3ダイス +rand:2/6,5/6,6/6,4/6,6/6,6/6 +============================ +input: +MYZ3+2+1 +output: +YearZeroEngine : (3D6)+(2D6)+(1D6) > [6,6,6]+[6,6]+[6] 成功数:6 +出目1:[能力:0,技能:0,アイテム:0) プッシュ可能=0ダイス +rand:6/6,6/6,6/6,6/6,6/6,6/6, +============================ +input: +MYZ1+2+3 +output: +YearZeroEngine : (1D6)+(2D6)+(3D6) > [2]+[4,6]+[6,1,5] 成功数:2 +出目1:[能力:0,技能:0,アイテム:1) プッシュ可能=3ダイス +rand:2/6,4/6,6/6,6/6,1/6,5/6 +============================ +input: +SMYZ3 +output: +YearZeroEngine : (3D6) > [2,5,3] 成功数:0 +出目1:[能力:0,技能:0,アイテム:0) プッシュ可能=3ダイス###secret dice### +rand:2/6,5/6,3/6 +============================ +input: +SMYZ3+3 +output: +YearZeroEngine : (3D6)+(3D6) > [2,5,3]+[1,4,1] 成功数:0 +出目1:[能力:0,技能:2,アイテム:0) プッシュ可能=6ダイス###secret dice### +rand:2/6,5/6,3/6,1/6,4/6,1/6 +============================ +input: +SMYZ1+2+3 +output: +YearZeroEngine : (1D6)+(2D6)+(3D6) > [2]+[4,6]+[6,1,5] 成功数:2 +出目1:[能力:0,技能:0,アイテム:1) プッシュ可能=3ダイス###secret dice### +rand:2/6,4/6,6/6,6/6,1/6,5/6 +============================ +input: +2MYZ3 +output: +YearZeroEngine : (3D6) > [2,5,3] 成功数:0 難易度=2:判定失敗! +出目1:[能力:0,技能:0,アイテム:0) プッシュ可能=3ダイス +rand:2/6,5/6,3/6 +============================ +input: +2MYZ3 +output: +YearZeroEngine : (3D6) > [2,6,1] 成功数:1 難易度=2:判定失敗! +出目1:[能力:1,技能:0,アイテム:0) プッシュ可能=1ダイス +rand:2/6,6/6,1/6 +============================ +input: +2MYZ3 +output: +YearZeroEngine : (3D6) > [6,6,6] 成功数:3 難易度=2:判定成功! +出目1:[能力:0,技能:0,アイテム:0) プッシュ可能=0ダイス +rand:6/6,6/6,6/6 +============================ +input: +2MYZ3+3 +output: +YearZeroEngine : (3D6)+(3D6) > [2,5,3]+[1,4,1] 成功数:0 難易度=2:判定失敗! +出目1:[能力:0,技能:2,アイテム:0) プッシュ可能=6ダイス +rand:2/6,5/6,3/6,1/6,4/6,1/6 +============================ +input: +2MYZ3+3 +output: +YearZeroEngine : (3D6)+(3D6) > [2,6,3]+[1,6,1] 成功数:2 難易度=2:判定成功! +出目1:[能力:0,技能:2,アイテム:0) プッシュ可能=4ダイス +rand:2/6,6/6,3/6,1/6,6/6,1/6 +============================ +input: +2MYZ3+3 +output: +YearZeroEngine : (3D6)+(3D6) > [6,6,6]+[6,6,6] 成功数:6 難易度=2:判定成功! +出目1:[能力:0,技能:0,アイテム:0) プッシュ可能=0ダイス +rand:6/6,6/6,6/6,6/6,6/6,6/6 +============================ +input: +2MYZ3+3+3 +output: +YearZeroEngine : (3D6)+(3D6)+(3D6) > [2,5,3]+[1,4,1]+[3,1,4] 成功数:0 難易度=2:判定失敗! +出目1:[能力:0,技能:2,アイテム:1) プッシュ可能=8ダイス +rand:2/6,5/6,3/6,1/6,4/6,1/6,3/6,1/6,4/6 +============================ +input: +2MYZ3+3+3 +output: +YearZeroEngine : (3D6)+(3D6)+(3D6) > [2,5,6]+[1,4,6]+[3,1,6] 成功数:3 難易度=2:判定成功! +出目1:[能力:0,技能:1,アイテム:1) プッシュ可能=5ダイス +rand:2/6,5/6,6/6,1/6,4/6,6/6,3/6,1/6,6/6 +============================ +input: +2MYZ3+3+3 +output: +YearZeroEngine : (3D6)+(3D6)+(3D6) > [6,6,6]+[6,6,6]+[6,6,6] 成功数:9 難易度=2:判定成功! +出目1:[能力:0,技能:0,アイテム:0) プッシュ可能=0ダイス +rand:6/6,6/6,6/6,6/6,6/6,6/6,6/6,6/6,6/6 +============================ +input: +2MYZ3+2+1 +output: +YearZeroEngine : (3D6)+(2D6)+(1D6) > [2,5,3]+[1,4]+[3] 成功数:0 難易度=2:判定失敗! +出目1:[能力:0,技能:1,アイテム:0) プッシュ可能=6ダイス +rand:2/6,5/6,3/6,1/6,4/6,3/6 +============================ +input: +2MYZ3+2+1 +output: +YearZeroEngine : (3D6)+(2D6)+(1D6) > [2,5,6]+[4,6]+[6] 成功数:3 難易度=2:判定成功! +出目1:[能力:0,技能:0,アイテム:0) プッシュ可能=3ダイス +rand:2/6,5/6,6/6,4/6,6/6,6/6 +============================ +input: +2MYZ3+2+1 +output: +YearZeroEngine : (3D6)+(2D6)+(1D6) > [6,6,6]+[6,6]+[6] 成功数:6 難易度=2:判定成功! +出目1:[能力:0,技能:0,アイテム:0) プッシュ可能=0ダイス +rand:6/6,6/6,6/6,6/6,6/6,6/6, +============================ +input: +2MYZ1+2+3 +output: +YearZeroEngine : (1D6)+(2D6)+(3D6) > [2]+[4,6]+[6,1,5] 成功数:2 難易度=2:判定成功! +出目1:[能力:0,技能:0,アイテム:1) プッシュ可能=3ダイス +rand:2/6,4/6,6/6,6/6,1/6,5/6 +============================ +input: +S2MYZ3 +output: +YearZeroEngine : (3D6) > [2,5,3] 成功数:0 難易度=2:判定失敗! +出目1:[能力:0,技能:0,アイテム:0) プッシュ可能=3ダイス###secret dice### +rand:2/6,5/6,3/6 +============================ +input: +S2MYZ3+3 +output: +YearZeroEngine : (3D6)+(3D6) > [2,5,3]+[1,4,1] 成功数:0 難易度=2:判定失敗! +出目1:[能力:0,技能:2,アイテム:0) プッシュ可能=6ダイス###secret dice### +rand:2/6,5/6,3/6,1/6,4/6,1/6 +============================ +input: +S2MYZ1+2+3 +output: +YearZeroEngine : (1D6)+(2D6)+(3D6) > [2]+[4,6]+[6,1,5] 成功数:2 難易度=2:判定成功! +出目1:[能力:0,技能:0,アイテム:1) プッシュ可能=3ダイス###secret dice### +rand:2/6,4/6,6/6,6/6,1/6,5/6 +============================ +input: +2MYZ3+3+3 +output: +YearZeroEngine : (3D6)+(3D6)+(3D6) > [1,6,3]+[1,4,1]+[3,1,4] 成功数:1 難易度=2:判定失敗! +出目1:[能力:1,技能:2,アイテム:1) プッシュ可能=6ダイス +rand:1/6,6/6,3/6,1/6,4/6,1/6,3/6,1/6,4/6 \ No newline at end of file