diff --git a/GpApp/Scoreboard.cpp b/GpApp/Scoreboard.cpp index 4bb6418..d9cec3d 100644 --- a/GpApp/Scoreboard.cpp +++ b/GpApp/Scoreboard.cpp @@ -49,6 +49,13 @@ extern Boolean evenFrame, onePlayerLeft; //============================================================== Functions +//-------------------------------------------------------------- MarkScoreboardPortDirty + +void MarkScoreboardPortDirty(void) +{ + GetWindowPort(mainWindow)->m_port.SetDirty(PortabilityLayer::QDPortDirtyFlag_Contents); +} + //-------------------------------------------------------------- RefreshScoreboard void RefreshScoreboard (short mode) @@ -62,6 +69,8 @@ void RefreshScoreboard (short mode) CopyBits((BitMap *)*GetGWorldPixMap(boardSrcMap), GetPortBitMapForCopyBits(GetWindowPort(mainWindow)), &boardSrcRect, &boardDestRect, srcCopy, 0L); + + MarkScoreboardPortDirty(); QuickBatteryRefresh(false); QuickBandsRefresh(false); @@ -186,6 +195,8 @@ void RefreshRoomTitle (short mode) CopyBits((BitMap *)*GetGWorldPixMap(boardTSrcMap), (BitMap *)*GetGWorldPixMap(boardSrcMap), &boardTSrcRect, &boardTDestRect, srcCopy, nil); + + MarkScoreboardPortDirty(); } //-------------------------------------------------------------- RefreshNumGliders @@ -225,6 +236,8 @@ void RefreshNumGliders (void) CopyBits((BitMap *)*GetGWorldPixMap(boardGSrcMap), (BitMap *)*GetGWorldPixMap(boardSrcMap), &boardGSrcRect, &boardGDestRect, srcCopy, nil); + + MarkScoreboardPortDirty(); } //-------------------------------------------------------------- RefreshPoints @@ -262,6 +275,8 @@ void RefreshPoints (void) &boardPSrcRect, &boardPDestRect, srcCopy, nil); displayedScore = theScore; + + MarkScoreboardPortDirty(); } //-------------------------------------------------------------- QuickGlidersRefresh @@ -297,6 +312,8 @@ void QuickGlidersRefresh (void) CopyBits((BitMap *)*GetGWorldPixMap(boardGSrcMap), GetPortBitMapForCopyBits(GetWindowPort(mainWindow)), &boardGSrcRect, &boardGQDestRect, srcCopy, nil); + + MarkScoreboardPortDirty(); } //-------------------------------------------------------------- QuickScoreRefresh @@ -332,6 +349,8 @@ void QuickScoreRefresh (void) CopyBits((BitMap *)*GetGWorldPixMap(boardPSrcMap), GetPortBitMapForCopyBits(GetWindowPort(mainWindow)), &boardPSrcRect, &boardPQDestRect, srcCopy, nil); + + MarkScoreboardPortDirty(); } //-------------------------------------------------------------- QuickBatteryRefresh @@ -362,6 +381,8 @@ void QuickBatteryRefresh (Boolean flash) &badgesDestRects[kBatteryBadge], srcCopy, nil); } + + MarkScoreboardPortDirty(); } //-------------------------------------------------------------- QuickBandsRefresh @@ -384,6 +405,8 @@ void QuickBandsRefresh (Boolean flash) &badgesDestRects[kBandsBadge], srcCopy, nil); } + + MarkScoreboardPortDirty(); } //-------------------------------------------------------------- QuickFoilRefresh @@ -406,6 +429,8 @@ void QuickFoilRefresh (Boolean flash) &badgesDestRects[kFoilBadge], srcCopy, nil); } + + MarkScoreboardPortDirty(); } //-------------------------------------------------------------- AdjustScoreboardHeight diff --git a/GpApp/StructuresInit.cpp b/GpApp/StructuresInit.cpp index d7bd7e5..4ce9a48 100644 --- a/GpApp/StructuresInit.cpp +++ b/GpApp/StructuresInit.cpp @@ -93,7 +93,6 @@ void InitScoreboardMap (void) LoadGraphic(kBadgePictID); boardDestRect = boardSrcRect; - QOffsetRect(&boardDestRect, 0, -kScoreboardTall); hOffset = (RectWide(&houseRect) - 640) / 2; if (hOffset < 0) @@ -123,9 +122,7 @@ void InitScoreboardMap (void) boardPDestRect = boardPSrcRect; QOffsetRect(&boardPDestRect, 570 + hOffset, 5); // total = 6396 pixels boardPQDestRect = boardPDestRect; - QOffsetRect(&boardPQDestRect, 0, -kScoreboardTall); boardGQDestRect = boardGDestRect; - QOffsetRect(&boardGQDestRect, 0, -kScoreboardTall); TextFont(applFont); TextSize(12); TextFace(bold); @@ -149,13 +146,13 @@ void InitScoreboardMap (void) QOffsetRect(&badgesBadgesRects[3], 16, 49); QSetRect(&badgesDestRects[0], 0, 0, 16, 16); // foil - QOffsetRect(&badgesDestRects[0], 432 + hOffset, 2 - kScoreboardTall); + QOffsetRect(&badgesDestRects[0], 432 + hOffset, 2); QSetRect(&badgesDestRects[1], 0, 0, 16, 16); // rubber bands - QOffsetRect(&badgesDestRects[1], 449 + hOffset, 2 - kScoreboardTall); + QOffsetRect(&badgesDestRects[1], 449 + hOffset, 2); QSetRect(&badgesDestRects[2], 0, 0, 16, 17); // battery - QOffsetRect(&badgesDestRects[2], 467 + hOffset, 1 - kScoreboardTall); + QOffsetRect(&badgesDestRects[2], 467 + hOffset, 1); QSetRect(&badgesDestRects[3], 0, 0, 16, 17); // helium - QOffsetRect(&badgesDestRects[3], 467 + hOffset, 1 - kScoreboardTall); + QOffsetRect(&badgesDestRects[3], 467 + hOffset, 1); SetGWorld(wasCPort, wasWorld); }