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; } }
// 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--); } } }