示例#1
0
        private void RefreshEquipButton(UnitData unit)
        {
            bool      flag             = false;
            int       selectedJobIndex = this.GetSelectedJobIndex(unit);
            EquipData rankupEquipData  = unit.GetRankupEquipData(selectedJobIndex, (int)GlobalVars.SelectedEquipmentSlot);

            if (rankupEquipData != null && rankupEquipData.IsValid() && !rankupEquipData.IsEquiped())
            {
                if (MonoSingleton <GameManager> .Instance.Player.HasItem(rankupEquipData.ItemID))
                {
                    flag = (int)rankupEquipData.ItemParam.equipLv <= unit.Lv;
                }
                else if (unit.Jobs[selectedJobIndex].Rank <= 0 && rankupEquipData.ItemParam.IsCommon)
                {
                    ItemParam commonEquip = MonoSingleton <GameManager> .Instance.MasterParam.GetCommonEquip(rankupEquipData.ItemParam, true);

                    flag = commonEquip != null && MonoSingleton <GameManager> .Instance.Player.HasItem(commonEquip.iname);
                }
            }
            if (UnityEngine.Object.op_Inequality((UnityEngine.Object) this.EquipButton, (UnityEngine.Object)null))
            {
                ((Selectable)this.EquipButton).set_interactable(flag);
            }
            if (!UnityEngine.Object.op_Inequality((UnityEngine.Object) this.CommonEquipButton, (UnityEngine.Object)null))
            {
                return;
            }
            ((Selectable)this.CommonEquipButton).set_interactable(flag);
        }
示例#2
0
        private void Refresh()
        {
            GameManager instance           = MonoSingleton <GameManager> .Instance;
            UnitData    unitDataByUniqueId = instance.Player.FindUnitDataByUniqueID((long)GlobalVars.SelectedUnitUniqueID);

            if (unitDataByUniqueId == null || instance.MasterParam.FixParam.EquipCommonPieceNum == null || instance.MasterParam.FixParam.EquipCommonPieceCost == null)
            {
                return;
            }
            List <JobData> jobDataList = new List <JobData>((IEnumerable <JobData>)unitDataByUniqueId.Jobs);
            JobData        jobData     = jobDataList.Find((Predicate <JobData>)(x => (long)GlobalVars.SelectedJobUniqueID == x.UniqueID));

            if (jobData == null)
            {
                return;
            }
            int       jobNo           = jobDataList.IndexOf(jobData);
            EquipData rankupEquipData = unitDataByUniqueId.GetRankupEquipData(jobNo, (int)GlobalVars.SelectedEquipmentSlot);
            ItemParam commonEquip     = instance.MasterParam.GetCommonEquip(rankupEquipData.ItemParam, jobData.Rank == 0);

            if (commonEquip != null)
            {
                return;
            }
            DataSource.Bind <ItemParam>(((Component)this).get_gameObject(), commonEquip);
            ItemData itemDataByItemParam = instance.Player.FindItemDataByItemParam(commonEquip);
            int      num1 = 0;

            if (itemDataByItemParam != null)
            {
                num1 = itemDataByItemParam.Num;
                DataSource.Bind <ItemData>(((Component)this).get_gameObject(), itemDataByItemParam);
            }
            else
            {
                DataSource.Bind <ItemParam>(((Component)this).get_gameObject(), commonEquip);
            }
            int num2 = (int)instance.MasterParam.FixParam.EquipCommonPieceNum[(int)commonEquip.rare];

            this.CommonName.set_text(LocalizedText.Get("sys.COMMON_EQUIP_NAME", (object)commonEquip.name, (object)num2));
            this.CommonAmount.set_text(LocalizedText.Get("sys.COMMON_EQUIP_NUM", new object[1]
            {
                (object)num1
            }));
            this.CommonDescription.set_text(LocalizedText.Get("sys.COMMON_EQUIP_DESCRIPT", (object)commonEquip.name, (object)num2));
            int num3 = (int)instance.MasterParam.FixParam.EquipCommonPieceCost[rankupEquipData.Rarity];

            this.CommonCost.set_text(num3.ToString());
            bool flag1 = num3 <= instance.Player.Gold;
            bool flag2 = num1 >= num2;

            this.NotEnough.SetActive(!flag1);
            ((Component)this.CommonDescription).get_gameObject().SetActive(flag2);
            ((Component)this.CommonDescriptionPieceNotEnough).get_gameObject().SetActive(!flag2);
            ((Selectable)this.ButtonCommonEquip).set_interactable(flag1 && flag2);
            GameParameter.UpdateAll(((Component)this).get_gameObject());
        }
