コード例 #1
0
        /// <summary>
        /// Gets the unit target for the specified team member.
        /// </summary>
        /// <param name="member">The team member.</param>
        /// <returns>The unit.</returns>
        /// <exception cref="NullReferenceException">member</exception>
        public ITarget GetUnitTargetFor(ITeamMember member)
        {
            if (member.IsNullOrMissing())
            {
                throw new NullReferenceException(nameof(member));
            }

            var teamOpponents = GetOpponentsTeam(member.Team);

            return(UnitsKeeper.FindClosestUnit(teamOpponents, member.transform.position) as ITarget);
        }
コード例 #2
0
        /// <summary>
        /// Gets the unit targets at area for the specified team.
        /// </summary>
        /// <param name="team">The team.</param>
        /// <param name="area">The area.</param>
        /// <returns>The units.</returns>
        public IEnumerable <ITarget> GetUnitTargetsAtAreaFor(Team team, AreaTarget area)
        {
            var teamOpponents = GetOpponentsTeam(team);

            return(UnitsKeeper.GetUnitsByCircleArea(teamOpponents, area.Position, area.Radius));
        }