コード例 #1
0
        public WalkRunMovementBehaviour(Transform transform, SuperConfig config) : base(transform)
        {
            MovementConfig walkConfig = config.WalkMovement;
            MovementConfig runConfig  = config.RunMovement;

            _movement = new SmoothMovementHandler(config.WalkRunAcceleration);
            _movement.SetMovement();
            _currentConfig = walkConfig;

            var runAction = Player.GetInstance().Actions.GetAction(PlayerAction.Run);

            runAction.StartBehaviour  = () => _currentConfig = runConfig;
            runAction.FinishBehaviour = () => _currentConfig = walkConfig;
        }
コード例 #2
0
        public CartMovementBehaviour(Transform transform, GameObject cart, SuperConfig config) : base(transform)
        {
            _cartConfig    = config.DriveCartMovement;
            _movement      = new SmoothMovementHandler(config.CartAcceleration).SetMovement();
            _cartTransform = cart.transform;
            foreach (Collider c in cart.GetComponentsInChildren <Collider>())
            {
                if (!c.isTrigger)
                {
                    c.enabled = false;
                    _disabledColliders.Add(c);
                }
            }
            _layerMaskAllButPlayer = ~(1 << LayerMaskManager.Get(Layer.Player));
            _moveBackAction        = Player.GetInstance().Actions.GetAction(PlayerAction.MoveBack);

            Utils.AnimationUtils.LookTowardsHorizontal(transform, cart.transform.forward, _cartConfig.GoInsideTimeSeconds);
            Utils.AnimationUtils.LookTowardsVertical(Player.GetInstance().MainCamera.transform, transform.position + cart.transform.forward, _cartConfig.GoInsideTimeSeconds);
            AudioController.GetInstance().PlayCart();
        }