Ejemplo n.º 1
0
    private void setPlanConstante()
    {
        speed = constantSpeed;

        foreach (ParralaxPlanConfiguration config in configurationParralax)
        {
            GameObject tempParralaxPlan = parralaxPlans.Find(plan => plan.name == config.nameParalaxPlan);

            parallaxPlan parralaxScript = tempParralaxPlan.GetComponent <parallaxPlan>();
            parralaxScript.generator              = config.generatorScript;
            parralaxScript.distance               = config.distance;
            parralaxScript.lowSpaceBetweenAsset   = config.lowSpaceBetweenAsset;
            parralaxScript.hightSpaceBetweenAsset = config.hightSpaceBetweenAsset;
            parralaxScript.relativeSpeed          = config.relativeSpeed;
            parralaxScript.colorTeint             = config.colorTeinte;
        }
    }
Ejemplo n.º 2
0
    // Use this for initialization
    void Start()
    {
        rightBorder = Instantiate(new GameObject());
        rightBorder.transform.parent = this.transform.parent;
        leftBorder = Instantiate(new GameObject());
        leftBorder.transform.parent = this.transform.parent;

        /*leftBorder.transform.position = new Vector3 (leftBorder.transform.position.x,cameraToFollow.gameObject.transform.position.y,leftBorder.transform.position.z);
         * rightBorder.transform.position = new Vector3 (leftBorder.transform.position.x,cameraToFollow.gameObject.transform.position.y,leftBorder.transform.position.z);
         */parralaxPlans = new List <GameObject> ();
        foreach (ParralaxPlanConfiguration config in configurationParralax)
        {
            GameObject tempParralaxPlan = Instantiate(config.prefabParralaxPlan);
            tempParralaxPlan.transform.parent = this.transform;

            parallaxPlan tempScript = tempParralaxPlan.GetComponent <parallaxPlan>();
            tempScript.popLimitation          = rightBorder;
            tempScript.depopLimitation        = leftBorder;
            tempScript.generator              = config.generatorScript;
            tempScript.distance               = config.distance;
            tempScript.lowSpaceBetweenAsset   = config.lowSpaceBetweenAsset;
            tempScript.hightSpaceBetweenAsset = config.hightSpaceBetweenAsset;
            tempScript.relativeSpeed          = config.relativeSpeed;
            tempScript.yOffset = config.yOffset;

            parralaxPlans.Add(tempParralaxPlan);
        }
        parralaxPlans.Sort(delegate(GameObject x, GameObject y)
        {
            parallaxPlan tempScriptX = x.GetComponent <parallaxPlan>();
            parallaxPlan tempScriptY = y.GetComponent <parallaxPlan>();
            if (tempScriptX.distance == tempScriptY.distance)
            {
                return(0);
            }
            else if (tempScriptX.distance < tempScriptY.distance)
            {
                return(1);
            }
            else
            {
                return(-1);
            }
        });

        float zinf  = 2.0f;
        float zsupp = -2.0f;

        foreach (GameObject temp in parralaxPlans)
        {
            if (temp.GetComponent <parallaxPlan>().distance < 0)
            {
                temp.transform.localPosition = new Vector3(temp.transform.localPosition.x, temp.transform.localPosition.y, temp.transform.localPosition.z + zinf++);
            }
            else if (temp.GetComponent <parallaxPlan>().distance == 0)
            {
                temp.transform.localPosition = new Vector3(temp.transform.localPosition.x, temp.transform.localPosition.y, temp.transform.localPosition.z);
            }
            else
            {
                temp.transform.localPosition = new Vector3(temp.transform.localPosition.x, temp.transform.localPosition.y, temp.transform.localPosition.z + zsupp--);
            }
        }
    }