/// <summary> /// <para>surface を削除する。</para> /// <para>this.Surfaces にある surface を削除する処理は全てここに到達する。</para> /// </summary> /// <param name="index">削除する surface のインデックス</param> private void RemoveSurface(int index) { Surface surface = this.Surfaces[index]; // surface 削除時にすること { Game.I.SurfaceEL.Add(surface.Act.Draw); } ExtraTools.FastDesertElement(this.Surfaces, index); }
// // copied the source file by https://github.com/stackprobe/Factory/blob/master/SubTools/CopyLib.c // public static T FastDesertElement <T>(List <T> list, Predicate <T> match, T defval = default(T)) { for (int index = 0; index < list.Count; index++) { if (match(list[index])) { return(ExtraTools.FastDesertElement(list, index)); } } return(defval); }