DEADSOFTWARE

save/load fixes
[d2df-sdl.git] / src / game / g_panel.pas
index 563beffbbeac9cb783a2adee4d1ec9f417c0ceea..07fe2d6103e5dd4f2fc57ec38e1b67330060203b 100644 (file)
@@ -1009,10 +1009,11 @@ begin
        Result := Result + 100;
 end;
 
+
 const
   PAN_SAVE_VERSION = 1;
 
-procedure TPanel.SaveState(Var Mem: TBinMemoryWriter);
+procedure TPanel.SaveState (var Mem: TBinMemoryWriter);
 var
   sig: DWORD;
   anim: Boolean;
@@ -1020,35 +1021,35 @@ var
 begin
   if (Mem = nil) then exit;
 
-// Ñèãíàòóðà ïàíåëè:
+  // Ñèãíàòóðà ïàíåëè
   sig := PANEL_SIGNATURE; // 'PANL'
   Mem.WriteDWORD(sig);
   ver := PAN_SAVE_VERSION;
   Mem.WriteByte(ver);
-// Îòêðûòà/çàêðûòà, åñëè äâåðü:
+  // Îòêðûòà/çàêðûòà, åñëè äâåðü
   Mem.WriteBoolean(FEnabled);
-// Íàïðàâëåíèå ëèôòà, åñëè ëèôò:
+  // Íàïðàâëåíèå ëèôòà, åñëè ëèôò
   Mem.WriteByte(FLiftType);
-// Íîìåð òåêóùåé òåêñòóðû:
+  // Íîìåð òåêóùåé òåêñòóðû
   Mem.WriteInt(FCurTexture);
-// Êîîðäû
+  // Êîîðäû
   Mem.WriteInt(FX);
   Mem.WriteInt(FY);
   Mem.WriteWord(FWidth);
   Mem.WriteWord(FHeight);
-// Àíèìèðîâàííàÿ ëè òåêóùàÿ òåêñòóðà:
+  // Àíèìèðîâàííàÿ ëè òåêóùàÿ òåêñòóðà
   if (FCurTexture >= 0) and (FTextureIDs[FCurTexture].Anim) then
-    begin
-      Assert(FTextureIDs[FCurTexture].AnTex <> nil,
-             'TPanel.SaveState: No animation object');
-      anim := True;
-    end
+  begin
+    assert(FTextureIDs[FCurTexture].AnTex <> nil, 'TPanel.SaveState: No animation object');
+    anim := True;
+  end
   else
+  begin
     anim := False;
+  end;
   Mem.WriteBoolean(anim);
-// Åñëè äà - ñîõðàíÿåì àíèìàöèþ:
-  if anim then
-    FTextureIDs[FCurTexture].AnTex.SaveState(Mem);
+  // Åñëè äà - ñîõðàíÿåì àíèìàöèþ
+  if anim then FTextureIDs[FCurTexture].AnTex.SaveState(Mem);
 
   // moving platform state
   Mem.WriteInt(mMovingSpeed.X);
@@ -1062,6 +1063,7 @@ begin
   Mem.WriteInt(mSizeSpeed.h);
   Mem.WriteInt(mSizeEnd.w);
   Mem.WriteInt(mSizeEnd.h);
+
   Mem.WriteBoolean(mMovingActive);
   Mem.WriteBoolean(mMoveOnce);
 
@@ -1069,37 +1071,35 @@ begin
   Mem.WriteInt(mEndSizeTrig);
 end;
 
-procedure TPanel.LoadState(var Mem: TBinMemoryReader);
+
+procedure TPanel.LoadState (var Mem: TBinMemoryReader);
 var
   sig: DWORD;
   anim: Boolean;
   ver: Byte;
-  //ox, oy: Integer;
 begin
   if (Mem = nil) then exit;
 
-// Ñèãíàòóðà ïàíåëè:
+  // Ñèãíàòóðà ïàíåëè
   Mem.ReadDWORD(sig);
   if (sig <> PANEL_SIGNATURE) then raise EBinSizeError.Create('TPanel.LoadState: wrong panel signature'); // 'PANL'
   Mem.ReadByte(ver);
   if (ver <> PAN_SAVE_VERSION) then raise EBinSizeError.Create('TPanel.LoadState: invalid panel version');
-// Îòêðûòà/çàêðûòà, åñëè äâåðü:
+  // Îòêðûòà/çàêðûòà, åñëè äâåðü
   Mem.ReadBoolean(FEnabled);
-// Íàïðàâëåíèå ëèôòà, åñëè ëèôò:
+  // Íàïðàâëåíèå ëèôòà, åñëè ëèôò
   Mem.ReadByte(FLiftType);
-// Íîìåð òåêóùåé òåêñòóðû:
+  // Íîìåð òåêóùåé òåêñòóðû
   Mem.ReadInt(FCurTexture);
-// Êîîðäû
-  //ox := FX;
-  //oy := FY;
+  // Êîîðäû
   Mem.ReadInt(FX);
   Mem.ReadInt(FY);
   Mem.ReadWord(FWidth);
   Mem.ReadWord(FHeight);
   //e_LogWritefln('panel %s(%s): old=(%s,%s); new=(%s,%s); delta=(%s,%s)', [arrIdx, proxyId, ox, oy, FX, FY, FX-ox, FY-oy]);
-// Àíèìèðîâàííàÿ ëè òåêóùàÿ òåêñòóðà:
+  // Àíèìèðîâàííàÿ ëè òåêóùàÿ òåêñòóðà
   Mem.ReadBoolean(anim);
-// Åñëè äà - çàãðóæàåì àíèìàöèþ:
+  // Åñëè äà - çàãðóæàåì àíèìàöèþ
   if anim then
   begin
     Assert((FCurTexture >= 0) and
@@ -1116,10 +1116,12 @@ begin
   Mem.ReadInt(mMovingStart.Y);
   Mem.ReadInt(mMovingEnd.X);
   Mem.ReadInt(mMovingEnd.Y);
+
   Mem.ReadInt(mSizeSpeed.w);
   Mem.ReadInt(mSizeSpeed.h);
   Mem.ReadInt(mSizeEnd.w);
   Mem.ReadInt(mSizeEnd.h);
+
   Mem.ReadBoolean(mMovingActive);
   Mem.ReadBoolean(mMoveOnce);