scoring implemented; clients calculate scores individually and display ranks per player
This commit is contained in:
@@ -123,3 +123,19 @@ func _on_web_client_tcp_received_expected_bet(client_id: String, expected_bet: i
|
||||
func _on_web_client_tcp_received_winning_client(client_id: String) -> void:
|
||||
_bets[client_id][_bets[client_id].size() - 1].add_win()
|
||||
print(_bets)
|
||||
|
||||
func _on_web_client_tcp_received_end_game_request() -> void:
|
||||
var scores: Array[ScoreResult]
|
||||
|
||||
for client_id in _bets.keys():
|
||||
var score = ScoreResult.new(client_id)
|
||||
for bet_result in _bets[client_id]:
|
||||
score.add_to_score(bet_result.get_score())
|
||||
scores.append(score)
|
||||
|
||||
scores.sort_custom(func(a, b): return a.score < b.score)
|
||||
|
||||
var rank = scores.size()
|
||||
for score_result: ScoreResult in scores:
|
||||
hand_associations[score_result.client_id].display_rank(rank, score_result.score)
|
||||
rank -= 1
|
||||
|
||||
Reference in New Issue
Block a user