protected override void BeginGameAction(GameAction gameAction)
 {
     base.BeginGameAction(gameAction);
     if (gameAction is SettingEnemyAttackAction enemyAttack && CheckToDamage(enemyAttack))
     {
         currentEnemyAttackAction = enemyAttack;
         currentDogDamage         = ThisCard.HealthToken.Amount;
     }
 }
 bool ReactionEffect(SettingEnemyAttackAction enemyAttack)
 {
     if (!enemyAttack.Equals(currentEnemyAttackAction))
     {
         return(false);
     }
     if (ThisCard.IsInPlay && currentDogDamage >= ThisCard.HealthToken.Amount)
     {
         return(false);
     }
     return(true);
 }
 bool CheckToDamage(SettingEnemyAttackAction enemyAttack)
 {
     if (!ThisCard.IsInPlay)
     {
         return(false);
     }
     if (enemyAttack.Investigator != ThisCard.VisualOwner)
     {
         return(false);
     }
     return(true);
 }
Beispiel #4
0
 bool EnemiesCantAttack(SettingEnemyAttackAction enemyAttackAction)
 {
     if (!BuffActive)
     {
         return(false);
     }
     if (enemyAttackAction.Investigator != ThisCard.VisualOwner)
     {
         return(false);
     }
     if (enemyAttackAction.Enemy.KeyWords.Contains("Elite"))
     {
         return(false);
     }
     return(true);
 }
Beispiel #5
0
 IEnumerator StopEnemyAttack(SettingEnemyAttackAction enemyAttack)
 {
     enemyAttack.IsActionCanceled = true;
     yield return(null);
 }