Esempio n. 1
0
        /// <summary>
        /// Returns the raw bytes that make up this IMC entry.
        /// </summary>
        /// <returns></returns>
        public byte[] GetBytes(ImcType type)
        {
            var bytes = new List <byte>();

            bytes.Add(MaterialSet);
            bytes.Add(Decal);
            bytes.AddRange(BitConverter.GetBytes(Mask));
            bytes.Add(Vfx);
            bytes.Add(Animation);
            return(bytes.ToArray());
        }
Esempio n. 2
0
        /// <summary>
        /// Returns the raw bytes that make up this IMC entry.
        /// </summary>
        /// <returns></returns>
        public byte[] GetBytes(ImcType type)
        {
            var bytes = new List <byte>();

            bytes.AddRange(BitConverter.GetBytes(Variant));
            bytes.AddRange(BitConverter.GetBytes(Mask));
            if (type == ImcType.NonSet)
            {
                // Always 0 for non-set entries, their VFX number is the
                // same as their Material Variant #.
                bytes.AddRange(BitConverter.GetBytes(((ushort)0)));
            }
            else
            {
                // Actual VFX number.
                bytes.AddRange(BitConverter.GetBytes(Vfx));
            }
            return(bytes.ToArray());
        }