示例#3
0
        private bool CheckEquipItemEnhance()
        {
            if (this.mEnhanceEquipData == null || this.mEnhanceEquipData.equip == null)
            {
                return(false);
            }
            EquipData equip   = this.mEnhanceEquipData.equip;
            int       current = equip.Exp + this.mEnhanceEquipData.gainexp;

            return(equip.CalcRankFromExp(current) < equip.GetRankCap());
        }
示例#4
0
        public void Refresh()
        {
            UnitData dataOfClass = DataSource.FindDataOfClass <UnitData>(((Component)this).get_gameObject(), (UnitData)null);

            if (dataOfClass == null)
            {
                return;
            }
            EquipData[] currentEquips = dataOfClass.CurrentEquips;
            if (currentEquips != null && this.EqIcons != null && (this.EqIcons.Length >= currentEquips.Length && this.AttrIcons != null) && this.AttrIcons.Length >= currentEquips.Length)
            {
                PlayerData  player      = MonoSingleton <GameManager> .Instance.Player;
                SpriteSheet spriteSheet = AssetManager.Load <SpriteSheet>("ItemIcon/small");
                for (int index = 0; index < currentEquips.Length; ++index)
                {
                    EquipData equipData = currentEquips[index];
                    if (!Object.op_Equality((Object)this.EqIcons[index], (Object)null) && !Object.op_Equality((Object)this.AttrIcons[index], (Object)null))
                    {
                        ((Component)this.EqIcons[index]).get_gameObject().SetActive(false);
                        ((Component)this.AttrIcons[index]).get_gameObject().SetActive(false);
                        if (equipData == null || !equipData.IsValid())
                        {
                            this.EqIcons[index].set_sprite((Sprite)null);
                        }
                        else
                        {
                            ((Component)this.EqIcons[index]).get_gameObject().SetActive(true);
                            this.EqIcons[index].set_sprite(spriteSheet.GetSprite(equipData.ItemID));
                            if (!equipData.IsEquiped())
                            {
                                ((Component)this.AttrIcons[index]).get_gameObject().SetActive(true);
                                if (player.HasItem(equipData.ItemID))
                                {
                                    this.AttrIcons[index].set_sprite(spriteSheet.GetSprite((int)equipData.ItemParam.equipLv <= dataOfClass.Lv ? "plus0" : "plus1"));
                                }
                                else if (player.CheckEnableCreateItem(equipData.ItemParam, true, 1, (NeedEquipItemList)null))
                                {
                                    this.AttrIcons[index].set_sprite(spriteSheet.GetSprite((int)equipData.ItemParam.equipLv <= dataOfClass.Lv ? "plus0" : "plus1"));
                                }
                                else
                                {
                                    this.AttrIcons[index].set_sprite(spriteSheet.GetSprite("plus2"));
                                }
                            }
                        }
                    }
                }
            }
            this.m_Time = 2f;
            this.Update();
            GameParameter.UpdateAll(((Component)this).get_gameObject());
        }
示例#5
0
        private void RefreshEquipButton(UnitData unit)
        {
            bool      flag             = false;
            int       selectedJobIndex = this.GetSelectedJobIndex(unit);
            EquipData rankupEquipData  = unit.GetRankupEquipData(selectedJobIndex, (int)GlobalVars.SelectedEquipmentSlot);

            if (rankupEquipData != null && rankupEquipData.IsValid() && (!rankupEquipData.IsEquiped() && MonoSingleton <GameManager> .Instance.Player.HasItem(rankupEquipData.ItemID)))
            {
                flag = (int)rankupEquipData.ItemParam.equipLv <= unit.Lv;
            }
            if (!Object.op_Inequality((Object)this.EquipButton, (Object)null))
            {
                return;
            }
            ((Selectable)this.EquipButton).set_interactable(flag);
        }
