Ejemplo n.º 1
0
    // Update is called once per frame
    void Update()
    {
        if (isFiring)
        {
            if (!canFire)
            {
                if (shotCounter <= 0)
                {
                    canFire = true;
                }
                else
                {
                    shotCounter -= Time.deltaTime;
                }
            }

            if (canFire)
            {
                shotCounter = timeBetweenShots;
                SpecialBullet newSpecialBullet = Instantiate(specialBullet, firePoint.position, firePoint.rotation) as SpecialBullet;

                canFire = false;
            }
        }
        else
        {
            shotCounter -= Time.deltaTime;
        }
    }
Ejemplo n.º 2
0
        public override void FireBullet(Vector3 firePos, Vector3 fireDirection)
        {
            SpecialBullet bullet = ObjectManager.Instance.specialBulletPool.GetItem();

            if (bullet != null)
            {
                Vector3 fireDir = fireDirection;
                fireDir = Quaternion.Euler(0f, 0f, Random.Range(-reBoundValue, reBoundValue)) * fireDir;
                bullet.Initialize(firePos, fireDir.normalized, bulletSpeed, BulletType.EnemyBullet, SpecialBulletType.LaserBullet, 1.5f, 1);
                bullet.SetBloom(true, Color.red);
                SoundManager.Instance.PlaySoundEffect("Sample");
            }
        }
Ejemplo n.º 3
0
        public override void FireBullet(Vector3 firePos, Vector3 fireDirection)
        {
            SpecialBullet bullet = ObjectManager.Instance.specialBulletPool.GetItem();

            if (bullet != null)
            {
                Vector3 fireDir = fireDirection;
                fireDir = Quaternion.Euler(0f, 0f, Random.Range(-reBoundValue, reBoundValue)) * fireDir;
                bullet.Initialize(firePos, fireDir.normalized, bulletSpeed, BulletType.EnemyBullet, SpecialBulletType.PoisionGranade, 1.5f, 1, 2f);
                bullet.SetEffectName("GasGunExplostion", 5);
                bullet.SetExplosionEndFunc(func);
                SoundManager.Instance.PlaySoundEffect("swings2");
            }
        }
Ejemplo n.º 4
0
    private void FireBullet()
    {
        SpecialBullet bullet      = ObjectManager.Instance.specialBulletPool.GetItem();
        float         rebound     = 20f;
        float         bulletSpeed = 5f;

        SoundManager.Instance.PlaySoundEffect("Laserpistol");

        if (bullet != null)
        {
            Vector3 fireDir = target.position - this.transform.position;
            fireDir = Quaternion.Euler(0f, 0f, Random.Range(-rebound, rebound)) * fireDir;
            bullet.Initialize(this.transform.position, fireDir.normalized, bulletSpeed, BulletType.EnemyBullet, SpecialBulletType.LaserBullet, 2f, 1, 10f);
            bullet.SetBloom(true, Color.red);
        }
    }
Ejemplo n.º 5
0
        public override void FireBullet(Vector3 firePos, Vector3 fireDirection)
        {
            if (canFire() == false)
            {
                return;
            }
            PlayFireAnim();
            useBullet();
            FireDelayOn();

            SoundManager.Instance.PlaySoundEffect("FireThrower");
            SpecialBullet bullet = ObjectManager.Instance.specialBulletPool.GetItem();

            if (bullet != null)
            {
                Vector3 fireDir = fireDirection;
                bullet.Initialize(firePos, fireDir.normalized, bulletSpeed, BulletType.PlayerBullet, SpecialBulletType.Fire, 4f, 1);
            }
        }
Ejemplo n.º 6
0
    private void OnTriggerEnter(Collider other)
    {
        if (other.tag == "Ball")
        {
            float         damage = 2 * (10 - Vector3.Distance(other.transform.position, transform.position));
            SpecialBullet sb     = other.GetComponent <SpecialBullet>();
            if (sb)
            {
                if (sb.MyTag == gameObject.tag)
                {
                    sb.MyHealth.Health += damage / 2;
                }
            }

            Health -= damage;
            GameObject cl = Instantiate <GameObject>(exp, other.transform.position, Quaternion.identity);
            cl.transform.localScale = Vector3.one;
            Destroy(other.gameObject);
        }
    }
Ejemplo n.º 7
0
        public override void FireBullet(Vector3 firePos, Vector3 fireDirection)
        {
            if (canFire() == false)
            {
                return;
            }

            FireDelayOn();
            PlayFireAnim();
            useBullet();
            SoundManager.Instance.PlaySoundEffect("rhinogun");
            SpecialBullet bullet = ObjectManager.Instance.specialBulletPool.GetItem();

            if (bullet != null)
            {
                Vector3 fireDir = fireDirection;
                fireDir = Quaternion.Euler(0f, 0f, Random.Range(-ReBoundValue, ReBoundValue)) * fireDir;
                bullet.Initialize(firePos, fireDir.normalized, bulletSpeed, BulletType.PlayerBullet, SpecialBulletType.Poison, 1.5f, 1, 2f);
                bullet.SetEffectName("GasGunExplostion", 1);
                bullet.InitializeImage("rhinogunbullet", false);
            }
        }
Ejemplo n.º 8
0
        public override void FireBullet(Vector3 firePos, Vector3 fireDirection)
        {
            if (canFire() == false)
            {
                return;
            }

            FireDelayOn();
            PlayFireAnim();
            useBullet();
            SoundManager.Instance.PlaySoundEffect("dragonbow");
            SpecialBullet bullet = ObjectManager.Instance.specialBulletPool.GetItem();

            if (bullet != null)
            {
                Vector3 fireDir = fireDirection;
                fireDir = Quaternion.Euler(0f, 0f, Random.Range(-ReBoundValue, ReBoundValue)) * fireDir;
                bullet.Initialize(firePos, fireDir.normalized, bulletSpeed, BulletType.PlayerBullet, SpecialBulletType.LaserBullet, 2f, 1);
                bullet.InitializeImage("DragonArrow", true);
                bullet.SetBloom(true, Color.green);
            }
        }
Ejemplo n.º 9
0
        public override void FireBullet(Vector3 firePos, Vector3 fireDirection)
        {
            if (canFire() == false)
            {
                return;
            }

            FireDelayOn();
            PlayFireAnim();
            useBullet();
            SoundManager.Instance.PlaySoundEffect("swings2");

            SpecialBullet bullet = ObjectManager.Instance.specialBulletPool.GetItem();

            if (bullet != null)
            {
                Vector3 fireDir = fireDirection;
                bullet.Initialize(firePos, fireDir.normalized, bulletSpeed, BulletType.PlayerBullet, SpecialBulletType.Poison, 1.5f, 1, 2f);
                bullet.SetEffectName("GasGunExplostion", 1);
                bullet.InitializeImage("RoseGunBullet", false);
            }
        }