Exemple #1
0
    public void RefreshPanel(PItem data, EquipType type, Dictionary <PItem, int> currentSelect, List <PItem> items)
    {
        this.data = data;
        equipType = type;

        SetPanelVisible(true);
        InitSelectData(currentSelect, items);
        m_dataSource?.SetItems(items);
        m_dataSource?.UpdateItems();
        m_limitIntentifyInfo = moduleEquip.GetLimitIntenInfo(equipType, data.GetIntentyLevel(), data.HasEvolved());
        RefreshDetail();
    }
Exemple #2
0
    private PItemRandomAttr GetContainsAttrByID(PItem target, ushort attrId)
    {
        if (target == null || target.growAttr == null || target.growAttr.runeAttr == null ||
            target.growAttr.runeAttr.randAttrs == null || target.growAttr.runeAttr.randAttrs.Length < 1)
        {
            return(null);
        }

        var attrs = target.growAttr.runeAttr.randAttrs;

        return(Array.Find(attrs, p => p.itemAttrId == attrId));
    }
Exemple #3
0
    private void OnIntentySuccess(PItem tar, PItem lastCache)
    {
        if (tar == null || lastCache == null)
        {
            Logger.LogError("intenty success callback error, tar is {0} last cache is {1}", tar == null ? "error data" : "valid", lastCache == null ? "error data" : "valid");
            return;
        }

        m_intentSuccessPanel.RefreshPanel(tar, lastCache);
        m_intentifyPanel.RefreshPanel(m_data);
        m_intentifyPanel.sendStreng = true;
    }
Exemple #4
0
 void RefreshClickItem(PItem item)
 {
     if (item == null)
     {
         return;
     }
     RefreshBaseRune(item);
     RefreshSuitePanel(item);
     RefreshAttrPanel(item);
     RefreshBtnMessage(item);
     moduleCangku.RemveNewItem(item.itemId);
 }
    private int SublimationCompareHandle(PItem a, PItem b)
    {
        var aDress = moduleEquip.currentDressClothes.Exists(item => item.itemId == a.itemId);
        var bDress = moduleEquip.currentDressClothes.Exists(item => item.itemId == b.itemId);

        if (aDress == bDress)
        {
            return(-DecomposeCompareHandle(a, b));
        }

        return(aDress.CompareTo(bDress));
    }
Exemple #6
0
    private List <PItem> CopyList(List <PItem> target)
    {
        List <PItem> tar = new List <PItem>();

        for (int i = 0; i < target.Count; i++)
        {
            PItem item = null;
            target[i].CopyTo(ref item);
            tar.Add(item);
        }
        return(tar);
    }
    private void SetBaseIndo(PItem info)
    {
        PropItemInfo prop  = ConfigManager.Get <PropItemInfo>(info.itemTypeId);
        int          index = Module_Forging.instance.GetWeaponIndex(prop);

        if (index != -1)
        {
            AtlasHelper.SetShared(m_weaponIcon.gameObject, m_weaponType[index]);
        }

        m_strengLevel.text = "+" + info.growAttr.equipAttr.strength.ToString();
        m_weaponName.text  = prop.itemName;
    }
Exemple #8
0
 void SwitchSubPanel(RuneInWhichPanel panel, PItem item)
 {
     chooseItem.UnInitialize();
     opRune.UnInitialize();
     if (panel == RuneInWhichPanel.Equip)
     {
         chooseItem.Initialize(item);
     }
     else
     {
         opRune.Initialize(panel, item);
     }
 }
Exemple #9
0
    private void OnSetGiftItem(RectTransform node, PItem data)
    {
        if (data == null)
        {
            return;
        }
        var info = ConfigManager.Get <PropItemInfo>(data.itemTypeId);

        Util.SetItemInfo(node, info, 0, (int)data.num, false);
        var select = node.Find("selectBox");

        select.SafeSetActive(moduleGiftDating.curGift != null && moduleGiftDating.curGift.itemId == data.itemId);
    }
    public static List <ushort> GetAllFixedAttributrIds(this PItem data)
    {
        List <ushort> l = new List <ushort>();

        if (!data.InvalidGrowAttr() && data.growAttr.equipAttr.fixedAttrs != null)
        {
            foreach (var item in data.growAttr.equipAttr.fixedAttrs)
            {
                l.Add(item.id);
            }
        }
        return(l);
    }
    private void OnEvolveSuccess(PItem tar, PItem lastCache)
    {
        if (tar == null || lastCache == null)
        {
            Logger.LogError("intenty success callback error, tar is {0} last cache is {1}", tar == null ? "error data" : "valid", lastCache == null ? "error data" : "valid");
            return;
        }

        m_evolveSuccessPanel.RefreshPanel(tar, lastCache);
        m_evolvePanel.RefreshPanel(m_data);
        m_npcNode.SafeSetActive(false);
        m_evolvePanel.SendEvolve = true;
    }
