Exemplo n.º 1
0
        /// <summary>
        /// 更新模板消息配置
        /// </summary>
        /// <typeparam name="T"></typeparam>
        /// <param name="pT"></param>
        /// <param name="pMediaID"></param>
        public void UpdateCardData(string exa)
        {
            this.ExecuteTryCatch(() =>
            {
                CardContent pCard = new CardContent();
                string pMediaID   = string.Empty;

                if (exa == "1")
                {
                    pCard    = Example1();
                    pMediaID = "0";
                }
                else if (exa == "2")
                {
                    pCard    = Example2();
                    pMediaID = "99999";
                }
                else
                {
                    return;
                }

                base.UpdateResources <CardContent>(m_strTargetType, pMediaID, pCard);
            });
        }
Exemplo n.º 2
0
        /// <summary>
        /// 生成测试数据——临时
        /// </summary>
        /// <returns></returns>
        private CardContent Example1()
        {
            string      pMediaID = "0";
            CardContent pCard    = new CardContent();

            pCard.CardID       = 1;
            pCard.ImgPath      = "/Images/common/会员卡示例.png";
            pCard.MediaID      = pMediaID;
            pCard.ListCardInfo = new List <CardContent.CContent>();

            CardContent.CContent pContent = new CardContent.CContent();
            pContent.Title   = "會員特權";
            pContent.Content = "<p>1、會員尊享[[Deposit]]折優惠</p><p>2、持本卡可領取會員特有優惠券或代金券</p><p>3、持本卡买苹果送IPhone 6 Plus</p>";
            pContent.Desc    = "會員金卡";
            pCard.ListCardInfo.Add(pContent);

            pContent         = new CardContent.CContent();
            pContent.Title   = "開卡即送";
            pContent.Content = "<p>開卡送大禮:[[Integral]]積分</p><p>領卡送大禮!立即獲得[[Integral]]個積分參與活動</p>";
            pContent.Desc    = "";
            pCard.ListCardInfo.Add(pContent);

            pContent         = new CardContent.CContent();
            pContent.Title   = "聖誕優惠活動";
            pContent.Content = "<img src='http://img10.3lian.com/sc6/show/02/03/20101222225310238.jpg' /><p>聖誕送優惠券滿100减10元</p>";
            pContent.Desc    = "";
            pCard.ListCardInfo.Add(pContent);

            return(pCard);
        }
Exemplo n.º 3
0
        public bool TestCardContents()
        {
            this.WaitTilIsVisible();
            if (CardHeader.IsDisplayed() && CardTitle.IsDisplayed() && CardSubTitle.IsDisplayed() && CardContent.IsDisplayed() && CardActions.IsDisplayed())
            {
                return(true);
            }
            else
            {
                if (!CardHeader.WaitTilIsVisible())
                {
                    BRLogger.LogInfo("Card Header is not available");
                }
                if (!CardTitle.WaitTilIsVisible())
                {
                    BRLogger.LogInfo("Card Title is not available");
                }
                if (!CardSubTitle.WaitTilIsVisible())
                {
                    BRLogger.LogInfo("Card Subtitle is not available");
                }
                if (!CardContent.WaitTilIsVisible())
                {
                    BRLogger.LogInfo("Card Content is not available");
                }
                if (!CardActions.WaitTilIsVisible())
                {
                    BRLogger.LogInfo("Card Action/s is not available");
                }

                return(false);
            }
        }
Exemplo n.º 4
0
 /// <summary>
 /// 移除一张卡牌
 /// </summary>
 /// <param name="card"></param>
 public void RemoveCard(CardContent card)
 {
     if (Deck.Contains(card))
     {
         Deck.Remove(card);
     }
 }
Exemplo n.º 5
0
        private Card SpawnCard(Vector2 position, CardContent contentPrefab)
        {
            var card = Instantiate(cardPrefab, position, Quaternion.identity);

            card.transform.position = position;
            card.Content            = contentPrefab.GetInstance(card);
            return(card);
        }
