public static AnimatedGrhData CreateGrhData(IEnumerable <GrhIndex> frames, float speed, SpriteCategorization categorization) { var grhIndex = NextFreeIndex(); var gd = new AnimatedGrhData(grhIndex, categorization); gd.SetSpeed(speed); gd.SetFrames(frames); AddGrhData(gd); return(gd); }
/// <summary> /// When overridden in the derived class, creates a new <see cref="GrhData"/> equal to this <see cref="GrhData"/> /// except for the specified parameters. /// </summary> /// <param name="newCategorization">The <see cref="SpriteCategorization"/> to give to the new /// <see cref="GrhData"/>.</param> /// <param name="newGrhIndex">The <see cref="GrhIndex"/> to give to the new /// <see cref="GrhData"/>.</param> /// <returns> /// A deep copy of this <see cref="GrhData"/>. /// </returns> protected override GrhData DeepCopy(SpriteCategorization newCategorization, GrhIndex newGrhIndex) { var copyArray = new StationaryGrhData[_frames.Length]; Array.Copy(_frames, copyArray, _frames.Length); var copy = new AnimatedGrhData(newGrhIndex, newCategorization) { _frames = copyArray }; copy.SetSpeed(Speed); return(copy); }
/// <summary> /// When overridden in the derived class, creates a new <see cref="GrhData"/> equal to this <see cref="GrhData"/> /// except for the specified parameters. /// </summary> /// <param name="newCategorization">The <see cref="SpriteCategorization"/> to give to the new /// <see cref="GrhData"/>.</param> /// <param name="newGrhIndex">The <see cref="GrhIndex"/> to give to the new /// <see cref="GrhData"/>.</param> /// <returns> /// A deep copy of this <see cref="GrhData"/>. /// </returns> protected override GrhData DeepCopy(SpriteCategorization newCategorization, GrhIndex newGrhIndex) { var copyArray = new StationaryGrhData[_frames.Length]; Array.Copy(_frames, copyArray, _frames.Length); var copy = new AnimatedGrhData(newGrhIndex, newCategorization) { _frames = copyArray }; copy.SetSpeed(Speed); return copy; }