public override int Visit(BonusAttackDependingOnHealthAbility ability) { if (Target is CardTarget) { if (((CardTarget)Target).Card.Attack is null) { return(-1); } return(CheckImmunity()); } return(-1); }
public override int Visit(BonusAttackDependingOnHealthAbility ability) { //Log(OwnerCard.Name + " used BonusAttackDependingOnHealthAbilit"); List <CreatureCard> targets = new List <CreatureCard>(); foreach (CardTarget ct in CardTargets) { CreatureCard card = (CreatureCard)(GameManager.UserDict[ct.Character].Player.GetCardFromId(ct.CardId, Place.INNER) ?? GameManager.UserDict[ct.Character].Player.GetCardFromId(ct.CardId, Place.OUTER)); card.Attack.BonusAttack += (int)Math.Ceiling((float)card.Health / (float)ability.myDivisor); targets.Add(card); } foreach (CharacterEnum c in GameManager.UserDict.Keys.ToList()) { AddResponse(c, new CardsModifiedResponse(targets)); } return(0); }
public override int Visit(BonusAttackDependingOnHealthAbility bonusAttackDependingOnHealthAbility) { return(0); }
public abstract int Visit(BonusAttackDependingOnHealthAbility bonusAttackDependingOnHealthAbility);