acpc_dealer_data 0.1.5 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -126,14 +126,8 @@ class PokerMatchData
|
|
|
126
126
|
self
|
|
127
127
|
end
|
|
128
128
|
|
|
129
|
-
def
|
|
130
|
-
|
|
131
|
-
def hole_cards(seat=@seat) @players[seat].hole_cards end
|
|
132
|
-
def actions_taken_this_hand(seat=@seat) @players[seat].actions_taken_this_hand end
|
|
133
|
-
def folded?(seat=@seat) @players[seat].folded? end
|
|
134
|
-
def all_in?(seat=@seat) @players[seat].all_in? end
|
|
135
|
-
def active?(seat=@seat) @players[seat].active? end
|
|
136
|
-
|
|
129
|
+
def player(seat=@seat) @players[seat] end
|
|
130
|
+
|
|
137
131
|
def for_every_hand!
|
|
138
132
|
initialize_players!
|
|
139
133
|
|
|
@@ -166,6 +160,7 @@ class PokerMatchData
|
|
|
166
160
|
match_state = current_hand.current_match_state(seat)
|
|
167
161
|
|
|
168
162
|
if current_hand.last_action && player.seat == current_hand.last_action.seat
|
|
163
|
+
|
|
169
164
|
player.take_action!(current_hand.last_action.action)
|
|
170
165
|
end
|
|
171
166
|
|
|
@@ -201,7 +196,7 @@ class PokerMatchData
|
|
|
201
196
|
|
|
202
197
|
if (
|
|
203
198
|
new_round?(sequence.length - 1 , turn_index) ||
|
|
204
|
-
players_all_in?(sequence.length - 1, turn_index)
|
|
199
|
+
players_all_in?(sequence.length - 1, turn_index, turns_taken)
|
|
205
200
|
)
|
|
206
201
|
sequence << []
|
|
207
202
|
end
|
|
@@ -218,6 +213,21 @@ class PokerMatchData
|
|
|
218
213
|
if @hand_number then @hand_number >= @data.length - 1 else nil end
|
|
219
214
|
end
|
|
220
215
|
|
|
216
|
+
# @return [Array<ChipStack>] Player stacks.
|
|
217
|
+
def chip_stacks
|
|
218
|
+
@players.map { |player| player.chip_stack }
|
|
219
|
+
end
|
|
220
|
+
|
|
221
|
+
# return [Array<Integer>] Each player's current chip balance.
|
|
222
|
+
def chip_balances
|
|
223
|
+
@players.map { |player| player.chip_balance }
|
|
224
|
+
end
|
|
225
|
+
|
|
226
|
+
# return [Array<Array<Integer>>] Each player's current chip contribution organized by round.
|
|
227
|
+
def chip_contributions
|
|
228
|
+
@players.map { |player| player.chip_contributions }
|
|
229
|
+
end
|
|
230
|
+
|
|
221
231
|
protected
|
|
222
232
|
|
|
223
233
|
def initialize_players!
|
|
@@ -260,10 +270,9 @@ class PokerMatchData
|
|
|
260
270
|
|
|
261
271
|
private
|
|
262
272
|
|
|
263
|
-
def players_all_in?(current_round, turn_index)
|
|
273
|
+
def players_all_in?(current_round, turn_index, turns_taken)
|
|
264
274
|
current_hand.data.length == turn_index + 2 &&
|
|
265
|
-
current_round < (@match_def.game_def.number_of_rounds - 1) &&
|
|
266
|
-
turn.action_message &&
|
|
275
|
+
current_round < (@match_def.game_def.number_of_rounds - 1) &&
|
|
267
276
|
(turns_taken[0..turn_index].count do |t|
|
|
268
277
|
t.action_message.action.to_sym == :fold
|
|
269
278
|
end) != @players.length - 1
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
module AcpcDealerData
|
|
2
|
-
VERSION = "0.
|
|
3
|
-
end
|
|
2
|
+
VERSION = "0.2.0"
|
|
3
|
+
end
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: acpc_dealer_data
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.
|
|
4
|
+
version: 0.2.0
|
|
5
5
|
prerelease:
|
|
6
6
|
platform: ruby
|
|
7
7
|
authors:
|
|
@@ -164,7 +164,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
|
164
164
|
version: '0'
|
|
165
165
|
segments:
|
|
166
166
|
- 0
|
|
167
|
-
hash:
|
|
167
|
+
hash: 1585358207152026945
|
|
168
168
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
169
169
|
none: false
|
|
170
170
|
requirements:
|
|
@@ -173,7 +173,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
173
173
|
version: '0'
|
|
174
174
|
segments:
|
|
175
175
|
- 0
|
|
176
|
-
hash:
|
|
176
|
+
hash: 1585358207152026945
|
|
177
177
|
requirements: []
|
|
178
178
|
rubyforge_project:
|
|
179
179
|
rubygems_version: 1.8.24
|