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(); }
public override void Read(AssetBinaryReader reader, int nextStarting) { base.Read(reader, nextStarting); reader.ReadInt32(); Field = new UField(); Field.Read(reader); }
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>()); }
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(); }