public override void Action(object info = null)
        {
            base.Action(info);

            foreach (Enumerators.AbilityTargetType target in TargetTypes)
            {
                switch (target)
                {
                case Enumerators.AbilityTargetType.OPPONENT:
                    for (int i = 0; i < Count; i++)
                    {
                        CardsController.SpawnUnitOnBoard(GetOpponentOverlord(), Name);
                    }

                    break;

                case Enumerators.AbilityTargetType.PLAYER:
                    for (int i = 0; i < Count; i++)
                    {
                        CardsController.SpawnUnitOnBoard(PlayerCallerOfAbility, Name);
                    }

                    break;

                default: continue;
                }
            }
        }
 private void GenerateNewUnitsOnBoard()
 {
     foreach (ReplaceUnitInfo unitInfo in _replaceUnitInfos)
     {
         CardsController.SpawnUnitOnBoard(unitInfo.OwnerPlayer, unitInfo.NewUnitCardTitle);
     }
 }
Example #3
0
        private void SetupOverlordsBoardUnitsAsSpecific(List <SpecificBattlegroundInfo.UnitOnBoardInfo> playerCards,
                                                        List <SpecificBattlegroundInfo.UnitOnBoardInfo> opponentCards)
        {
            BoardUnit workingUnit = null;

            foreach (SpecificBattlegroundInfo.UnitOnBoardInfo cardInfo in playerCards)
            {
                workingUnit = _cardsController.SpawnUnitOnBoard(_gameplayManager.CurrentPlayer, cardInfo.Name);
                workingUnit.CantAttackInThisTurnBlocker = !cardInfo.IsManuallyPlayable;
            }

            foreach (SpecificBattlegroundInfo.UnitOnBoardInfo cardInfo in opponentCards)
            {
                workingUnit = _cardsController.SpawnUnitOnBoard(_gameplayManager.OpponentPlayer, cardInfo.Name);
                workingUnit.CantAttackInThisTurnBlocker = !cardInfo.IsManuallyPlayable;
            }
        }