示例#6
0
        private void OnCommonEquipClick(SRPG_Button button)
        {
            if (!((Selectable)button).IsInteractable())
            {
                return;
            }
            UnitData unitDataByUniqueId = MonoSingleton <GameManager> .Instance.Player.FindUnitDataByUniqueID((long)GlobalVars.SelectedUnitUniqueID);

            int       selectedJobIndex = this.GetSelectedJobIndex(unitDataByUniqueId);
            EquipData rankupEquipData  = unitDataByUniqueId.GetRankupEquipData(selectedJobIndex, (int)GlobalVars.SelectedEquipmentSlot);
            ItemParam commonEquip      = MonoSingleton <GameManager> .Instance.MasterParam.GetCommonEquip(rankupEquipData.ItemParam, unitDataByUniqueId.Jobs[selectedJobIndex].Rank == 0);

            if (commonEquip == null)
            {
                return;
            }
            UIUtility.ConfirmBox(LocalizedText.Get("sys.COMMON_EQUIP_SOUL_CONFIRM", (object)commonEquip.name, (object)rankupEquipData.ItemParam.name), new UIUtility.DialogResultEvent(this.CommonEquip), (UIUtility.DialogResultEvent)null, (GameObject)null, false, -1, (string)null, (string)null);
        }
示例#7
0
        public bool CheckJobMaster()
        {
            if (!MonoSingleton <GameManager> .Instance.MasterParam.FixParam.IsJobMaster || this.Equips == null || this.Rank < JobParam.MAX_JOB_RANK)
            {
                return(false);
            }
            bool flag = true;

            for (int index = 0; index < this.Equips.Length; ++index)
            {
                EquipData equip = this.Equips[index];
                if (equip == null || !equip.IsValid() || !equip.IsEquiped())
                {
                    flag = false;
                    break;
                }
            }
            return(flag);
        }
示例#8
0
        public void Refresh(UnitData unit, int slot)
        {
            if (unit == null)
            {
                unit = MonoSingleton <GameManager> .Instance.Player.FindUnitDataByUniqueID((long)GlobalVars.SelectedUnitUniqueID);
            }
            if (unit == null)
            {
                return;
            }
            int selectedJobIndex = this.GetSelectedJobIndex(unit);

            EquipData[] rankupEquips = unit.GetRankupEquips(selectedJobIndex);
            if (slot < 0 || rankupEquips.Length <= slot)
            {
                return;
            }
            EquipData equipData = rankupEquips[slot];
            ItemParam itemParam = equipData.ItemParam;

            if (this.mItemParamTree.Count == 0 || this.mItemParamTree[0] != itemParam)
            {
                this.mItemParamTree.Clear();
                this.mItemParamTree.Add(itemParam);
            }
            if (equipData != null && equipData.IsValid() && equipData.IsEquiped())
            {
                this.mEquipmentData = equipData;
            }
            else
            {
                this.mEquipmentData = new EquipData();
                this.mEquipmentData.Setup(itemParam.iname);
            }
            for (int index = 0; index < this.mEquipmentParameters.Count; ++index)
            {
                this.mEquipmentParameters[index].SetActive(false);
            }
            if (this.mEquipmentData != null && this.mEquipmentData.Skill != null)
            {
                BuffEffect buffEffect = this.mEquipmentData.Skill.GetBuffEffect(SkillEffectTargets.Target);
                if (buffEffect != null && buffEffect.targets != null)
                {
                    for (int index = 0; index < buffEffect.targets.Count; ++index)
                    {
                        if (index >= this.mEquipmentParameters.Count)
                        {
                            GameObject gameObject = (GameObject)Object.Instantiate <GameObject>((M0)this.EquipItemParamTemplate);
                            gameObject.get_transform().SetParent((Transform)this.EquipItemParamParent, false);
                            this.mEquipmentParameters.Add(gameObject);
                        }
                        GameObject         equipmentParameter = this.mEquipmentParameters[index];
                        EquipItemParameter data = DataSource.FindDataOfClass <EquipItemParameter>(equipmentParameter, (EquipItemParameter)null) ?? new EquipItemParameter();
                        data.equip       = this.mEquipmentData;
                        data.param_index = index;
                        DataSource.Bind <EquipItemParameter>(equipmentParameter, data);
                        equipmentParameter.SetActive(true);
                    }
                }
            }
            this.RefreshEquipButton(unit);
            DataSource.Bind <EquipData>(((Component)this).get_gameObject(), this.mEquipmentData);
            this.RefreshItemTree(this.mCreateItemSuccessed);
            this.RefreshRecipeItems();
            this.RefreshGainedQuests();
            GameParameter.UpdateAll(((Component)this).get_gameObject());
        }
