public override void Parse(GameBitBuffer buffer)
 {
     fCastsShadows = buffer.ReadInt(32);
     eType = buffer.ReadInt(32);
     wp = new Vector3D();
     wp.Parse(buffer);
     wv = new Vector3D();
     wv.Parse(buffer);
     wdRadius = buffer.ReadFloat32();
     eAttenType = buffer.ReadInt(32);
     //still checking fixedarrays on basictypes
     Field6 = new float[3];
     for(int loop12 = 0;loop12 < _Field6.Length;loop12++)
     {
     _Field6[loop12] = buffer.ReadFloat32();
     }
     flAttenNearStart = buffer.ReadFloat32();
     flAttenNearEnd = buffer.ReadFloat32();
     flAttenFarStart = buffer.ReadFloat32();
     flAttenFarEnd = buffer.ReadFloat32();
     aHotspot = buffer.ReadInt(32);
     aFalloff = buffer.ReadInt(32);
     rgbavalDiffuse = new RGBAColorValue();
     rgbavalDiffuse.Parse(buffer);
 }
 public override void Parse(GameBitBuffer buffer)
 {
     Field0 = new RGBAColorValue();
     Field0.Parse(buffer);
     Field1 = new RGBAColorValue();
     Field1.Parse(buffer);
     Field2 = new RGBAColorValue();
     Field2.Parse(buffer);
     Field3 = new RGBAColorValue();
     Field3.Parse(buffer);
     Field4 = buffer.ReadFloat32();
     Field5 = buffer.ReadInt(32);
 }
 public void FileRead(MpqFileStream stream, long offset)
 {
     stream.Position = offset + 0;
     fCastsShadows = stream.ReadValueS32();
     stream.Position = offset + 4;
     eType = stream.ReadValueS32();
     stream.Position = offset + 8;
     wp = new Vector3D();
     wp.FileRead(stream, stream.Position);
     stream.Position = offset + 20;
     wv = new Vector3D();
     wv.FileRead(stream, stream.Position);
     stream.Position = offset + 32;
     wdRadius = stream.ReadValueF32();
     stream.Position = offset + 36;
     eAttenType = stream.ReadValueS32();
     stream.Position = offset + 40;
     Field6 = new float[3];
     for(int loop12=0; loop12 < 3; loop12++ )
     {
         float temp12_Field6;
         temp12_Field6 = stream.ReadValueF32();
         _Field6[loop12] = temp12_Field6;
     }
     stream.Position = offset + 52;
     flAttenNearStart = stream.ReadValueF32();
     stream.Position = offset + 56;
     flAttenNearEnd = stream.ReadValueF32();
     stream.Position = offset + 60;
     flAttenFarStart = stream.ReadValueF32();
     stream.Position = offset + 64;
     flAttenFarEnd = stream.ReadValueF32();
     stream.Position = offset + 68;
     aHotspot = stream.ReadValueS32();
     stream.Position = offset + 72;
     aFalloff = stream.ReadValueS32();
     stream.Position = offset + 76;
     rgbavalDiffuse = new RGBAColorValue();
     rgbavalDiffuse.FileRead(stream, stream.Position);
 }
 public void FileRead(MpqFileStream stream, long offset)
 {
     stream.Position = offset + 0;
     Field0 = new RGBAColorValue();
     Field0.FileRead(stream, stream.Position);
     stream.Position = offset + 16;
     Field1 = new RGBAColorValue();
     Field1.FileRead(stream, stream.Position);
     stream.Position = offset + 32;
     Field2 = new RGBAColorValue();
     Field2.FileRead(stream, stream.Position);
     stream.Position = offset + 48;
     Field3 = new RGBAColorValue();
     Field3.FileRead(stream, stream.Position);
     stream.Position = offset + 64;
     Field4 = stream.ReadValueF32();
     stream.Position = offset + 68;
     Field5 = stream.ReadValueS32();
 }