class ProtectCounterSkillLogic extends ProtectSkillLogic { constructor ( ) { super ( ) ; this . counter = true ; } execute ( data ) { let toReturn = this . executeProtectPhase ( data ) ; let protector = data . executor ; if ( ! protector . isDead && protector . canAttack ( ) && ! data . attacker . isDead ) { this . battleModel . processDamagePhase ( { attacker : protector , target : data . attacker , skill : data . skill , additionalDescription : protector . name + " counters " + data . attacker . name + "! " , } ) ; } return toReturn ; } }