Example #1
0
        /// <summary>
        /// Gets a layer's raw scroll vector from an input value.
        /// </summary>
        /// <remarks>
        /// Useful for figuring out how much a layer will scroll without moving it.
        /// </remarks>
        public static Vector2 GetRawScrollVector(ScrollLayer layer, Vector2 scrollValue)
        {
            if (!instance)
            {
                Debug.LogError("Error: Trying to get raw scroll vector without a parallax manager!");
                return(Vector2.zero);
            }

            if (layer.isObjectLayer && !layer.objectLayerPixelSpace)
            {
                if (instance.GetScrollConstraints() == ScrollConstraints.X)
                {
                    return(instance.GetParallaxCamera().transform.right * -scrollValue.x * instance.baseSpeed * layer.GetScrollSpeed() * layer.GetScrollMod());
                }
                else if (instance.GetScrollConstraints() == ScrollConstraints.Y)
                {
                    return(instance.GetParallaxCamera().transform.up * -scrollValue.y * instance.baseSpeed * layer.GetScrollSpeed() * layer.GetScrollMod());
                }
                else
                {
                    Vector3 sV = (instance.GetParallaxCamera().transform.right * -scrollValue.x) + (instance.GetParallaxCamera().transform.up * -scrollValue.y);
                    return(sV * instance.baseSpeed * layer.GetScrollSpeed() * layer.GetScrollMod());
                }
            }
            else
            {
                return(scrollValue * instance.baseSpeed * layer.GetScrollSpeed() * layer.GetScrollMod());
            }
        }
Example #2
0
    void Awake()
    {
        scrollLayer = this.GetComponent <ScrollLayer>();

        SyncToScrollLayer();
    }