Ejemplo n.º 1
0
        /// <summary>
        /// The read movie clip asset info method.
        /// </summary>
        /// <param name="b"></param>
        /// <returns></returns>
        private MovieClipAssetInfo readMovieClipAssetInfo(ByteArray b)
        {
            MovieClipAssetInfo info = new MovieClipAssetInfo();

            int labelsLen = b.ReadByte();

            for (int i = 0; i < labelsLen; i++)
            {
                if (info.labels == null)
                {
                    info.labels = new Dictionary <string, int>();
                }
                string str  = b.ReadUTF();
                int    num4 = b.ReadShort();
                info.labels[str] = num4;
            }
            int framesLen = b.ReadShort();

            for (int i = 0; i < framesLen; i++)
            {
                int displaysLen = b.ReadShort();
                DisplayObjectInfo[] frameInfo = new DisplayObjectInfo[displaysLen];
                for (int k = 0; k < displaysLen; k++)
                {
                    DisplayObjectInfo info3 = new DisplayObjectInfo();

                    info3.isBitmap   = b.ReadBool();
                    info3.cid        = b.ReadShort();
                    info3.instanceId = b.ReadShort();
                    info3.tranform   = this.readTransformInfo(b);

                    frameInfo[k] = info3;
                }
                info.addFrame(frameInfo);
            }

            return(info);
        }