PlatformObject.Update C# (CSharp) Method

Update() public method

public Update ( ) : void
return void
	void Update () {

		bool transit = true;
		if (active) {
			float dspeed = speed * Time.deltaTime;

			delayedTime += Time.deltaTime;
			if (delayedTime <= delay) {
				dspeed = 0;
			}
			
			float prevPosU = 0, prevPosL = 0;
			if (comesFromCeiling) {prevPosU = upperPlatform.transform.localPosition.y;}
			if (comesFromFloor) {prevPosL = lowerPlatform.transform.localPosition.y;}


			if (extending) {
				if (comesFromCeiling) {
					upperPlatform.transform.localPosition -= new Vector3(0,dspeed,0);
					if (upperPlatform.transform.localPosition.y <= uMin.y) {
						upperPlatform.transform.localPosition = uMin;
						transit = false;
					}
				}
				if (comesFromFloor) {
					lowerPlatform.transform.localPosition += new Vector3(0,dspeed,0);
					if (lowerPlatform.transform.localPosition.y >= lMax.y) {
						lowerPlatform.transform.localPosition = lMax;
						transit = false;
					}
				}
			} else {
				if (contractsSlower) {
					dspeed = dspeed*0.66f;
				}
				if (comesFromCeiling) {
					upperPlatform.transform.localPosition += new Vector3(0,dspeed,0);
					if (upperPlatform.transform.localPosition.y >= uMax.y) {
						upperPlatform.transform.localPosition = uMax;
						transit = false;
					}
				}
				if (comesFromFloor) {
					lowerPlatform.transform.localPosition -= new Vector3(0,dspeed,0);
					if (lowerPlatform.transform.localPosition.y <= lMin.y) {
						lowerPlatform.transform.localPosition = lMin;
						transit = false;
					}
				}
			}

			if (!transit ) {
				inTransit = false;
				hitEnd();
			}
			GameObject player = GameObject.Find("player");
			if (player != null) {
				playerController pc = player.GetComponent<playerController>();
				if (comesFromCeiling && pc.platContactU == upperPlatform.transform.Find("platBottom").gameObject.GetComponent<Collider>()) {
					player.transform.position = new Vector3(player.transform.position.x, 
															player.transform.position.y + (upperPlatform.transform.localPosition.y - prevPosU),
															player.transform.position.z);
				}

				if (comesFromFloor && pc.platContactL == lowerPlatform.transform.Find("platTop").gameObject.GetComponent<Collider>()) {
					player.transform.position = new Vector3(player.transform.position.x, 
															player.transform.position.y + (lowerPlatform.transform.localPosition.y - prevPosL),
															player.transform.position.z);
				}
			}

		}

		if (upperPlatform != null) {
			upperBottom.setLight();
			upperTop.setLight();
			foreach (MapSegmentSide side in upperSides) {
				side.setLight();
			}
		} 
		if (lowerPlatform != null) {
			lowerBottom.setLight();
			lowerTop.setLight();
			foreach (MapSegmentSide side in lowerSides) {
				side.setLight();
			}
		}
	}