Exemplo n.º 6
0
 public void ReceiveEvent(OptionSource option)
 {
     this.option  = option;
     canUseFlag   = true;
     selectedCard = null;
     targetCard   = null;
     OpenCraft(CraftMode.Upgrade);
 }
Exemplo n.º 7
0
 /// <summary>
 /// 接收传来的事件
 /// </summary>
 /// <param name="_event"></param>
 public void ReceiveEvent(CraftRoomEvent _event)
 {
     roomEvent    = _event;
     canUseFlag   = true;
     selectedCard = null;
     targetCard   = null;
     OpenCraft(CraftMode.Upgrade);
 }
Exemplo n.º 8
0
 public bool TestCardContentText(string cardContent)
 {
     if (CardContent.Text().Contains(cardContent))
     {
         return(true);
     }
     else
     {
         return(false);
     }
 }
Exemplo n.º 9
0
    public void OnDeckBtnClick()
    {
        GameObject         go     = Instantiate(DeckInformationUI, transform.parent);
        List <CardContent> ccList = new List <CardContent>();

        foreach (CardSource cs in selectedCharacter.Deck)
        {
            CardContent cc = cs.GenerateCard();
            ccList.Add(cc);
        }
        go.GetComponent <DeckInformationUI>().LoadDeckInfomation(ccList);
    }
Exemplo n.º 10
0
        /// <summary>
        /// 通过微信用户OpenID获取用户拥有的会员卡模板集合
        /// </summary>
        /// <param name="OpenID"></param>
        /// <returns></returns>
        public List <CardContent> GetMemberCard(string OpenID)
        {
            //获取会员卡初始数据模板
            List <CardContent> pListCards = GetMemberCardTemplate(OpenID);

            //如果微信用户不是会员,没有模板,则回复推广消息,由于暂时没有推广功能,暂时写死内容-林子聪-20141215
            if (pListCards == null || pListCards.Count == 0)
            {
                CardContent pCard = new CardContent();

                pCard.ListCardInfo = new List <CardContent.CContent>();
                CardContent.CContent pCardContent = new CardContent.CContent();
                pCardContent.Title     = "会员特权";
                pCardContent.ContentID = string.Empty;
                pCardContent.Content   = "测试内容";
                pCard.ListCardInfo.Add(pCardContent);

                pListCards = new List <CardContent>();
                pListCards.Add(pCard);
                return(pListCards);
            }
            else
            {
                //暂时不考虑定制化服务问题,直接返回结果
                CustomService pCService = new CustomService();
                Hashtable     hsParam   = new Hashtable();


                //判断是否具有资源
                if (pCService.IsReady)
                {
                    foreach (CardContent pCard in pListCards)
                    {
                        //添加服务参数,微信用户OPENID及会员卡类型编码
                        hsParam.Add(CustomParameters.OPENID, OpenID);
                        hsParam.Add(CustomParameters.CARDTYPE, pCard.CardID);

                        if (pCard.ListCardInfo == null || pCard.ListCardInfo.Count == 0)
                        {
                            continue;
                        }
                        foreach (CardContent.CContent pContent in pCard.ListCardInfo)
                        {
                            if (pContent.Content.Contains("[[") && pContent.Content.Contains("]]"))
                            {
                                pContent.Content = pCService.ExcuteCService(pContent.Content, hsParam);
                            }
                        }
                    }
                }
            }
            return(pListCards);
        }
Exemplo n.º 11
0
    public void OnDeckBtnClick()
    {
        GameObject         go      = Instantiate(DeckInformationUI, transform.parent);
        ChooseStatus       mStatus = SceneStatusManager.Ins.current as ChooseStatus;
        List <CardContent> ccList  = new List <CardContent>();

        foreach (CardSource cs in mStatus.cc.Deck)
        {
            CardContent cc = cs.GenerateCard();
            ccList.Add(cc);
        }
        go.GetComponent <DeckInformationUI>().LoadDeckInfomation(ccList);
    }
Exemplo n.º 12
0
 /// <summary>
 /// 无消耗升级一张牌
 /// </summary>
 public void UpgradeCardWithoutCost()
 {
     if (canUseFlag && selectedCard != null && targetCard != null)
     {
         CardContent cc = targetCard.GenerateCard();
         CharacterInDungeon.Ins.ChangeCard(selectedCard, cc);
         canUseFlag = false;
         LeaveCraft();
     }
     else
     {
         Debug.Log("已经升级过一次无法再升了");
     }
 }
