def execute(self, m1: Remnant, m2: Remnant): attack_power = 40 if not m2.attack_hit(): print("%s missed %s" % (m1.name, m2.name)) crit = 1 if m1.critical_strike(m2): crit = m1.critical_modifier dmg = (m1.calculate_power() + attack_power) * crit print("%s did %d damage to %s" % (m1.name, dmg, m2.name))