| | |
| | | using UnityEngine; |
| | | using UnityInput = UnityEngine.Input; |
| | | using State = TowerDefense.UI.HUD.EndlessGameUI.State; |
| | | using KTGMGemClient; |
| | | |
| | | namespace TowerDefense.Input |
| | | { |
| | |
| | | float currentTimeScale = 1.0f; |
| | | protected virtual void OnStartDrag(PointerActionInfo pointer) |
| | | { |
| | | if (GameConfig.IsNewbie) |
| | | { |
| | | if (!GameConfig.CanDragTower) |
| | | { |
| | | Debug.Log("新手不可以拖拽"); |
| | | return; |
| | | } |
| | | else |
| | | { |
| | | GuideCtrl.Ins.BeginDrag11_1(); |
| | | } |
| | | } |
| | | // select towers |
| | | m_GameUI.TrySelectTower(pointer); |
| | | // River: 为了开始拖动后可以直接显示GhostTower |
| | | m_GameUI.TryMoveGhost(pointer, false); |
| | | |
| | | this.isInDragState = true; |
| | | AudioSourceManager.Ins.Play(AudioEnum.DragTower); |
| | | m_GameUI.CheckAllCanPlace();//检查上阵宝石有么有可以合成的位置 |
| | | if (m_GameUI.HasTower) |
| | | { |
| | | EndlessUIStart.instance.SetDarkGround(true); |
| | | |
| | | currentTimeScale = Time.timeScale; |
| | | Time.timeScale = 0.5f; |
| | | this.isInDragState = true; |
| | | AudioSourceManager.Ins.Play(AudioEnum.DragTower); |
| | | m_GameUI.CheckAllCanPlace();//检查上阵宝石有么有可以合成的位置 |
| | | |
| | | if (!GameConfig.IsNewbie) |
| | | { |
| | | //新手引导这里会把引导的速度变慢 |
| | | currentTimeScale = Time.timeScale; |
| | | Time.timeScale = 0.5f; |
| | | } |
| | | |
| | | } |
| | | } |
| | | |
| | | protected override void OnDrag(PointerActionInfo pointer) |
| | |
| | | // EndDrag 只能放置相关的GhostTower. |
| | | if (this.isInDragState) |
| | | { |
| | | EndlessUIStart.instance.SetDarkGround(false); |
| | | |
| | | AudioSourceManager.Ins.Play(AudioEnum.PutTower); |
| | | m_GameUI.CloseCanPlaceRenderer();//关闭所有宝石示意 |
| | | m_GameUI.onEndTowerDrag(pointer); |
| | | |
| | | this.isInDragState = false; |
| | | |
| | | Time.timeScale = currentTimeScale; |
| | | if (!GameConfig.IsNewbie) |
| | | Time.timeScale = currentTimeScale; |
| | | } |
| | | } |
| | | |