Exemple #12
0
    private void SetDataClick(RectTransform rt, PItem info)
    {
        if (info == null)
        {
            return;
        }
        moduleCangku.RemveNewItem(info.itemId);
        Image news = rt.Find("new").GetComponent <Image>();

        news.gameObject.SetActive(false);
        moduleCangku.m_detailItem = info;
        ShowAsync <Window_Equipinfo>();
    }
        public ContentViewModel NewContent(object parameter)
        {
            var vm    = VEFModule.UnityContainer.Resolve(typeof(SceneViewModel), "") as SceneViewModel;
            var model = VEFModule.UnityContainer.Resolve(typeof(SceneDataModel), "") as SceneDataModel;
            var view  = VEFModule.UnityContainer.Resolve(typeof(SceneView), "") as SceneView;

            //Model details
            _loggerService.Log("Creating a new simple file using SceneHandler", LogCategory.Info, LogPriority.Low);

            //Clear the undo stack
            //   model.Document.UndoStack.ClearAll();

            //Set the model and view
            vm.SetModel(model);
            vm.SetView(view);
            vm.Title = "Scene New";
            (vm.View as UserControl).DataContext = model;
            vm.SetHandler(this);
            model.SetDirty(true);

            model.SetLocation("SceneID:##:");

            IProjectTreeService pfExplorerService = VEFModule.UnityContainer.Resolve(typeof(IProjectTreeService), "") as IProjectTreeService;
            ISceneService       sceneService      = VEFModule.UnityContainer.Resolve(typeof(ISceneService), "") as ISceneService;

            PItem parent = null;

            if (pfExplorerService.SelectedItem != null)
            {
                parent = pfExplorerService.SelectedItem;
            }

            SceneDataModel newScene = new SceneDataModel()
            {
                Name = "Scene NEW", ContentID = "SceneID:##:"
            };

            newScene.Parent = parent;

            if (pfExplorerService.SelectedItem != null)
            {
                pfExplorerService.SelectedItem.Items.Add(newScene);
            }

            sceneService.Scenes.Add(newScene);
            //  sceneService.SelectedScene = newScene;
            newScene.Open(-1);


            return(vm);
        }
Exemple #14
0
    private void OnDescBtnClick(GameObject sender)
    {
        GameObject obj  = sender.transform.parent.gameObject;
        PItem      item = m_cacheItems.Get(obj);

        if (item == null || !m_matList.ContainsKey(item))
        {
            return;
        }

        m_matList[item]--;
        UpdateSelectCount(obj, m_matList[item]);
        RefreshDetail();
    }
Exemple #15
0
    public int GetNewLv(PItem item, uint expTotal = 0)
    {
        if (item == null || item.growAttr == null || item.growAttr.runeAttr == null)
        {
            return(0);
        }
        if (expTotal == 0)
        {
            return(item.growAttr.runeAttr.level);
        }

        int lv = 0;
        List <LevelExpInfo> expList = null;

        if (m_newExpInfo.ContainsKey(item.itemTypeId))
        {
            expList = m_newExpInfo[item.itemTypeId];
        }
        else
        {
            expList = m_expInfo;
        }

        var maxLv  = GetCurMaxLv(item.growAttr.runeAttr.star);
        var max    = expList.Find(p => p.ID == maxLv);
        var maxExp = max != null ? max.exp : 0;

        var _exp = expList.Find(p => p.ID == item.growAttr.runeAttr.level);

        if (_exp == null)
        {
            return(0);
        }
        expTotal = item.growAttr.runeAttr.expr + _exp.exp + expTotal;

        if (expTotal >= maxExp)
        {
            lv = maxLv;
        }
        else
        {
            var exp = expList.FindAll(p => expTotal >= p.exp);
            if (exp != null && exp.Count > 0)
            {
                lv = exp[exp.Count - 1].ID;
            }
        }

        return(lv < 0 ? 0 : lv);
    }
