diff --git a/game/reconstructed/btplayer.cpp b/game/reconstructed/btplayer.cpp index 3db4a4f..5cb9f36 100644 --- a/game/reconstructed/btplayer.cpp +++ b/game/reconstructed/btplayer.cpp @@ -1019,8 +1019,15 @@ void // exactly as the binary does; wire deliveries land here and get the same // handler. One accumulator, on the machine that owns the score. // + // RETURN, not break. The post-switch tail folds the local `award` into + // message->scoreAward and hands it to the base handler -- and for this + // arm `award` is still 0, so falling through clobbered scoreAward to + // zero, added nothing, and emitted a second SCORE row reading + // "type=0 award=0.00" (the 80 real + 80 zero rows in the bench). + // ScoreInflictedMessageHandler is self-contained: it accumulates, + // ForceUpdate()s and logs its own receipt. ScoreInflictedMessageHandler(message); - break; + return; case BTPlayer::ScoreMessage::DamageReceivedScore: // 1 {