Exemplo n.º 1
0
        public override void Read(AssetReader reader)
        {
            base.Read(reader);

            Rect.Read(reader);
            Offset.Read(reader);
            if (HasBorder(reader.Version))
            {
                Border.Read(reader);
            }
            PixelsToUnits = reader.ReadSingle();
            if (HasPivot(reader.Version))
            {
                Pivot.Read(reader);
            }
            Extrude = reader.ReadUInt32();
            if (HasPolygon(reader.Version))
            {
                IsPolygon = reader.ReadBoolean();
                reader.AlignStream();
            }
#if UNIVERSAL
            if (HasAtlasName(reader.Flags))
            {
                AtlasName  = reader.ReadString();
                PackingTag = reader.ReadString();
            }
#endif

            if (HasRendererData(reader.Version))
            {
                RenderDataKey = reader.ReadTupleTLong <GUID>();
                AtlasTags     = reader.ReadStringArray();
                SpriteAtlas.Read(reader);
            }
            RD.Read(reader);
#if UNIVERSAL
            if (HasAtlasRD(reader.Version, reader.Flags))
            {
                AtlasRD.Read(reader);
            }
#endif
            reader.AlignStream();

            if (HasPhysicsShape(reader.Version))
            {
                PhysicsShape = reader.ReadAssetArrayArray <Vector2f>();
            }

            if (HasBones(reader.Version))
            {
                Bones = reader.ReadAssetArray <SpriteBone>();
            }
#if UNIVERSAL
            if (HasSpriteID(reader.Version, reader.Flags))
            {
                SpriteID = reader.ReadString();
            }
#endif
        }
Exemplo n.º 2
0
        public override void Read(AssetReader reader)
        {
            base.Read(reader);

            Rect.Read(reader);
            Offset.Read(reader);
            if (IsReadBorder(reader.Version))
            {
                Border.Read(reader);
            }
            PixelsToUnits = reader.ReadSingle();
            if (IsReadPivot(reader.Version))
            {
                Pivot.Read(reader);
            }
            Extrude = reader.ReadUInt32();
            if (IsReadPolygon(reader.Version))
            {
                IsPolygon = reader.ReadBoolean();
                reader.AlignStream(AlignType.Align4);
            }
#if UNIVERSAL
            if (IsReadAtlasName(reader.Flags))
            {
                AtlasName  = reader.ReadString();
                PackingTag = reader.ReadString();
            }
#endif

            if (IsReadRendererData(reader.Version))
            {
                RenderDataKey = reader.ReadTupleTLong <EngineGUID>();
                m_atlasTags   = reader.ReadStringArray();
                SpriteAtlas.Read(reader);
            }
            RD.Read(reader);
#if UNIVERSAL
            if (IsReadAtlasRD(reader.Flags))
            {
                AtlasRD.Read(reader);
            }
#endif
            reader.AlignStream(AlignType.Align4);

            if (IsReadPhysicsShape(reader.Version))
            {
                int count = reader.ReadInt32();
                m_physicsShape = new Vector2f[count][];
                for (int i = 0; i < count; i++)
                {
                    m_physicsShape[i] = reader.ReadAssetArray <Vector2f>();
                }
            }

            if (IsReadBones(reader.Version))
            {
                m_bones = reader.ReadAssetArray <SpriteBone>();
            }
#if UNIVERSAL
            if (IsReadSpriteID(reader.Version, reader.Flags))
            {
                SpriteID = reader.ReadString();
            }
#endif
        }