Exemple #16
0
    void RefreshBtnMessage(PItem item)
    {
        if (item == null)
        {
            return;
        }
        var isEquip = moduleRune.IsEquip(item);

        Util.SetText(btnText, isEquip ? Util.GetString((int)TextForMatType.RuneUIText, 17) : Util.GetString((int)TextForMatType.RuneUIText, 18));

        equipBtn.SafeSetActive(true);
        equipBtn.onClick.RemoveAllListeners();
        equipBtn.onClick.AddListener(() => OnChangeRune(item, !isEquip));
    }
    public WareType GetWareType(PItem item)
    {
        if (item == null)
        {
            return(WareType.None);
        }
        var info = item?.GetPropItem();

        if (!info)
        {
            return(WareType.None);
        }
        return((WareType)info.lableType);
    }
    public bool IsSublimationMax(PItem currentItem)
    {
        if (null == currentItem)
        {
            return(false);
        }
        var suitInfo = ConfigManager.Get <SuitInfo>(currentItem.growAttr?.suitId ?? 0);

        if (null == suitInfo)
        {
            return(false);
        }
        return(!Array.Exists(suitInfo.nextSuitId, suitId => suitId > 0));
    }
Exemple #19
0
    public static PetInfo Create(PItem item)
    {
        var cInfo = ConfigManager.Get <PropItemInfo>(item.itemTypeId);

        if (cInfo == null)
        {
            Logger.LogError("未能找到宠物{0}的相关配置。请策划检查", item.itemTypeId);
            return(null);
        }
        var pet = Create(cInfo);

        pet.InitData(item);
        return(pet);
    }
Exemple #20
0
 public void InitData(PItem rInfo)
 {
     ItemID = rInfo.itemId;
     rInfo.CopyTo(ref Item);
     //Item = rInfo;
     if (rInfo.growAttr?.petAttr != null)
     {
         Grade     = rInfo.growAttr.petAttr.grade;
         Level     = rInfo.growAttr.petAttr.level;
         Exp       = rInfo.growAttr.petAttr.exp;
         MoodValue = rInfo.growAttr.petAttr.moodValue;
         Status    = rInfo.growAttr.petAttr.status;
     }
 }
Exemple #21
0
    private void OnSetRuneData(RectTransform node, PItem data)
    {
        if (data == null || data.growAttr == null || data.growAttr.runeAttr == null)
        {
            return;
        }
        var prop = ConfigManager.Get <PropItemInfo>(data.itemTypeId);

        if (prop == null)
        {
            return;
        }
        Util.SetItemInfo(node, prop, data.growAttr.runeAttr.level, 0, true, data.growAttr.runeAttr.star);

        var lockImg = node.Find("lock");

        lockImg.SafeSetActive(data.isLock == 1);
        var select = node.Find("selectBox");

        select.SafeSetActive(data.itemId == curItem.itemId);
        var max = node.Find("levelmax");

        max.SafeSetActive(moduleRune.IsMaxLv(data.growAttr.runeAttr.level));
        var equip = node.Find("get");

        equip.SafeSetActive(moduleRune.IsEquip(data));
        var equipText = node.Find("get/Text")?.GetComponent <Text>();

        if (equipText)
        {
            equipText.color = moduleRune.GetCurQualityColor(GeneralConfigInfo.defaultConfig.qualitys, data.growAttr.runeAttr.star);
        }
        Util.SetText(equipText, (int)TextForMatType.RuneUIText, 48);
        var mark = node.Find("mark");

        mark.SafeSetActive(false);
        var mask = node.Find("mask");

        mask.SafeSetActive(false);

        if (data.itemId == curItem.itemId)
        {
            RefreshClickItem(data);
        }
        var  newProp = node.Find("new");
        bool isNew   = moduleCangku.NewsProp(data.itemId);

        newProp.SafeSetActive(isNew);
    }
Exemple #22
0
    void RefreshRune(PItem item)
    {
        runeIcon.SafeSetActive(item != null);
        if (item == null)
        {
            return;
        }
        var prop = ConfigManager.Get <PropItemInfo>(item.itemTypeId);

        if (prop == null || prop.mesh == null || prop.mesh.Length < 2)
        {
            return;
        }
        UIDynamicImage.LoadImage(runeIcon?.transform, prop.mesh[1]);
    }
    public void Bind(PItem pItem, PropItemInfo configItem)
    {
        ItemCache = pItem;
        PropItem  = configItem;
        if (pItem == null)
        {
            numberText.text = "0";
        }
        else
        {
            numberText.text = pItem.num.ToString();
        }

        transform.SetGray(pItem == null);
    }
