Bilan : ne se redessine que si ce qu'il montre change ; le test attend son mini-plateau
Les analyses de l'ordinateur et les chances de gagner, rangées en arrière-plan pour l'écran d'analyse, redessinaient tout le bilan, et son mini-plateau disparaissait le temps d'être redessiné. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5.5
parent
f2417097f9
commit
9f72b6212f
@@ -13,7 +13,6 @@
|
||||
|
||||
import {
|
||||
type GameSummary,
|
||||
missingAnalyses,
|
||||
readyForSummary,
|
||||
summarizeAnalysis,
|
||||
} from "../domain/analysis/game-analysis.js";
|
||||
@@ -112,15 +111,31 @@ export function createSummaryView(options: SummaryViewOptions): SummaryView {
|
||||
function render(data: SummaryData | null): void {
|
||||
const ready = data !== null && data.phrases !== null && readyForSummary(data.journal);
|
||||
const summary = ready ? summarizeAnalysis(data.journal) : null;
|
||||
// Seulement ce que le bilan montre : les analyses qui arrivent
|
||||
// ensuite en arrière-plan pour l'écran d'analyse (coups de
|
||||
// l'ordinateur, chances de gagner) ne le redessinent pas, sinon le
|
||||
// panneau et son mini-plateau sauteraient sous les yeux du joueur.
|
||||
const shown =
|
||||
summary === null || data === null || data.phrases === null
|
||||
? null
|
||||
: {
|
||||
counts: summary.counts,
|
||||
level: summary.player.errorRate.level,
|
||||
dice: summary.player.luck.rating,
|
||||
reading: summaryReading(data.phrases, summary),
|
||||
toReview: summary.toReview?.advice.eventId ?? null,
|
||||
turn: summary.toReview?.turn ?? null,
|
||||
};
|
||||
const key =
|
||||
data === null
|
||||
? "missing"
|
||||
: [
|
||||
data.id,
|
||||
data.end?.title ?? "",
|
||||
data.end?.detail ?? "",
|
||||
data.afterLabel ?? "",
|
||||
ready,
|
||||
ready ? JSON.stringify(summary) : missingAnalyses(data.journal).length,
|
||||
JSON.stringify(shown),
|
||||
].join("|");
|
||||
if (key === drawn) {
|
||||
return;
|
||||
|
||||
Reference in New Issue
Block a user