Exemplo n.º 13
0
 /// <summary>
 /// 升级一张牌
 /// </summary>
 public void UpgradeCard()
 {
     if (canUseFlag && selectedCard != null && targetCard != null)
     {
         CardContent cc = targetCard.GenerateCard();
         CharacterInDungeon.Ins.ChangeCard(selectedCard, cc);
         DungeonManager.Ins.DecreaseDataFrag(targetCard.GetCost(DungeonManager.Ins.Discount_For_UpgradeCard));
         canUseFlag = false;
         LeaveCraft();
     }
     else
     {
         Debug.Log("已经升级过一次无法再升了");
     }
 }
Exemplo n.º 14
0
 public void ShowUpgradeList(CardContent cc)
 {
     //进行重置
     UpgradePanel.SetActive(true);
     foreach (Transform tf in UpgradeCardPos)
     {
         Destroy(tf.gameObject);
     }
     foreach (Transform tf in UpgradeChooseListPos)
     {
         Destroy(tf.gameObject);
     }
     ReturnBtn.ResetFillBg();
     //显示选中卡牌信息
     {
         GameObject go = Instantiate(CardPrefab, UpgradeCardPos);
         go.GetComponent <CraftableCardUI>().SetCard(cc, false, false);
     }
     //显示升级分支信息
     foreach (CardSource cs in cc.owner.upgradeList)
     {
         CardContent cardcontent = cs.GenerateCard();
         GameObject  go          = Instantiate(CardPrefab, UpgradeChooseListPos);
         go.GetComponent <CraftableCardUI>().SetCard(cardcontent, true, false);
         GameObject price = Instantiate(PriceLabel, go.transform);
         //判断是否有足够的金钱来显示不同的字体颜色
         string colorString;
         if (DungeonManager.Ins.dataFrag.count > cs.upgradeCost)
         {
             colorString = ColorUtility.ToHtmlStringRGB(Enough);
         }
         else
         {
             colorString = ColorUtility.ToHtmlStringRGB(Unenough);
         }
         price.GetComponentInChildren <Text>().text = "データ欠片<color=#" + colorString + ">" + cs.GetCost(DungeonManager.Ins.Discount_For_UpgradeCard) + "</color>";
         go.GetComponent <Button>().onClick.AddListener(delegate()
         {
             //CraftManager.Ins.SetTargetCard(cs);
             OnCardSelected(go.GetComponent <CraftableCardUI>(), cs);
         });
     }
 }
Exemplo n.º 15
0
    /// <summary>
    /// 将战斗结果返回
    /// </summary>
    /// <param name="information"></param>
    //TODO
    public void DealWithBattleResult(PassedResultInformation information)
    {
        Enable();
        currentEvent.Finished();

        if (information.win)
        {
            CharacterInDungeon.Ins.currentHp = information.currentHp;
            //处理资源奖励信息
            foreach (ItemSourceAndCount reward in information.resourceReward)
            {
                switch (reward.item.id)
                {
                case 201:
                    DungeonManager.Ins.dataFrag.count += reward.count;
                    break;

                case 202:
                    CharacterInDungeon.Ins.GainExp(reward.count);
                    break;
                }
            }
            //处理卡牌信息
            foreach (CardSource cs in information.cardSourceRward)
            {
                CardContent cc = cs.GenerateCard();
                CharacterInDungeon.Ins.JoinCard(cc);
            }
            foreach (Talent t in CharacterInDungeon.Ins.activeTalents)
            {
                t.OnBattleEnd();
            }
            if (information.option != null)
            {
                information.option.AfterBattleEffect();
            }
            DungeonUI.RefreshUI();
        }
        else
        {
            LeaveDungeon();
        }
    }
