public override void Read(AssetBinaryReader reader, bool includeHeader, long leng1, long leng2 = 0)
        {
            if (includeHeader)
            {
                PropertyGuid = reader.ReadPropertyGuid();
            }

            if (reader.Asset.EngineVersion < UE4Version.VER_UE4_FTEXT_HISTORY)
            {
                CultureInvariantString = reader.ReadFString();
                if (reader.Asset.EngineVersion >= UE4Version.VER_UE4_ADDED_NAMESPACE_AND_KEY_DATA_TO_FTEXT)
                {
                    Namespace = reader.ReadFString();
                    Value     = reader.ReadFString();
                }
                else
                {
                    Namespace = null;
                    Value     = reader.ReadFString();
                }
            }

            Flags = (ETextFlag)reader.ReadUInt32();

            if (reader.Asset.EngineVersion >= UE4Version.VER_UE4_FTEXT_HISTORY)
            {
                HistoryType = (TextHistoryType)reader.ReadSByte();

                switch (HistoryType)
                {
                case TextHistoryType.None:
                    Value = null;
                    if (reader.Asset.GetCustomVersion <FEditorObjectVersion>() >= FEditorObjectVersion.CultureInvariantTextSerializationKeyStability)
                    {
                        bool bHasCultureInvariantString = reader.ReadInt32() == 1;
                        if (bHasCultureInvariantString)
                        {
                            CultureInvariantString = reader.ReadFString();
                        }
                    }
                    break;

                case TextHistoryType.Base:
                    Namespace = reader.ReadFString();
                    Value     = reader.ReadFString();
                    CultureInvariantString = reader.ReadFString();
                    break;

                case TextHistoryType.StringTableEntry:
                    TableId = reader.ReadFName();
                    Value   = reader.ReadFString();
                    break;

                default:
                    throw new NotImplementedException("Unimplemented reader for " + HistoryType.ToString());
                }
            }
        }
        public override void Read(AssetBinaryReader reader, bool includeHeader, long leng1, long leng2 = 0)
        {
            if (includeHeader)
            {
                PropertyGuid = reader.ReadPropertyGuid();
            }

            if (reader.Asset.EngineVersion < UE4Version.VER_UE4_ADDED_SOFT_OBJECT_PATH)
            {
                Path = reader.ReadFString();
            }
            else
            {
                AssetPathName = reader.ReadFName();
                SubPathString = reader.ReadFString();
            }
        }
Exemple #3
0
        public override void Read(AssetBinaryReader reader, bool includeHeader, long leng1, long leng2 = 0)
        {
            if (includeHeader)
            {
                PropertyGuid = reader.ReadPropertyGuid();
            }

            Value = reader.ReadFString();
        }