Beispiel #1
0
    public void OnUseCard(AbstractCard _card, UseCardAction _action)
    {
        if (!_card.IsPurgeOnUse && _card.Type == CardType.Attack && Amount > 0)
        {
            //flash
            AbstractMonster tMonster = null;
            if (_action.Target != null)
            {
                tMonster = _action.Target as AbstractMonster;
            }
            AbstractCard tCard = _card.MakeStatEquivalentCopy();
            AbstractDungeon.Player.Limbo.AddToBottom(tCard);
            tCard.IsFreeToPlayOnce = true;
            if (null != tMonster)
            {
                tCard.CalculateCardDamage(tMonster);
            }

            tCard.IsPurgeOnUse = true;
            AbstractDungeon.ActionManager.CardQueue.Add(new CardQueueItem(tCard, tMonster, _card.EnergyOnUse));
            if (tCard.CardID.Equals("Rampage"))
            {
                AbstractDungeon.ActionManager.AddToBottom(new ModifyDamageAction(_card, tCard.MagicNumber));
            }

            Amount--;
            if (Amount == 0)
            {
                AbstractDungeon.ActionManager.AddToBottom(new RemoveSpecificPowerAction(Owner, Owner, "DoubleTap"));
            }
        }
    }
Beispiel #2
0
 public void OnUseCard(AbstractCard _card, UseCardAction _action)
 {
     if (_card.Type == CardType.Skill)
     {
         //flash
         _action.IsExhaustCard = true;
     }
 }
        private void randomInputResponse()
        {
            UserAction action;
            int        r = random.Next();

            switch (r % 10)
            {
            case 1:
                action = new CardAction(randomCard());
                break;

            case 2:
                if (random.Next() % 2 == 0)
                {
                    action = new YesOrNoAction(true);
                }
                else
                {
                    action = new YesOrNoAction(false);
                }
                break;

            case 3:
                action = new AbilityAction(randomCard(), randomPlayer());
                break;

            case 4:
                action = new AbilityActionSun(randomCard());
                break;

            default:
                action = new UseCardAction(randomCard(), randomPlayer());
                break;
            }
            game.processUserInput(game.curPhase.playerID, action);
        }
Beispiel #4
0
 public void OnUseCard(AbstractCard _targetCard, UseCardAction _useCardAction)
 {
 }
Beispiel #5
0
 public void OnAfterUseCard(AbstractCard _card, UseCardAction _action)
 {
 }