示例#9
0
        private void RefreshData()
        {
            JobData jobData = this.mUnit.GetJobData(this.mJobIndex);

            DataSource.Bind <UnitData>(this.Unit, this.mUnit);
            for (int index = 0; index < this.Equipments.Count; ++index)
            {
                EquipData equip = jobData.Equips[index];
                DataSource.Bind <EquipData>(((Component)this.Equipments[index]).get_gameObject(), equip);
                bool flag = equip != null && (equip.IsValid() && equip.IsEquiped());
                ((Selectable)this.Equipments[index]).set_interactable(flag);
                ((Component)this.EquipmentRawImages[index]).get_gameObject().SetActive(flag);
                this.EquipmentCursors[index].SetActive(Object.op_Equality((Object)this.mSelectedEquipItem, (Object)((Component)this.Equipments[index]).get_gameObject()));
            }
            this.mEnhanceEquipData.equip       = (EquipData)null;
            this.mEnhanceEquipData.gainexp     = 0;
            this.mEnhanceEquipData.is_enhanced = false;
            for (int index = 0; index < this.mEnhanceParameters.Count; ++index)
            {
                this.mEnhanceParameters[index].SetActive(false);
            }
            ((Selectable)this.BtnEnhance).set_interactable(false);
            EquipData equipData = !Object.op_Inequality((Object)this.mSelectedEquipItem, (Object)null) ? (EquipData)null : DataSource.FindDataOfClass <EquipData>(this.mSelectedEquipItem, (EquipData)null);
            int       num1      = 0;
            int       num2      = 0;

            for (int index = 0; index < this.mMaterialItems.Count; ++index)
            {
                // ISSUE: object of a compiler-generated type is created
                // ISSUE: variable of a compiler-generated type
                EnhanceEquipDetailWindow.\u003CRefreshData\u003Ec__AnonStorey242 dataCAnonStorey242 = new EnhanceEquipDetailWindow.\u003CRefreshData\u003Ec__AnonStorey242();
                // ISSUE: reference to a compiler-generated field
                dataCAnonStorey242.item = this.mMaterialItems[index];
                // ISSUE: reference to a compiler-generated method
                EnhanceMaterial enhanceMaterial1 = this.mEnhanceMaterials.Find(new Predicate <EnhanceMaterial>(dataCAnonStorey242.\u003C\u003Em__26F));
                if (enhanceMaterial1 == null)
                {
                    EnhanceMaterial enhanceMaterial2 = new EnhanceMaterial();
                    // ISSUE: reference to a compiler-generated field
                    enhanceMaterial2.item = dataCAnonStorey242.item;
                    enhanceMaterial2.num  = 0;
                    this.mEnhanceMaterials.Add(enhanceMaterial2);
                    enhanceMaterial1 = enhanceMaterial2;
                }
                if (equipData != null)
                {
                    // ISSUE: reference to a compiler-generated field
                    num1 += (int)dataCAnonStorey242.item.Param.enhace_cost * equipData.GetEnhanceCostScale() / 100 * enhanceMaterial1.num;
                    // ISSUE: reference to a compiler-generated field
                    num2 += (int)dataCAnonStorey242.item.Param.enhace_point * enhanceMaterial1.num;
                }
            }
            bool flag1 = false;

            if (Object.op_Inequality((Object)this.EquipSelectParent, (Object)null))
            {
                DataSource.Bind <EnhanceEquipData>(this.EquipSelectParent, (EnhanceEquipData)null);
                this.EquipSelectParent.get_gameObject().SetActive(false);
            }
            if (Object.op_Inequality((Object)this.TxtComment, (Object)null))
            {
                ((Component)this.TxtComment).get_gameObject().SetActive(false);
            }
            if (Object.op_Inequality((Object)this.mSelectedEquipItem, (Object)null))
            {
                this.mEnhanceEquipData.equip   = equipData;
                this.mEnhanceEquipData.gainexp = num2;
                if (equipData != null)
                {
                    BuffEffect buffEffect = equipData.Skill.GetBuffEffect(SkillEffectTargets.Target);
                    if (buffEffect != null && buffEffect.targets != null)
                    {
                        for (int index = 0; index < buffEffect.targets.Count; ++index)
                        {
                            if (index >= this.mEnhanceParameters.Count)
                            {
                                this.ParamUpTemplate.SetActive(true);
                                GameObject gameObject = (GameObject)Object.Instantiate <GameObject>((M0)this.ParamUpTemplate);
                                gameObject.get_transform().SetParent(this.ParamUpLayoutParent, false);
                                this.mEnhanceParameters.Add(gameObject);
                                this.ParamUpTemplate.SetActive(false);
                            }
                            GameObject         enhanceParameter = this.mEnhanceParameters[index];
                            EquipItemParameter data             = DataSource.FindDataOfClass <EquipItemParameter>(enhanceParameter, (EquipItemParameter)null) ?? new EquipItemParameter();
                            data.equip       = equipData;
                            data.param_index = index;
                            DataSource.Bind <EquipItemParameter>(enhanceParameter, data);
                            enhanceParameter.SetActive(true);
                        }
                    }
                    flag1 = true;
                    if (equipData.Rank == equipData.GetRankCap())
                    {
                        if (Object.op_Inequality((Object)this.TxtComment, (Object)null))
                        {
                            this.TxtComment.set_text(LocalizedText.Get("sys.DIABLE_ENHANCE_RANKCAP_MESSAGE"));
                            ((Component)this.TxtComment).get_gameObject().SetActive(true);
                        }
                        flag1 = false;
                    }
                }
                if (Object.op_Inequality((Object)this.EquipSelectParent, (Object)null))
                {
                    DataSource.Bind <EnhanceEquipData>(this.EquipSelectParent, this.mEnhanceEquipData);
                    this.EquipSelectParent.get_gameObject().SetActive(true);
                }
            }
            else if (Object.op_Inequality((Object)this.TxtComment, (Object)null))
            {
                this.TxtComment.set_text(LocalizedText.Get("sys.ENHANCE_EQUIPMENT_MESSAGE"));
                ((Component)this.TxtComment).get_gameObject().SetActive(true);
            }
            this.mEnhanceEquipData.is_enhanced = flag1;
            if (Object.op_Inequality((Object)this.SelectedParent, (Object)null))
            {
                DataSource.Bind <EnhanceEquipData>(this.SelectedParent, this.mEnhanceEquipData);
                this.SelectedParent.get_gameObject().SetActive(flag1);
            }
            if (Object.op_Inequality((Object)this.TxtDisableEnhanceOnGauge, (Object)null))
            {
                ((Component)this.TxtDisableEnhanceOnGauge).get_gameObject().SetActive(!flag1);
            }
            if (Object.op_Inequality((Object)this.TxtCost, (Object)null))
            {
                this.TxtCost.set_text(num1.ToString());
            }
            if (Object.op_Inequality((Object)this.TxtJob, (Object)null))
            {
                this.TxtJob.set_text(jobData.Name);
            }
            if (flag1)
            {
                int num3 = equipData.CalcRankFromExp(equipData.Exp + num2);
                ((Selectable)this.BtnEnhance).set_interactable(equipData != null && equipData.Rank < num3);
            }
            if (Object.op_Inequality((Object)this.BtnAdd, (Object)null))
            {
                ((Selectable)this.BtnAdd).set_interactable(flag1 && Object.op_Inequality((Object)this.mSelectedMaterialItem, (Object)null));
            }
            if (Object.op_Inequality((Object)this.BtnSub, (Object)null))
            {
                ((Selectable)this.BtnSub).set_interactable(flag1 && Object.op_Inequality((Object)this.mSelectedMaterialItem, (Object)null));
            }
            this.mEnableEnhanceMaterials.Clear();
            for (int index = 0; index < this.mEnhanceMaterials.Count; ++index)
            {
                if (this.mEnhanceMaterials[index].item != null && this.mEnhanceMaterials[index].item.Num != 0)
                {
                    this.mEnableEnhanceMaterials.Add(this.mEnhanceMaterials[index]);
                }
            }
            this.SetData((object[])this.mEnableEnhanceMaterials.ToArray(), typeof(EnhanceMaterial));
            GameParameter.UpdateAll(((Component)this).get_gameObject());
        }
