// Use this for initialization void Start () { moveSpeed = Random.Range(minSpeed, maxSpeed); cloudSpeed = GameObject.Find("clouds").GetComponent<parallax>(); }
// para aplicar fuerzas constantes mejor aquí que en el Update void FixedUpdate() { // recupero las distintas capas del background para poder moverlo o pararlo GameObject capa1 = GameObject.FindGameObjectWithTag("capa1"); GameObject capa2 = GameObject.FindGameObjectWithTag("capa2"); GameObject capa3 = GameObject.FindGameObjectWithTag("capa3"); GameObject capa4 = GameObject.FindGameObjectWithTag("capa4"); GameObject capa5 = GameObject.FindGameObjectWithTag("capa5"); GameObject capa6 = GameObject.FindGameObjectWithTag("capa6"); GameObject capa11 = GameObject.FindGameObjectWithTag("capa11"); GameObject capa22 = GameObject.FindGameObjectWithTag("capa22"); GameObject capa33 = GameObject.FindGameObjectWithTag("capa33"); GameObject capa44 = GameObject.FindGameObjectWithTag("capa44"); GameObject capa55 = GameObject.FindGameObjectWithTag("capa55"); GameObject capa66 = GameObject.FindGameObjectWithTag("capa66"); // recupero el script Parallax de cada capa parallax parallax1 = capa1.GetComponent <parallax>(); parallax parallax2 = capa2.GetComponent <parallax>(); parallax parallax3 = capa3.GetComponent <parallax>(); parallax parallax4 = capa4.GetComponent <parallax>(); parallax parallax5 = capa5.GetComponent <parallax>(); parallax parallax6 = capa6.GetComponent <parallax>(); parallax parallax11 = capa11.GetComponent <parallax>(); parallax parallax22 = capa22.GetComponent <parallax>(); parallax parallax33 = capa33.GetComponent <parallax>(); parallax parallax44 = capa44.GetComponent <parallax>(); parallax parallax55 = capa55.GetComponent <parallax>(); parallax parallax66 = capa66.GetComponent <parallax>(); // el personaje solo puede moverse si el juego está en modo InGame if (GameManager.sharedInstance.currentGameState == GameState.inGame) { // Gateo hacia la derecha cuando se pulsa el cursor con la flecha derecha if (Input.GetKey(KeyCode.RightArrow)) { // Al pulsar la flecha para que el personaje se mueva a la derecha, el fondo se mueve también parallax1.speed = 4.5f; parallax2.speed = 3.5f; parallax3.speed = 2.3f; parallax4.speed = 1.6f; parallax5.speed = 1.4f; parallax6.speed = 1.0f; parallax11.speed = 4.5f; parallax22.speed = 3.5f; parallax33.speed = 2.3f; parallax44.speed = 1.6f; parallax55.speed = 1.4f; parallax66.speed = 1.0f; if (GetComponent <SpriteRenderer>().flipX == true) { GetComponent <SpriteRenderer>().flipX = false; } animator.SetBool("gatear", true); transform.Translate(0.04f, 0, 0); } if (Input.GetKey(KeyCode.LeftArrow)) { // Al pulsar la flecha para que el personaje se mueva a la izquierda, el fondo se mueve también parallax1.speed = 4.5f; parallax2.speed = 3.5f; parallax3.speed = 2.3f; parallax4.speed = 1.6f; parallax5.speed = 1.4f; parallax6.speed = 1.0f; parallax11.speed = 4.5f; parallax22.speed = 3.5f; parallax33.speed = 2.3f; parallax44.speed = 1.6f; parallax55.speed = 1.4f; parallax66.speed = 1.0f; if (GetComponent <SpriteRenderer>().flipX == false) { GetComponent <SpriteRenderer>().flipX = true; } animator.SetBool("gatear", true); transform.Translate(-0.04f, 0, 0); } if (Input.GetKeyUp(KeyCode.RightArrow) || Input.GetKeyUp(KeyCode.LeftArrow)) { // Al dejar de pulsar las flechas el fondo se para parallax1.speed = 0.0f; parallax2.speed = 0.0f; parallax3.speed = 0.0f; parallax4.speed = 0.0f; parallax5.speed = 0.0f; parallax6.speed = 0.0f; parallax11.speed = 0.0f; parallax22.speed = 0.0f; parallax33.speed = 0.0f; parallax44.speed = 0.0f; parallax55.speed = 0.0f; parallax66.speed = 0.0f; animator.SetBool("gatear", false); } } /*if (!usingLadder) * { * animator.SetFloat("vSpeed", rigidbody.velocity.y); * }*/ }