From 674c6096841087086e2877f5b61ba65da3758e9e Mon Sep 17 00:00:00 2001 From: chenxin <chenxin6991@163.com> Date: Sat, 14 Nov 2020 15:35:27 +0800 Subject: [PATCH] 精灵塔动作调整,技能宝石朝向调整 --- Assets/Scripts/TowerDefense/Affectors/AttackAffector.cs | 27 ++++++++++++++------------- 1 files changed, 14 insertions(+), 13 deletions(-) diff --git a/Assets/Scripts/TowerDefense/Affectors/AttackAffector.cs b/Assets/Scripts/TowerDefense/Affectors/AttackAffector.cs index 377ae88..9ee2b48 100644 --- a/Assets/Scripts/TowerDefense/Affectors/AttackAffector.cs +++ b/Assets/Scripts/TowerDefense/Affectors/AttackAffector.cs @@ -293,7 +293,7 @@ myTower.SetFireMatSpeed(true);//设置了火宝石快速攻击 // 设置多倍攻击速度 fBackupTimer = m_FireTimer; - m_FireTimer = m_FireTimer / 3.0f; + m_FireTimer = m_FireTimer / 5.0f; towerPtr.uiProOffset = 0; towerPtr.PlayEnergyEffect(true); @@ -353,7 +353,7 @@ /// <summary> /// Update the timers /// </summary> - protected virtual void Update() + protected virtual void LateUpdate() { if (m_Launcher == null) return; @@ -361,21 +361,22 @@ updateTowerSkillData(); m_FireTimer -= Time.deltaTime; + m_TrackingEnemy = targetter.GetTarget(waveLineID, bWoodAffector); - if (trackingEnemy == null) - m_TrackingEnemy = targetter.GetTarget(waveLineID, bWoodAffector); - - if (trackingEnemy != null) + if (m_TrackingEnemy != null && m_FireTimer < 0) { - // m_FireTimer = 1 / fireRate; + m_FireTimer = 1 / fireRate; if (fInEnergy > 0) + m_FireTimer /= 5; + + towerLevel.FireSpeed = fInEnergy > 0 ? 5f : 1f; + + if (towerPtr && (towerPtr.bulletCtl != null)) { - m_FireTimer = m_FireTimer / 5f; - towerLevel.FireSpeed = 5f; + int bnum = towerPtr.bulletCtl.GetCtlProgress(); + if (bnum == 0) return; } - else - towerLevel.FireSpeed = 1f; towerLevel.ChangeState(TowerActionState.Attack); } @@ -390,7 +391,7 @@ // 不再处理多子弹攻击,确保只有一个弹道 isMultiAttack = false; m_TrackingEnemy = targetter.GetTarget(waveLineID, bWoodAffector); - + GameObject go = damagerProjectile.gameObject; if (m_TrackingEnemy == null || fillBulletTime > 0) return; @@ -399,7 +400,7 @@ if (towerPtr && (towerPtr.bulletCtl != null)) { int bnum = towerPtr.bulletCtl.decBullet(); - // + if (bnum == 0) { //damagerProjectile.damageMulti = 10.0f; -- Gitblit v1.9.1