public override void Deserialize(FAssetArchive Ar, long validPos) { base.Deserialize(Ar, validPos); SuperStruct = new FPackageIndex(Ar); if (Ar.Game == EGame.GAME_SOD2) { Ar.Position += 4; //var someScriptImport = new FPackageIndex(Ar); } if (FFrameworkObjectVersion.Get(Ar) < FFrameworkObjectVersion.Type.RemoveUField_Next) { var firstChild = new FPackageIndex(Ar); Children = firstChild.IsNull ? Array.Empty <FPackageIndex>() : new[] { firstChild }; } else { Children = Ar.ReadArray(() => new FPackageIndex(Ar)); } if (FCoreObjectVersion.Get(Ar) >= FCoreObjectVersion.Type.FProperties) { DeserializeProperties(Ar); } var bytecodeBufferSize = Ar.Read <int>(); var serializedScriptSize = Ar.Read <int>(); Ar.Position += serializedScriptSize; // should we read the bytecode some day? }
public override void Deserialize(FAssetArchive Ar, long validPos) { base.Deserialize(Ar, validPos); SuperStruct = new FPackageIndex(Ar); if (FFrameworkObjectVersion.Get(Ar) < FFrameworkObjectVersion.Type.RemoveUField_Next) { var firstChild = new FPackageIndex(Ar); Children = firstChild.IsNull ? Array.Empty<FPackageIndex>() : new[] { firstChild }; } else { Children = Ar.ReadArray(() => new FPackageIndex(Ar)); } if (FCoreObjectVersion.Get(Ar) >= FCoreObjectVersion.Type.FProperties) { DeserializeProperties(Ar); } var bytecodeBufferSize = Ar.Read<int>(); var serializedScriptSize = Ar.Read<int>(); if (Ar.Owner.Provider?.ReadScriptData == true) { Script = Ar.ReadBytes(serializedScriptSize); } else { Ar.Position += serializedScriptSize; } }
public override void Deserialize(FAssetArchive Ar, long validPos) { base.Deserialize(Ar, validPos); SuperStruct = new FPackageIndex(Ar); Children = Ar.ReadArray(() => new FPackageIndex(Ar)); DeserializeProperties(Ar); var bytecodeBufferSize = Ar.Read <int>(); var serializedScriptSize = Ar.Read <int>(); Ar.Position += serializedScriptSize; // should we read the bytecode some day? }
public override void Deserialize(FAssetArchive Ar, long validPos) { base.Deserialize(Ar, validPos); FunctionFlags = Ar.Read <uint>(); // Replication info if ((FunctionFlags & 0x40 /*EFunctionFlags.FUNC_Net*/) != 0) { // Unused. var repOffset = Ar.Read <short>(); } if (Ar.Ver >= (UE4Version)VER_UE4_SERIALIZE_BLUEPRINT_EVENTGRAPH_FASTCALLS_IN_UFUNCTION) { EventGraphFunction = new FPackageIndex(Ar); EventGraphCallOffset = Ar.Read <int>(); } }
public FFieldPath(FAssetArchive Ar) { var pathNum = Ar.Read <int>(); Path = new List <FName>(pathNum); for (int i = 0; i < pathNum; i++) { Path.Add(Ar.ReadFName()); } // The old serialization format could save 'None' paths, they should be just empty if (Path.Count == 1 && Path[0].IsNone) { Path.Clear(); } //if (Ar.CustomVer(FFortniteMainBranchObjectVersion.GUID) >= FFortniteMainBranchObjectVersion.FFieldPathOwnerSerialization || Ar.CustomVer(FReleaseObjectVersion.GUID) >= FReleaseObjectVersion.FFieldPathOwnerSerialization) { ResolvedOwner = new FPackageIndex(Ar); //} }
public override void Deserialize(FAssetArchive Ar, long validPos) { base.Deserialize(Ar, validPos); // serialize the function map FuncMap = new Dictionary <FName, FPackageIndex>(); var funcMapNum = Ar.Read <int>(); for (var i = 0; i < funcMapNum; i++) { FuncMap[Ar.ReadFName()] = new FPackageIndex(Ar); } // Class flags first. ClassFlags = Ar.Read <uint>(); // Variables. if (Ar.Game == EGame.GAME_StarWarsJediFallenOrder) { Ar.Position += 4; } ClassWithin = new FPackageIndex(Ar); ClassConfigName = Ar.ReadFName(); ClassGeneratedBy = new FPackageIndex(Ar); // Load serialized interface classes Interfaces = Ar.ReadArray(() => new FImplementedInterface(Ar)); var bDeprecatedForceScriptOrder = Ar.ReadBoolean(); var dummy = Ar.ReadFName(); if (Ar.Ver >= EUnrealEngineObjectUE4Version.ADD_COOKED_TO_UCLASS) { bCooked = Ar.ReadBoolean(); } // Defaults. ClassDefaultObject = new FPackageIndex(Ar); }
public override void Deserialize(FAssetArchive Ar, long validPos) { base.Deserialize(Ar, validPos); // serialize the function map FuncMap = new Dictionary <FName, FPackageIndex>(); var funcMapNum = Ar.Read <int>(); for (var i = 0; i < funcMapNum; i++) { FuncMap[Ar.ReadFName()] = new FPackageIndex(Ar); } // Class flags first. ClassFlags = Ar.Read <uint>(); // Variables. ClassWithin = new FPackageIndex(Ar); ClassConfigName = Ar.ReadFName(); ClassGeneratedBy = new FPackageIndex(Ar); // Load serialized interface classes Interfaces = Ar.ReadArray(() => new FImplementedInterface(Ar)); var bDeprecatedScriptOrder = Ar.ReadBoolean(); var dummy = Ar.ReadFName(); if ((int)Ar.Ver >= 241 /*VER_UE4_ADD_COOKED_TO_UCLASS*/) { bCooked = Ar.ReadBoolean(); } // Defaults. ClassDefaultObject = new FPackageIndex(Ar); }
public FPackageIndex ResolvedOwner; //UStruct public FFieldPath() { Path = new List <FName>(); ResolvedOwner = new FPackageIndex(); }
public override void Deserialize(FAssetArchive Ar) { base.Deserialize(Ar); Enum = new FPackageIndex(Ar); UnderlyingProp = (FNumericProperty?)SerializeSingleField(Ar); }
public override void Deserialize(FAssetArchive Ar) { base.Deserialize(Ar); SignatureFunction = new FPackageIndex(Ar); }
public override void Deserialize(FAssetArchive Ar) { base.Deserialize(Ar); MetaClass = new FPackageIndex(Ar); }
public override void Deserialize(FAssetArchive Ar) { base.Deserialize(Ar); Struct = new FPackageIndex(Ar); }
public FImplementedInterface(FAssetArchive Ar) { Class = new FPackageIndex(Ar); PointerOffset = Ar.Read <int>(); bImplementedByK2 = Ar.ReadBoolean(); }
public FPackageIndex Enum; // UEnum public override void Deserialize(FAssetArchive Ar, long validPos) { base.Deserialize(Ar, validPos); Enum = new FPackageIndex(Ar); }
public FScriptDelegate(FPackageIndex obj, FName functionName) { Object = obj; FunctionName = functionName; }
public FScriptDelegate(FAssetArchive Ar) { Object = new FPackageIndex(Ar); FunctionName = Ar.ReadFName(); }