BBGamelib.flash.imp.Utils.ReadColorTransform C# (CSharp) Method

ReadColorTransform() public static method

public static ReadColorTransform ( byte data, Cursor cursor ) : ColorTransform
data byte
cursor Cursor
return ColorTransform
		public static ColorTransform ReadColorTransform(byte[] data, Cursor cursor){
			ColorTransform ctr = new ColorTransform();
			ctr.add = new Color (0, 0, 0 ,0);
			ctr.multiply = new Color32 (0, 0, 0, 0);
			int mtype = Utils.ReadInt32(data, cursor);
			if (mtype==1) {
				ctr.multiply = new Color(1, 1, 1, 1);
			}else if (mtype==2){
				Color color = new Color();
				color.r = Utils.ReadFloat(data, cursor);
				color.g = Utils.ReadFloat(data, cursor);
				color.b = Utils.ReadFloat(data, cursor);
				color.a = Utils.ReadFloat(data, cursor);
				ctr.multiply = color;
			}
			int atype = Utils.ReadInt32(data, cursor);
			if (atype==1) {
				ctr.add = new Color(255, 255, 255, 255);
			}else if (atype==2){
				Color32 color = new Color();
				color.r = Utils.ReadByte(data, cursor);
				color.g = Utils.ReadByte(data, cursor);
				color.b = Utils.ReadByte(data, cursor);
				color.a = Utils.ReadByte(data, cursor);
				ctr.add = color;
			}
			return ctr;
		}

Usage Example

Beispiel #1
0
        public TagPlaceObject(Flash flash, byte[] data, Cursor cursor)
        {
            this.flash = flash;
            int dataLength = Utils.ReadInt32(data, cursor);
            int nextIndex  = cursor.index + dataLength;

            //parse
            hasMatrix         = Utils.ReadByte(data, cursor) != 0;
            hasMove           = Utils.ReadByte(data, cursor) != 0;
            hasCharacter      = Utils.ReadByte(data, cursor) != 0;
            hasColorTransform = Utils.ReadByte(data, cursor) != 0;
            bool hasName = Utils.ReadByte(data, cursor) != 0;

            hasVisible = Utils.ReadByte(data, cursor) != 0;
            depth      = Utils.ReadInt32(data, cursor);

            if (hasCharacter)
            {
                characterId = Utils.ReadInt32(data, cursor);
            }

            if (hasMatrix)
            {
                position = Utils.ReadVector2(data, cursor);
                rotation = Utils.ReadFloat(data, cursor);
                scaleX   = Utils.ReadFloat(data, cursor);
                scaleY   = Utils.ReadFloat(data, cursor);
            }
            else
            {
                position = Vector2.zero;
                rotation = 0;
                scaleX   = 1;
                scaleY   = 1;
            }
            if (hasVisible)
            {
                visible = Utils.ReadByte(data, cursor) != 0;
            }

            if (hasColorTransform)
            {
                colorTransform = Utils.ReadColorTransform(data, cursor);
            }
            else
            {
                colorTransform = ColorTransform.Default;
            }

            if (hasName)
            {
                instanceName = Utils.ReadString(data, cursor);
            }

            cursor.index = nextIndex;
        }