示例#1
0
        private static void InitMover(Vector3 rayCastHitPoint, RayCastMover mover,
                                      INavMeshAgentMotor motor)
        {
            var movementMask = new LayerMask();
            var rayCast      = SetupRayCast(movementMask, rayCastHitPoint);

            mover.Init(rayCast, motor, movementMask);
        }
示例#2
0
        private void Build()
        {
            var source = new GameObject();

            _mover = source.AddComponent <LookRadiusMover>();
            _motor = Substitute.For <INavMeshAgentMotor>();
            source.transform.position = _position;
            _mover.Init(_motor);
            _mover.SetInternals(_lookRadius, _stopRange);
        }
示例#3
0
 public void Deconstruct(out LookRadiusMover action, out INavMeshAgentMotor motor)
 {
     Build();
     action = _mover;
     motor  = _motor;
 }
示例#4
0
 public void Init(INavMeshAgentMotor motor)
 {
     _motor = motor;
 }
示例#5
0
 private void Start()
 {
     _raycaster = GetComponent <ICameraRayCast>();
     _motor     = GetComponent <NavMeshAgentMotor>();
 }
示例#6
0
 public void Init(ICameraRayCast rayCaster, INavMeshAgentMotor motor, LayerMask movementMask)
 {
     _raycaster    = rayCaster;
     _motor        = motor;
     _movementMask = movementMask;
 }