Esempio n. 1
0
    public override ActiveSkill UseSkill()
    {
        if (BuilderHelper.GetBuilderById(this.CreatorId) is HalfOnesBuilder)
        {
            if (TargetingFunction.IsInRangeorMelee(this, CastleHelper.GetCastle(Allegiance), _range))
            {
                _harvest.Deliver();
            }
            else if (_harvest.IsFull)
            {
                return(null);
            }
            else
            {
                bool atLeastOneTargetInRange = false;

                IEnumerable <Corpse> targets = TargetingFunction.DetectSurroundings(this, _harvest.IsValidTarget).Cast <Corpse>();

                foreach (Corpse target in targets)
                {
                    bool targetInRange = TargetingFunction.IsInRangeorMelee(this, target, _harvest.Range);
                    atLeastOneTargetInRange = atLeastOneTargetInRange || targetInRange;
                    if (targetInRange)
                    {
                        _harvest.ApplyOnTarget(target);
                        return(_harvest);
                    }
                }
            }
        }
        return(null);
    }
Esempio n. 2
0
 public override Targetable MoveTarget()
 {
     if (_harvest.IsFull)
     {
         return(CastleHelper.GetCastle(Allegiance));
     }
     return(TargetingFunction.GetClosestTarget(this, CastleHelper.GetCastle(Allegiance), TargetingFunction.IsCorpse, DetectionRange * DetectionRange));
 }
Esempio n. 3
0
        public static void Register(HttpConfiguration config)
        {
            // Web API configuration and services
            config.DependencyResolver = CastleHelper.GetDependencyResolver();

            // Web API routes
            config.MapHttpAttributeRoutes();

            config.Routes.MapHttpRoute(
                name: "DefaultApi",
                routeTemplate: "api/{controller}/{id}",
                defaults: new { id = RouteParameter.Optional }
                );
        }
        public static void Register(HttpConfiguration config)
        {
            config.DependencyResolver = CastleHelper.GetDependencyResolver();
            // Web API configuration and services

            // Web API routes
            config.MapHttpAttributeRoutes();

            config.Routes.MapHttpRoute(
                name: "DefaultApi",
                routeTemplate: "api/{controller}/{id}",
                defaults: new { id = RouteParameter.Optional }
                );

            config.Filters.Add(new AuthorizeAttribute());
            //config.Formatters.XmlFormatter.SupportedMediaTypes.Add(new System.Net.Http.Headers.MediaTypeHeaderValue("multipart/form-data"));
            //GlobalConfiguration.Configuration.Formatters.XmlFormatter.SupportedMediaTypes.Clear();
        }
Esempio n. 5
0
        public static void Register(HttpConfiguration config)
        {
            config.EnableCors();
            // Web API configuration and services
            // Configure Web API to use only bearer token authentication.
            config.SuppressDefaultHostAuthentication();
            config.Filters.Add(new HostAuthenticationFilter(OAuthDefaults.AuthenticationType));

            config.DependencyResolver = CastleHelper.GetDependencyResolver();
            // Web API routes
            config.MapHttpAttributeRoutes();

            config.Routes.MapHttpRoute(
                name: "DefaultApi",
                routeTemplate: "api/{controller}/{id}",
                defaults: new { id = RouteParameter.Optional }
                );
        }
Esempio n. 6
0
 public virtual Targetable MoveTarget()
 {
     return(TargetingFunction.GetClosestTarget(this, CastleHelper.GetCastle(!Allegiance), (Targetable Targetable) => TargetingFunction.IsEnemy(this, Targetable), DetectionRange * DetectionRange));
 }