Beispiel #1
0
 /// <summary>
 /// 进入副本
 /// </summary>
 /// <param name="dungeonTransferModel"></param>
 /// <param name="cp"></param>
 /// <param name="gameDic"></param>
 /// <returns></returns>
 public bool EnterDungeon(DungeonTransferModel dungeonTransferModel, CardPlayerTransferModel cp)
 {
     if (cardPlayer == null && dungeon == null)
     {
         cardPlayer = new CardPlayer(cp);
         dungeon    = new Dungeon(dungeonTransferModel);
         return(true);
     }
     else
     {
         return(false);
     }
 }
Beispiel #2
0
        public CardPlayer(CardPlayerTransferModel cardPlayer)
        {
            mainHero = new Hero(GameDictionary.GameDic.HeroDic[cardPlayer.MainHero]);
            if (cardPlayer.SubHero != null)
            {
                subHero = new Hero(GameDictionary.GameDic.HeroDic[cardPlayer.SubHero]);
            }
            potions       = new List <Potion>();
            Powers        = new Dictionary <string, Buff>();
            Debuffs       = new Dictionary <string, Buff>();
            Name          = mainHero.HeroName;
            SpriteName    = mainHero.HeroSpriteName;
            MaxHealth     = mainHero.HeroHealth;
            CurrentHealth = MaxHealth;
            MaxMana       = mainHero.HeroMana;
            CardPool      = new Dictionary <Card, int>();
            Relics        = new List <Relic>();

            foreach (var item in cardPlayer.CardDic)
            {
                CardPool.Add(new Card(GameDictionary.GameDic.CardDic[item.Key]), item.Value);
            }

            foreach (var item in mainHero.HeroDefaultRelics)
            {
                Relics.Add(item);
                item.InvokeRelicEffect(this, null);
            }

            if (subHero != null)
            {
                foreach (var item in subHero.HeroDefaultRelics)
                {
                    Relics.Add(item);
                    item.InvokeRelicEffect(this, null);
                }
            }
        }