From 40a2cbb83c4d0485ed52d4d87db78bb3c0e3fcbb Mon Sep 17 00:00:00 2001 From: River Jiang <546213258@qq.com> Date: Wed, 21 Oct 2020 19:35:55 +0800 Subject: [PATCH] 隐藏子弹条. --- Assets/Scripts/TowerDefense/Affectors/AttackAffector.cs | 39 ++++++++++++++++++++++++++++++++++++++- 1 files changed, 38 insertions(+), 1 deletions(-) diff --git a/Assets/Scripts/TowerDefense/Affectors/AttackAffector.cs b/Assets/Scripts/TowerDefense/Affectors/AttackAffector.cs index 43013f7..c7c1430 100644 --- a/Assets/Scripts/TowerDefense/Affectors/AttackAffector.cs +++ b/Assets/Scripts/TowerDefense/Affectors/AttackAffector.cs @@ -101,6 +101,12 @@ /// </summary> protected Targetable m_TrackingEnemy; + + /// <summary> + /// 处理装弹时间. + /// </summary> + protected float fillBulletTime = 0.0f; + /// <summary> /// Gets the search rate from the targetter /// </summary> @@ -223,6 +229,23 @@ /// </summary> protected virtual void Update() { + // + // 预留出来装填子弹的时间. + if( fillBulletTime > 0 ) + { + fillBulletTime -= Time.deltaTime; + if (fillBulletTime <= 0.3f) + { + if (towerPtr && towerPtr.bulletCtl) + towerPtr.bulletCtl.resetToMaxBullet(); + } + + if (fillBulletTime <= 0) + { + fillBulletTime = 0; + } + } + m_FireTimer -= Time.deltaTime; if( trackingEnemy == null ) m_TrackingEnemy = targetter.GetTarget(waveLineID, bWoodAffector); @@ -258,7 +281,7 @@ // 不再处理多子弹攻击,确保只有一个弹道 isMultiAttack = false; m_TrackingEnemy = targetter.GetTarget( waveLineID, bWoodAffector ); - if (m_TrackingEnemy == null) + if ( (m_TrackingEnemy == null) || (fillBulletTime>0) ) { if (this.towerPtr) towerPtr.setTowerState(false); @@ -269,6 +292,20 @@ towerPtr.setTowerState(true); } + // + // 处理子弹充能相关的内容 + if( towerPtr && (towerPtr.bulletCtl != null)) + { + int bnum = towerPtr.bulletCtl.decBullet(); + // + if (bnum == 0) + { + damagerProjectile.damageMulti = 2.0f; + Debug.Log("设置DamgeMult 2.0"); + fillBulletTime = 2.0f; + } + } + if (isMultiAttack) { List<Targetable> enemies = towerTargetter.GetAllTargets(); -- Gitblit v1.9.1