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); }
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); }
IEnumerator StopEnemyAttack(SettingEnemyAttackAction enemyAttack) { enemyAttack.IsActionCanceled = true; yield return(null); }