Esempio n. 1
0
 private void OnAddSoldier()
 {
     if (AttackStatus == 0 && curStar != null && bShow)
     {
         curSoldierNum    = curStar.GetSoldierNum();
         curSoldierEnergy = curStar.GetSoldierEnergy();
         if (curStar.TogetherId != -1)//处于集合状态
         {
             if (curSoldierNum > 10)
             {
                 AttackBtn.gameObject.SetActive(true);
             }
         }
         else
         {
             if (curSoldierNum > 0)
             {
                 AttackBtn.gameObject.SetActive(true);
             }
         }
         if (GatherBtn.gameObject.activeSelf == false)
         {
             GatherBtn.gameObject.SetActive(true);
         }
         if (curSoldierEnergy > 0)
         {
             ShowBuildings(true);//这里可能涉及到性能的问题
         }
     }
 }
Esempio n. 2
0
    private void SetOwnerStar()
    {
        if (AttackStatus == 0)//未攻击状态
        {
            curStar = clickStar;
            SetCommonInfo();
            curSoldierNum = curStar.GetSoldierNum();
            if (curStar.TogetherId != -1)//处于集合状态
            {
                if (curSoldierNum > 10)
                {
                    AttackBtn.gameObject.SetActive(true);
                }
            }
            else
            {
                if (curSoldierNum > 0)
                {
                    AttackBtn.gameObject.SetActive(true);
                }
            }
            if (curStar.GetSoliderBuildingNum() > 0)
            {
                GatherBtn.gameObject.SetActive(true);
            }
        }
        else if (AttackStatus == AttackStatusType.DisPatch || AttackStatus == AttackStatusType.Gather) //准备攻击,点了下一个星球或选择集合点状态
        {
            if (clickStar.UnitId == curStar.UnitId)                                                    //点击的是当前战斗星球
            {
                return;
            }
            ShowAttackOkBtn(true);
            ShowReconSoldierBtn(true);
            SetAttackAndgatherStatus();
        }
        int buildingNum = curStar.GetBuildingNum();

        if (buildingNum > 0)
        {
            SetStarEnergy(curStar.CurEnergy);
        }
        SetBuildingNumTxt();
    }