Esempio n. 1
0
    public override void StartFiring(float targetAngle)
    {
        if (m_creature.m_creatureProperty.SP > 0)
        {
            if (null == m_bullet)
            {
                m_bullet = CreateBullet(m_firingDescs[0], m_gunPoint.transform.position) as LightningBullet;

                StartCoroutine(delayStopFiring());
            }
            m_bullet.Damage = Damage;
            m_bullet.gameObject.SetActive(true);
            m_bullet.MaxChaining = m_maxChaining;

            if (this.audio.isPlaying == false)
                this.audio.Play();

            m_accSp += SP * Time.deltaTime;
            if (m_accSp >= 1)
            {
                m_creature.ConsumeSP((int)m_accSp);
                m_accSp -= (int)m_accSp;
            }
        }
        else
        {
            StopFiring();
            return;
        }

        if (null != m_bullet)
        {
            Vector3 euler = m_bullet.transform.rotation.eulerAngles;
            euler.y = transform.eulerAngles.y;
            m_bullet.transform.eulerAngles = euler;
        }

        playGunPointEffect();
        m_firing = true;
    }
Esempio n. 2
0
    public void IncreaseDamage()
    {
        if (towerSelector.CurrentTower == null)
        {
            return;
        }

        if (towerSelector.CurrentTower.name == "FireTowerView(Clone)" || towerSelector.CurrentTower.name == "Fire Tower")
        {
            if (m_baseDamageUpgradeCost <= gameManager.cashAmount)
            {
                FireBullet fireBullet = towerSelector.CurrentTower.projectileParticle.GetComponent <FireBullet>();
                fireBullet.damage = fireBullet.damage + 1;
                gameManager.currentTowerDamage.text = "DAMAGE: " + fireBullet.damage.ToString();
                gameManager.cashAmount = gameManager.cashAmount - m_baseDamageUpgradeCost;
            }
            else
            {
                Debug.Log("Not enough to upgrade a Fire Tower!");
                return;
            }
        }

        if (towerSelector.CurrentTower.name == "IceTowerView(Clone)" || towerSelector.CurrentTower.name == "Ice Tower")
        {
            IceBullet iceBullet = towerSelector.CurrentTower.projectileParticle.GetComponent <IceBullet>();
            iceBullet.damage = iceBullet.damage + 1;
            gameManager.currentTowerDamage.text = "DAMAGE: " + iceBullet.damage.ToString();
        }

        if (towerSelector.CurrentTower.name == "LightningTowerView(Clone)" || towerSelector.CurrentTower.name == "Lightning Tower")
        {
            LightningBullet lightningBullet = towerSelector.CurrentTower.projectileParticle.GetComponent <LightningBullet>();
            lightningBullet.damage = lightningBullet.damage + 1;
            gameManager.currentTowerDamage.text = "DAMAGE: " + lightningBullet.damage.ToString();
        }
    }