Exemple #24
0
    private bool Contains(List <PItem> items, PItem target)
    {
        if (target == null || items == null)
        {
            return(true);
        }
        if (items.Count < 1)
        {
            return(false);
        }

        var contains = items.Find(p => p.itemId == target.itemId);

        return(contains != null);
    }
Exemple #25
0
    public override bool UnInitialize(bool hide = true)
    {
        if (!base.UnInitialize(hide))
        {
            return(false);
        }

        expTotal     = 0;
        curItem      = null;
        swallowedExp = 0;
        moduleRune.swallowedIdList.Clear();
        moduleRune.evolveList.Clear();
        beforeItem = null;
        return(false);
    }
Exemple #26
0
    void _Packet(ScRoleAddItem p)
    {
        PropItemInfo info = ConfigManager.Get <PropItemInfo>(p.itemTypeId);

        if (info == null || info.itemType != PropType.Rune)
        {
            return;
        }

        PItem pitem = moduleEquip.GetNewPItem(p.itemId, p.itemTypeId);

        pitem.growAttr = p.growAttr;
        pitem.num      = (ushort)p.num;
        AddNewRune(pitem);
    }
    public static double GetFixedAttirbute(this PItem data, int id)
    {
        if (!data.InvalidGrowAttr() && data.growAttr.equipAttr.fixedAttrs != null)
        {
            foreach (var item in data.growAttr.equipAttr.fixedAttrs)
            {
                if (item.id == id)
                {
                    return(item.value);
                }
            }
        }

        return(0);
    }
 public void copyParentFeatures()
 {
     this.multiset = ParentKPInstance.Multiset.Clone();
     PItem.CopyProperties(ParentKPInstance, this);
     LabelledPItem.CopyLabels(ParentKPInstance, this);
     this.Connections = ParentKPInstance.Connections;
     //add itself to connection list of target instances
     foreach (MInstance targetInstance in Connections)
     {
         if (!targetInstance.Connections.Contains(this))
         {
             targetInstance.Connections.Add(this);
         }
     }
 }
Exemple #29
0
    public static Dictionary <PItem, int> GetValidPItems(List <PItem> exps, uint totalExp)
    {
        Dictionary <PItem, int> dic   = new Dictionary <PItem, int>();
        List <IExp>             iexps = GetValidExps(GetExpsList(exps), totalExp);

        foreach (var e in iexps)
        {
            PItem item = exps.Find(o => o.itemTypeId == ((PropItemInfo)e).ID);
            if (!dic.ContainsKey(item))
            {
                dic.Add(item, e.useNum);
            }
        }
        return(dic);
    }
