Ejemplo n.º 1
0
        public override void ReadFromFile(MemoryStream reader, bool isBigEndian)
        {
            base.ReadFromFile(reader, isBigEndian);
            unk01 = reader.ReadInt32(isBigEndian);

            unkData = new unkStruct[unk01];

            for (int i = 0; i != unk01; i++)
            {
                unkData[i] = new unkStruct(reader, isBigEndian);
            }
        }
Ejemplo n.º 2
0
        private void AddTest()
        {
            unkStruct data = new unkStruct();

            data.fileID           = 1156;
            data.unk0             = new Vector3(-1125.855f, 1398.833f, 23.14296f);
            data.unk1             = new Vector3(-1016.458f, 1368.833f, 16.67241f);
            data.unk2             = 0;
            data.fileSize         = 46412;
            data.accumulatingSize = unkData[unkData.Count - 1].accumulatingSize + unkData[unkData.Count - 1].fileSize;
            data.unk2             = 100731;
            data.fileFlags        = 16583800;
            unkData.Add(data);
        }
Ejemplo n.º 3
0
        public void ReadFromFile(BinaryReader reader)
        {
            unk0 = reader.ReadInt32();
            int entryCount = reader.ReadInt32();

            remainingHeader = reader.ReadBytes(132);


            unkData = new List <unkStruct>();

            for (int i = 0; i < entryCount; i++)
            {
                unkStruct data = new unkStruct();
                data.fileID = reader.ReadInt32();

                // The bounding box here is stored as X X -Y -Y Z Z
                // So we have to take this into account, rather than using or util function.
                float minX = reader.ReadSingle();
                float maxX = reader.ReadSingle();
                float minY = -reader.ReadSingle();
                float maxY = -reader.ReadSingle();
                float minZ = reader.ReadSingle();
                float maxZ = reader.ReadSingle();
                data.unk0 = new Vector3(minX, minY, minZ);
                data.unk1 = new Vector3(maxX, maxY, maxZ);

                // And then after we have deserialized it properly we have to swap it, using a
                // util function only specific to this type of navigation file.
                data.unk0 = SwapVector3(data.unk0);
                data.unk1 = SwapVector3(data.unk1);

                data.unk2             = reader.ReadInt32();
                data.fileSize         = reader.ReadInt32();
                data.accumulatingSize = reader.ReadInt32();
                data.unk5             = reader.ReadInt32();
                data.fileFlags        = reader.ReadInt32();
                unkData.Add(data);
            }

            unk2 = StringHelpers.ReadString(reader);
            unk3 = reader.ReadInt32();
            unk4 = reader.ReadInt32();
            //unkFooter = reader.ReadUInt64();

            if (Debugger.IsAttached)
            {
                DebugWriteToFile();
                AddTest();
            }
        }
Ejemplo n.º 4
0
        public override void ReadFromFile(BinaryReader reader)
        {
            base.ReadFromFile(reader);
            unk01 = reader.ReadInt32();

            if (unk01 <= 0)
            {
                return;
            }

            unkData = new unkStruct[unk01];

            for (int i = 0; i != unk01; i++)
            {
                unkData[i] = new unkStruct(reader);
            }
        }
Ejemplo n.º 5
0
        public HPDData(BinaryReader reader)
        {
            unk0            = reader.ReadInt32();
            unk1            = reader.ReadInt32();
            remainingHeader = reader.ReadBytes(132);

            unkData = new unkStruct[unk1];

            for (int i = 0; i != unkData.Length; i++)
            {
                unkStruct data = new unkStruct();
                data.id      = reader.ReadInt32();
                data.unk0    = Vector3Extenders.ReadFromFile(reader);
                data.unk1    = Vector3Extenders.ReadFromFile(reader);
                data.unkData = reader.ReadBytes(20);
                unkData[i]   = data;
            }

            unk2 = StringHelpers.ReadString(reader);
            unk3 = reader.ReadInt32();
            unk4 = reader.ReadInt32();
        }