DEADSOFTWARE

ambient light for level (doesn't work with dynamic lights; I. WANT. SHADERS!)
[d2df-sdl.git] / src / shared / xdynrec.pas
index b65ab8a4af7b13fb8eb25f445f01442175050ca4..53bda03d96112b758ace00a676b9b235fc0cb59c 100644 (file)
@@ -974,6 +974,7 @@ begin
     try
       stp := TStrTextParser.Create(mDefUnparsed+';');
       parseValue(stp);
+      //if (mType = TType.TColor) then writeln('4=[', mIVal4, ']');
       mDefSVal := mSVal;
       mDefIVal := mIVal;
       mDefIVal2 := mIVal2;
@@ -1009,6 +1010,7 @@ begin
   mIVal2 := mDefIVal2;
   mIVal3 := mDefIVal3;
   mIVal4 := mDefIVal4;
+  //if (mType = TType.TColor) then writeln('4=[', mDefIVal4, ']');
   mDefined := true;
 end;
 
@@ -2740,7 +2742,7 @@ var
     end;
     for fld in rec.mFields do
     begin
-      //writeln('  ', fld.mName);
+      //if (fld.mName = 'ambient_color') then writeln('****', fld.mName);
       fld.fixDefaultValue(); // just in case
     end;
   end;
@@ -2830,6 +2832,12 @@ begin
       //writeln('parsing ''', mName, '.', fld.mName, '''...');
       fld.parseBinValue(mst);
     end;
+    // fix default values
+    for fld in mFields do
+    begin
+      if (fld.mType = TDynField.TType.TList) then continue;
+      fld.fixDefaultValue();
+    end;
   finally
     mst.Free();
     if (buf <> nil) then FreeMem(buf);