| | |
| | | using System.Collections.Generic;
|
| | | using System.Linq;
|
| | |
|
| | | using UnityEngine;
|
| | |
|
| | | [XLua.LuaCallCSharp]
|
| | | public class SelectEquipModel : Model
|
| | | public class SelectEquipModel : Model
|
| | | {
|
| | | ComposeWinModel _composeWinModel;
|
| | | ComposeWinModel composeWinModel
|
| | | {
|
| | | get { return _composeWinModel ?? (_composeWinModel = ModelCenter.Instance.GetModel<ComposeWinModel>()); }
|
| | | }
|
| | | ComposeWinModel composeWinModel { get { return ModelCenter.Instance.GetModel<ComposeWinModel>(); } }
|
| | | PlayerPackModel playerPack { get { return ModelCenter.Instance.GetModel<PlayerPackModel>(); } }
|
| | | PackModelInterface modelInterface { get { return ModelCenter.Instance.GetModel<PackModelInterface>(); } }
|
| | |
|
| | | private FuncConfigConfig addonsTypeModel;
|
| | | private FuncConfigConfig addonsQualityModel;
|
| | |
| | |
|
| | | public SelectItemType selectItem = SelectItemType.Nomral;
|
| | | public event Action UpdateSelectItemsEvent;
|
| | | PlayerPackModel _playerPack;
|
| | | PlayerPackModel playerPack
|
| | | {
|
| | | get { return _playerPack ?? (_playerPack = ModelCenter.Instance.GetModel<PlayerPackModel>()); }
|
| | | }
|
| | |
|
| | | PackModelInterface modelInterface { get { return ModelCenter.Instance.GetModel<PackModelInterface>(); } }
|
| | |
|
| | | public int[] extraOneKeyPutCondis;
|
| | | public int[] noOneKeyPutCondis;
|
| | |
|
| | | public override void Init()
|
| | | {
|
| | | addonsTypeModel = FuncConfigConfig.Get("ComposeAddonsType");
|
| | |
| | | ItemModel itemModel = allBagItemInfo[key];
|
| | | if (!haveUnfixedSelectItemDic.ContainsKey(key))
|
| | | {
|
| | | switch((RoleEquipType)itemModel.config.EquipPlace)
|
| | | switch ((RoleEquipType)itemModel.config.EquipPlace)
|
| | | {
|
| | | case RoleEquipType.SpiritAnimal:
|
| | | bool isOverdue = modelInterface.IsOverdue(itemModel.guid, itemModel.itemId, itemModel.useDataDict);
|
| | | if(isOverdue)
|
| | | if (isOverdue)
|
| | | {
|
| | | continue;
|
| | | }
|
| | | break;
|
| | | }
|
| | | |
| | |
|
| | | int i = 0;
|
| | | for (i = 0; i < unfixedIds.Length; i++)
|
| | | {
|
| | |
| | | modellist.Sort(CompareByCondition);
|
| | | _addonsItemDict.Clear();
|
| | |
|
| | | for(int i= 0; i < modellist.Count; i++)
|
| | | for (int i = 0; i < modellist.Count; i++)
|
| | | {
|
| | | ItemModel itemModel = modellist[i];
|
| | | int index = itemModel.itemPlace;
|
| | |
| | | orderOneKeylist.Clear();
|
| | | foreach (var key in _addonsItemDict.Keys)
|
| | | {
|
| | | int isFightUp = modelInterface.IsFightUp(_addonsItemDict[key].itemId,_addonsItemDict[key].equipScore);
|
| | | if(isFightUp != 1)
|
| | | int isFightUp = modelInterface.IsFightUp(_addonsItemDict[key].itemId, _addonsItemDict[key].equipScore);
|
| | | if (isFightUp != 1)
|
| | | {
|
| | | if(_addonsItemDict[key].config.ItemColor >= noOneKeyPutCondis[0]
|
| | | if (_addonsItemDict[key].config.ItemColor >= noOneKeyPutCondis[0]
|
| | | && _addonsItemDict[key].config.StarLevel >= noOneKeyPutCondis[1])
|
| | | {
|
| | | if(_addonsItemDict[key].config.ItemColor == extraOneKeyPutCondis[0]
|
| | | if (_addonsItemDict[key].config.ItemColor == extraOneKeyPutCondis[0]
|
| | | && _addonsItemDict[key].config.StarLevel == extraOneKeyPutCondis[1])
|
| | | {
|
| | | oneKeyPutlist.Add(_addonsItemDict[key]);
|
| | |
| | | return orderOneKeylist;
|
| | | }
|
| | |
|
| | | public int CompareByOneKeyPut(ItemModel start,ItemModel end)
|
| | | public int CompareByOneKeyPut(ItemModel start, ItemModel end)
|
| | | {
|
| | | int x = start.config.ItemColor;
|
| | | int y = end.config.ItemColor;
|
| | |
| | | return 0;
|
| | | }
|
| | |
|
| | | public int CompareByCondition(ItemModel start,ItemModel end)
|
| | | public int CompareByCondition(ItemModel start, ItemModel end)
|
| | | {
|
| | | int startIsBind = start.isBind;
|
| | | int endIsBind = end.isBind;
|
| | |
| | | }
|
| | | }
|
| | |
|
| | | public event Action<ComposeMatCell,int, SelectItemType> UpdateSelectEvent;
|
| | | public event Action<ComposeMatCell, int, SelectItemType> UpdateSelectEvent;
|
| | | public ComposeMatCell selectMatCell { get; private set; }
|
| | | public void SetSelectMatCell(ComposeMatCell matCell)
|
| | | {
|
| | |
| | | {
|
| | | if (UpdateSelectEvent != null)
|
| | | {
|
| | | UpdateSelectEvent(selectMatCell,itemIndex,selectItem);
|
| | | UpdateSelectEvent(selectMatCell, itemIndex, selectItem);
|
| | | }
|
| | | }
|
| | |
|
| | |
| | | UpdateSelectItemsEvent();
|
| | | }
|
| | | }
|
| | |
|
| | |
|
| | | public void ClearSelectModel()
|
| | | {
|