Пример #1
0
 public void StartUp(IFindTarget target)
 {
     this.target = target;
     if (Random.Range(0, 2) == 1)
     {
         StartAlpha05(start);
     }
     else
     {
         StartAlpha0(start);
     }
 }
Пример #2
0
 public override void OnTargetFound(Entity host, IFindTarget target)
 {
     if (selecting == null)
     {
         return;
     }
     if (host == PlayerController.PlayerCurrent)
     {
         if (target != null && target as UnityEngine.Object != null)
         {
             selecting.gameObject.SetActive(target as UnityEngine.Object == this);
         }
         else
         {
             selecting.gameObject.SetActive(false);
         }
     }
 }
Пример #3
0
    public static IFindTarget FindTargetNearest(Vector3 goc, float BanKinh, LayerMask layer)
    {
        Collider2D[]       cols = Physics2D.OverlapCircleAll(goc, BanKinh, layer);
        List <IFindTarget> list = new List <IFindTarget>();

        if (cols == null && cols.Length == 0)
        {
            return(null);
        }
        foreach (Collider2D col in cols)
        {
            IFindTarget target = col.GetComponent <IFindTarget>();
            if (target != null)
            {
                if (target.IsForFind)
                {
                    list.Add(target);
                }
            }
        }
        if (list.Count == 0)
        {
            return(null);
        }
        float DistanceMin = Vector2.Distance(goc, list[0].center);
        int   id          = 0;

        for (int i = 1; i < list.Count; i++)
        {
            float Distance = Vector2.Distance(goc, list[i].center);
            if (Distance < DistanceMin)
            {
                DistanceMin = Distance;
                id          = i;
            }
        }
        return(list[id]);
    }
Пример #4
0
 public virtual void OnTargetFound(Entity entity, IFindTarget t)
 {
 }
Пример #5
0
 public void SetTarget(IFindTarget transform)
 {
     follow = transform;
 }
Пример #6
0
 public void setFindTargetBahvior(IFindTarget fTB)
 {
     _FindTargetBehavior = fTB;
 }