protected override void ReadBinaryData(FileReader reader, Header header) { ReadName(reader); reader.Seek(0x10); // 0-padding // color arrays with key counts Color0Array = new STColorArray(reader.ReadUInt32()); Color0AlphaArray = new STColorArray(reader.ReadUInt32(), true); Color1Array = new STColorArray(reader.ReadUInt32()); Color1AlphaArray = new STColorArray(reader.ReadUInt32(), true); ScaleArray = new STColorArray(reader.ReadUInt32()); UnknownCount = reader.ReadUInt32(); reader.Seek(0x38); // 0-padding Unknown0 = reader.ReadBytes(0x30); BlinkIntensity0 = reader.ReadSingle(); BlinkIntensity1 = reader.ReadSingle(); BlinkDuration0 = reader.ReadSingle(); BlinkDuration1 = reader.ReadSingle(); Unknown1 = reader.ReadBytes(0x2c0); Radius = reader.ReadSingle(); reader.Seek(0x0c); // 0-padding // random and animated color table Color0Array.ReadColorData(reader); Color0AlphaArray.ReadColorData(reader); Color1Array.ReadColorData(reader); Color1AlphaArray.ReadColorData(reader); Unknown2 = reader.ReadBytes(0x40); ScaleArray.ReadColorData(reader); Unknown3 = reader.ReadBytes(0x328); // constant colors ConstantColor0 = new STColor(reader.ReadSingle(), reader.ReadSingle(), reader.ReadSingle(), reader.ReadSingle()); ConstantColor1 = new STColor(reader.ReadSingle(), reader.ReadSingle(), reader.ReadSingle(), reader.ReadSingle()); Unknown4 = reader.ReadBytes(0x30); // samplers for (int i = 0; i < 3; ++i) { SamplerInfo samplerInfo = new SamplerInfo(); samplerInfo.ReadSamplerData(reader); Samplers.Add(samplerInfo); } Unknown5 = reader.ReadBytes(0x30); }