public BoardInitArgs GetTestBoardInitArgs() { EnemyManager.CreateEnemy(); CardPile cardPile = new CardPile(); cardPile.InitCardPileFully(); int tmp = random.Next(4) + 1; Enemy enemy = EnemyManager.enemies[tmp - 1]; enemy.Init(cardPile); Player player = this.player; if (player == null) { player = new Player(CardBuilder.SearchCardByName("雷诺·杰克逊").NewCard()); } BoardInitArgs boardInitArgs = new BoardInitArgs { player = player, enemy = enemy, cardPile = cardPile, level = tmp }; //Debug.Log(boardInitArgs.player + "this"); return(boardInitArgs); }
internal static CardPile GetFullCardPile() { CardPile cardPile = new CardPile(); cardPile.InitCardPileFully(); return(cardPile); }
public IEnumerator EStartLevel(int n) { int level = n + 1; Debug.Log("进入第" + level + "关"); UnlockOneHero(level); //if (level == 4) //{ // UnlockHeroByHero(player.hero); //} BoardInitArgs boardInitArgs = GetFilledBoardInitArgs(); boardInitArgs.level = level; boardInitArgs.enemy = EnemyManager.GetEnemyByLevel(level); CardPile cardPile = new CardPile(); cardPile.InitCardPileFully(); boardInitArgs.enemy.Init(cardPile); //boardInitArgs.enemy.Init(cardPile); boardInitArgs.enemy.SetLevel(boardInitArgs.level); // player 每关+10血 boardInitArgs.player.hero.effectsStay.Add(new BodyPlusEffect(0, 10 * level - 10)); Card enemyBackup = boardInitArgs.enemy.player.hero.NewCard(); yield return(StartCoroutine(EIntroEnmey(boardInitArgs.enemy.player, level))); gameAnimationSetting.selectPileAction = i => { returnValue = i; isGotResponse = true; }; gameAnimationSetting.StartNewGame(boardInitArgs); gameAnimationSetting.PlayAudioBattle(); yield return(StartCoroutine(WaitForGotResponse())); if (returnValue == 0) { Card hero = boardInitArgs.enemy.player.hero; defeatedEnemy.Add(enemyBackup); } }
public static void Init() { CardBuilder.GetCard(0); CardPile cardPile = new CardPile(); cardPile.InitCardPileFully(); /* * string minionTypeCountString = cardPile.cardPile * .GroupBy(pair => pair.Key.type) * .Select(x => (card: x.First().Key, count: x.Sum(pair => pair.Value))) * .Select(x => (x.card.type, count: x.count / Const.numOfMinionsInCardPile[x.card.star - 1])) * .Select(pair => (type: BIF.BIFStaticTool.GetEnumDescriptionSaved(pair.type), pair.count)) * .Where(pair => !string.IsNullOrEmpty(pair.type)) * .Map(pair => pair.type + ":" + pair.count) * .Join(" "); * Debug.Log(minionTypeCountString); */ schools = new List <School> { new School() { name = "中立", cards = CardBuilder.AllCards.FilterValue(card => !card.isToken && !card.isGold).Filter(card => card.tag.Contains("中立")) }, new School() { name = "野兽", cards = CardBuilder.AllCards.FilterValue(card => !card.isToken && !card.isGold).Filter(card => card.tag.Contains("野兽")) }, new School() { name = "恶魔", cards = CardBuilder.AllCards.FilterValue(card => !card.isToken && !card.isGold).Filter(card => card.tag.Contains("恶魔")) }, new School() { name = "机械", cards = CardBuilder.AllCards.FilterValue(card => !card.isToken && !card.isGold).Filter(card => card.tag.Contains("机械")) }, new School() { name = "鱼人", cards = CardBuilder.AllCards.FilterValue(card => !card.isToken && !card.isGold).Filter(card => card.tag.Contains("鱼人")) }, new School() { name = "巨龙", cards = CardBuilder.AllCards.FilterValue(card => !card.isToken && !card.isGold).Filter(card => card.tag.Contains("龙")) }, new School() { name = "嘲讽", cards = CardBuilder.AllCards.FilterValue(card => !card.isToken && !card.isGold).Filter(card => card.tag.Contains("嘲讽")) }, new School() { name = "圣盾", cards = CardBuilder.AllCards.FilterValue(card => !card.isToken && !card.isGold).Filter(card => card.tag.Contains("圣盾")) }, new School() { name = "战吼", cards = CardBuilder.AllCards.FilterValue(card => !card.isToken && !card.isGold).Filter(card => card.tag.Contains("战吼")) }, new School() { name = "亡语", cards = CardBuilder.AllCards.FilterValue(card => !card.isToken && !card.isGold).Filter(card => card.tag.Contains("亡语")) }, new School() { name = "混沌", cards = CardBuilder.AllCards.FilterValue(card => !card.isToken && !card.isGold).Filter(card => card.tag.Contains("混合") || card.tag.Contains("奇异") || card.tag.Contains("青玉")) }, //schools.Add(new School() //{ // name = "奇异", // cards = CardBuilder.AllCards.FilterValue(card => !card.isToken && !card.isGold).Filter(card => card.tag.Contains("奇异")) //}); //schools.Add(new School() //{ // name = "召唤", // cards = CardBuilder.AllCards.FilterValue(card => !card.isToken && !card.isGold).Filter(card => card.tag.Contains("召唤")) //}); new School() { name = "手牌", cards = CardBuilder.AllCards.FilterValue(card => !card.isToken && !card.isGold).Filter(card => card.tag.Contains("手牌")) } }; //foreach (var item in schools) //{ // Debug.Log(item.name + " " + item.cards.Count); //} for (int i = 1; i <= 6; i++) { for (int j = 0; j < Const.typeOfMinionsInCardPile[i - 1] - 3; j++) { starList.Add(i); } } starList.Shuffle(); for (int i = 1; i <= 3; i++) { List <int> tmpStarList = new List <int>(); for (int j = 1; j <= 6; j++) { tmpStarList.Add(j); } tmpStarList.Shuffle(); foreach (var item in tmpStarList) { starList.Add(item); } } }