Esempio n. 1
0
 void CheckFire(Vector3 objectToTarget)
 {
     // If target is on the nose and within range
     if ((Vector2.Angle(objectToTarget, transform.forward) < 10f) && (objectToTarget.magnitude < weapon.Range()))
     {
         //  If object can see target
         if (IsVisible(objectToTarget))
         {
             if (!firing)
             {
                 weapon.StartFire();
                 firing = true;
             }
             else
             {
                 weapon.FireWeapon(new Ray(transform.position, transform.forward));
             }
         }
     }
     else if (firing)
     {
         weapon.StopFire();
         firing = false;
     }
 }
Esempio n. 2
0
    // Update is called once per frame
    void Update()
    {
        //Debug.DrawRay (transform.position, (Quaternion.Euler(0f, 0f, 15f)*transform.forward), Color.red);

        if (!inMenu)
        {
            // Turn left and right
            transform.Rotate(Vector3.up * Input.GetAxis("Horizontal") * rotateSpeed);

            // Fire Thrusters
            if (Input.GetButton("Fire1"))
            {
                FireThrusters();
            }
            else
            {
                StopThrusters();
            }

            // Hover Mode
            if (Input.GetButtonDown("Fire3"))
            {
                rigidbody.useGravity = !rigidbody.useGravity;
                Debug.Log("Gravity off!");
            }

            // Fire Guns
            if (Input.GetButtonDown("Fire2"))
            {
                weapon.StartFire();
            }
            else if (Input.GetButton("Fire2"))
            {
                weapon.FireWeapon(new Ray(transform.position, transform.forward));
            }

            if (Input.GetButtonUp("Fire2"))
            {
                weapon.StopFire();
            }
        }


        //Clamp Max Speed
        rigidbody.velocity = Vector3.ClampMagnitude(rigidbody.velocity, maxSpeed);

        healthSlider.value = health;
    }
Esempio n. 3
0
 public void FireWeapon(Vector3 position, Vector3 lookingAt)
 {
     weapon.FireWeapon(position, lookingAt);
 }
 void HandleShoot()
 {
     Weapon.FireWeapon(transform);
 }