Exemplo n.º 16
0
    /// <summary>
    /// 显示单张卡牌的放大详情
    /// </summary>
    /// <param name="cc"></param>
    public void ShowCardDetail(CardContent cc)
    {
        //进行界面的重置
        CardDetailPanel.SetActive(true);
        PrevBtn.gameObject.SetActive(true);
        NextBtn.gameObject.SetActive(true);
        PrevBtn.onClick.RemoveAllListeners();
        NextBtn.onClick.RemoveAllListeners();
        foreach (Transform tf in CardDetailPos)
        {
            Destroy(tf.gameObject);
        }

        //刷新界面
        GameObject go = Instantiate(CardPrefab, CardDetailPos);

        go.GetComponent <CraftableCardUI>().SetCard(cc, false, false);

        //绑定Prev按钮事件
        if (cardContents.IndexOf(cc) == 0)
        {
            PrevBtn.gameObject.SetActive(false);
        }
        else
        {
            PrevBtn.onClick.AddListener(delegate() {
                ShowCardDetail(cardContents[cardContents.IndexOf(cc) - 1]);
            });
        }

        //绑定Next按钮事件
        if (cardContents.IndexOf(cc) == cardContents.Count - 1)
        {
            NextBtn.gameObject.SetActive(false);
        }
        else
        {
            NextBtn.onClick.AddListener(delegate() {
                ShowCardDetail(cardContents[cardContents.IndexOf(cc) + 1]);
            });
        }
    }
Exemplo n.º 17
0
        private bool FieldsAreFilled(CardContent cardToCheck)
        {
            var type    = cardToCheck.GetType();
            var counter = 0;

            foreach (var property in type.GetProperties())
            {
                if (property.GetValue(cardToCheck) == null)
                {
                    counter++;
                }
            }

            if (counter == type.GetProperties().Length)
            {
                return(false);
            }

            return(true);
        }
Exemplo n.º 18
0
 public void ShowCardChoosePanel(List <CardSource> cardSources)
 {
     CUIList = new List <CraftableCardUI>();
     cardChoosePanel.SetActive(true);
     foreach (CardSource cs in cardSources)
     {
         CardContent     cc  = cs.GenerateCard();
         GameObject      go  = Instantiate(cardPrefab, cardChooseList.transform);
         CraftableCardUI CUI = go.GetComponent <CraftableCardUI>();
         CUI.SetCard(cc, true, false);
         CUIList.Add(CUI);
         go.GetComponent <Button>().onClick.AddListener(delegate {
             OnCardSelected(CUI, cs);
         });
         // Toggle toggle = go.AddComponent<Toggle>();
         // toggle.group = cardChooseList;
         // toggle.isOn = false;
         // toggle.onValueChanged.AddListener((bool value) => OnCardSelected(cs,go,value));
     }
 }
Exemplo n.º 19
0
        /// <summary>
        /// 生成测试数据——临时
        /// </summary>
        /// <returns></returns>
        private CardContent Example2()
        {
            string strCOntent = "<div data-am-widget='intro' class='am-intro am-cf am-intro-default'><div class='am-intro-hd'><h2 class='am-intro-title'>Info</h2><a class='am-intro-more am-intro-more-top' href='#more'>更多细节</a></div><div class='am-g am-intro-bd'><div class='am-intro-left am-u-sm-5'><img src='http://i.static.amazeui.org/assets/i/cpts/intro/WP_Cortana_China.png'alt='小娜' /></div><div class='am-intro-right am-u-sm-7'><p>XXXXX电子会员卡,随时申请随时使用</p><p>10秒快速申请,填写电邮地址,即可免费申请XXX尊享会员卡</p><p>凭卡用戶可享受积分返点或折扣优惠;畅享会员专属优惠活动、赠书、免费试吃、免费菜品;定期获得各种商家优惠券</p><br /><p style='font-size: 24px'>急不及待<button onclick='ScrollToBottom()' class='am-btn am-btn-success' data-am-popover='{content: '填写认证立即领取会员卡', trigger: 'hover focus'}'>马上领取</button></p></div></div><img src='http://e.ims.365imgs.cn/e/3/bc/218814.jpg' /></div>";

            string      pMediaID = "99999";
            CardContent pCard    = new CardContent();

            pCard.CardID       = 99;
            pCard.ImgPath      = "/Images/common/会员卡示例.png";
            pCard.MediaID      = pMediaID;
            pCard.ListCardInfo = new List <CardContent.CContent>();

            CardContent.CContent pContent = new CardContent.CContent();
            pContent.Title   = "開卡即送";
            pContent.Content = strCOntent;
            pContent.Desc    = "";
            pCard.ListCardInfo.Add(pContent);

            return(pCard);
        }
