wangguan
2020-12-11 74cc09511f7ffcbec25d9ce276f4be974875c05b
Assets/Scripts/TowerDefense/UI/EndlessTowerGridOpen.cs
@@ -38,6 +38,52 @@
    void Start()
    {
        bWaitOpen = false;
        EventCenter.Ins.Add((int)KTGMGemClient.EventType.SetTowerGridOpenRed, SetRed);
    }
    /// <summary>
    /// Subscribe to the level manager
    /// </summary>
    protected virtual void OnEnable()
    {
        if (EndlessLevelManager.instanceExists)
            EndlessLevelManager.instance.Currency.currencyChanged += OnCurrencyChanged;
    }
    /// <summary>
    /// Unsubscribe from the level manager
    /// </summary>
    protected virtual void OnDisable()
    {
        if (EndlessLevelManager.instanceExists)
            EndlessLevelManager.instance.Currency.currencyChanged -= OnCurrencyChanged;
    }
    private void OnCurrencyChanged()
    {
        CheckCurrencyEnough();
    }
    public void CheckCurrencyEnough()
    {
        int result;
        int.TryParse(cashText.text.ToString(), out result);
        int current = EndlessLevelManager.instance.Currency.currentCurrency;
        if (current >= result)
            cashText.color = new Color(1f, 1f, 1f);
        else
            cashText.color = new Color(0.5f, 0.5f, 0.5f);
    }
    private void SetRed()
    {
        int result;
        int.TryParse(cashText.text.ToString(), out result);
        int current = EndlessLevelManager.instance.Currency.currentCurrency;
        if (current < result)
            cashText.color = new Color(1f, 0f, 0f);
    }
    public void SetBuyBtnInfo(int x, int y, TowerPlacementGridEndless tpg)
@@ -54,23 +100,26 @@
    {
        if (bWaitOpen) return;
        if (GameConfig.IsNewbie)
        {
            if (!GameConfig.CanOpenNewTower) return;
        // if (GameConfig.IsNewbie)
        // {
        //     if (!GameConfig.CanOpenNewTower) return;
            if (!isOpenTower)
            {
                isOpenTower = true;
                EventCenter.Ins.BroadCast((int)KTGMGemClient.EventType.GetOneTowerPos);
            }
        }
        //     if (!isOpenTower)
        //     {
        //         isOpenTower = true;
        //         EventCenter.Ins.BroadCast((int)KTGMGemClient.EventType.GetOneTowerPos);
        //     }
        // }
        if (towerGrid != null)
        {
            float cashToOpen = TowerPlacementGridEndless.GRID_OPENCASH;
            if (EndlessLevelManager.instance.Currency.currentCurrency < cashToOpen)
            {
                AudioSourceManager.Ins.Play(AudioEnum.UIDisable);
                return;
            }
            // 减少Cash并开启相应塔防管理器的兵线
            bool bsucc = EndlessLevelManager.instance.Currency.TryPurchase((int)cashToOpen);