예제 #1
0
 /*
  * void Start ()
  * {
  * _thisUnit = transform;
  * _thisMotor = GetComponent<IMotor>();
  * _gradus = Random.Range(-180f, 180f);
  * _period = 0;
  * if (onePoint != null && twoPoint != null && threePoint != null && foPoint != null)
  * {
  *    _thisPoints = new[]
  *    {
  *       onePoint.transform.position, twoPoint.transform.position, threePoint.transform.position,
  *       foPoint.transform.position
  *    };
  *
  * }
  * }
  */
 public MovedRandom(Transform unit, Vector3[] point, MotorNow motor, float minDelay, float maxDelay, Transform pointFollow = null, float distanceFollow = 0f)
 {
     _unit               = unit;
     _thisPoints         = point;
     _thisMotor          = motor;
     this.minDelay       = minDelay;
     this.maxDelay       = maxDelay;
     this.pointFollow    = pointFollow;
     this.distanceFollow = distanceFollow;
 }
예제 #2
0
    void Start()
    {
        //attack = true;

        //transformCache = gameObject.transform;
        //lineRenderer = GetComponent<LineRenderer>();
        //rigidbody2DCache = GetComponent<Rigidbody2D>();
        //seeker = GetComponent<Seeker>();
        //id = GlobalID.GetID();

        //Надо будет сделать статичным
        motorNow       = new MotorNow(transformCache, rigidbody2DCache, speed, speedRotate, target.transform, seeker);
        visibleTypical = new VisibleTypical(transformCache, lineRenderer, target, layerMask, angle, distance, tagMask);
        findAngry      = new FindAngry(transformCache, motorNow, visibleTypical, distanceFind);
        movedRandom    = new MovedRandom(transformCache, new Vector3[4], motorNow, minDelay, maxDelay, point, distancePoint);
        //movedFollowingObj = new MovedFollowingObj(transformCache, motorNow, distanceFollowing, distanceTeleport);

        player = target.GetComponent <IPlayer>();
    }
예제 #3
0
 public void SetMotor()
 {
     motorNow = new MotorNow(transformCache, rigidbody2DCache, speed, speedRotate, target.transform, seeker);
 }