Example #1
0
 public void VisitColourFloat(ColourData field)
 {
     if (!FilterString(field, field.Name))
     {
         FilterString(field, field.Value);
     }
 }
Example #2
0
        public void VisitColourInt(ColourData field)
        {
            SeekToOffset(field.Offset);

            if (field.Value.Length == 7)
            {
                field.Value = field.Value.Insert(1, "FF");
            }

            foreach (char formatChar in field.Format)
            {
                switch (formatChar)
                {
                case 'a':
                    byte alpha = byte.Parse(field.Value.Replace("#", "").Remove(2), NumberStyles.HexNumber);
                    _writer.WriteByte(alpha);
                    break;

                case 'r':
                    byte red = byte.Parse(field.Value.Replace("#", "").Remove(0, 2).Remove(2), NumberStyles.HexNumber);
                    _writer.WriteByte(red);
                    break;

                case 'g':
                    byte green = byte.Parse(field.Value.Replace("#", "").Remove(0, 4).Remove(2), NumberStyles.HexNumber);
                    _writer.WriteByte(green);
                    break;

                case 'b':
                    byte blue = byte.Parse(field.Value.Replace("#", "").Remove(0, 6), NumberStyles.HexNumber);
                    _writer.WriteByte(blue);
                    break;
                }
            }
        }
Example #3
0
        public void VisitColourFloat(ColourData field)
        {
            SeekToOffset(field.Offset);

            foreach(var formatChar in field.Format.ToCharArray())
            {
                switch(formatChar)
                {
                    case 'a':
                        var alpha = Convert.ToSingle(int.Parse(field.Value.Replace("#", "").Remove(2), NumberStyles.HexNumber)) / 255;
                        _writer.WriteFloat(alpha);
                        break;
                    case 'r':
                        var red = Convert.ToSingle(int.Parse(field.Value.Replace("#", "").Remove(0, 2).Remove(2), NumberStyles.HexNumber)) / 255;
                        _writer.WriteFloat(red);
                        break;
                    case 'g':
                        var green = Convert.ToSingle(int.Parse(field.Value.Replace("#", "").Remove(0, 4).Remove(2), NumberStyles.HexNumber)) / 255;
                        _writer.WriteFloat(green);
                        break;
                    case 'b':
                        var blue = Convert.ToSingle(int.Parse(field.Value.Replace("#", "").Remove(0, 6), NumberStyles.HexNumber)) / 255;
                        _writer.WriteFloat(blue);
                        break;
                }
            }
        }
Example #4
0
        public void VisitColourFloat(ColourData field)
        {
            SeekToOffset(field.Offset);

            if (field.Value.Length == 7)
                field.Value = field.Value.Insert(1, "FF");

            foreach (char formatChar in field.Format)
            {
                switch (formatChar)
                {
                    case 'a':
                        float alpha = Convert.ToSingle(int.Parse(field.Value.Replace("#", "").Remove(2), NumberStyles.HexNumber))/255;
                        _writer.WriteFloat(alpha);
                        break;
                    case 'r':
                        float red =
                            Convert.ToSingle(int.Parse(field.Value.Replace("#", "").Remove(0, 2).Remove(2), NumberStyles.HexNumber))/255;
                        _writer.WriteFloat(red);
                        break;
                    case 'g':
                        float green =
                            Convert.ToSingle(int.Parse(field.Value.Replace("#", "").Remove(0, 4).Remove(2), NumberStyles.HexNumber))/255;
                        _writer.WriteFloat(green);
                        break;
                    case 'b':
                        float blue = Convert.ToSingle(int.Parse(field.Value.Replace("#", "").Remove(0, 6), NumberStyles.HexNumber))/255;
                        _writer.WriteFloat(blue);
                        break;
                }
            }
        }
