Так это уже проблемы кода.
Тут явно проблемы в сущности карты, если она два раза подряд метод урона выкидывает.
Это может быть из-за того, что разработчики криво реализовали логику специальных атак.
Когда карта должна помимо существа напротив наносить урон рядом стоящим.
Или же при определенном условии делать двойную атаку и так далее.
Есть у сущности карты методы Действия и Принятия
Над действием карты вешается декоратор в который передается специальная логика. У каждой карты действие одинаковое — ударить напротив себя стоящую карту. (Это в 99% случаев; Если это не так -> повесить флаг который проигнорирует стандартную логику)
Метод Действия вызывает метод принятия у карты, над которой производится действие. А над ней тоже может быть декоратор уникального поведения, который срабатывает каждый раз, когда с этой картой что-либо делают.