コード例 #1
0
        void Init()
        {
            Grid.ClearChild();
            MyItemList.Clear();
            SelectItemList.Clear();
            List <ItemFielInfo> packItemList = ContainerInfomanager.Instance.GetPackItemList().Where(p => (!p.GetIfBesetJewel(1)) && (!p.GetIfBesetJewel(2)) && (p.LocalItemData._TradeFlag == 1)).ToList();

            // 所有已装备的装备本地信息
            List <EquipmentData> equipedDataList = new List <EquipmentData>();

            ContainerInfomanager.Instance.GetEquiptItemList().ApplyAllItem(P => equipedDataList.Add(P.LocalItemData as EquipmentData));

            packItemList.Sort((left, right) => {
                bool leftCanSelectFast  = IsCanFastSelect(left.LocalItemData, equipedDataList);
                bool rightCanSelectFast = IsCanFastSelect(right.LocalItemData, equipedDataList);

                if (leftCanSelectFast && !rightCanSelectFast)
                {
                    return(-1);
                }
                else if (!leftCanSelectFast && rightCanSelectFast)
                {
                    return(1);
                }
                else
                {
                    if (left.sSyncContainerGoods_SC.nPlace < right.sSyncContainerGoods_SC.nPlace)
                    {
                        return(-1);
                    }
                    else if (left.sSyncContainerGoods_SC.nPlace == right.sSyncContainerGoods_SC.nPlace)
                    {
                        return(0);
                    }
                    else
                    {
                        return(1);
                    }
                }
            });
            for (int i = 0; i < ContainerInfomanager.Instance.GetAllPackMaxNum(); i++)
            {
                int        indexX = i % 4;
                int        indexY = i / 4;
                GameObject newObj = CreatObjectToNGUI.InstantiateObj(SinglePackItemPrefab, Grid);
                newObj.transform.localScale    = new Vector3(0.85f, 0.85f, 1);
                newObj.transform.localPosition = new Vector3(-136 + 90 * indexX, 140 - 94 * indexY, 0);
                SinglePackItemSlot newItemSlot     = newObj.GetComponent <SinglePackItemSlot>();
                ItemFielInfo       newItemFielInfo = packItemList.Count > i?packItemList[i]:null;
                newItemSlot.Init(newItemFielInfo, false, SinglePackItemSlot.ItemStatus.Sell, OnItemCLick);
                MyItemList.Add(newItemSlot);

                //引导注入
                if (newItemFielInfo != null)
                {
                    newObj.RegisterBtnMappingId(newItemFielInfo.LocalItemData._goodID, UIType.Package, BtnMapId_Sub.Package_Cell);
                }
            }
            //UpdateSellBtnStatus();
        }
コード例 #2
0
        void OnSellBtnClick(object obj)
        {
            SoundManager.Instance.PlaySoundEffect("Sound_Button_Equipment_Confirm");
            TraceUtil.Log(SystemModel.Jiang, "SellItems");
            List <ItemFielInfo> itemList = new List <ItemFielInfo>();

            SelectItemList.ApplyAllItem(P => itemList.Add(P.MyItemFileInfo));
            if (itemList.Count > 0)
            {
                MyParent.m_SellItemConfirmPanel.SellItem(itemList);
            }
            else
            {
                MessageBox.Instance.ShowTips(1, LanguageTextManager.GetString("IDS_I1_26"), 1);
            }
        }
コード例 #3
0
//		void UpdateSellBtnStatus()
//		{
//			bool isEnabel = SelectItemList.Count>0;
//			SellButton.SetImageButtonComponentActive(isEnabel?true:false);
//			SellButton.SetButtonBackground(isEnabel?1:2);
//			SellButton.gameObject.collider.enabled = isEnabel;
//		}

        void OnItemCLick(object obj)
        {
            ItemFielInfo       clickItemInfo = obj as ItemFielInfo;
            SinglePackItemSlot clickItem     = MyItemList.First(P => P.MyItemFileInfo == clickItemInfo);
            bool selectStatus = !clickItem.IsSelect;

            clickItem.SetSelectStatus(selectStatus);
            if (selectStatus && !SelectItemList.Contains(clickItem))
            {
                SelectItemList.Add(clickItem);
            }
            else if (!selectStatus && SelectItemList.Contains(clickItem))
            {
                SelectItemList.Remove(clickItem);
            }
            //UpdateSellBtnStatus();
        }
コード例 #4
0
        void OnFastSelectBtnClick(object obj)
        {
            SoundManager.Instance.PlaySoundEffect("Sound_Button_Equipment_Confirm");
            List <SinglePackItemSlot> selectableItem = MyItemList.FindAll(P => P.MyItemFileInfo != null);

            // 所有已装备的装备本地信息
            List <EquipmentData> equipedDataList = new List <EquipmentData>();

            ContainerInfomanager.Instance.GetEquiptItemList().ApplyAllItem(P => equipedDataList.Add(P.LocalItemData as EquipmentData));

            foreach (var item in selectableItem)
            {
                ItemData goodsLocalData = item.MyItemFileInfo.LocalItemData;

                // 判断是否可以快速选择
                if (IsCanFastSelect(goodsLocalData, equipedDataList))
                {
                    item.SetSelectStatus(true);
                    SelectItemList.Add(item);
                }
            }
        }
コード例 #5
0
 void isDialogue(bool isAble)
 {
     Tokusei_Set.Clear();
     Weapon_Set.Clear();
     EffortValue_Set.Text     = "000-000-000-000-000-000-000";
     IndividualValue_Set.Text = "00-00-00-00-00-00";
     OtherItem_Set.Clear();
     InputForm.Items.Clear();
     InputForm.Items.Add("N/A");
     SelectItemList.Refresh();
     InputForm.Refresh();
     Tokusei_Set.Enabled         = isAble;
     InputForm.Enabled           = isAble;
     Weapon_Set.Enabled          = isAble;
     EffortValue_Set.Enabled     = isAble;
     IndividualValue_Set.Enabled = isAble;
     SavePokemonData.Enabled     = isAble;
     OtherItem_Set.Enabled       = isAble;
     SelectItemList.Enabled      = isAble;
     SeikakuList.Enabled         = isAble;
     RealVal_newForm.Text        = "入力が正しくないです";
     //Refresh();
 }