Example #5
0
        public void VisitColourInt(ColourData field)
        {
            SeekToOffset(field.Offset);

            int offset = 0;

            if (_reader.Endianness == Endian.BigEndian && field.Format.Length == 3)
            {
                offset = 1;
            }

            byte[] colorArray = new byte[4];
            for (int i = offset; i < 4; i++)
            {
                colorArray[i] = _reader.ReadByte();
            }

            if (_reader.Endianness == Endian.LittleEndian)
            {
                Array.Reverse(colorArray);
            }

            if (field.Format.Length == 3)
            {
                colorArray[0] = 0xFF;
            }

            string colorValue = String.Concat(Array.ConvertAll(colorArray, x => x.ToString("X2")));

            field.Value = "#" + colorValue;
        }
Example #6
0
        public void VisitColourInt(ColourData field)
        {
            SeekToOffset(field.Offset);

            string colorValue = "#";

            foreach (char formatChar in field.Format)
            {
                colorValue += (_reader.ReadByte().ToString("X2"));
            }
            field.Value = colorValue;
        }
Example #7
0
        public void VisitColourFloat(ColourData field)
        {
            SeekToOffset(field.Offset);

            string colorValue = "#";

            foreach (char formatChar in field.Format)
            {
                colorValue += ((int)(_reader.ReadFloat() * 255)).ToString("X2");
            }
            field.Value = colorValue;
        }
Example #8
0
        public void VisitColourInt(ColourData field)
        {
            SeekToOffset(field.Offset);

            byte[] colorArray = new byte[4];

            if (field.Value.Length == 7)
            {
                field.Value = field.Value.Insert(1, "FF");
            }

            foreach (char formatChar in field.Format)
            {
                switch (formatChar)
                {
                case 'a':
                    colorArray[0] = byte.Parse(field.Value.Replace("#", "").Remove(2), NumberStyles.HexNumber);
                    break;

                case 'r':
                    colorArray[1] = byte.Parse(field.Value.Replace("#", "").Remove(0, 2).Remove(2), NumberStyles.HexNumber);
                    break;

                case 'g':
                    colorArray[2] = byte.Parse(field.Value.Replace("#", "").Remove(0, 4).Remove(2), NumberStyles.HexNumber);
                    break;

                case 'b':
                    colorArray[3] = byte.Parse(field.Value.Replace("#", "").Remove(0, 6), NumberStyles.HexNumber);
                    break;
                }
            }

            int offset = 1;

            if (_writer.Endianness == Endian.LittleEndian)
            {
                Array.Reverse(colorArray);
                offset = 0;
            }

            if (field.Format.Length == 3)
            {
                _writer.WriteBlock(colorArray, offset, 3);
            }
            else
            {
                _writer.WriteBlock(colorArray);
            }
        }
Example #9
0
        public void VisitColourInt(ColourData field)
        {
            SeekToOffset(field.Offset);

            byte[] colorArray = new byte[field.Format.Length];
            for (int i = 0; i < field.Format.Length; i++)
            {
                colorArray[i] = _reader.ReadByte();
            }

            if (_cache.Engine == EngineType.FourthGeneration)
            {
                Array.Reverse(colorArray);
            }

            string colorValue = String.Concat(Array.ConvertAll(colorArray, x => x.ToString("X2")));

            field.Value = "#" + colorValue;
        }
Example #10
0
        public void VisitColourFloat(ColourData field)
        {
            SeekToOffset(field.Offset);

            if (field.Value.Length == 7)
            {
                field.Value = field.Value.Insert(1, "FF");
            }

            foreach (char formatChar in field.Format)
            {
                switch (formatChar)
                {
                case 'a':
                    float alpha = Convert.ToSingle(int.Parse(field.Value.Replace("#", "").Remove(2), NumberStyles.HexNumber)) / 255;
                    _writer.WriteFloat(alpha);
                    break;

                case 'r':
                    float red =
                        Convert.ToSingle(int.Parse(field.Value.Replace("#", "").Remove(0, 2).Remove(2), NumberStyles.HexNumber)) / 255;
                    _writer.WriteFloat(red);
                    break;

                case 'g':
                    float green =
                        Convert.ToSingle(int.Parse(field.Value.Replace("#", "").Remove(0, 4).Remove(2), NumberStyles.HexNumber)) / 255;
                    _writer.WriteFloat(green);
                    break;

                case 'b':
                    float blue = Convert.ToSingle(int.Parse(field.Value.Replace("#", "").Remove(0, 6), NumberStyles.HexNumber)) / 255;
                    _writer.WriteFloat(blue);
                    break;
                }
            }
        }
