/// <summary> /// Creates a new <see cref="AsepriteSliceKey"/> instance. /// </summary> /// <param name="reader"> /// The <see cref="AsepriteReader"/> instance being used to read the /// Aseprite file. /// </param> /// <param name="flags"> /// The <see cref="AsepriteSliceFlags"/> value of the slice this /// slice key belongs to. /// </param> internal AsepriteSliceKey(AsepriteReader reader, AsepriteSliceFlags flags) { Frame = (int)reader.ReadDWORD(); X = reader.ReadLONG(); Y = reader.ReadLONG(); Width = (int)reader.ReadDWORD(); Height = (int)reader.ReadDWORD(); if ((flags & AsepriteSliceFlags.HasNinePatch) != 0) { CenterX = reader.ReadLONG(); CenterY = reader.ReadLONG(); Width = (int)reader.ReadDWORD(); Height = (int)reader.ReadDWORD(); } if ((flags & AsepriteSliceFlags.HasPivot) != 0) { PivotX = reader.ReadLONG(); PivotY = reader.ReadLONG(); } }