-
Notifications
You must be signed in to change notification settings - Fork 190
New issue
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
クトゥルフテック:リファクタリング #165
クトゥルフテック:リファクタリング #165
Conversation
* シークレットロール * 修正値あり * ファンブル
特に DiceBot#changeDiceValueByDiceText を使わないようにするのが目的。
クトゥルフテックのリファクタリングによって、不要になったため。
DiceBot#changeDiceValueByDiceText は削除された。
f72c39d
to
52b26e6
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
1. CthulhuTech::Compare
CthulhuTech::Test
を現在の CthulhuTech::Compare
相当のクラスにし、 class Contest < Test
とするのはどうでしょう。 CthulhuTech::Compare
と CthulhuTech::Test
の差分があまりにもないのと、Compare
という名前は正直しっくりきません。構造は変えない場合、少なくともクラス名は変更して欲しいです。 私の思いつく限りでは、Node
が適切かと思います。
2. CthulhuTech#execute
これは全てCthulhuTech::Test
およびCthulhuTech::Compare
の内容から算出しているので、CthulhuTech
のメソッドではなくCthulhuTech::Test
のメソッドにした方が良いと思いました。
あぁ |
@ysakasin どちらも作っている途中で迷ったところでした。1については、そのようにしたいと思います。2については、dicebotを渡せばできそうかな、と考えていたところだったので、試してみます。 |
判定処理をひとつのクラスにまとめました。ダイスロールは、判定ノードの |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM!
かなり読みやすくなったと思います!!!
クトゥルフテックのダイスボットをリファクタリングしました。
主な目的は、「クトゥルフテック専用」と書かれていた
DiceBot#changeDiceValueByDiceText
を使わないようにすることです。クトゥルフテックのコマンドには、動作が加算ロールとは大きく異なる
nD10
があります。従来は、これを無理やり
dice/AddDice.rb
内の加算ロールの処理で扱おうとしていたため、DiceBot#changeDiceValueByDiceText
のような不自然なメソッドが必要になっていました。今回、
nD10
を加算ロールではなくダイスボット固有のコマンドとして処理するように変えたため、ダイスボット外にある上記の不自然な処理が不要となり、消すことができました。そのほかに、対抗判定成功時に表示されるダメージロールのコマンドの意味が分かりやすくなるように、出力を少し変えました。
例: