From c74769bf6f5ba078332ca8074e5084743236fecb Mon Sep 17 00:00:00 2001 From: hoehoe-git <64144994+hoehoe-git@users.noreply.github.com> Date: Tue, 19 May 2020 23:34:50 +0900 Subject: [PATCH] =?UTF-8?q?TORG=20Eternity=EF=BC=9A=E6=88=90=E5=8A=9F?= =?UTF-8?q?=E3=83=AC=E3=83=99=E3=83=AB=E8=A1=A8=E3=80=81=E3=83=80=E3=83=A1?= =?UTF-8?q?=E3=83=BC=E3=82=B8=E7=B5=90=E6=9E=9C=E8=A1=A8=E3=82=B3=E3=83=9E?= =?UTF-8?q?=E3=83=B3=E3=83=89=E3=81=AE=E4=B8=8D=E5=85=B7=E5=90=88=E3=82=92?= =?UTF-8?q?=E4=BF=AE=E6=AD=A3=20(#200)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * TORG Eternity用ダイスボット新規作成 2020/04/27 ver.1.0 新規作成  * TORG Eternityダイスボット用テストファイル新規作成 2020/04/27 ver.1.0.0 新規作成。TORG Eternity ダイスボット ver.1.0 用 * String#delete_suffix 記述を別処理に置き換え ruby 2.5 以降の機能である String#delete_suffix の記述を抹消し、代替処理を追加。 1. 出力テキストにダイス目テキストを追加する際、","を付けないように変更 2. ループの先頭で、2 回目以降のループ時に出力テキスト末尾に "," を追加 * コード整形ルール:改行コード違反を修正 コード整形ルール:改行コード違反の指摘があったため、改行コードを crlf → lf に変更 * テストケースの重複・類似を修正し、テスト数を削減 テストケースの重複を削除、また類似をまとめ、テスト数を 163 → 95 に削減 * input内容で記述されていた[1...n]を、直接値を記述する形に変更 [1...n]の記述方式は、TORGダイスボットにならったものだったが、値域が問題となるものではないため、直接値を記述する方式とした。 また、直接値を記述することで不要になったrand:欄を空白に変更。 * Revert "input内容で記述されていた[1...n]を、直接値を記述する形に変更" This reverts commit f94b4e1a653fd477b5bccda21c43eeec4e51e250. * input内容で記述されていた[1...n]を、直接値を記述する形に変更 [1...n]の記述方式は、TORGダイスボットにならったものだったが、値域が問題となるものではないため、直接値を記述する方式とした。 また、直接値を記述することで不要になったrand:欄を空白に変更。 * Result/RTコマンド、Damage/DTコマンドで、マイナス値のパラメータを受け付けていなかったのを修正 Result/RTコマンド、Damage/DTコマンドで、パラメータとしてマイナス値を直接入力した際に、コマンドを受け付けていなかったのを修正。 パラメータが計算式で、計算の結果マイナスになる場合は、設計意図通りに動作していた。 が、パラメータにマイナス値を直接入れてのテストケースを作っていなかったため、発見できなかった。 * Revert "Result/RTコマンド、Damage/DTコマンドで、マイナス値のパラメータを受け付けていなかったのを修正" This reverts commit dab21e13201f9f6b5616841d2bc5f70e0c9a55b8. * Result/RTコマンド、Damage/DTコマンドで、マイナス値のパラメータの直接入力を受け付けていなかったのを修正 Result/RTコマンド、Damage/DTコマンドで、パラメータとしてマイナス値を直接入力した際に、コマンドを受け付けていなかったのを修正。 (パラメータが計算式で、計算の結果マイナスになる場合は、設計意図通りに動作) また、テストケースに、マイナス値パラメータの直接入力のケースを追加 * テストケースの改行コードがLFになっていたのを、CRLFに戻した --- src/diceBot/TorgEternity.rb | 4 ++-- src/test/data/TorgEternity.txt | 8 +++++++- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/src/diceBot/TorgEternity.rb b/src/diceBot/TorgEternity.rb index da1fcc58e..8210c8a0c 100644 --- a/src/diceBot/TorgEternity.rb +++ b/src/diceBot/TorgEternity.rb @@ -205,7 +205,7 @@ def getBonusDamageDiceCommandResult(command) # 成功レベル表コマンド def getSuccessLevelDiceCommandResult(command) debug("TorgEternity Success Level Table Command ? ", command) - m = /(RT|Result)(\d+([\+\-]\d+)*)/i.match(command) + m = /(RT|Result)(\-*\d+([\+\-]\d+)*)/i.match(command) debug(Regexp.last_match(2)) unless m debug("None") @@ -227,7 +227,7 @@ def getSuccessLevelDiceCommandResult(command) # ダメージ結果表コマンド def getDamageResultDiceCommandResult(command) debug("TorgEternity Damage Result Table Command ? ", command) - m = /(DT|Damage)(\d+([\+\-]\d+)*)/i.match(command) + m = /(DT|Damage)(\-*\d+([\+\-]\d+)*)/i.match(command) debug(Regexp.last_match(2)) unless m debug("None") diff --git a/src/test/data/TorgEternity.txt b/src/test/data/TorgEternity.txt index 888f55f20..69790b756 100644 --- a/src/test/data/TorgEternity.txt +++ b/src/test/data/TorgEternity.txt @@ -179,6 +179,12 @@ TorgEternity : 成功レベル表[-1] > Failure. rand: ============================ input: +Result-5 +output: +TorgEternity : 成功レベル表[-5] > Failure. +rand: +============================ +input: RT9-2+4 output: TorgEternity : 成功レベル表[11] > Success - Outstanding!! @@ -191,7 +197,7 @@ TorgEternity : ダメージ結果表[-6] > ノーダメージ rand: ============================ input: -Damage3-8 +Damage-5 output: TorgEternity : ダメージ結果表[-5] > 1ショック rand: