Exemple #1
0
    // Update is called once per frame
    void Update()
    {
        if (Input.GetKey(KeyCode.RightArrow))
        {
            this.transform.position = new Vector2(Mathf.Clamp(this.transform.position.x + speed * Time.deltaTime, xMin, xMax), this.transform.position.y);
        }
        if (Input.GetKey(KeyCode.LeftArrow))
        {
            this.transform.position = new Vector2(Mathf.Clamp(this.transform.position.x - speed * Time.deltaTime, xMin, xMax), this.transform.position.y);
        }
        //fire with controll input

        /*
         * if (Input.GetKey (KeyCode.Space) && Time.time > nextFire) {
         *      nextFire = fireRate + Time.time;
         *      GameObject beam = Instantiate (Laser, this.transform.position, Quaternion.identity) as GameObject;
         *      Rigidbody2D rb = beam.GetComponent<Rigidbody2D> ();
         *      rb.velocity = new Vector3 (0, beamSpeed, 0);
         * }
         */

        //auto fire
        if (!boost)
        {
            Fire();
        }

        if (doubleLaser)
        {
            doubleLaserTime -= Time.deltaTime;
            if (doubleLaserTime <= 0)
            {
                doubleLaser     = false;
                doubleLaserTime = 10;
            }
        }

        if (boost)
        {
            boostTime -= Time.deltaTime;
            this.GetComponent <SpriteRenderer> ().sprite = boostSprite;

            if (boostTime <= 0)
            {
                boost        = false;
                boostTime    = 3;
                ES.spawnTime = normalSpawnTime;
                ES.BoostDetected();
                this.GetComponent <SpriteRenderer> ().sprite = normalSprite;
            }
        }
    }