Esempio n. 1
0
        public static TriangleExtraData Deserialize(FZReader reader)
        {
            var data = new TriangleExtraData();

            data.address  = (int)reader.BaseStream.Position;
            data.unknown1 = reader.ReadInt32Array(7);

            return(data);
        }
        public static UnknownEntry1 Deserialize(FZReader reader)
        {
            var obj = new UnknownEntry1();

            obj.address  = (int)reader.BaseStream.Position;
            obj.unknown1 = reader.ReadBytes(20);

            return(obj);
        }
        public static ObjectCollisionTable Deserialize(FZReader reader)
        {
            var table = new ObjectCollisionTable();

            table.numEntries       = reader.ReadInt32();
            table.offset           = reader.ReadInt32();
            table.objectCollisions = reader.ReadArrayAtOffset(table.offset, table.numEntries, ObjectCollisionData.Deserialize);

            return(table);
        }
Esempio n. 4
0
        public static UnknownTable1 Deserialize(FZReader reader)
        {
            var table = new UnknownTable1();

            table.numEntries     = reader.ReadInt32();
            table.offset         = reader.ReadInt32();
            table.unknownEntries = reader.ReadArrayAtOffset(table.offset, table.numEntries, UnknownEntry1.Deserialize);

            return(table);
        }
        public void CanDeserializeColiFile()
        {
            var currentDir = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location);
            var coursePath = Path.Combine(currentDir, courseFile);

            using (var loader = new LZUnpacker(coursePath))
                using (var reader = new FZReader(loader.GetStream()))
                {
                    var file = ColiFile.Deserialize(reader);
                }
        }
Esempio n. 6
0
        public static CheckpointEntry Deserialize(FZReader reader)
        {
            var entry = new CheckpointEntry();

            entry.address       = (int)reader.BaseStream.Position;
            entry.unknown1      = reader.ReadInt32();
            entry.offset        = reader.ReadInt32();
            entry.checkpoint    = reader.ReadAtOffset(entry.offset, CheckpointData.Deserialize);
            entry.unknownOffset = reader.ReadInt32();

            return(entry);
        }
Esempio n. 7
0
        public static FZOrientation Deserialize(FZReader reader)
        {
            var obj = new FZOrientation();

            obj.address   = (int)reader.BaseStream.Position;
            obj.right     = reader.ReadVector3();
            obj.positionX = -reader.ReadSingle();
            obj.up        = reader.ReadVector3();
            obj.positionY = reader.ReadSingle();
            obj.forward   = reader.ReadVector3();
            obj.positionZ = reader.ReadSingle();

            return(obj);
        }
Esempio n. 8
0
        public static ColiFile Deserialize(FZReader reader)
        {
            var file = new ColiFile();

            file.header               = reader.ReadBytes(8);
            file.checkpointTable      = CheckpointTable.Deserialize(reader);
            file.unknownTable1        = UnknownTable1.Deserialize(reader);
            file.objectCollisionTable = ObjectCollisionTable.Deserialize(reader);
            file.unknown1             = reader.ReadInt32Array(12);
            file.objectTable          = ObjectTable.Deserialize(reader);
            file.unknown2             = reader.ReadInt32();
            file.unknown3             = reader.ReadInt32Array(2);
            file.meshCollisionTable   = MeshCollisionTable.Deserialize(reader);
            file.unknownTable2        = UnknownTable2.Deserialize(reader);
            file.unknown4             = reader.ReadInt32Array(4);
            file.unknownOffset1       = reader.ReadInt32();
            file.unknown5             = reader.ReadInt32Array(2);
            file.unknownOffset2       = reader.ReadInt32();
            file.unknownTable3        = UnknownTable3.Deserialize(reader);
            file.unknownTable4        = UnknownTable4.Deserialize(reader);
            file.unknown6             = reader.ReadInt32Array(23);

            return(file);
        }