protected override void ChooseTarget(ChooseContext choose) { choose.ReadList(targets => { for (int i = 0; i < targets.Count; ++i) { var target = targets[i]; if (choose.Matches(target)) return target; } return null; }); }
protected override void ChooseTarget(ChooseContext choose) { choose.ReadList(targets => { for (int i = 0; i < targets.Count; ++i) { var target = targets[i]; if (choose.Matches(target)) { return(target); } } return(null); }); }
protected override void ChooseTarget(ChooseContext choose) { choose.ModifyList(targets => { var count = targets.Count; for (int index = 0; index < count; ++index) { var target = targets[index]; if (choose.Matches(target)) { if (count > 1) { targets.RemoveAt(index); targets.Add(target); } return target; } } return null; }); }
protected override void ChooseTarget(ChooseContext choose) { choose.ModifyList(targets => { var count = targets.Count; for (int index = 0; index < count; ++index) { var target = targets[index]; if (choose.Matches(target)) { if (count > 1) { targets.RemoveAt(index); targets.Add(target); } return(target); } } return(null); }); }