Class: BCDice::GameSystem::DoubleCross::ValueGroup
- Inherits:
-
Object
- Object
- BCDice::GameSystem::DoubleCross::ValueGroup
- Defined in:
- lib/bcdice/game_system/DoubleCross.rb
Overview
出目のグループを表すクラス
Instance Attribute Summary collapse
-
#critical_value ⇒ Integer
readonly
クリティカル値.
-
#values ⇒ Array<Integer>
readonly
出目の配列.
Instance Method Summary collapse
-
#initialize(values, critical_value) ⇒ ValueGroup
constructor
出目のグループを初期化する.
-
#max ⇒ Integer
出目のグループ中の最大値を返す クリティカル値以上の出目が含まれていた場合は10を返す。 [3rd ルールブック1 pp. 185-186].
-
#num_of_critical_occurrences ⇒ Integer
クリティカルの発生数を返す.
-
#to_s ⇒ String
出目のグループの文字列表記を返す.
Constructor Details
#initialize(values, critical_value) ⇒ ValueGroup
出目のグループを初期化する
168 169 170 171 |
# File 'lib/bcdice/game_system/DoubleCross.rb', line 168 def initialize(values, critical_value) @values = values.sort @critical_value = critical_value end |
Instance Attribute Details
#critical_value ⇒ Integer (readonly)
クリティカル値
163 164 165 |
# File 'lib/bcdice/game_system/DoubleCross.rb', line 163 def critical_value @critical_value end |
#values ⇒ Array<Integer> (readonly)
出目の配列
160 161 162 |
# File 'lib/bcdice/game_system/DoubleCross.rb', line 160 def values @values end |
Instance Method Details
#max ⇒ Integer
出目のグループ中の最大値を返す クリティカル値以上の出目が含まれていた場合は10を返す。
- 3rd ルールブック1 pp. 185-186
184 185 186 |
# File 'lib/bcdice/game_system/DoubleCross.rb', line 184 def max @values.any? { |value| critical?(value) } ? 10 : @values.max end |
#num_of_critical_occurrences ⇒ Integer
クリティカルの発生数を返す
190 191 192 |
# File 'lib/bcdice/game_system/DoubleCross.rb', line 190 def num_of_critical_occurrences @values.count { |value| critical?(value) } end |
#to_s ⇒ String
出目のグループの文字列表記を返す
175 176 177 |
# File 'lib/bcdice/game_system/DoubleCross.rb', line 175 def to_s "#{max}[#{@values.join(',')}]" end |