diff --git a/entities/game/finish_game/scripts/GameFinished.gd b/entities/game/finish_game/scripts/GameFinished.gd index 13916ef..7aa0d6d 100644 --- a/entities/game/finish_game/scripts/GameFinished.gd +++ b/entities/game/finish_game/scripts/GameFinished.gd @@ -1,6 +1,6 @@ class_name GameFinished extends PopupWindow -signal finish_game_ui_loaded(players: Array[PlayerResource], winner: Array[PlayerResource]) +signal finish_game_ui_loaded(players: Array[PlayerResource], winner: Array[PlayerResource], deck_texture: Texture) var manager: PlayerSystem var played_deck: MemoryDeckResource @@ -21,7 +21,7 @@ func _ready() -> void: if player.score == highest_score: winners.append(player) - finish_game_ui_loaded.emit(players, winners) + finish_game_ui_loaded.emit(players, winners, played_deck.get_back_image()) func set_player_manager(player_manager: PlayerSystem) -> void: diff --git a/entities/game/finish_game/scripts/PlayerScoreList.gd b/entities/game/finish_game/scripts/PlayerScoreList.gd index 1b5aaec..9cbdf88 100644 --- a/entities/game/finish_game/scripts/PlayerScoreList.gd +++ b/entities/game/finish_game/scripts/PlayerScoreList.gd @@ -5,7 +5,7 @@ extends VBoxContainer var _win_sound_played: bool = false -func build_player_statistic(players: Array[PlayerResource], winners: Array[PlayerResource]) -> void: +func build_player_statistic(players: Array[PlayerResource], winners: Array[PlayerResource], card_texture: Texture) -> void: players.sort_custom(sort_by_score) for player: PlayerResource in players: var player_node: PlayerScoreEntry = player_template.instantiate() as PlayerScoreEntry @@ -15,7 +15,7 @@ func build_player_statistic(players: Array[PlayerResource], winners: Array[Playe if player.id == winner.id: did_win = true break - player_node.set_player(player, did_win) + player_node.set_player(player, did_win, card_texture) add_child(player_node) func sort_by_score(a: PlayerResource, b: PlayerResource) -> bool: diff --git a/entities/game/player_score_entry/scenes/PlayerScoreEntry.tscn b/entities/game/player_score_entry/scenes/PlayerScoreEntry.tscn index e78ee4c..26441db 100644 --- a/entities/game/player_score_entry/scenes/PlayerScoreEntry.tscn +++ b/entities/game/player_score_entry/scenes/PlayerScoreEntry.tscn @@ -67,6 +67,7 @@ metadata/_custom_type_script = "uid://bfin0rde3y7nw" [connection signal="add_new_score" from="." to="PanelContainer/HBoxContainer/PlayerScoreBoard" method="add_score"] [connection signal="add_new_score" from="." to="EffectPlayer" method="play_effect"] +[connection signal="card_back_changed" from="." to="PanelContainer/HBoxContainer/PlayerScoreBoard" method="set_texture"] [connection signal="player_changed" from="." to="PanelContainer/HBoxContainer/PlayerName" method="set_text"] [connection signal="player_did_win" from="." to="PanelContainer/HBoxContainer/PlayerName" method="player_did_win"] [connection signal="player_did_win" from="." to="PanelContainer/HBoxContainer/MarginContainer/WinningIcon" method="player_did_win"] diff --git a/entities/game/player_score_entry/scripts/PlayerScoreEntry.gd b/entities/game/player_score_entry/scripts/PlayerScoreEntry.gd index b17ac13..83c5a0f 100644 --- a/entities/game/player_score_entry/scripts/PlayerScoreEntry.gd +++ b/entities/game/player_score_entry/scripts/PlayerScoreEntry.gd @@ -3,6 +3,7 @@ class_name PlayerScoreEntry extends Control signal set_player_score(score: int) signal player_changed(name: String) signal player_did_win(color: ColorResource) +signal card_back_changed(texture: Texture) signal winner_selected() signal add_new_score() @@ -24,9 +25,10 @@ func _ready() -> void: if _did_win: player_did_win.emit(player_win_color) -func set_player(player: PlayerResource, did_win: bool) -> void: +func set_player(player: PlayerResource, did_win: bool, card_texture: Texture) -> void: _player_data = player player_changed.emit(player.get_display_name()) + card_back_changed.emit(card_texture) set_player_score.emit(player.score) _did_win = did_win