feat(engine): cosmetic selectors applied, stats screen expanded, daily goals enforced

- Card backs: selected_card_back index maps to distinct Color values in card rendering
- Backgrounds: selected_background index applied in TablePlugin alongside theme
- Both re-render immediately on SettingsChangedEvent
- Stats screen now shows Games Lost, Draw 1/3 Wins, and Lifetime Score
- Daily challenge win no longer credited if server-supplied target_score or max_time_secs constraints are not met

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
root
2026-04-27 01:46:52 +00:00
parent f579b96d76
commit 299e0c6a94
4 changed files with 82 additions and 15 deletions
+4
View File
@@ -171,12 +171,16 @@ fn spawn_stats_screen(
"=== Statistics ===".to_string(),
format!("Games Played: {}", stats.games_played),
format!("Games Won: {}", stats.games_won),
format!("Games Lost: {}", stats.games_lost),
format!("Win Rate: {win_rate}"),
format!(
"Win Streak: {} (Best: {})",
stats.win_streak_current, stats.win_streak_best
),
format!("Draw 1 Wins: {}", stats.draw_one_wins),
format!("Draw 3 Wins: {}", stats.draw_three_wins),
format!("Best Score: {}", stats.best_single_score),
format!("Lifetime Score:{}", stats.lifetime_score),
format!("Fastest Win: {fastest}"),
format!("Avg Win Time: {avg}"),
];