Esempio n. 1
0
 private int SortByTitleType(NameTitleRecord a1, NameTitleRecord a2)
 {
     if (a2.TitleType.CompareTo(a1.TitleType) != 0)
     {
         return(-(a2.TitleType.CompareTo(a1.TitleType)));
     }
     if (a2.Id.CompareTo(a1.Id) != 0)
     {
         return(-(a2.Id.CompareTo(a1.Id)));
     }
     return(1);
 }
Esempio n. 2
0
    public void SetTitle(NameTitleRecord record, string str, ref bool active)
    {
        for (var i = 0; i < MyLabel.Count; i++)
        {
            if (record.MyLabel[i] == "{AllianceName}")
            {
                if (str == "")
                {
                    active = false;
                    return;
                }
                MyLabel[i].text = str;
            }
            else
            {
                MyLabel[i].text = record.MyLabel[i];
            }

            if (record.MyLabel[i] == "")
            {
                if (MyLabel[i].gameObject.activeSelf)
                {
                    MyLabel[i].gameObject.SetActive(false);
                }
                continue;
            }
            if (!MyLabel[i].gameObject.activeSelf)
            {
                MyLabel[i].gameObject.SetActive(true);
            }

            MyLabel[i].fontSize = record.MyFont[i];
            if (record.MyFontColorA[i] != -1)
            {
                MyLabel[i].gradientTop = GameUtils.GetTableColor(record.MyFontColorA[i]);
            }
            if (record.MyFontColorB[i] != -1)
            {
                MyLabel[i].gradientBottom = GameUtils.GetTableColor(record.MyFontColorB[i]);
            }
            if (record.StrokeColor[i] != -1)
            {
                if (record.EffectType[i] != -1)
                {
                    MyLabel[i].effectStyle = (UILabel.Effect)record.EffectType[i];
                    MyLabel[i].effectColor = GameUtils.GetTableColor(record.StrokeColor[i]);
                }
            }
        }
        for (var i = 0; i < MyPic.Count; i++)
        {
            if (record.PicId[i] != -1)
            {
//                 var tbIcon = Table.GetIcon(record.PicId[i]);
//                 MyPic[i].atlas.name = tbIcon.Atlas;
//                 MyPic[i].spriteName = tbIcon.Sprite;
                GameUtils.SetSpriteIcon(MyPic[i], record.PicId[i]);
                if (!MyPic[i].gameObject.activeSelf)
                {
                    MyPic[i].gameObject.SetActive(true);
                }
            }
            else
            {
                if (MyPic[i].gameObject.activeSelf)
                {
                    MyPic[i].gameObject.SetActive(false);
                }
            }
        }
        if (TitleIndex == 0)
        {
            for (var i = 0; i < MyLabel.Count; i++)
            {
                MyLabel[i].color = BattleColor;
            }
        }
    }
