예제 #1
0
            public int Parse(System.IO.BinaryReader reader, int at, int length)
            {
                reader.ReadByte(); //Ignore player id

                SkinVariant = (int)MathHelper.Clamp((float)(int)reader.ReadByte(), 0, 7);
                Hair        = (int)reader.ReadByte();
                if (Hair >= 134)
                {
                    Hair = 0;
                }

                Name    = reader.ReadString().Trim();
                HairDye = reader.ReadByte();

                BitsByte bb;

                HideVisual = new bool[10];
                bb         = reader.ReadByte();
                for (int i = 0; i < 8; i++)
                {
                    HideVisual[i] = bb[i];
                }

                bb = reader.ReadByte();
                for (int i = 0; i < 2; i++)
                {
                    HideVisual[i + 8] = bb[i];
                }

                HideMisc        = reader.ReadByte();
                HairColor       = reader.ReadRGB();
                SkinColor       = reader.ReadRGB();
                EyeColor        = reader.ReadRGB();
                ShirtColor      = reader.ReadRGB();
                UnderShirtColor = reader.ReadRGB();
                PantsColor      = reader.ReadRGB();
                ShoeColor       = reader.ReadRGB();

                bb         = reader.ReadByte();
                Difficulty = 0;
                if (bb[0])
                {
                    Difficulty += 1;
                }
                if (bb[1])
                {
                    Difficulty += 2;
                }
                if (Difficulty > 2)
                {
                    Difficulty = 2;
                }

                ExtraAccessory = bb[2];

                return(0);
            }