Beispiel #1
0
                public override void Deserialize(IUnrealStream stream)
                {
                    // Property index
                    MemberProperty = Decompiler._Container.TryGetIndexObject(stream.ReadObjectIndex()) as UField;
                    Decompiler.AlignObjectSize();

                    // TODO: Corrigate version. Definitely didn't exist in Roboblitz(369)
                    if (stream.Version > 369)
                    {
                        // Struct index
                        stream.ReadObjectIndex();
                        Decompiler.AlignObjectSize();
#if MKKE
                        if (Package.Build != UnrealPackage.GameBuild.BuildName.MKKE)
                        {
#endif
                        stream.Position++;
                        Decompiler.AlignSize(sizeof(byte));
#if MKKE
                    }
#endif

                        // TODO: Corrigate version. Definitely didn't exist in MKKE(472), first seen in SWG(486).
                        if (stream.Version > 472)
                        {
                            stream.Position++;
                            Decompiler.AlignSize(sizeof(byte));
                        }
                    }
                    // Pre-Context
                    DeserializeNext();
                }
Beispiel #2
0
        public override void Read(AssetBinaryReader reader, int nextStarting)
        {
            base.Read(reader, nextStarting);
            reader.ReadInt32();

            Field = new UField();
            Field.Read(reader);
        }
Beispiel #3
0
            public async Task <UEField> GetNext()
            {
                if (ObjField.Empty())
                {
                    ObjField = await Object.Cast <UField>();
                }

                if (!ObjField.Next.IsValid())
                {
                    return(new UEField());
                }

                return((await ObjectsStore.GetByAddress(ObjField.Next)).Cast <UEField>());
            }
Beispiel #4
0
                public override void Deserialize( IUnrealStream stream )
                {
                    // Property index
                    MemberProperty = Decompiler._Container.TryGetIndexObject( stream.ReadObjectIndex() ) as UField;
                    Decompiler.AlignObjectSize();

                    // TODO: Corrigate version. Definitely didn't exist in Roboblitz(369)
                    if( stream.Version > 369 )
                    {
                        // Struct index
                        stream.ReadObjectIndex();
                        Decompiler.AlignObjectSize();
#if MKKE
                        if( Package.Build != UnrealPackage.GameBuild.BuildName.MKKE )
                        {
#endif
                            stream.Position ++;
                            Decompiler.AlignSize( sizeof(byte) );
#if MKKE
                        }
#endif

                        // TODO: Corrigate version. Definitely didn't exist in MKKE(472), first seen in SWG(486).
                        if( stream.Version > 472 )
                        {
                            stream.Position ++;
                            Decompiler.AlignSize( sizeof(byte) );
                        }
                    }
                    // Pre-Context
                    DeserializeNext();
                }