Esempio n. 3
0
        private void OnShopCellClickEvent(IEvent ievent)
        {
            var _e        = ievent as StoreCellClick;
            var _cellData = _e.CellData;
            var _tbStore  = Table.GetStore(_cellData.StoreIndex);

            if (_tbStore == null)
            {
                return;
            }
            var _tbItem = Table.GetItemBase(_tbStore.ItemId);

            if (_tbItem == null)
            {
                return;
            }

            //钻石商店会卖资源,所以特殊处理
            if (DataModel.StoreType != 15 && DataModel.StoreType != 16 && DataModel.StoreType != 1106)
            {
                // 对于普通商店来说 ExData==-1 那么一定 limit == -1   所以替换掉没影响
                // 对于神秘商店来说一定是ExData==-1  如果limit == -1 就是不限购显示最大叠加数 如果limit != -1 超过最大叠加数 显示最大叠加数 不超过显示limit
                // if (cellData.ExData == -1)
                if (_cellData.Limit == -1)
                {
                    DataModel.MaxCount = _tbItem.MaxCount;
                }
                else
                {
                    DataModel.MaxCount = _cellData.Limit > _tbItem.MaxCount ? _tbItem.MaxCount : _cellData.Limit;
                }
            }
            else
            {
                if (_cellData.ExData == -1)
                {
                    DataModel.MaxCount = 99;
                }
                else
                {
                    DataModel.MaxCount = _cellData.Limit > 99 ? 99 : _cellData.Limit;
                }
            }


            if (DataModel.MaxCount == 0)
            {
                //已达到限购数量
                var _e1 = new ShowUIHintBoard(270118);
                EventDispatcher.Instance.DispatchEvent(_e1);
                return;
            }
            DataModel.SelectId   = _cellData.StoreIndex;
            DataModel.HasReplace = false;//每次都重置下

            var tbStore = Table.GetStore(DataModel.SelectId);

            if (null != tbStore)
            {
                var tbCondition = Table.GetConditionTable(tbStore.BuyCondition);
                if (null != tbCondition)
                {
                    var             flagid      = tbCondition.TrueFlag[0];
                    NameTitleRecord tbNameTitle = null;
                    var             nametitleid = 0;
                    Table.ForeachNameTitle(tb =>
                    {
                        if (tb.TitleType == 1)
                        {
                            if (PlayerDataManager.Instance.GetFlag(tb.FlagId))
                            {
                                tbNameTitle = tb;
                            }
                            if (flagid == tb.FlagId)
                            {
                                nametitleid = tb.Id;
                            }
                        }
                        return(true);
                    });
                    if (null == tbNameTitle)
                    {
                        tbNameTitle = Table.GetNameTitle(2000);
                    }
                    if (null != tbNameTitle)
                    {
                        if (tbNameTitle.Id < nametitleid)
                        {
                            DataModel.DescColor = GameUtils.GetTableColor(5);
                            RankCondition       = tbCondition.FlagTrueDict;
                        }
                        else
                        {
                            DataModel.DescColor = GameUtils.GetTableColor(14);
                            RankCondition       = -1;
                        }
                        DataModel.BuyConditionDesc = GameUtils.GetDictionaryText(tbCondition.FlagTrueDict);
                        DataModel.IsShowRank       = true;
                    }
                }
                else
                {
                    DataModel.IsShowRank = false;
                }
            }
            DataModel.SelectCount = 1;
            if (DataModel.StoreType >= 100)
            {
                //装备兑换
                if (_tbStore.NeedItem == -1)
                {
                    DataModel.ReplaceList.Clear();
                    DataModel.ReplaceEquip = emptyBagItemData;
                }
                else
                {
                    var _tbEquip = Table.GetEquipBase(_tbStore.NeedItem);
                    if (_tbEquip == null)
                    {
                        return;
                    }

                    var _list = new List <BagItemDataModel>();
                    PlayerDataManager.Instance.ForeachEquip(equip =>
                    {
                        if (equip.ItemId == _tbStore.NeedItem)
                        {
                            _list.Add(equip);
                        }
                    });
                    DataModel.ReplaceFalg = "";
                    if (_list.Count > 0)
                    {
                        DataModel.ReplaceList  = new ObservableCollection <BagItemDataModel>(_list);
                        DataModel.ReplaceEquip = DataModel.ReplaceList[0];
                        if (_list.Count == 2)
                        {
                            DataModel.HasReplace = true;
                            var _bagType  = DataModel.ReplaceEquip.BagId;
                            var _bagIndex = DataModel.ReplaceEquip.Index;
                            switch ((eBagType)_bagType)
                            {
                            case eBagType.Equip07:
                            {
                                if (_bagIndex == 0)
                                {
                                    DataModel.ReplaceFalg = GameUtils.GetDictionaryText(271002);     //"(左手)";
                                }
                                else
                                {
                                    DataModel.ReplaceFalg = GameUtils.GetDictionaryText(271003);     //"(右手)";
                                }
                            }
                            break;

                            case eBagType.Equip11:
                            {
                                DataModel.ReplaceFalg = GameUtils.GetDictionaryText(271004);     //"(主手)";
                            }
                            break;

                            case eBagType.Equip12:
                            {
                                DataModel.ReplaceFalg = GameUtils.GetDictionaryText(271005);     //"(副手)";
                            }
                            break;
                            }
                        }
                        else
                        {
                            DataModel.HasReplace = false;
                        }
                    }
                    else
                    {
                        DataModel.HasReplace = false;
                        DataModel.ReplaceList.Clear();
                        DataModel.ReplaceEquip = emptyBagItemData;
                    }
                    DataModel.ReplaceIndex = 0;
                }

                if (_tbItem.Type == 2100)
                {
                    DataModel.RoleId = _tbItem.Exdata[1];
                }
                else
                {
                    DataModel.RoleId = -1;
                }
            }
            else
            {
                //普通商店
                //if (tbItem.MaxCount == 1)
                //{
                //    OnClickBuyInfoBuy();
                //}
                //else
                //{
                if (_tbItem.Type == 2100)
                {
                    DataModel.RoleId = _tbItem.Exdata[1];
                }
                else
                {
                    DataModel.RoleId = -1;
                }
                //}
            }
        }