def perform(self, connector, reevaluate=False):
        number_of_times_voted_for_yes = 0
        if connector.raw_vision_capsule().is_new_frame() and self.is_waiting_period_over():
            number_of_times_voted_for_yes = self.vote_for_switch_to_striker(connector)

        if number_of_times_voted_for_yes > self.required_number:
            say("Going to Striker! Attack!")
            become_one_time_kicker(connector)
            return self.interrupt()
        else:
            # Standard defender is moving in front of own goal
            if self.toggle_one_time_defender:
                return self.push(Wait, 1)
            else:
                return self.push(DefenderCorridor)
 def perform(self, connector, reevaluate=False):
     connector.blackboard_capsule().set_goalie_out_of_goal(True)
     become_one_time_kicker(connector)  # todo why outsourced?
     return self.interrupt()