public void OnClick()
    {
        //点击后,UI消失
        Hide();
        if (isClick)
        {
            return;
        }
        isClick = true;
        switch (state)
        {
        case "Tower":
        {
            m_AudioManager.PlayPop();
            m_MapManager.ModifyMap((int)m_MapPos.x, (int)m_MapPos.y, MapType.Tower);
            m_TowerManager.RandomInstantiateTower(transform.position);
            m_TowerManager.RetrieveUpdatableTower();
            UIRemainTowerCount.SubTowerCount();
            break;
        }

        case "Upgrade":
        {
            //m_AudioManager.PlayPop();
            m_TowerManager.RetrieveMergeableTower(m_Tower);
            break;
        }
        }
    }
예제 #2
0
    public void OnEnter(string prevState)
    {
        m_Canvas.enabled = false;
        //重置剩余可用塔
        UIRemainTowerCount.ResetTowerCount();

        UIGameLevel.AddLevel();
    }
예제 #3
0
 public override void OnEnter(string prevState = "")
 {
     ChangeState("Construct");
     m_AudioManager.StartPlayMusic();
     m_Canvas.enabled           = true;
     m_StartLevelCanvas.enabled = true;
     m_ConstructUIController.Enable();
     m_UIRangeIndicator.Visible();
     UIRemainTowerCount.ResetTowerCount();
     UIGameLevel.ResetLevel();
     UIScore.Reset();
     //防止无法生成怪物的情况
     m_MonsterManager.isClearMode = false;
 }
예제 #4
0
    public void UpdateTower(GameObject m_UpdateTower, GameObject m_MergeableTower, bool isEnableReward)
    {
        Tower m_Mergeable = m_MergeableTower.GetComponent <Tower>();
        Tower m_Temp      = m_UpdateTower.GetComponent <Tower>();

        m_AudioManager.PlayUpgrade();

        //在可奖励模式下,两个一样的新塔进行升级 会奖励一座新塔
        if (isEnableReward == true &&
            m_Mergeable.levelSign == UIGameLevel.level &&
            m_Mergeable.levelSign == m_Temp.levelSign &&
            m_Mergeable.GetElemCount() == m_Temp.GetElemCount() &&
            m_Mergeable.GetUpdateElem() == m_Temp.GetUpdateElem())
        {
            UIRemainTowerCount.AddTowerCount();
        }

        //得到升级元素并进行升级
        m_Temp.AddElem(m_Mergeable.GetUpdateElem());
        //退出升级模式
        isOnUpdate = false;
    }
예제 #5
0
 public void OnEnter(string prevState)
 {
     m_Canvas.enabled = true;
     UIRemainTowerCount.ResetTowerCount();
 }