hedgewars/uStore.pas
changeset 12711 20dbb3a03e61
parent 12701 79e13080b9db
child 12758 49c31d8cc740
equal deleted inserted replaced
12710:1ab53b945140 12711:20dbb3a03e61
    60 procedure SwapBuffers; {$IFDEF USE_VIDEO_RECORDING}cdecl{$ELSE}inline{$ENDIF};
    60 procedure SwapBuffers; {$IFDEF USE_VIDEO_RECORDING}cdecl{$ELSE}inline{$ENDIF};
    61 procedure SetSkyColor(r, g, b: real);
    61 procedure SetSkyColor(r, g, b: real);
    62 
    62 
    63 implementation
    63 implementation
    64 uses uMisc, uConsole, uVariables, uUtils, uTextures, uRender, uRenderUtils,
    64 uses uMisc, uConsole, uVariables, uUtils, uTextures, uRender, uRenderUtils,
    65      uCommands, uPhysFSLayer, uDebug
    65      uCommands, uPhysFSLayer, uDebug, adler32
    66     {$IFDEF USE_CONTEXT_RESTORE}, uWorld{$ENDIF};
    66     {$IFDEF USE_CONTEXT_RESTORE}, uWorld{$ENDIF};
    67 
    67 
    68 //type TGPUVendor = (gvUnknown, gvNVIDIA, gvATI, gvIntel, gvApple);
    68 //type TGPUVendor = (gvUnknown, gvNVIDIA, gvATI, gvIntel, gvApple);
    69 
    69 
    70 var 
    70 var 
   371 
   371 
   372 procedure StoreLoad(reload: boolean);
   372 procedure StoreLoad(reload: boolean);
   373 var ii: TSprite;
   373 var ii: TSprite;
   374     ai: TAmmoType;
   374     ai: TAmmoType;
   375     tmpsurf, tmpoverlay: PSDL_Surface;
   375     tmpsurf, tmpoverlay: PSDL_Surface;
   376     i, imflags: LongInt;
   376     i, y, imflags: LongInt;
   377 begin
   377 begin
   378 AddFileLog('StoreLoad()');
   378 AddFileLog('StoreLoad()');
   379 
   379 
   380 if not cOnlyStats then
   380 if not cOnlyStats then
   381     begin
   381     begin
   469                 if not reload then
   469                 if not reload then
   470                     begin
   470                     begin
   471 {$IFDEF USE_CONTEXT_RESTORE}
   471 {$IFDEF USE_CONTEXT_RESTORE}
   472                     Surface:= tmpsurf
   472                     Surface:= tmpsurf
   473 {$ELSE}
   473 {$ELSE}
       
   474                     if checkSum then
       
   475                         for y := 0 to tmpsurf^.h-1 do
       
   476                             syncedPixelDigest:= Adler32Update(syncedPixelDigest, @PLongWordArray(tmpsurf^.pixels)^[y*tmpsurf^.w], tmpsurf^.w);
       
   477 
   474                     if saveSurf then
   478                     if saveSurf then
   475                         Surface:= tmpsurf
   479                         Surface:= tmpsurf
   476                     else
   480                     else
   477                         SDL_FreeSurface(tmpsurf)
   481                         SDL_FreeSurface(tmpsurf)
   478 {$ENDIF}
   482 {$ENDIF}