Exemplo n.º 1
0
        public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
        {
            var md5       = value?.ToString();
            var cardModel = CardUtils.GetCardModel(md5);
            var iconUrl   = cardModel.IconUrl;
            var iconPath  = CardUtils.GetIconPath(cardModel);

            return(File.Exists(iconPath) ? iconPath : iconUrl);
        }
Exemplo n.º 2
0
        public CardDetailVm(string md5)
        {
            var cardModel = CardUtils.GetCardModel(md5);

            CardDetailModels =
                CardUtils.GetImagesDic(cardModel)
                .Select(pair => new CardDetailModel {
                ImageUrl = pair.Key, ImagePath = pair.Value
            })
                .ToList();
        }
Exemplo n.º 3
0
        /// <summary>列表选择</summary>
        private void LvCardPreview_SelectionChanged(object sender, SelectionChangedEventArgs e)
        {
            var previewModel = LvCardPreview.SelectedItem as CardPreviewModel;

            if (null == previewModel)
            {
                return;
            }
            var cardmodel = CardUtils.GetCardModel(previewModel.Number);

            _cardQueryVm.UpdateCardQueryModel(cardmodel);
        }
Exemplo n.º 4
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="md5"></param>
 /// <param name="isUpdate">是否需要从Web更新</param>
 public async void ShowImages(string md5, bool isUpdate)
 {
     await DialogHost.Show(new DialogProgress("数据读取中..."), (object s, DialogOpenedEventArgs e) =>
     {
         var cardModel = CardUtils.GetCardModel(md5);
         GetCardDetailUrls(cardModel, isUpdate).ObserveOnDispatcher().Subscribe(pair =>
         {
             // 满足条件之一则更新数据库:1、数据源是否来自Web 2、是否需要从Web更新
             if (pair.Value || isUpdate)
             {
                 SyncImagesData(pair.Key, cardModel);
                 DataManager.ReFillDataToDataSet(DataManager.DsAllCache, SqlExUtils.GetQueryAllSql(), DataManager.BahamutDbName);
                 CardUtils.InitCardModels(true);
             }
             e.Session.UpdateContent(new CardDetailDialog(md5));
             DownloadImages(cardModel);
         });
     });
 }
Exemplo n.º 5
0
        public void AddCard(int id)
        {
            if (!CheckCard(id))
            {
                return;
            }
            var cardModel = CardUtils.GetCardModel(id);
            var deckModel = new DeckModel
            {
                Id        = id,
                TypeCode  = cardModel.TypeCode,
                CampCode  = cardModel.CampCode,
                Cost      = cardModel.Cost,
                Name      = cardModel.Name,
                ImagePath = CardUtils.GetThumbnailPath(id)
            };

            DeckList.Add(deckModel);
            DeckOrder();
            UpdateChartColumn(DeckStatistical());
            GetTypeCountList();
        }
Exemplo n.º 6
0
        public void UpdateCardModel(string number)
        {
            var cardModel = CardUtils.GetCardModel(number);

            CardDetailModel.CName        = cardModel.CName;
            CardDetailModel.Number       = cardModel.Number;
            CardDetailModel.Type         = cardModel.Type;
            CardDetailModel.RarePath     = Dic.ImgRarePathDic.FirstOrDefault(pair => pair.Key.Equals(cardModel.Rare)).Value;
            CardDetailModel.PowerValue   = cardModel.Power.Equals(-1) ? StringConst.Hyphen : cardModel.Power.ToString();
            CardDetailModel.CostValue    = cardModel.Cost.Equals(-1) ? StringConst.Hyphen : cardModel.Cost.ToString();
            CardDetailModel.Race         = cardModel.Race;
            CardDetailModel.Ability      = cardModel.Ability;
            CardDetailModel.JName        = cardModel.JName;
            CardDetailModel.Pack         = cardModel.Pack;
            CardDetailModel.Illust       = cardModel.Illust;
            CardDetailModel.Lines        = cardModel.Lines;
            CardDetailModel.SignPath     = CardUtils.GetSignPath(cardModel.Sign);
            CardDetailModel.CampPathList = CardUtils.GetCampPathList(cardModel.Camp);
            CardDetailModel.OrigAbility  = cardModel.OrigAbility;
            OnPropertyChanged(nameof(CardDetailModel));
            _cardPictureVm.UpdatePicture(cardModel);
        }
Exemplo n.º 7
0
        public void UpdateCardDetailModel(int id)
        {
            var cardModel        = CardUtils.GetCardModel(id);
            var isFollower       = CardUtils.IsFollower(id);
            var type             = Dic.TypeCodeDic.FirstOrDefault(dic => cardModel.TypeCode == dic.Key).Value;
            var camp             = Dic.CampCodeDic.FirstOrDefault(dic => cardModel.CampCode == dic.Key).Value;
            var rarity           = Dic.RarityCodeDic.FirstOrDefault(dic => cardModel.RarityCode == dic.Key).Value;
            var pack             = Dic.PackCodeDic.FirstOrDefault(dic => cardModel.PackCode == dic.Key).Value;
            var imageCostPath    = Dic.ImageCostDic.FirstOrDefault(dic => cardModel.Cost == dic.Key).Value;
            var imagePathList    = CardUtils.GetPicturePathList(cardModel.Id);
            var imageCurrentPath = imagePathList[0];
            var atk           = isFollower ? cardModel.Atk.ToString() : "";
            var evoAtk        = isFollower ? cardModel.EvoAtk.ToString() : "";
            var life          = isFollower ? cardModel.Life.ToString() : "";
            var evoLife       = isFollower ? cardModel.EvoLife.ToString() : "";
            var imageAtkPath  = isFollower ? PathManager.AtkPath : "";
            var imageLifePath = isFollower ? PathManager.LifePath : "";
            var skillList     = isFollower
                ? JsonUtils.Deserialize <List <string> >(cardModel.SkillJson)
                : new List <string> {
                cardModel.SkillJson
            };
            var flavourList = isFollower
                ? JsonUtils.Deserialize <List <string> >(cardModel.FlavourJosn)
                : new List <string>()
            {
                cardModel.FlavourJosn
            };
            var evoDescriptionList = isFollower
                ? new List <string> {
                "进化前", "进化后"
            }
                : new List <string> {
                "", ""
            };

            CardDetailModel = new CardDetailModel
            {
                Id                 = id,
                Camp               = camp,
                Type               = type,
                Rarity             = rarity,
                Pack               = pack,
                Name               = cardModel.Name,
                Cv                 = cardModel.Cv,
                Atk                = atk,
                EvoAtk             = evoAtk,
                Life               = life,
                EvoLife            = evoLife,
                SkillList          = skillList,
                FlavourList        = flavourList,
                ImagePathList      = imagePathList,
                ImageCurrentPath   = imageCurrentPath,
                EvoDescriptionList = evoDescriptionList,
                BgRarity           = GetBgRarity(cardModel.RarityCode),
                ImageCostPath      = imageCostPath,
                ImageAtkPath       = imageAtkPath,
                ImageLifePath      = imageLifePath,
            };
            OnPropertyChanged(nameof(CardDetailModel));
        }