From 69e0fea6c92fd4e153d45e5f26ef89baecf0405a Mon Sep 17 00:00:00 2001 From: weixudong <weixudong4700@ktgame.com> Date: Thu, 19 Nov 2020 08:51:09 +0800 Subject: [PATCH] Merge branch 'master' of ssh://172.16.1.52:8091/GemBattle into master --- Assets/Scripts/TowerDefense/UI/FreezeBreath.cs | 38 +++++++++++++++++++++++++++++--------- 1 files changed, 29 insertions(+), 9 deletions(-) diff --git a/Assets/Scripts/TowerDefense/UI/FreezeBreath.cs b/Assets/Scripts/TowerDefense/UI/FreezeBreath.cs index bd3fd70..8f98467 100644 --- a/Assets/Scripts/TowerDefense/UI/FreezeBreath.cs +++ b/Assets/Scripts/TowerDefense/UI/FreezeBreath.cs @@ -28,9 +28,20 @@ public static float ChargeTime { get; private set; } = 10f; /// <summary> - /// 技能持续时间 + /// 伤害时间 /// </summary> - public static float EffectTime { get; private set; } = 1f; + public float EffectTime { get; private set; } = 2f; + + /// <summary> + /// 伤害结算次数 + /// </summary> + /// <value></value> + public int DamageCount { get; private set; } = 6; + + /// <summary> + /// 整个技能时间 + /// </summary> + public float SkillTime { get; private set; } = 2.5f; /// <summary> /// 当前的充能进度 @@ -87,8 +98,6 @@ agentList.Add(list[i]); } - PlayFreezeEffect(waveLineId); - while (agentList.Count > 0) { Agent agent = agentList[0]; @@ -96,15 +105,26 @@ if (agent.isDead) continue; - agent.addSpeedSlowRate(0.25f); - agent.PlayOnHitImmediately(); - EndlessGameUI.instance.generateBloodText(agent.position, damage); - agent.TakeDamage(damage, agent.position, alignmentProvider); + if (agent.AgentType == SpawnAgentType.Normal) + { + agent.addSpeedSlowRate(0.15f); + agent.PlayOnHitImmediately(); + EndlessGameUI.instance.generateBloodText(agent.position, damage); + agent.TakeDamage(damage, agent.position, alignmentProvider); + } + else if (agent.AgentType == SpawnAgentType.BubbleBomb) + EventCenter.Ins.BroadCast((int)KTGMGemClient.EventType.EndlessBossSkillBubbleBombGetHit, (agent as BubbleBombAgent).Id); } } - private void PlayFreezeEffect(int waveLineId) + public void PlayFreezeEffect(int waveLineId) { + WaveLineAgentInsMgr[] agentInsMgrs = AgentInsManager.instance.GetWaveLineList(); + WaveLineAgentInsMgr waveLineAgentInsMgr = agentInsMgrs[waveLineId]; + List<Agent> list = waveLineAgentInsMgr.listAgent; + + if (list.Count == 0) return; + GameObject obj = Poolable.TryGetPoolable(FreezeJet); ParticleSystem ps = obj.GetComponent<ParticleSystem>(); -- Gitblit v1.9.1