Example #11
0
        public void VisitColourInt(ColourData field)
        {
            SeekToOffset(field.Offset);

            string colorValue = "#";
            foreach(var formatChar in field.Format.ToCharArray())
                colorValue += (_reader.ReadByte().ToString("X2"));
            field.Value = colorValue;
        }
Example #12
0
		public void VisitColourInt(ColourData field)
		{
			if (!FilterString(field, field.Name))
				FilterString(field, field.Value);
		}
Example #13
0
        public void VisitColourFloat(ColourData field)
        {
            SeekToOffset(field.Offset);

            string colorValue = "#";
            foreach (var formatChar in field.Format.ToCharArray())
                colorValue += ((int)(_reader.ReadFloat() * 255)).ToString("X2");
            field.Value = colorValue;
        }
Example #14
0
        public void VisitColourInt(ColourData field)
        {
            SeekToOffset(field.Offset);

            foreach (var formatChar in field.Format.ToCharArray())
            {
                switch (formatChar)
                {
                    case 'a':
                        var alpha = byte.Parse(field.Value.Replace("#", "").Remove(2), NumberStyles.HexNumber);
                        _writer.WriteByte(alpha);
                        break;
                    case 'r':
                        var red = byte.Parse(field.Value.Replace("#", "").Remove(0, 2).Remove(2), NumberStyles.HexNumber);
                        _writer.WriteByte(red);
                        break;
                    case 'g':
                        var green = byte.Parse(field.Value.Replace("#", "").Remove(0, 4).Remove(2), NumberStyles.HexNumber);
                        _writer.WriteByte(green);
                        break;
                    case 'b':
                        var blue = byte.Parse(field.Value.Replace("#", "").Remove(0, 6).Remove(2), NumberStyles.HexNumber);
                        _writer.WriteByte(blue);
                        break;
                }
            }
        }
 public void VisitColourFloat(ColourData field)
 {
 }
Example #16
0
 public void VisitColourInt(ColourData field)
 {
     AddWidth(_colourValue.Width);
 }
 public void VisitColourInt(ColourData field)
 {
 }
Example #18
0
 public void VisitColourFloat(ColourData field)
 {
 }
Example #19
0
 public void VisitColourInt(ColourData field)
 {
 }
Example #20
0
 public void VisitColourFloat(ColourData field)
 {
     AddWidth(_colourValue.Width);
 }
Example #21
0
		public void VisitColourInt(ColourData field)
		{
			SeekToOffset(field.Offset);

			byte[] colorArray = new byte[field.Format.Length];
			for (int i = 0; i < field.Format.Length; i++)
				colorArray[i] = _reader.ReadByte();

			if (_cache.Engine == EngineType.FourthGeneration)
				Array.Reverse(colorArray);

			string colorValue = String.Concat(Array.ConvertAll(colorArray, x => x.ToString("X2")));
			field.Value = "#" + colorValue;
		}
Example #22
0
        public void VisitColourInt(ColourData field)
        {
            SeekToOffset(field.Offset);

            if (field.Value.Length == 7)
                field.Value = field.Value.Insert(1, "FF");

            foreach (char formatChar in field.Format)
            {
                switch (formatChar)
                {
                    case 'a':
                        byte alpha = byte.Parse(field.Value.Replace("#", "").Remove(2), NumberStyles.HexNumber);
                        _writer.WriteByte(alpha);
                        break;
                    case 'r':
                        byte red = byte.Parse(field.Value.Replace("#", "").Remove(0, 2).Remove(2), NumberStyles.HexNumber);
                        _writer.WriteByte(red);
                        break;
                    case 'g':
                        byte green = byte.Parse(field.Value.Replace("#", "").Remove(0, 4).Remove(2), NumberStyles.HexNumber);
                        _writer.WriteByte(green);
                        break;
                    case 'b':
                        byte blue = byte.Parse(field.Value.Replace("#", "").Remove(0, 6), NumberStyles.HexNumber);
                        _writer.WriteByte(blue);
                        break;
                }
            }
        }