public Scale(BinaryReader reader, long baseAddress, CTFLanguage language) { BaseAddress = baseAddress; Language = language; reader.BaseStream.Seek(BaseAddress, SeekOrigin.Begin); ulong bitflags = reader.ReadUInt16(); Unk1 = CaesarReader.ReadBitflagInt32(ref bitflags, reader); // typically qualifier Unk2 = CaesarReader.ReadBitflagInt32(ref bitflags, reader); // typically description PrepLowBound = CaesarReader.ReadBitflagInt32(ref bitflags, reader); // could be float PrepUpBound = CaesarReader.ReadBitflagInt32(ref bitflags, reader); // could be float MultiplyFactor = CaesarReader.ReadBitflagFloat(ref bitflags, reader); AddConstOffset = CaesarReader.ReadBitflagFloat(ref bitflags, reader); SICount = CaesarReader.ReadBitflagInt32(ref bitflags, reader); OffsetSI = CaesarReader.ReadBitflagInt32(ref bitflags, reader); USCount = CaesarReader.ReadBitflagInt32(ref bitflags, reader); OffsetUS = CaesarReader.ReadBitflagInt32(ref bitflags, reader); EnumDescription = CaesarReader.ReadBitflagInt32(ref bitflags, reader, -1); UnkC = CaesarReader.ReadBitflagInt32(ref bitflags, reader); }