Exemplo n.º 20
0
        private bool FieldsAreFilled(CardContent cardToCheck)
        {
            var type    = cardToCheck.GetType();
            var counter = 0;

            foreach (var property in type.GetProperties())
            {
                if (string.IsNullOrWhiteSpace((string)property.GetValue(cardToCheck).ToString()) ||
                    string.IsNullOrEmpty((string)property.GetValue(cardToCheck).ToString()))
                {
                    counter++;
                }
            }

            if (counter == type.GetProperties().Length)
            {
                return(false);
            }

            return(true);
        }
Exemplo n.º 21
0
 /// <summary>
 /// 清空选中牌与目标牌
 /// </summary>
 public void ClearChoose()
 {
     selectedCard = null;
     targetCard   = null;
 }
Exemplo n.º 22
0
 /// <summary>
 /// 将一张牌选为被选中牌
 /// </summary>
 /// <param name="cc"></param>
 public void SetSelectedCard(CardContent cc)
 {
     selectedCard = cc;
 }
Exemplo n.º 23
0
        public static CardData[] ToCardDatas(SpellItem spell)
        {
            var cardDatas = new List <CardData>();
            var cardData  = ToBaseCardData(spell);

            var contents = new List <CardContent>();

            contents.AddRange(new CardContent[]
            {
                //new SubtitleCardContent(spell.LevelType),
                new RuleCardContent(),
                new PropertyCardContent("Durée d'incantation", spell.CastingTime),
                new PropertyCardContent("Portée", spell.Range),
                new PropertyCardContent("Composantes", spell.Components),
                new PropertyCardContent("Durée", spell.Duration),
                new RuleCardContent(),
                //new FillCardContent(1),
                //new TextCardContent(spell.DescriptionText),
            });
            var description = ToContents(null); // spell.DescriptionDiv.SelectSingleNode("div"));

            foreach (var line in description)
            {
                int size = contents.Sum(cc => cc.Height);
                if (line.Height == 0)
                {
                }
                else if (size + line.Height <= 295)
                {
                    contents.Add(line);
                }
                else
                {
                    CardContent section = null;
                    if (contents.LastOrDefault() is SectionCardContent)
                    {
                        section = contents.LastOrDefault();
                        contents.RemoveAt(contents.Count - 1);
                    }
                    cardData.Contents = contents.ToArray();
                    cardDatas.Add(cardData);

                    cardData = ToBaseCardData(spell);
                    contents = new List <CardContent>();
                    if (section != null)
                    {
                        contents.Add(section);
                    }
                    contents.Add(line);
                }
            }
            cardData.Contents = contents.ToArray();
            cardDatas.Add(cardData);

            if (cardDatas.Count > 1)
            {
                for (int i = 0; i < cardDatas.Count; i++)
                {
                    cardDatas[i].Title += string.Format(" ({0}/{1})", i + 1, cardDatas.Count);
                }
            }
            return(cardDatas.ToArray());
        }
Exemplo n.º 24
0
 public void OnCardUsed(CardContent cc, CardUseTrigger trigger)
 {
     onCardUsed(cc, trigger);
 }
Exemplo n.º 25
0
 /// <summary>
 /// 加入一张卡牌
 /// </summary>
 /// <param name="card"></param>
 public void JoinCard(CardContent card)
 {
     Deck.Add(card);
 }
Exemplo n.º 26
0
 /// <summary>
 /// 替换一张卡牌
 /// </summary>
 /// <param name="origin"></param>
 /// <param name="now"></param>
 public void ChangeCard(CardContent origin, CardContent now)
 {
     Deck.Remove(origin);
     Deck.Add(now);
 }