Exemple #30
0
        public ContentViewModel NewContent(object parameter)
        {
            var vm    = VEFModule.UnityContainer.Resolve(typeof(AtlasViewModel), "") as AtlasViewModel;
            var model = VEFModule.UnityContainer.Resolve(typeof(AtlasModel), "") as AtlasModel;
            var view  = VEFModule.UnityContainer.Resolve(typeof(AtlasView), "") as AtlasView;

            //Model details
            _loggerService.Log("Creating a new simple file using AtlasHandler", LogCategory.Info, LogPriority.Low);

            //Clear the undo stack
            //   model.Document.UndoStack.ClearAll();

            //Set the model and view
            vm.SetModel(model);
            vm.SetView(view);
            vm.Title = "Atlas";
            (vm.View as UserControl).DataContext = model;
            vm.SetHandler(this);
            model.SetDirty(true);

            model.SetLocation("AtlasID:##:");

            IProjectTreeService pfExplorerService = VEFModule.UnityContainer.Resolve(typeof(IProjectTreeService), "") as IProjectTreeService;
            IAtlasService       AtlasService      = VEFModule.UnityContainer.Resolve(typeof(IAtlasService), "") as IAtlasService;

            PItem parent = null;

            if (pfExplorerService.SelectedItem != null)
            {
                parent = pfExplorerService.SelectedItem;
            }

            AtlasModel newAtlas = new AtlasModel();

            newAtlas.Parent = parent;

            if (pfExplorerService.SelectedItem != null)
            {
                pfExplorerService.SelectedItem.Items.Add(newAtlas);
            }

            AtlasService.Atlass.Add(newAtlas);
            //  AtlasService.SelectedAtlas = newAtlas;
            newAtlas.Open(-1);


            return(vm);
        }
    public void AddItem(PItem item)
    {
        if (ItemList == null)
        {
            ItemList = new List<PItem>();
        }

        ItemList.Add(item);
    }
    public void LV_List_OnItemDataBound(object sender, ListViewItemEventArgs e)
    {
        Orders boundOrder = (Orders)((ListViewDataItem)(e.Item)).DataItem;

        PFlow flow = new PFlow();
        flowQueue.Enqueue(flow);

        flow.FlowCode = boundOrder.Flow.Code;
        flow.PartyFrom = boundOrder.Flow.PartyFrom;

        foreach (ItemFlow itemFlow in boundOrder.ItemFlows)
        {
            IList<string> orderedPOList = new List<string>();
            PItem item = new PItem();
            item.Code = itemFlow.Item;
            Item i = TheItemMgr.LoadItem(item.Code);
            item.Desc = i.Desc1;
            item.Spec = i.Spec;

            var demand = itemFlow.OrderTracers.Where(o => o.TracerType == LeanEngine.Utility.Enumerators.TracerType.Demand).ToList();
            if (demand.Count != null && demand.Count > 0)
            {
                item.SaveStock = demand[0].Qty;
            }

            var onhandInv = itemFlow.OrderTracers.Where(o => o.TracerType == LeanEngine.Utility.Enumerators.TracerType.OnhandInv).ToList();
            if (onhandInv.Count != null && onhandInv.Count > 0)
            {
                item.Inventory = onhandInv[0].Qty;
            }

            var orderIss = itemFlow.OrderTracers.Where(o => o.TracerType == LeanEngine.Utility.Enumerators.TracerType.OrderIss).ToList();
            if (orderIss != null && orderIss.Count > 0)
            {
                foreach (OrderTracer ot in orderIss)
                {
                    string hql = @"select od from OrderDetail od inner join od.OrderHead oh where od.Item.Code = ? and oh.OrderNo = ? '";

                    IList<OrderDetail> orderDetailList = this.TheCriteriaMgr.FindAllWithHql<OrderDetail>(hql, new object[] { ot.Item, ot.Code });

                    if (orderDetailList != null && orderDetailList.Count > 0)
                    {
                        OrderDetail orderDetail = orderDetailList[0];
                        OrderHead orderHead = orderDetail.OrderHead;
                        POrder pOrder = new POrder();

                        pOrder.OrderNo = orderHead.OrderNo;
                        pOrder.CustomerCode = orderHead.PartyTo.Code;
                        pOrder.CustomerName = orderHead.PartyTo.Name;
                        pOrder.NeedPrepayment = orderHead.PartyTo.BoolField1.HasValue ? orderHead.PartyTo.BoolField1.Value : false;
                        pOrder.HasPrepayed = orderHead.BoolField1;
                        pOrder.RequiredQty = orderDetail.OrderedQty;
                        pOrder.ShippedQty = orderDetail.ShippedQty.HasValue ? orderDetail.ShippedQty.Value : 0;
                        pOrder.DeliverDate = orderHead.WindowTime;


                        hql = @"select oh.OrderNo, ot.Qty from OrderTracer as ot, OrderLocationTransaction as olt inner join olt.OrderDetail as od inner join od.OrderHead as oh where olt.Id = ot.RefOrderLocTransId and ot.OrderDetail.Id = ?";
                        IList<object[]> qtyList = this.TheCriteriaMgr.FindAllWithHql<object[]>(hql, new object[] { orderDetail.Id });
                        if (qtyList != null && qtyList.Count > 0)
                        {
                            foreach (object[] obj in qtyList)
                            {
                                orderedPOList.Add((string)obj[0]);
                                pOrder.OrderedQty += (decimal)obj[1];
                            }
                        }
                        else
                        {
                            pOrder.OrderedQty = 0;
                        }

                        if (pOrder.RequiredQty > pOrder.ShippedQty && pOrder.RequiredQty > pOrder.OrderedQty)
                        {
                            item.AddOrder(pOrder);
                        }
                    }
                }
            }

            var orderRct = itemFlow.OrderTracers.Where(o => o.TracerType == LeanEngine.Utility.Enumerators.TracerType.OrderRct).ToList();
            if (orderRct != null && orderRct.Count > 0)
            {
                foreach (OrderTracer ot in orderRct)
                {
                    if (!orderedPOList.Contains(ot.Code))
                    {
                        item.OrderedQty += ot.Qty;
                    }
                }
            }

            if ((item.OrderList != null && item.OrderList.Count > 0) || (item.SaveStock > (item.Inventory + item.OrderedQty)))
            {
                flow.AddItem(item);
            }
        }
    }