Пример #1
0
    void OnCompoundBtnClick(GameObject go)
    {
        if (!GameConfig.IsMultiMode)
        {
            UIGraphControl graph_ctrl = FactoryReplicator.m_MiddleContent.graphCtrl;

            if (!graph_ctrl.isCanCreate())
            {
                return;
            }

            int item_id  = graph_ctrl.rootNode.GetItemID();
            int item_num = graph_ctrl.rootNode.getCount;

            //lz-2016.09.26 时间使用份数计算的,所有要除掉productItemCount
            float time = graph_ctrl.rootNode.ms.timeNeed * item_num / graph_ctrl.rootNode.ms.m_productItemCount;

            if (RandomMapConfig.useSkillTree)
            {
                if (GameUI.Instance.mSkillWndCtrl._SkillMgr != null)
                {
                    time = GameUI.Instance.mSkillWndCtrl._SkillMgr.CheckReduceTime((float)time);
                }
            }

            if (m_Factory.SetCompoudItem(item_id, item_num, time))
            {
                for (int i = 0; i < graph_ctrl.mGraphItemList.Count; i++)
                {
                    if (graph_ctrl.mGraphItemList[i].mPartent == graph_ctrl.rootNode)
                    {
                        PeCreature.Instance.mainPlayer.GetCmpt <PlayerPackageCmpt>().package.Destroy(graph_ctrl.mGraphItemList[i].GetItemID(), graph_ctrl.mGraphItemList[i].needCount);
                    }
                }

                // Status bar
                CSUI_MainWndCtrl.ShowStatusBar(CSUtils.GetNoFormatString(UIMsgBoxInfo.mJoinCompoudingQueue.GetString(), ItemProto.GetItemData(item_id).GetName()));

                //....
                if (GameUI.Instance.mItemPackageCtrl != null)
                {
                    GameUI.Instance.mItemPackageCtrl.ResetItem();
                }
            }
        }
        else
        {
            UIGraphControl graph_ctrl = FactoryReplicator.m_MiddleContent.graphCtrl;

            if (!graph_ctrl.isCanCreate())
            {
                return;
            }
            int skill_id = graph_ctrl.rootNode.ms.id;
            //lz-2016.09.26 多人的接口需要的是productCount
            int productCount = graph_ctrl.rootNode.getCount / graph_ctrl.rootNode.ms.m_productItemCount;
            //to do--skillid,num
            if (m_Factory.Data.m_CompoudItems.Count >= CSFactory.c_CompoudItemCount)
            {
                return;
            }
            //lz-2016.09.26 多人的接口需要的是productCount
            m_Factory._ColonyObj._Network.FCT_Compoud(skill_id, productCount);
        }
    }