From e33d0e85cf5d01e953d95197488eeffc67835f3a Mon Sep 17 00:00:00 2001 From: chenxin <chenxin6991@163.com> Date: Tue, 27 Oct 2020 18:16:53 +0800 Subject: [PATCH] 无尽模式关卡打点需要 --- Assets/Scripts/TowerDefense/Level/EndlessWaveManager.cs | 1 + Assets/Scripts/TowerDefense/UI/HUD/EndlessGameUI.cs | 2 ++ Assets/Scripts/Common/GameConfig.cs | 15 +++++++++++++++ Assets/Scripts/TowerDefense/UI/EndlessSettlement.cs | 1 + Assets/Scripts/TowerDefense/UI/EndlessUIStart.cs | 5 +++++ Assets/Scripts/TowerDefense/Towers/Placement/TowerPlacementGridEndless.cs | 1 + Assets/Scripts/TowerDefense/UI/EndlessTowerGridOpen.cs | 1 + Assets/Scripts/Event/EventType.cs | 6 +++++- 8 files changed, 31 insertions(+), 1 deletions(-) diff --git a/Assets/Scripts/Common/GameConfig.cs b/Assets/Scripts/Common/GameConfig.cs index def4d23..0557419 100644 --- a/Assets/Scripts/Common/GameConfig.cs +++ b/Assets/Scripts/Common/GameConfig.cs @@ -46,5 +46,20 @@ /// 所有新手的引导步骤是否全部完成 /// </summary> public static bool IsNewbieGuideCompleted = false; + + /// <summary> + /// 无尽模式每一轮游戏中成功使用技能宝石的次数 + /// </summary> + public static int EndlessPortUseSkillTowerCount; + + /// <summary> + /// 每一轮游戏中成功开启的塔位置数量,这个是上阵的塔,可以攻击的塔位 + /// </summary> + public static int EndlessOpenAttackTowerCount; + + /// <summary> + /// 每一轮游戏中成功购买塔的数量 + /// </summary> + public static int EndlessBuyTowerCount; } } \ No newline at end of file diff --git a/Assets/Scripts/Event/EventType.cs b/Assets/Scripts/Event/EventType.cs index 71bc40e..c45ca8f 100644 --- a/Assets/Scripts/Event/EventType.cs +++ b/Assets/Scripts/Event/EventType.cs @@ -38,7 +38,11 @@ // 火元素塔充能使用结束 FireTowerChargeEnd, //新手引导结束 - GuideFinish + GuideFinish, + // 无尽模式成功通过第*关,第*波 + EndlessCompletedPort, + // 无尽模式关卡结束 + EndlessLevelCompleted, } } diff --git a/Assets/Scripts/TowerDefense/Level/EndlessWaveManager.cs b/Assets/Scripts/TowerDefense/Level/EndlessWaveManager.cs index 9516ece..9f3d26f 100644 --- a/Assets/Scripts/TowerDefense/Level/EndlessWaveManager.cs +++ b/Assets/Scripts/TowerDefense/Level/EndlessWaveManager.cs @@ -299,6 +299,7 @@ // 更新波索引 ++CurrentWaveIndex; EndlessBuffManager.instance.UpdateBuffList(); + EventCenter.Ins.BroadCast((int)KTGMGemClient.EventType.EndlessCompletedPort, Level, CurrentWaveIndex); if (CurrentWaveIndex >= TotalWaves) // 当前关卡的所有波次全部完成 diff --git a/Assets/Scripts/TowerDefense/Towers/Placement/TowerPlacementGridEndless.cs b/Assets/Scripts/TowerDefense/Towers/Placement/TowerPlacementGridEndless.cs index c2fed45..dcf9edd 100644 --- a/Assets/Scripts/TowerDefense/Towers/Placement/TowerPlacementGridEndless.cs +++ b/Assets/Scripts/TowerDefense/Towers/Placement/TowerPlacementGridEndless.cs @@ -784,6 +784,7 @@ } // 设置塔位默认开启,后面需要根据配置来 m_arrGridType[2, 3] = PlacementGridType.EGridOpen; + ++GameConfig.EndlessOpenAttackTowerCount; } /// <summary> diff --git a/Assets/Scripts/TowerDefense/UI/EndlessSettlement.cs b/Assets/Scripts/TowerDefense/UI/EndlessSettlement.cs index e9a31a2..07b0ea3 100644 --- a/Assets/Scripts/TowerDefense/UI/EndlessSettlement.cs +++ b/Assets/Scripts/TowerDefense/UI/EndlessSettlement.cs @@ -87,6 +87,7 @@ /// </summary> protected void Victory() { + EventCenter.Ins.BroadCast((int)KTGMGemClient.EventType.EndlessLevelCompleted); EndlessUIStart.instance.Pause(); OpenEndGameScreen(true); if (VictoryAudio != null && AudioSource != null) diff --git a/Assets/Scripts/TowerDefense/UI/EndlessTowerGridOpen.cs b/Assets/Scripts/TowerDefense/UI/EndlessTowerGridOpen.cs index fefa8ca..05c87ad 100644 --- a/Assets/Scripts/TowerDefense/UI/EndlessTowerGridOpen.cs +++ b/Assets/Scripts/TowerDefense/UI/EndlessTowerGridOpen.cs @@ -77,6 +77,7 @@ if (bsucc) { + ++GameConfig.EndlessOpenAttackTowerCount; towerGrid.updateGridOpenCoin(gridX, gridY); if (mImage) mImage.color = new Color(1.0f, 1.0f, 1.0f, 0.0f); diff --git a/Assets/Scripts/TowerDefense/UI/EndlessUIStart.cs b/Assets/Scripts/TowerDefense/UI/EndlessUIStart.cs index 859c0b7..23755b8 100644 --- a/Assets/Scripts/TowerDefense/UI/EndlessUIStart.cs +++ b/Assets/Scripts/TowerDefense/UI/EndlessUIStart.cs @@ -80,6 +80,10 @@ Instantiate(Resources.Load<GameObject>("UI/Guide/GuidePanel"), this.transform); AddGuideEvent(); } + + GameConfig.EndlessOpenAttackTowerCount = 0; + GameConfig.EndlessBuyTowerCount = 0; + GameConfig.EndlessPortUseSkillTowerCount = 0; } /// <summary> @@ -174,6 +178,7 @@ // 播放特效,并处理伤害. EndlessWaveLineManager.instance.PlayWaveLineEffect(waveLineIndex); AgentInsManager.instance.ExecWavelineAttack(waveLineIndex, attributeId, level, false); + ++GameConfig.EndlessPortUseSkillTowerCount; StartCoroutine(Delay1()); } diff --git a/Assets/Scripts/TowerDefense/UI/HUD/EndlessGameUI.cs b/Assets/Scripts/TowerDefense/UI/HUD/EndlessGameUI.cs index a3af338..8eb8e77 100644 --- a/Assets/Scripts/TowerDefense/UI/HUD/EndlessGameUI.cs +++ b/Assets/Scripts/TowerDefense/UI/HUD/EndlessGameUI.cs @@ -868,6 +868,7 @@ // 播放特效,并处理伤害. EndlessWaveLineManager.instance.PlayWaveLineEffect(selEff.waveLineId); AgentInsManager.instance.ExecWavelineAttack(selEff.waveLineId, sId, sLevel, false); + ++GameConfig.EndlessPortUseSkillTowerCount; return true; } } @@ -1526,6 +1527,7 @@ m_CurrentTower.Show(); if (successfulPurchase) { + ++GameConfig.EndlessBuyTowerCount; // 删除towerToMove,确保塔防数据不再出现多个 if (zeroCost && (towerToMove != null)) { -- Gitblit v1.9.1