Example #1
0
            public SCDLEntry(BinaryReaderEx br, Dictionary <int, string> strings, Dictionary <int, SCDOEntry> scdoEntries)
            {
                int nameOffset = br.ReadInt32();

                Unk2 = br.ReadInt32();
                int scdoOffset = br.ReadInt32();

                Unk4 = br.ReadInt32();

                Name = strings[nameOffset];
                SCDO = scdoEntries[scdoOffset];
            }
Example #2
0
        private static Dictionary <int, SCDOEntry> ReadSCDO(BinaryReaderEx br, Dictionary <int, string> strings, Dictionary <int, SCDKEntry> scdkEntries)
        {
            ReadSectionHeader(br, "SCDO", out int entrySize, out int entryCount);

            int startPosition = (int)br.Position;
            Dictionary <int, SCDOEntry> scdoEntries = new Dictionary <int, SCDOEntry>();

            for (int i = 0; i < entryCount; i++)
            {
                int offset = (int)br.Position - startPosition;
                scdoEntries[offset] = new SCDOEntry(br, strings, scdkEntries);
            }

            br.Pad(0x10);
            return(scdoEntries);
        }