示例#10
0
        public override void OnActivate(int pinID)
        {
            if (pinID != 0 || ((Behaviour)this).get_enabled())
            {
                return;
            }
            GameManager            instance           = MonoSingleton <GameManager> .Instance;
            PlayerData             player             = instance.Player;
            UnitData               unitDataByUniqueId = instance.Player.FindUnitDataByUniqueID((long)GlobalVars.SelectedUnitUniqueID);
            JobData                job = unitDataByUniqueId.Jobs[(int)GlobalVars.SelectedUnitJobIndex];
            int                    selectedEquipmentSlot = (int)GlobalVars.SelectedEquipmentSlot;
            EquipData              selectedEquipData     = GlobalVars.SelectedEquipData;
            int                    num = 0;
            int                    exp = 0;
            List <EnhanceMaterial> enhanceMaterials = GlobalVars.SelectedEnhanceMaterials;

            if (enhanceMaterials == null || enhanceMaterials.Count < 1)
            {
                return;
            }
            for (int index = 0; index < enhanceMaterials.Count; ++index)
            {
                EnhanceMaterial enhanceMaterial = enhanceMaterials[index];
                ItemData        itemData        = enhanceMaterial.item;
                num += (int)itemData.Param.enhace_cost * selectedEquipData.GetEnhanceCostScale() / 100 * enhanceMaterial.num;
                exp += (int)itemData.Param.enhace_point * enhanceMaterial.num;
            }
            if (num > player.Gold)
            {
                this.ActivateOutputLinks(2);
            }
            else
            {
                selectedEquipData.GainExp(exp);
                if (unitDataByUniqueId != null)
                {
                    unitDataByUniqueId.CalcStatus();
                }
                for (int index = 0; index < enhanceMaterials.Count; ++index)
                {
                    EnhanceMaterial enhanceMaterial = enhanceMaterials[index];
                    enhanceMaterial.item.Used(enhanceMaterial.num);
                }
                player.GainGold(-num);
                AnalyticsManager.TrackCurrencyUse(AnalyticsManager.CurrencyType.Zeni, AnalyticsManager.CurrencySubType.FREE, (long)num, "Enhance Equip", (Dictionary <string, object>)null);
                if (Network.Mode == Network.EConnectMode.Online)
                {
                    Dictionary <string, int> usedItems = new Dictionary <string, int>();
                    for (int index = 0; index < enhanceMaterials.Count; ++index)
                    {
                        EnhanceMaterial enhanceMaterial = enhanceMaterials[index];
                        ItemData        itemData        = enhanceMaterial.item;
                        if (enhanceMaterial.num >= 1)
                        {
                            if (!usedItems.ContainsKey(itemData.ItemID))
                            {
                                usedItems[itemData.ItemID] = 0;
                            }
                            Dictionary <string, int> dictionary;
                            string itemId;
                            (dictionary = usedItems)[itemId = itemData.ItemID] = dictionary[itemId] + enhanceMaterial.num;
                        }
                    }
                    this.ExecRequest((WebAPI) new ReqEquipExpAdd(job.UniqueID, selectedEquipmentSlot, usedItems, new Network.ResponseCallback(((FlowNode_Network)this).ResponseCallback)));
                    ((Behaviour)this).set_enabled(true);
                }
                else
                {
                    this.Success();
                }
            }
        }
