We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
特定システムで 2d>= のように目標値無しのコマンドで例外が発生する。
2d>=
============================ input: 2d6>= 目標値無し output: Insane : (2D6>=) > 7[3,4] > 7 > 失敗 rand:3/6,4/6 ============================
[Failures] Game type: Insane Index: 61 Exception: comparison of Integer with String failed Backtrace: C:/Users/blhsr/workspace/BCDice/lib/bcdice/game_system/Insane.rb:72:in `>=' C:/Users/blhsr/workspace/BCDice/lib/bcdice/game_system/Insane.rb:72:in `check_2D6' C:/Users/blhsr/workspace/BCDice/lib/bcdice/base.rb:306:in `check_result' C:/Users/blhsr/workspace/BCDice/lib/bcdice/common_command/add_dice.rb:49:in `eval' C:/Users/blhsr/workspace/BCDice/lib/bcdice/common_command.rb:16:in `block in eval' C:/Users/blhsr/workspace/BCDice/lib/bcdice/common_command.rb:14:in `each' C:/Users/blhsr/workspace/BCDice/lib/bcdice/common_command.rb:14:in `eval' C:/Users/blhsr/workspace/BCDice/lib/bcdice/base.rb:140:in `eval' C:/Users/blhsr/workspace/BCDice/test/DiceBotTest.rb:124:in `block in executeCommand' C:/Users/blhsr/workspace/BCDice/test/DiceBotTest.rb:123:in `each' C:/Users/blhsr/workspace/BCDice/test/DiceBotTest.rb:123:in `executeCommand' C:/Users/blhsr/workspace/BCDice/test/DiceBotTest.rb:90:in `block in doTests' C:/Users/blhsr/workspace/BCDice/test/DiceBotTest.rb:88:in `each' C:/Users/blhsr/workspace/BCDice/test/DiceBotTest.rb:88:in `doTests' C:/Users/blhsr/workspace/BCDice/test/DiceBotTest.rb:29:in `execute' C:/Users/blhsr/workspace/BCDice/test/testDiceBots.rb:2:in `<top (required)>' C:/Ruby26-x64/lib/ruby/gems/2.6.0/gems/rake-13.0.1/lib/rake/rake_test_loader.rb:17:in `require' C:/Ruby26-x64/lib/ruby/gems/2.6.0/gems/rake-13.0.1/lib/rake/rake_test_loader.rb:17:in `block in <main>' C:/Ruby26-x64/lib/ruby/gems/2.6.0/gems/rake-13.0.1/lib/rake/rake_test_loader.rb:5:in `select' C:/Ruby26-x64/lib/ruby/gems/2.6.0/gems/rake-13.0.1/lib/rake/rake_test_loader.rb:5:in `<main>' Input: 2d6>= 目標値無し Expected: Insane : (2D6>=) > 7[3,4] > 7 > 失敗 Rands: 3/6, 4/6 SimpleCov failed with exit 1rake aborted! Command failed with status (1)
インセインなどの特定システムだけ発生するので、 check_nDx 系メソッドを 実装しているシステムだけ発生するんだと思います。 インセインでは total >= target の箇所で例外が発生しています。
check_nDx
total >= target
BCDice/lib/bcdice/game_system/Insane.rb
Lines 62 to 77 in e0215e0
目標値を"?"と比較している箇所で、機械的に""(空文字)とも比較するようにすれば スタックトレースを抑制することができると思います。 もしくは不完全なコマンドを check_nDx 系メソッドに流さないようにするか
"?"
""
The text was updated successfully, but these errors were encountered:
加算ダイスのパーサーを修正して、中途半端な状態は受け付けないようにする
Sorry, something went wrong.
なぜか知らんけど現状のv3だと動いちゃう
[DiceBot]> use Insane [Insane]> 1D6>= Insane : (1D6>=) > 6 > 失敗
インセインは check_2d6 が実装されているので、2d6>= じゃないと落ちないです
check_2d6
2d6>=
うっかりしてました……
AddDiceで不正な目標値を評価しない
5f1ead1
Ref. #273
e9f40de
ysakasin
No branches or pull requests
現象
特定システムで
2d>=
のように目標値無しのコマンドで例外が発生する。上記テストケースの結果
ココフォリアでの表示
ユドナリウムでの表示
原因
インセインなどの特定システムだけ発生するので、
check_nDx
系メソッドを実装しているシステムだけ発生するんだと思います。
インセインでは
total >= target
の箇所で例外が発生しています。BCDice/lib/bcdice/game_system/Insane.rb
Lines 62 to 77 in e0215e0
関連issue) #243
目標値を
"?"
と比較している箇所で、機械的に""
(空文字)とも比較するようにすればスタックトレースを抑制することができると思います。
もしくは不完全なコマンドを
check_nDx
系メソッドに流さないようにするかThe text was updated successfully, but these errors were encountered: