Ejemplo n.º 1
0
        public bool Use(List <IEnemyInstance> targets, List <ICardInstance> cardTargets, bool?skipLog = false)
        {
            if (skipLog.HasValue && !skipLog.Value)
            {
                Logger.Log($"! Card activation: {this.Name} ({this.UniqueId})");
            }

            if (GameWorldManager.HeroManager.CurrentEnergyCount >= ActualCost)
            {
                if (BaseCard.Use(GameWorldManager, targets, cardTargets))
                {
                    GameWorldManager.HeroManager.SpendEnergy(ActualCost);
                    GameWorldManager.CardManager.MoveCardBetweenPiles(this, CardMovePoint.Hand, DetermineCardMovePoint());

                    if (this.CardUseType == CardUseType.Exhaust)
                    {
                        GameWorldManager.CardManager.LastCardExhausted = this;
                    }
                    else if (this.CardUseType == CardUseType.Default)
                    {
                        GameWorldManager.CardManager.LastCardExhausted = this;
                    }

                    GameWorldManager.EventManager.CardUsed(this);
                    return(true);
                }
            }

            return(false);
        }
Ejemplo n.º 2
0
 public void Use()
 {
     card.Use();
 }