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
出目のグループを初期化する
161 162 163 164 |
# File 'lib/bcdice/game_system/DoubleCross.rb', line 161 def initialize(values, critical_value) @values = values.sort @critical_value = critical_value end |
Instance Attribute Details
#critical_value ⇒ Integer (readonly)
クリティカル値
156 157 158 |
# File 'lib/bcdice/game_system/DoubleCross.rb', line 156 def critical_value @critical_value end |
#values ⇒ Array<Integer> (readonly)
出目の配列
153 154 155 |
# File 'lib/bcdice/game_system/DoubleCross.rb', line 153 def values @values end |
Instance Method Details
#max ⇒ Integer
出目のグループ中の最大値を返す クリティカル値以上の出目が含まれていた場合は10を返す。
- 3rd ルールブック1 pp. 185-186
177 178 179 |
# File 'lib/bcdice/game_system/DoubleCross.rb', line 177 def max @values.any? { |value| critical?(value) } ? 10 : @values.max end |
#num_of_critical_occurrences ⇒ Integer
クリティカルの発生数を返す
183 184 185 |
# File 'lib/bcdice/game_system/DoubleCross.rb', line 183 def num_of_critical_occurrences @values.count { |value| critical?(value) } end |
#to_s ⇒ String
出目のグループの文字列表記を返す
168 169 170 |
# File 'lib/bcdice/game_system/DoubleCross.rb', line 168 def to_s "#{max}[#{@values.join(',')}]" end |