X-Git-Url: https://git.artsoft.org/?p=rocksndiamonds.git;a=blobdiff_plain;f=src%2Fgame_sp%2FDisplay.c;h=ac2ed31a5de35d764903f099b21b6d5336269052;hp=94c846ed02779d0a650907b62b0bb6d7f7ab6249;hb=115ce6f2da1914d68b0fe0e5f9082973190dacdd;hpb=9f688962eb90591205c511c1ae9bf752d276d1f5 diff --git a/src/game_sp/Display.c b/src/game_sp/Display.c index 94c846ed..ac2ed31a 100644 --- a/src/game_sp/Display.c +++ b/src/game_sp/Display.c @@ -4,191 +4,65 @@ #include "Display.h" -// static char *VB_Name = "modDisplay"; - -// --- Option Explicit int ScreenScrollXPos, ScreenScrollYPos; -int ScreenPosition, data_h_Xtmp, data_h_Ytmp; -int ShowRedDiskCounter, ShowPanel; -int ExplosionShake; +int ExplosionShake, ExplosionShakeMurphy; boolean NoDisplayFlag; -long DisplayMinX, DisplayMaxX, DisplayWidth; -long DisplayMinY, DisplayMaxY, DisplayHeight; - - -int subDisplayInfotronsNeeded() -{ - int subDisplayInfotronsNeeded; - - if (NoDisplayFlag) - return subDisplayInfotronsNeeded; - - { -#if 0 - MainForm.lblInfoCount.Caption = InfotronsNeeded; - MainForm.lblInfoCount.Refresh; -#endif - } +int DisplayMinX, DisplayMaxX; +int DisplayMinY, DisplayMaxY; - return subDisplayInfotronsNeeded; -} -int subDisplayPlayingTime() +void subDisplayLevel(void) { - int subDisplayPlayingTime; - - - return subDisplayPlayingTime; -} - -int subDisplayLevel() -{ - int subDisplayLevel; - if (NoDisplayFlag || ! LevelLoaded) - return subDisplayLevel; - -#if 1 - DisplayLevel(); -#else - MainForm.DisplayLevel(); -#endif - - return subDisplayLevel; -} - -void subDisplayPanel() -{ -} - -int subCheckRestoreRedDiskCountDisplay() -{ - int subCheckRestoreRedDiskCountDisplay; - - if (NoDisplayFlag) - return subCheckRestoreRedDiskCountDisplay; - - if (ShowRedDiskCounter == 0) - return subCheckRestoreRedDiskCountDisplay; - - ShowRedDiskCounter = ShowRedDiskCounter - 1; - if (ShowRedDiskCounter == 0) - { - { -#if 0 - MainForm.lblRedDiskCount.Caption = 0; - MainForm.lblRedDiskCount.Refresh; -#endif - } - } - - return subCheckRestoreRedDiskCountDisplay; -} - -void subDisplayRedDiskCount() -{ - if (NoDisplayFlag) return; - { -#if 0 - MainForm.lblRedDiskCount.Caption = RedDiskCount; - MainForm.lblRedDiskCount.Refresh; -#endif - } - ShowRedDiskCounter = 0x46; + DisplayLevel(); } void ScrollTo(int X, int Y) { - long oldX, oldY; - -#if 0 - printf("::: Display.c: ScrollTo(): %d, %d\n", X, Y); -#endif - if (NoDisplayFlag) return; - oldX = ScrollX; - oldY = ScrollY; X = ScrollDelta * (X / ScrollDelta); X = Max(X, ScrollMinX); X = Min(X, ScrollMaxX); Y = ScrollDelta * (Y / ScrollDelta); Y = Max(Y, ScrollMinY); Y = Min(Y, ScrollMaxY); - // ScrollX = X - // ScrollY = Y - Stage.ScrollTo(X, Y); + DDScrollBuffer_ScrollTo(X, Y); } void ScrollTowards(int X, int Y) { - long oldX, oldY; - if (NoDisplayFlag) return; -#if 0 - printf("::: 1 ---> %d, %d\n", X, Y); -#endif - - oldX = ScrollX; - oldY = ScrollY; X = ScrollDelta * (X / ScrollDelta); X = Max(X, ScrollMinX); X = Min(X, ScrollMaxX); Y = ScrollDelta * (Y / ScrollDelta); Y = Max(Y, ScrollMinY); Y = Min(Y, ScrollMaxY); - // ScrollX = X - // ScrollY = Y - -#if 0 - printf("::: 2 ---> %d, %d\n", X, Y); -#endif - -#if 1 - Stage.ScrollTowards(X, Y, 2 * Stretch * ZoomFactor); -#else - Stage.ScrollTowards(X, Y, 2 * Stretch); -#endif + + DDScrollBuffer_ScrollTowards(X, Y, 2 * ZoomFactor); } -void SoftScrollTo(int X, int Y, long TimeMS, int FPS) +void SoftScrollTo(int X, int Y, int TimeMS, int FPS) { - long oldX, oldY; - if (NoDisplayFlag) return; -#if 0 - printf(":(: %d, %d [%d, %d - %d, %d] [%d]\n", - X, Y, ScrollMinX, ScrollMinY, ScrollMaxX, ScrollMaxY, - ScrollDelta); -#endif - - oldX = ScrollX; - oldY = ScrollY; X = ScrollDelta * (X / ScrollDelta); X = Max(X, ScrollMinX); X = Min(X, ScrollMaxX); Y = ScrollDelta * (Y / ScrollDelta); Y = Max(Y, ScrollMinY); Y = Min(Y, ScrollMaxY); - // ScrollX = X - // ScrollY = Y - -#if 0 - printf(":): %d, %d [%d, %d - %d, %d] [%d]\n", - X, Y, ScrollMinX, ScrollMinY, ScrollMaxX, ScrollMaxY, - ScrollDelta); -#endif - Stage.SoftScrollTo(X, Y, TimeMS, FPS); + DDScrollBuffer_SoftScrollTo(X, Y, TimeMS, FPS); }