mirror of
https://github.com/elasota/Aerofoil.git
synced 2025-09-23 14:53:52 +00:00
Fix transitions not spanning the entire screen and fix dissolve replaying when toggling full-screen
This commit is contained in:
@@ -166,7 +166,7 @@ void BringUpBanner (void)
|
||||
DrawBanner(&topLeft);
|
||||
DrawBannerMessage(topLeft);
|
||||
|
||||
DumpScreenOn(&justRoomsRect);
|
||||
DumpScreenOn(&justRoomsRect, false);
|
||||
|
||||
// if (quickerTransitions)
|
||||
// DissBitsChunky(&justRoomsRect); // was workSrcRect
|
||||
|
@@ -498,7 +498,7 @@ void FollowTheLeader (void);
|
||||
|
||||
void PourScreenOn (Rect *); // --- Transitions.c
|
||||
void WipeScreenOn (SInt16, Rect *);
|
||||
void DumpScreenOn (Rect *);
|
||||
void DumpScreenOn (Rect *, Boolean);
|
||||
//void DissBits (Rect *);
|
||||
//void DissBitsChunky (Rect *);
|
||||
//void FillColorNoise (Rect *);
|
||||
|
@@ -82,13 +82,13 @@ void DoHighScores (void)
|
||||
// else
|
||||
// DissBits(&workSrcRect);
|
||||
|
||||
DumpScreenOn(&workSrcRect);
|
||||
DumpScreenOn(&workSrcRect, false);
|
||||
|
||||
SpinCursor(3);
|
||||
|
||||
DrawHighScores(workSrcMap);
|
||||
|
||||
DumpScreenOn(&workSrcRect);
|
||||
DumpScreenOn(&workSrcRect, false);
|
||||
|
||||
SpinCursor(3);
|
||||
// if (quickerTransitions)
|
||||
|
@@ -168,16 +168,16 @@ void NewGame (short mode)
|
||||
if (mode == kNewGameMode)
|
||||
{
|
||||
BringUpBanner();
|
||||
DumpScreenOn(&justRoomsRect);
|
||||
DumpScreenOn(&justRoomsRect, false);
|
||||
}
|
||||
else if (mode == kResumeGameMode)
|
||||
{
|
||||
DisplayStarsRemaining();
|
||||
DumpScreenOn(&justRoomsRect);
|
||||
DumpScreenOn(&justRoomsRect, false);
|
||||
}
|
||||
else
|
||||
{
|
||||
DumpScreenOn(&justRoomsRect);
|
||||
DumpScreenOn(&justRoomsRect, false);
|
||||
}
|
||||
|
||||
InitGarbageRects();
|
||||
@@ -381,7 +381,7 @@ void HandleGameResolutionChange(void)
|
||||
ResetLocale(true);
|
||||
InitScoreboardMap();
|
||||
RefreshScoreboard(wasScoreboardTitleMode);
|
||||
DumpScreenOn(&justRoomsRect);
|
||||
DumpScreenOn(&justRoomsRect, true);
|
||||
}
|
||||
|
||||
//-------------------------------------------------------------- PlayGame
|
||||
|
@@ -122,28 +122,28 @@ void WipeScreenOn (short direction, Rect *theRect)
|
||||
wipeRect.bottom = wipeRect.top + wipeRectThick;
|
||||
hOffset = 0;
|
||||
vOffset = wipeRectThick;
|
||||
count = ((theRect->bottom - theRect->top) / wipeRectThick) + 1;
|
||||
count = (theRect->bottom - theRect->top + wipeRectThick - 1) / wipeRectThick;
|
||||
break;
|
||||
|
||||
case kToRight:
|
||||
wipeRect.left = wipeRect.right - wipeRectThick;
|
||||
hOffset = -wipeRectThick;
|
||||
vOffset = 0;
|
||||
count = workSrcRect.right / wipeRectThick;
|
||||
count = (workSrcRect.right + wipeRectThick - 1) / wipeRectThick;
|
||||
break;
|
||||
|
||||
case kBelow:
|
||||
wipeRect.top = wipeRect.bottom - wipeRectThick;
|
||||
hOffset = 0;
|
||||
vOffset = -wipeRectThick;
|
||||
count = ((theRect->bottom - theRect->top) / wipeRectThick) + 1;
|
||||
count = (theRect->bottom - theRect->top + wipeRectThick - 1) / wipeRectThick;
|
||||
break;
|
||||
|
||||
case kToLeft:
|
||||
wipeRect.right = wipeRect.left + wipeRectThick;
|
||||
hOffset = wipeRectThick;
|
||||
vOffset = 0;
|
||||
count = workSrcRect.right / wipeRectThick;
|
||||
count = (workSrcRect.right + wipeRectThick - 1) / wipeRectThick;
|
||||
break;
|
||||
}
|
||||
|
||||
@@ -170,7 +170,7 @@ void WipeScreenOn (short direction, Rect *theRect)
|
||||
}
|
||||
}
|
||||
|
||||
//-------------------------------------------------------------- DumpScreenOn
|
||||
//-------------------------------------------------------------- DissolveScreenOn
|
||||
|
||||
void DissolveScreenOn(Rect *theRect)
|
||||
{
|
||||
@@ -239,9 +239,9 @@ void DissolveScreenOn(Rect *theRect)
|
||||
|
||||
//-------------------------------------------------------------- DumpScreenOn
|
||||
|
||||
void DumpScreenOn(Rect *theRect)
|
||||
void DumpScreenOn(Rect *theRect, Boolean fast)
|
||||
{
|
||||
if (quickerTransitions)
|
||||
if (quickerTransitions || fast)
|
||||
{
|
||||
DrawSurface *graf = mainWindow->GetDrawSurface();
|
||||
|
||||
|
Reference in New Issue
Block a user