예제 #1
0
    void Update()
    {
        // fire rate

        if (Time.time < rateLock || !bullet)
        {
            return;
        }

        // keep the button down, like a machine gun.

        if (Input.GetMouseButton(mouseCode))
        {
            // mouse direction to shoot.

            Vector3 fireDirection = MotionUtility.GetMouseDirectionFrom(transform);

            // bullet creation

            Transform fireBullet = Instantiate(bullet, transform.position, Quaternion.identity) as Transform;

            // connect with bullet stabilizer to apply the impulse.

            BulletStabilizer stab = fireBullet.GetComponent <BulletStabilizer>();

            if (!stab)
            {
                // the bullet stabilizer is required.

                return;
            }

            stab.layer = layer;

            stab.direction = fireDirection;

            stab.impulse = impulse;

            // fire rate lock

            rateLock = Time.time + fireRate;
        }
    }
예제 #2
0
 /// <summary>
 /// Impulses the transform into mouse.
 /// </summary>
 void ImpulseIntoMouse()
 {
     ImpulseIntoMouse(MotionUtility.GetMouseDirectionFrom(transform).x, MotionUtility.GetMouseDirectionFrom(transform).y, impulse);
 }