public virtual GameUnitSet Select(IEventArgs args, IGameUnit unit) { GameUnitSet resutl = new GameUnitSet(); foreach (IGameUnit gu in args.GetGameUnits()) { if (((XYZPara.XYZ)gu.GetXYZ().GetValue()).Distance(((XYZPara.XYZ)trigger.GetXYZ().GetValue())) <= range) { resutl.AddGameUnit(gu); } } return(resutl); }