Alexandria.Engines.DarkSouls.TextureArchive.TextureArchive C# (CSharp) Метод

TextureArchive() приватный Метод

private TextureArchive ( AssetManager manager, BinaryReader reader, string name ) : System
manager AssetManager
reader System.IO.BinaryReader
name string
Результат System
        internal TextureArchive(AssetManager manager, BinaryReader reader, string name)
            : base(manager, name)
        {
            ByteOrder = ByteOrder.LittleEndian;

            reader.RequireMagic(Magic);
            var totalSize = reader.ReadInt32();
            var count = reader.ReadInt32();
            ByteOrder = ByteOrder.LittleEndian;

            int code = reader.ReadInt32();
            if (code == 0x20302) {
                totalSize = totalSize.ReverseBytes();
                count = count.ReverseBytes();
                ByteOrder = ByteOrder.BigEndian;
                Platform = DSPlatform.PS3;
            } else if(code == 0x02030200) { // BigEndianBinaryReader, PS3
                Platform = DSPlatform.PS3;
            } else if (code != 0x20300)
                throw new InvalidDataException();

            for (int index = 0; index < count; index++)
                new TextureArchiveRecord(this, reader, ByteOrder);
            Stream = reader.BaseStream;
        }