Exemplo n.º 1
0
    private void UpdateCampCreate(int camp, GameObject copy)
    {
        AWBuildingBarrack      buildingBarrack  = AWCore.Instance.GetGame().GetScene <AWSceneHome>().GetAWBuilding <AWBuildingBarrack>(m_building);
        IBuildingConfItem      buildingConfItem = AW.GetSingleton <IDataAdapter>().GetBuildingConfItem(m_building);
        List <int>             produceUnitLists = AW.GetSingleton <IDataAdapter>().GetProduceUnitList(m_building.GetBuildingType());
        Dictionary <int, Camp> produceTroops    = barrack.GetProduceTroopDic();

        copy.transform.SetParent(campAnchor, false);
        copy.GetComponent <UISetAnchor>().SetAnchor(buildingBarrack.GetModelAnchor(camp), UIAnchorType.World3DToUI2D);
        UICampItem campItem = copy.GetComponent <UICampItem>();

        campItem.InitCamp(produceTroops, camp, buildingConfItem);
        campItem.SetUnitName();
        campItem.SetSelect(false);
        itemList.Add(campItem);
        Button button = copy.GetComponent <Button>();

        button.onClick.RemoveAllListeners();
        button.onClick.AddListener(CloseUnitList);
        button.onClick.AddListener(ResetCampItem);
        button.onClick.AddListener(new OnClickCampEvent(construction, troopsInfoAnchor, produceTroops[camp], replaceUnitList, produceUnitLists, m_building, replaceUnitListAnchor, campItem).OnClickCreateTroopsInfo);
        m_buildingProcess = copy.ExtGetMissingComponent <AWBuildingProcess>();
        m_buildingProcess.InitProcess(produceTroops[camp], copy.transform, new Vector3(-20, 80, 0), UIAnchorType.UI2DToUI2D);
        m_buildingProcess.SetShow(true);
    }
Exemplo n.º 2
0
        public void OnClickCreateTroopsInfo()
        {
            m_campItem.SetSelect(true);
            UIWindowTroopsInfo info = UIWindowWrapper.GetWindowAddMask <UIWindowTroopsInfo>();

            info.transform.SetParent(m_troopsAnchor, false);
            info.Open(m_camp);
            IUnitConfItem     unitConfItem     = AW.GetSingleton <IDataAdapter>().GetOwnedUnitConfItem(m_camp.ProduceItem);
            IBuildingConfItem buildingConfItem = AW.GetSingleton <IDataAdapter>().GetBuildingConfItem(m_building);

            m_count = buildingConfItem.GetTroopCostVolume() / unitConfItem.GetCapacityCost();
            Building barrck = (Building)m_camp;

            if (barrck.GetState() == AWEnum.BuildingStateType.Produce)
            {
                info.replace.gameObject.SetActive(false);
                info.SetCompleteButtonStyle(OnClickComplete);
                info.SetCancelButtonStle(OnClickCancel);
                if (m_camp.GetProducedCount() < m_count)
                {
                    info.SetSupplementButtonStyle(OnClickSupplement);
                }
                else
                {
                    info.supplement.gameObject.SetActive(false);
                }
            }
            else
            {
                info.complete.gameObject.SetActive(false);
                info.cancel.gameObject.SetActive(false);
                if (m_camp.GetProducedCount() < m_count)
                {
                    info.SetSupplementButtonStyle(OnClickSupplement);
                    info.SetReplaceButtonStyle(OnClickReplace);
                }
                else
                {
                    info.supplement.gameObject.SetActive(false);
                    info.SetReplaceButtonStyle(OnClickReplace);
                }
            }
            info.SetRename(OnClickRename);
        }