示例#11
0
        public void Refresh(UnitData unit, int slot)
        {
            if (unit == null)
            {
                unit = MonoSingleton <GameManager> .Instance.Player.FindUnitDataByUniqueID((long)GlobalVars.SelectedUnitUniqueID);
            }
            if (unit == null)
            {
                return;
            }
            int selectedJobIndex = this.GetSelectedJobIndex(unit);

            EquipData[] rankupEquips = unit.GetRankupEquips(selectedJobIndex);
            if (slot < 0 || rankupEquips.Length <= slot)
            {
                return;
            }
            EquipData equipData = rankupEquips[slot];
            ItemParam itemParam = equipData.ItemParam;

            if (this.mItemParamTree.Count == 0 || this.mItemParamTree[0] != itemParam)
            {
                this.mItemParamTree.Clear();
                this.mItemParamTree.Add(itemParam);
            }
            bool is_common = false;

            if (equipData != null && equipData.IsValid() && equipData.IsEquiped())
            {
                this.mEquipmentData = equipData;
            }
            else
            {
                this.mEquipmentData = new EquipData();
                ItemData itemDataByItemId = MonoSingleton <GameManager> .Instance.Player.FindItemDataByItemID(itemParam.iname);

                ItemParam item_param = itemDataByItemId == null ? MonoSingleton <GameManager> .Instance.MasterParam.GetItemParam(itemParam.iname) : itemDataByItemId.Param;

                ItemParam commonEquip = MonoSingleton <GameManager> .Instance.MasterParam.GetCommonEquip(item_param, true);

                ItemData itemData = (ItemData)null;
                if (commonEquip != null)
                {
                    itemData = MonoSingleton <GameManager> .Instance.Player.FindItemDataByItemID(commonEquip.iname);
                }
                if ((itemDataByItemId == null || itemDataByItemId.Num <= 0) && (item_param.IsCommon && unit.Jobs[selectedJobIndex].Rank == 0) && (itemData != null && itemData.Num > 0))
                {
                    this.mEquipmentData.Setup(commonEquip.iname);
                    is_common = true;
                }
                else
                {
                    this.mEquipmentData.Setup(itemParam.iname);
                }
            }
            this.ActivateCommonUI(is_common);
            for (int index = 0; index < this.mEquipmentParameters.Count; ++index)
            {
                this.mEquipmentParameters[index].SetActive(false);
            }
            if (this.mEquipmentData != null && this.mEquipmentData.Skill != null)
            {
                BuffEffect buffEffect = this.mEquipmentData.Skill.GetBuffEffect(SkillEffectTargets.Target);
                if (buffEffect != null && buffEffect.targets != null)
                {
                    for (int index = 0; index < buffEffect.targets.Count; ++index)
                    {
                        if (index >= this.mEquipmentParameters.Count)
                        {
                            GameObject gameObject = (GameObject)UnityEngine.Object.Instantiate <GameObject>((M0)this.EquipItemParamTemplate);
                            gameObject.get_transform().SetParent((Transform)this.EquipItemParamParent, false);
                            this.mEquipmentParameters.Add(gameObject);
                        }
                        GameObject         equipmentParameter = this.mEquipmentParameters[index];
                        EquipItemParameter data = DataSource.FindDataOfClass <EquipItemParameter>(equipmentParameter, (EquipItemParameter)null) ?? new EquipItemParameter();
                        data.equip       = this.mEquipmentData;
                        data.param_index = index;
                        DataSource.Bind <EquipItemParameter>(equipmentParameter, data);
                        equipmentParameter.SetActive(true);
                    }
                }
            }
            this.RefreshEquipButton(unit);
            DataSource.Bind <EquipData>(((Component)this).get_gameObject(), this.mEquipmentData);
            this.RefreshItemTree(this.mCreateItemSuccessed);
            this.RefreshRecipeItems();
            this.RefreshGainedQuests();
            ItemData itemDataByItemId1 = MonoSingleton <GameManager> .Instance.Player.FindItemDataByItemID(this.mEquipmentData.ItemParam.iname);

            ((Graphic)this.EquipAmount).set_color(itemDataByItemId1 == null || itemDataByItemId1.Num == 0 ? this.EquipAmountColorZero : this.EquipAmountColor);
            GameParameter.UpdateAll(((Component)this).get_gameObject());
        }